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

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

passagemath_rubiks-10.8.9rc0-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.9rc0-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.9rc0-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.9rc0-cp314-cp314t-macosx_13_0_arm64.whl (214.6 kB view details)

Uploaded CPython 3.14tmacOS 13.0+ ARM64

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

Uploaded CPython 3.12+macOS 13.0+ ARM64

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

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

passagemath_rubiks-10.8.9rc0-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.9rc0-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.9rc0-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.9rc0-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.9rc0.tar.gz.

File metadata

  • Download URL: passagemath_rubiks-10.8.9rc0.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.9rc0.tar.gz
Algorithm Hash digest
SHA256 348823bf0f1e5c68ba2c3755cce1fdce86baf4b576f3edc867c13d1f508e130c
MD5 8a46dec0d28478e115480e304a71a771
BLAKE2b-256 82334047b3b32b4471f1953e30c677c09288ee1ec2de0b22f79758315ad3916e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ff23dd6af3ea4cd70f1825509cd1814094e01e98cfb7a2b5a06ae324a6e47b1b
MD5 29351202be0d59edd45904d2ad7615d6
BLAKE2b-256 57dab49bb0596927fce35f7f0ace62129eaf5925e1ace36b94afa4fbb1a69531

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a111fd9c96cd8cde68b03b677ae2db70df409975bcfd0f943f6c53250bcba2fc
MD5 2cc7424bb10cce4b962d656dbd8b96c9
BLAKE2b-256 43d90dd78f907ad2850a79a8990d690b1c838c76c9b11f90cc72dade5fb3cee7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9f68b63e76465d8dcc691ab8091765e1ad9afb59e09c80e64641959b8253639b
MD5 36fa877f06f863c8470977cdf8e05b51
BLAKE2b-256 c57720808de7725bf6ddfa9676a11670e9f556e705873258ec4892343c2adfc1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a387c3c95a74240075a6244fb2061e4afc53ddd8d1d38f196242dada51ab7514
MD5 9754ec0c2f94b5274d5d399b001539ef
BLAKE2b-256 9ea98a0c35351b18a465e2008f39360d835c855132cfd8edfbfc211da095a190

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp314-cp314t-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 6f515a5bf5ab87f14d411e78cde7d0f7819bbbf2261e0faf22ffaf4dc1a298db
MD5 8f29ea60c495d0a76da9206aebfa2398
BLAKE2b-256 eeb9503591a2e535b0979b7eff3147fe34bdefec46f9398329a0663f025c6fa6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp314-cp314t-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 eb861be63a9041c96529a6d61feac6b48f7fbdd7ec5786900828ecf168cf6cdf
MD5 b195d52e4b78bbd733188597b3c8fe1a
BLAKE2b-256 50e5ada5f18e56aa12352bda796d45800d2b8305ce275f92c189c5fc7a5ab59e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp312-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f38f241db57b10a022315edc870bcd023129516925bc1ac0feed695246622b41
MD5 2ba7de73165fd684093155f5aaff910d
BLAKE2b-256 086d667b3e9052a6f45754f99971b2825ac3b2c49e2f3edbc87020716cb66180

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp312-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 4e0a7f044380433a259ff8b1e7fc48d0f3a38fedd3db071fda0fcb289f0905d3
MD5 c778b56ee300e603ba87f6216aae2f8e
BLAKE2b-256 3c12ff7bae566d60e1fa308bdb8fbb96c3d75ba2ca065d7ac09e11119eb07098

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp312-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cf8e479a91b5a8a5ef64b9aeb0207fb7fc2e0846a4a6b448cb97301141ecf3fa
MD5 e33217a284d6f3c2dad9adf852a439ce
BLAKE2b-256 3e08f3a659dcc75e0b39555b47ec19998ecb039e27e045f15e06df614c0141d1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp312-abi3-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 cefe790da9a3621ca812980d9c03cd0ac20a3b28d4ac5bdf8ff070f978706066
MD5 10833f4e643abae40be37d3d72b4f407
BLAKE2b-256 e0de8946ebebb22c2ecd6445edf840a9fb5eeba4d8c9dbb084f4229225ea81ce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp312-abi3-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 6ade1aa9842e409aacb14495e9be62169a3f05f1a92990f896197e303ad11334
MD5 26bb29dfe30f88f0c3b7ef84c5911538
BLAKE2b-256 81de5509352ca4009dd087638dcac32efae77b24a6fce747bbf394a1f83fb429

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp312-abi3-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 d0d96ad2dc79e4b53ce2e40eaf74177bf9635ed01bd88e0d23630c9cae682e3c
MD5 9bfdf9c397cad85d9eb30aaedd38a43f
BLAKE2b-256 8abbe033089563f0b26b92f157f3f156036b430e70243c1a4e57b17a9354a62a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 99f420d91e410c879885b0a4d5f718c05e32c3430df249bbbae28393d6e4c2f0
MD5 baca32e7a46fd2224f004ec8011c96aa
BLAKE2b-256 467084be7991b2ee505d33401a65a104d73de42fb3a1e36e0bc2cef283487f9f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3950e484a8a1b6cf0233c6230576be6bf3779b7399611ce013f03bc68b797482
MD5 54586e9003c0f1f703ce629d2eb5edc1
BLAKE2b-256 59f07e13a7505c2b6ed09cfce84f67007b49845dbdb2f10bb88119c1a2f000ab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f2e8758a920dc0fae97fcbc11c248be86c89c5761a26b1da869d8f2ce531260b
MD5 e086afecc3fce45c07e881f20e8d5c8b
BLAKE2b-256 54873e474df523ea9079059249241c7421a6643e524d53d42b58a1e6b93699d0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0e80a0a8720c45421d48347d951831a152a4e08bb00ccedd1e860426f7160645
MD5 7524f0e50d15faacd85fa5b0afd80961
BLAKE2b-256 cc8e54f5c52792fc71d052841ba912e3a3c160853c90ee1a7853a16482a981e0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 b02376d3eba5206e013e4d182a8155dfd9ab75e1f8a7b91c2d78d6613c3519d9
MD5 e56ce6a1d05d7fa53264e31352faf1ab
BLAKE2b-256 aa0473b582bec7fdbcc65afbd38b681f1452e0b3aaec579f31283512c2cdfd3c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.9rc0-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 c72960ce4d4c691da0bd23b8241374f4163c92a329271059c5283852a636b9cf
MD5 76f09eeda7af3f56e23b554188f2eab5
BLAKE2b-256 8ebf70e346c7d6ba927d5bfb32d973fdcc42b0d9ae4568ce04fb4c5c25f960d3

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