Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

passagemath is open source mathematical software in Python, released under the GNU General Public Licence GPLv2+.

It is a fork of SageMath, which has been developed 2005-2026 under the motto “Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, and MATLAB”.

The passagemath fork uses the motto “Creating a Free Passage Between the Scientific Python Ecosystem and Mathematical Software Communities.” It was created in October 2024 with the following goals:

Moreover, the passagemath project:

  • provides a stable, frequently updated version of the Sage distribution,

  • integrates additional mathematical software, notably Macaulay2, a full set of GAP packages, and the Combinatorial Matrix Recognition library,

  • curates a library of Sage user packages.

Full documentation is available online.

passagemath attempts to support and provides binary wheels suitable for all major Linux distributions and recent versions of macOS.

Binary wheels for native Windows (x86_64, ARM) are are available for a subset of the passagemath distributions. Use of the full functionality of passagemath on Windows currently requires the use of Windows Subsystem for Linux (WSL) or virtualization.

The supported Python versions in the passagemath-10.8.x series are 3.11.x-3.14.x; the passagemath-10.6.x series (EOL 2026-10) still supports Python 3.10.x.

About this pip-installable distribution package

This pip-installable distribution passagemath-rubiks provides an interface to several programs for working with Rubik’s cubes.

Michael Reid (GPL) http://www.cflmath.com/~reid/Rubik/optimal_solver.html

  • optimal - uses many pre-computed tables to find an optimal solution to the 3x3x3 Rubik’s cube

Dik T. Winter (MIT License)

  • cube - uses Kociemba’s algorithm to iteratively find a short solution to the 3x3x3 Rubik’s cube

  • size222 - solves a 2x2x2 Rubik’s cube

Eric Dietz (GPL) https://web.archive.org/web/20121212175710/http://www.wrongway.org/?rubiksource

  • cu2 - A fast, non-optimal 2x2x2 solver

  • cubex - A fast, non-optimal 3x3x3 solver

  • mcube - A fast, non-optimal 4x4x4 solver

What is included

  • Interface

  • Features (via passagemath-environment)

  • Binary wheels on PyPI contain prebuilt copies of rubiks executables.

Examples

Using rubiks programs on the command line:

$ pipx run --spec "passagemath-rubiks" sage -sh -c cubex

Finding the installation location of a rubiks program:

$ pipx run --spec "passagemath-rubiks[test]" ipython

In [1]: from sage.features.rubiks import cubex

In [2]: cubex().absolute_filename()

Using the Python interface:

$ pipx run --spec "passagemath-rubiks[test]" ipython

In [1]: from sage.interfaces.rubik import *

In [2]: C = RubiksCube("R U F L B D")

In [3]: sol = CubexSolver().solve(C.facets()); sol
Out[3]: "U' L' L' U L U' L U D L L D' L' D L' D' L D L' U' L D' L' U L' B' U' L' U B L D L D' U' L' U L B L B' L' U L U' L' F' L' F L' F L F' L' D' L' D D L D' B L B' L B' L B F' L F F B' L F' B D' D' L D B' B' L' D' B U' U' L' B' D' F' F' L D F'"

Using sage.groups.perm_gps:

$ pipx run --spec "passagemath-rubiks[test]" ipython

In [1]: from passagemath_rubiks import *

In [2]: rubik = CubeGroup(); state = rubik.faces("R")

In [3]: rubik.solve(state)
Out[3]: 'R'

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

