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.10rc0.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.10rc0-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.10rc0-cp314-cp314t-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

passagemath_rubiks-10.8.10rc0-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.10rc0-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.10rc0-cp314-cp314t-macosx_13_0_x86_64.whl (213.4 kB view details)

Uploaded CPython 3.14tmacOS 13.0+ x86-64

passagemath_rubiks-10.8.10rc0-cp314-cp314t-macosx_13_0_arm64.whl (214.7 kB view details)

Uploaded CPython 3.14tmacOS 13.0+ ARM64

passagemath_rubiks-10.8.10rc0-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.10rc0-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.10rc0-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.10rc0-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.10rc0-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.10rc0-cp312-abi3-macosx_13_0_arm64.whl (214.3 kB view details)

Uploaded CPython 3.12+macOS 13.0+ ARM64

passagemath_rubiks-10.8.10rc0-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.10rc0-cp311-cp311-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

passagemath_rubiks-10.8.10rc0-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.10rc0-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.10rc0-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.10rc0-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.10rc0.tar.gz.

File metadata

  • Download URL: passagemath_rubiks-10.8.10rc0.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.10rc0.tar.gz
Algorithm Hash digest
SHA256 649abbac2b0837e8f5195ba1e96555dc14f66f9d1cf10b0ce74585c80129ce84
MD5 e324f9f47450f98356b88e2c80cc25aa
BLAKE2b-256 343f11b3e7e12c6aab1a42e076d940f848212f4ac1bc10c37f34994245699024

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 09d6c34910b3580753a60066404575664942b633e1532dfbd354c0bfd48bb274
MD5 464d2d5ad130ee3f625b1b0295caa6f0
BLAKE2b-256 9c1b8a7a02add2e26d02856e0c9b1db8a270e55074928bb0cb7633ec6819f740

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3d11ed7c2eafb16553a9961806a95cd909b82ce66d65de480b1cfc439f03c44e
MD5 03ae24da427d02aaa727bc1e133f1ef4
BLAKE2b-256 5d621cdd0685752366e81331ac0297007170f8b62a2cfe5460f43f2eee85cbb3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ce2d806d66ea67c14f2824515f1b5b2e8afa588176b89591456a9ddc8eb29e7a
MD5 c2275cff8efbc2de6010d40a712f521c
BLAKE2b-256 19c7585f3c0f34a9b9ea4e3d92f91120549a8163b0aeb2393124d6334996de58

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 867cefcb3d775ca63db50978ff1d71288f48e02449693e5761337a123e0cd0fd
MD5 ad79daac62fb5827756875179b25119d
BLAKE2b-256 599a0541087b6c1bcdc1f2315d23f6bf8c2abd4f9f62e148ffc15c234be752e1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp314-cp314t-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 43dbfa280cd1f7c079344d3452afbb4d11d3faed7b80216f34a9b6e79c416069
MD5 1bd128a344ccb0d673a641d64a84304d
BLAKE2b-256 fda6b0ad1f33334cb099ca3e35aad83bf1e0a56f68f91098d8fd071e6713ce6d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp314-cp314t-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 f2358364ec4494eefe4e548f1d59058b9a6d33f15ecfc770adb611e6cf62bd7a
MD5 21f1a1e46b5fcf3e75d5567a81667a2b
BLAKE2b-256 5e8a61b9f02f718225a7cc47ca3948482f26e743418686bf28d639162dc68a69

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp312-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4bd9e93555b838fb8f2f402256cd2bd47cb618bf066c7f2e707b5561f45a8bb2
MD5 314fc16ef0d6edaf10f61bef58f79c22
BLAKE2b-256 54ee8f84e115a8c4377c94c479b1366edbf6e19d06b2d5e10078db9e60264fe0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp312-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 23eaf114aef89c2631f2ea485244841d7e81c81982f9b666d0f34f6b1144475c
MD5 4435b4c830b471e4e446799f76baea8f
BLAKE2b-256 b0dfc108b49cda8092203dd6579e48e6ab12d86d76bdb569d100e34b684ee273

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp312-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 41f549f5dd0ce56ba0d24e022ef8bfbc2e8aebe23598514a157169f777376ae1
MD5 6fe5196c388c59a8520b51988c3533c1
BLAKE2b-256 33fae96f55905f2d99c90493c2841a2f42c3b83288983665595978ef343fed36

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp312-abi3-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 82080d695cfcf078777823b44350b648ac74d5b192120f686d2664717b65d8f4
MD5 c013d05343e92b63906701d827953e88
BLAKE2b-256 dac9d672535dda7c6e4ac18f71b4d852702127db84abd33d0ec8e73c25d0d3b5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp312-abi3-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 8136c76170835d7fd8044cd8e8d61350c53fa54de3b7ef3886639c773ab8dc48
MD5 0b9fe0010b69bf8bc3a8dcad5c280abb
BLAKE2b-256 36317a972f892bb509b68c94f5499320e5c94585bc06921c497f67e354b307e5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp312-abi3-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 96bff75a836cd4ffd260a9539ca12d6badda618e155b784b8ad078feb5632367
MD5 1dbc0eb991af9eb86a886a1dcc157874
BLAKE2b-256 6d3587b4f9408a2fd3cd682a665539d68fc2c4e6562c7cad711388a9de53e3a6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d76fb8193e67fa05d4fe47b2816c8b7ff40012bf9b91966a36bcb0712fb8cbf9
MD5 ccc4aa99e5fcb867ee54cbfda08a2e8a
BLAKE2b-256 4422e962e6a494e730fb8a653acbe804b3e1704239bd2bd2d76ae7b089b80162

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3b2c2df5d8d75e30019a08f2a28498d3fd3a886d9963f1a88a13ed1ce7b49266
MD5 2eca01e0a3fa25d974402ac5514688c0
BLAKE2b-256 68d3d6d92214b6196a3527a39ce937dc2680b4ed155481f6626bb1749fb45f0d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 57e47c5f629d50510a67c87b45d8b20649cab0098aa094c02f44b64a9ee8ffce
MD5 cc25e923b1d4bcabd2e0dfe97066a75a
BLAKE2b-256 ab1346e54b0a44775c031d0123e35bda206db5d32b42a932f57cca34abcd1cf3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 50cb703411931a22036a5af5f6677088eefc2bd941acfef16b491bc254cb7a1d
MD5 54bc836536940321d1fb32bdaeeb1358
BLAKE2b-256 a19bc37d77f996d2c70a9be60244775f65faadd908dadf85a0c5c5d6ab863cd1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 183c85f18cada08aa75736f408e38df6a9793b255df9b2842a132e510bf2459c
MD5 1c5a7205f2463bca8556116a508389af
BLAKE2b-256 be5e9f80ed26bde5d2aff1d655a3e52c6dea2e846af978724d09da6f7d37acab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.10rc0-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 07875cf0f34fc6d8c76fba72dd5c5210cc3ebb4b410d6ba31b886b583b0eb3c5
MD5 57e82d684bcd2b77377e4bc9dcf9aabe
BLAKE2b-256 8c71f88cc08b99462895d3525f7567b17aa11872aeb75092c655cdc4eca1bfc6

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