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

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

passagemath_rubiks-10.8.8rc1-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.8rc1-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.8rc1-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.8rc1-cp314-cp314t-macosx_13_0_arm64.whl (214.6 kB view details)

Uploaded CPython 3.14tmacOS 13.0+ ARM64

passagemath_rubiks-10.8.8rc1-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.8rc1-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.8rc1-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.8rc1-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.8rc1-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.8rc1-cp312-abi3-macosx_13_0_arm64.whl (214.3 kB view details)

Uploaded CPython 3.12+macOS 13.0+ ARM64

passagemath_rubiks-10.8.8rc1-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.8rc1-cp311-cp311-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

passagemath_rubiks-10.8.8rc1-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.8rc1-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.8rc1-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.8rc1-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.8rc1.tar.gz.

File metadata

  • Download URL: passagemath_rubiks-10.8.8rc1.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.8rc1.tar.gz
Algorithm Hash digest
SHA256 10977cd02a25ae85f937f18e3e4f0f25f2c573984029e6026ebb0bdfc8d4e86b
MD5 4013473d5e569977adc1969930dd3b83
BLAKE2b-256 1ecf3b4ce9d60cd0c44525e05c2950b6900a3594fd7ab928db7b4b1edbd4f1d1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3279da49728c3a35e72ac02da0e1d076728a6f2f66921e9324978ce9ad713ba1
MD5 7d5a2a3ebfcb0064b566a8f413bc7c39
BLAKE2b-256 dcb66f74a6977dd9b8de7ace0ce893494295281cfd29e9d5613a646162705015

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 47b99e9987242fd50dbb949f6360dc8f1d3fdc87929c4c8ee3f4b9fed5c521c8
MD5 cfec1970031c05e4eb51fdfb8958a5a1
BLAKE2b-256 4149ea9336bc2f56de467be176d75063daeb47d2aa1512dbd137a1e41b43c938

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 99e51e87b36016c271c08189c579f658d0aadd738b19a4d8372654c3b8ae4c12
MD5 c9fe02942bb59513dfa2457267f09236
BLAKE2b-256 44b1caa9cb40a38746e719f08b7a12e158bbb62c0e4cbaa4cab032ca2d609a98

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4e5b8052426c30fb3117cf5b40a90dc86e0b89be1d8016f02439219623ff219c
MD5 f741676895d49f8c052ab16d36f58300
BLAKE2b-256 17f44ac68a060ba786321b6b60da422fd79d0545eef52902c45cc37439e2d253

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp314-cp314t-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 04778467f3664789fe7ac50e649d3d26ce5d59f2ea08a736812b4e676cc31ff3
MD5 439c317cfea5b5260d89e428a5859ae9
BLAKE2b-256 6f5e3767627f447c7311dd0e69c0061967c049ef2f86dc75fdebf75397d8d042

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp314-cp314t-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 c9872c11159d7747b8aaec8719897469acf74221b3988ebb8bddf53cd6947924
MD5 d931d03b8a021a2dd32fbec511b51ed4
BLAKE2b-256 e5f964937f604a376947de0bf9215ce1d851faa452ee9ecb985be5830c026e2e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp312-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ee673f2f2b7ba805a632b317a9e37320dbb1d59d6e696824de78c5dce1db9511
MD5 a13fc2b57188a1a087b43d5bb1e119e8
BLAKE2b-256 0acdca7e0127cef149ea58d00a5180595c7e310a26326813426d88257fbc4103

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp312-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a430dbfee43de15e2e6b96ce5087d64d188824975b6a97d3649a271fc321f762
MD5 fe314cc64f6c9bea576b1a8dd7762dc6
BLAKE2b-256 79e637b5a5b382e4e9b0b359dc8e0fbb41a2ada6c126b25e33af8a177cecce7c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp312-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3f4cb4e2f9cc00c302422d120e8f65a89055c2a623e5f8e2d96ba73aa4b7391f
MD5 f8b9c2e0e4987e7291804329b3b63843
BLAKE2b-256 1a713751061687d49fc936c6d5d6fc1630209dcc05cbcabc70dbd60611091809

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp312-abi3-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b737a3102164af83a5f79b95d8f4c7ecf35c7e5fd1f08f1c0bf5adcf07908ba9
MD5 59de63504fef8db977538bfaf80eb7ae
BLAKE2b-256 d0ac1148cc0ee4be1092c837923f9897ee8622e48fd23062eba5556e9bc57e16

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp312-abi3-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 156022e2ff114c09416deec3be8b3e386680fbcb619358e3e50d11bd419db325
MD5 b97be918e1ab1811812926a2ccb289c1
BLAKE2b-256 5f37667adbfdb4fd74d9e14152f20d0af7f1da3d4546b16b0bd3adf0e3cd2ba3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp312-abi3-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 b5a8a20a9a205f3a15e2136b3a18905c97cc68db686c3c1968f00c4408e73a73
MD5 e38f3944eefdbdfce97ff176cc850d7c
BLAKE2b-256 4cf57e6d32b3487ff81df4e2b93ca22578c082da1dfa96b3c745a7587ac8dc32

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 35b86cdd53baa7554bdd0c6ad9b361009e409a5057f1cb2d5098ae70208959df
MD5 ecf40ad0154ce4a5a18b1b5ccba82e7f
BLAKE2b-256 26565eace0772414d716ddb5d5401c88f31f1512713380f5460236ae3837d426

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 c6abb4d8f1ead5afb22a53642adc9033f692b96dd771edf67a971f8d64941ba2
MD5 521571aec43cf2753c710c1dbb2e57b6
BLAKE2b-256 06ae406901aa02f38a9d9566461b3f3bc5abd752636975369e42317d0097c45b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 db91973e6ac5270ded87727d9435c13e520463e26cbe501cd7a342ca679d86c3
MD5 39caed07477f05741fdef923aaee61fa
BLAKE2b-256 bd5ac3c4e9421c68b4031ebfd403021ffb6c28a9690ab2d175aba5d4473f0e4d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 15bbd08245b90a39e87ed92939b47a793e0bbda1c1906160b18eb68c4e5636d3
MD5 664f870530cf03396b0b2688e8f2a892
BLAKE2b-256 62fe39686ba82954ff54f27e15ca694475581b86d287a0ff304acb661abe8e11

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 0562455797acb3000277e202b04e22a074bc79f6f64927be385518fe3e44e101
MD5 4deed660bbddd84f6c8e3b0740666a51
BLAKE2b-256 8c9f7a8590df2f520023198f87b59cea9b69a3c64133ad458e1a30d458d0ebb6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for passagemath_rubiks-10.8.8rc1-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 0deed22d97375a5127ae8fd775bb94178fa50dbeaa9a3d7f2d23135eb8952593
MD5 782c6bc4818a290955b1c93603fe3615
BLAKE2b-256 2f6be35b3fbde821347e5a5df3d2964c5e5d46ca021ebb58f07b10ee2d7d5865

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