passagemath_rubiks-10.8.8rc0.tar.gz (9.0 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

passagemath_rubiks-10.8.8rc0-cp314-cp314t-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

passagemath_rubiks-10.8.8rc0-cp314-cp314t-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

passagemath_rubiks-10.8.8rc0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

passagemath_rubiks-10.8.8rc0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

passagemath_rubiks-10.8.8rc0-cp314-cp314t-macosx_13_0_x86_64.whl (213.3 kB view details)

Uploaded CPython 3.14tmacOS 13.0+ x86-64

passagemath_rubiks-10.8.8rc0-cp314-cp314t-macosx_13_0_arm64.whl (214.6 kB view details)

Uploaded CPython 3.14tmacOS 13.0+ ARM64

passagemath_rubiks-10.8.8rc0-cp312-abi3-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.12+musllinux: musl 1.2+ x86-64

passagemath_rubiks-10.8.8rc0-cp312-abi3-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.12+musllinux: musl 1.2+ ARM64

passagemath_rubiks-10.8.8rc0-cp312-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.12+manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

passagemath_rubiks-10.8.8rc0-cp312-abi3-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.12+manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

passagemath_rubiks-10.8.8rc0-cp312-abi3-macosx_13_0_x86_64.whl (213.3 kB view details)

Uploaded CPython 3.12+macOS 13.0+ x86-64

passagemath_rubiks-10.8.8rc0-cp312-abi3-macosx_13_0_arm64.whl (214.3 kB view details)

Uploaded CPython 3.12+macOS 13.0+ ARM64

passagemath_rubiks-10.8.8rc0-cp311-cp311-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

passagemath_rubiks-10.8.8rc0-cp311-cp311-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

passagemath_rubiks-10.8.8rc0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

passagemath_rubiks-10.8.8rc0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

passagemath_rubiks-10.8.8rc0-cp311-cp311-macosx_13_0_x86_64.whl (212.6 kB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

passagemath_rubiks-10.8.8rc0-cp311-cp311-macosx_13_0_arm64.whl (213.7 kB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

File details

Details for the file passagemath_rubiks-10.8.8rc0.tar.gz.

File metadata

  • Download URL: passagemath_rubiks-10.8.8rc0.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for passagemath_rubiks-10.8.8rc0.tar.gz
Algorithm Hash digest
SHA256 4a98d9cadd7c39d59e77da0a6aedf43790f3b79769c59e5d37c6e65b4aac03ad
MD5 0fa2b6f1cbe3297a5d01142791e28874
BLAKE2b-256 9df3fb54be423cedf6dd1ac5bcbe58d807db164e79c038b486672ebe1910742a

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3cfef003239e99672beaba16a629f3731167b0a3895b3754ae1d4d9452b84ae8
MD5 28b75da56425ed1f92dd0c7ce037cdcb
BLAKE2b-256 955ce5eabd3ab1118cd8f5ea518cea8c114f006d22d0e4d4f00235b2ecb1f0e3

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3db2c7521cee1566a92ef3e259300081a86106df20742bed038d02d2771b773c
MD5 9a5c4689000f929ab29f1ba3c0c03c01
BLAKE2b-256 70c0658ed39db4066bd5483c62f22ab521e69d00ced81dfeed4faf4fe579693d

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0f66ecdbd78745c0cd3a5e1d2521c8a79e21ed42ac987ee37b876cfeba48018e
MD5 05cfc22dceed207c325527a0d27718e2
BLAKE2b-256 8c25ff5209e46d7f42b1d5cde5f3b3388550750b6f79da162c11a7e85e1f52ec

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 78f983449e0aec9a33555200050c23241e1708cf090bba5366271284530ca020
MD5 5f84ff7843957b14735f1665f30b5d67
BLAKE2b-256 52d9e66636d455e48c38739c63f61ef27dd902fa2a14257fd0499d83e0a06cb5

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp314-cp314t-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp314-cp314t-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 1d0b7c89b9fb054902952f93576893bc5588adb612664d6da697ae4939e80d2d
MD5 17e0472ba40bd472f6f3688c02f75003
BLAKE2b-256 9db34939991b3396f95681b8b0581148961ee88b1c13591b850a5010e7382f09

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp314-cp314t-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp314-cp314t-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 4a308f81aca4cfd1e39c5b7801bc3f4019fe860e439a7d9604360934dba5d46a
MD5 b306e8a97521489d03b36e77a6d87fd3
BLAKE2b-256 b33ed0c87957200aaf1adb8c36b200c6bdf6118434286bb94f881aae63837f85

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp312-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp312-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0b73f4d26f1e8bed5e65b79a67b3f9fe30f651554ca4f698c4d0d9e996393374
MD5 106adaae59da6d10441dd1e5de209742
BLAKE2b-256 eeda5b526f3a93a6145a96988619f221be9c5c5cd26b630465a46434f93b5bed

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp312-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp312-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 71507c516f5b954e963c77e72e877a60e63dd75f72508c1ee626aad5b5b76ff7
MD5 2c96b48b8d1a18a041e221e579c26812
BLAKE2b-256 083c5a7f6ff8937ec3a0d73e643217c74d3d2483fa5c49c9b43de162494ae1dd

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp312-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp312-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 00e38120add1d5ef0ce9e587ff352d97c92e5e3dc4cce2b8a90c5363f6bab658
MD5 0cb34ce1def481ede2b47812193d6c2e
BLAKE2b-256 b8c6c2b58cf8c5fc912a679057edd066d3be8145f9f0fbc26cee67a429d03344

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp312-abi3-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp312-abi3-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d06cae3af14b07178e17fe7ff32ac73e0bd0aa58f04cfecbc1afc7a34ff8ad51
MD5 d6c16e84dfe4a88e98397b257bbd12b4
BLAKE2b-256 64e249ddd63cd109d6165cc00230437672d009c7749bfffa7258861256132649

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp312-abi3-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp312-abi3-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 9ffdc7d9f7d6178e585e07e8db2696c85dcd7a24c69088a553e50f3ff36c5900
MD5 9035e860fcc900b9c73dc78b2aae3a24
BLAKE2b-256 20652319a8c79a8e6fccc4c91e6eea5e0dc480a8efc50c7d8bc172839757724d

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp312-abi3-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp312-abi3-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 a01c054fcd4b9b3c855a257d02d90f5140e63ec3dafd8c98218c706e0ec1da27
MD5 b9f088c65d8a015d00d5b40556c2a52d
BLAKE2b-256 38b707550d6a0038c42b82578674d9288eb608bb44972b554bd64171941f0058

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 82d8a40d0af83e62036f000ad6aa3ba79edae64381d62c07906b629702682c80
MD5 1e641d2cfcd9cf0c9cf98d0e2021fc32
BLAKE2b-256 bceb935f9d8f56d8a0c21cb066b6b5077c1a2e48813b6a93d715a90193dcaa40

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 2b4777c358111324ed2564f5033f81428b03cf896172879bd56df1c499e95eb7
MD5 747a725c5388d04eb377764cd915badf
BLAKE2b-256 b505a12e947edafe9988e5c876a79ff32aab5f9eac0a663653cd12cea9c13360

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 68893433e03b4b098acd629f1716566083f27e910dd20e06234211572e5da3e9
MD5 71e9c86cf1a62af151bf403bdc5fe699
BLAKE2b-256 e03fb35fee88895aafe0976226a281952af499ca55e9d3656c70a5c1efce740c

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 14a3cb689d2cf868a053cb9ef2d262dbd71a7ffe07ebcbd06fb763503f1eee6d
MD5 7277923d1878a93773c4d938a0c72368
BLAKE2b-256 6b1b892f1f422d369bdd60039e29fd9a32fe7c11f27e98641033e384fbce14b7

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 fac8010204a29420ec22a426c6c648e5e85f2590c28c07a11c3959a1dad94a46
MD5 ee672a4ddd32fa0232659f23a2260be4
BLAKE2b-256 790da9837e146a42f49c3d6f9ef0e473f8d3170331b5923a38f8c4bc3e0bb84e

See more details on using hashes here.

File details

Details for the file passagemath_rubiks-10.8.8rc0-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc0-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 9ba8da580f313f999633f04548829fab24651cc9b3b4f99cace76dcf352a9e9a
MD5 5b6ce4917150e2770d8bd3d9d7f9a15c
BLAKE2b-256 2877f5da10a81fe6620f37faa894e797fb6356e5963fd4376f3dcc5ae40e69a8

See more details on using hashes here.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page