passagemath: Symbolic computation with GIAC
Project description
About SageMath
- “Creating a Viable Open Source Alternative to
Magma, Maple, Mathematica, and MATLAB”
Copyright (C) 2005-2024 The Sage Development Team
SageMath fully supports all major Linux distributions, recent versions of macOS, and Windows (Windows Subsystem for Linux).
See https://doc.sagemath.org/html/en/installation/index.html for general installation instructions.
About this pip-installable distribution package
Giac/Xcas is a general purpose Computer algebra system by Bernard Parisse released under GPLv3. It has been developed since 2000 and is widely used: Giac/Xcas is the native CAS engine of the HP Prime calculators; the C++ kernel of the system, Giac, provides the CAS view of Geogebra.
This pip-installable source distribution passagemath-giac makes Giac available from Python and provides integration with the Sage Mathematical Software System.
What is included
-
The Cython interface is by Frederic Han and was previously available under the name giacpy-sage. It was merged into the Sage library in 2020.
see https://github.com/passagemath/passagemath/blob/main/pkgs/sagemath-giac/MANIFEST.in
The binary wheels on PyPI ship a prebuilt copy of the Giac library.
Examples
A quick way to try it out interactively:
$ pipx run --pip-args="--prefer-binary" --spec "passagemath-giac[test]" ipython In [1]: from sage.all__sagemath_giac import * In [2]: x = libgiac('x') In [3]: V = [[x[i]**j for i in range(8)] for j in range(8)] In [4]: libgiac(V).dim() Out[4]: [8,8] In [5]: libgiac.det_minor(V).factor() Out[5]: (x[6]-(x[7]))*(x[5]-(x[7]))*(x[5]-(x[6]))*(x[4]-(x[7]))*(x[4]-(x[6]))*(x[4]-(x[5]))*(x[3]-(x[7]))*(x[3]-(x[6]))*(x[3]-(x[5]))*(x[3]-(x[4]))*(x[2]-(x[7]))*(x[2]-(x[6]))*(x[2]-(x[5]))*(x[2]-(x[4]))*(x[2]-(x[3]))*(x[1]-(x[7]))*(x[1]-(x[6]))*(x[1]-(x[5]))*(x[1]-(x[4]))*(x[1]-(x[3]))*(x[1]-(x[2]))*(x[0]-(x[7]))*(x[0]-(x[6]))*(x[0]-(x[5]))*(x[0]-(x[4]))*(x[0]-(x[3]))*(x[0]-(x[2]))*(x[0]-(x[1])) In [6]: (x+5)**(1/3) # note here 1/3 is done in Python before being sent to Giac Out[6]: (x+5)^0.333333333333 In [7]: (x+5)**QQ('1/3') # using Sage rationals Out[7]: (x+5)^(1/3) In [8]: from fractions import Fraction # using Python rationals In [9]: (x+5)**Fraction(1,3) Out[9]: (x+5)^(1/3)
The last example again, using the Sage REPL:
$ pipx run --pip-args="--prefer-binary" --spec "passagemath-giac[test]" sage Warning: sage.all is not available; this is a limited REPL. sage: from sage.all__sagemath_giac import * sage: x = libgiac('x') sage: (x+5)^(1/3) # the Sage preparser translates this to (x+5)**QQ('1/3') (x+5)^(1/3)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
File details
Details for the file passagemath_giac-10.4.62.tar.gz
.
File metadata
- Download URL: passagemath_giac-10.4.62.tar.gz
- Upload date:
- Size: 182.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8758cd20b1f370ab918c73998b191b7c5559fe07e5ccd84299113d45ab62ebe3 |
|
MD5 | 13d8c5cb5a4fb62f900a8b25844fb552 |
|
BLAKE2b-256 | 42dd22b88ef2a57854e07c6c0027173c359a82ad59dba6bc6b28a1528cea782f |
File details
Details for the file passagemath_giac-10.4.62-cp312-cp312-macosx_14_0_arm64.whl
.
File metadata
- Download URL: passagemath_giac-10.4.62-cp312-cp312-macosx_14_0_arm64.whl
- Upload date:
- Size: 25.5 MB
- Tags: CPython 3.12, macOS 14.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5b3c1f15d1aaec2a65faa869a514d7a850abd3133d97c483182aa7a2c2806ebc |
|
MD5 | c556ab20b73320b6c34e86ec0c35af38 |
|
BLAKE2b-256 | c5b31f827dc63370aa9abe68f2a6289fb11bc157226e293077bce8d4c9300cb1 |
File details
Details for the file passagemath_giac-10.4.62-cp312-cp312-macosx_13_0_x86_64.whl
.
File metadata
- Download URL: passagemath_giac-10.4.62-cp312-cp312-macosx_13_0_x86_64.whl
- Upload date:
- Size: 28.0 MB
- Tags: CPython 3.12, macOS 13.0+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c37068aab26ab6b9de397bb8fde5faed7cf560204e2e8148d2be0f3fcf8ca5f1 |
|
MD5 | 437f8a4488e6631b77d3ebc44356f944 |
|
BLAKE2b-256 | ff6aca2906d25f876346807a4014454eb32c7c31113153d52fb6af41c91f93b9 |
File details
Details for the file passagemath_giac-10.4.62-cp311-cp311-macosx_14_0_arm64.whl
.
File metadata
- Download URL: passagemath_giac-10.4.62-cp311-cp311-macosx_14_0_arm64.whl
- Upload date:
- Size: 25.5 MB
- Tags: CPython 3.11, macOS 14.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 77282b1e0cd9ed6c06c22c6822eda41bd44611ea7f313a2e6b5133f6012a00d9 |
|
MD5 | 953f5e20f4065aaecaa60431642d19fa |
|
BLAKE2b-256 | 3b4d75c1f25531a799fe57d37bf3a5dbe52d3dba5197f72e72ee744a82251b50 |
File details
Details for the file passagemath_giac-10.4.62-cp311-cp311-macosx_13_0_x86_64.whl
.
File metadata
- Download URL: passagemath_giac-10.4.62-cp311-cp311-macosx_13_0_x86_64.whl
- Upload date:
- Size: 28.1 MB
- Tags: CPython 3.11, macOS 13.0+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cf1391c8da997022d679deca1524aaca4b61857d75bdaffb6797b3b5e687342f |
|
MD5 | 4743ec21de15d035c8c1455fdc6ffa45 |
|
BLAKE2b-256 | 59e14934c79542842b6fc953b78d27072c9f236781686e13bb8a89eb2d1388e2 |
File details
Details for the file passagemath_giac-10.4.62-cp310-cp310-macosx_14_0_arm64.whl
.
File metadata
- Download URL: passagemath_giac-10.4.62-cp310-cp310-macosx_14_0_arm64.whl
- Upload date:
- Size: 25.5 MB
- Tags: CPython 3.10, macOS 14.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 624b76141a4aa17e78479103976243a57b9551a5d72a2abb9d815ada2a0825f4 |
|
MD5 | 18537f749f63c9ccbbaf51778980cc1f |
|
BLAKE2b-256 | ba026e706634ae1a816ecbc1b41a5cceac4e4adb8f82708960e1cd2c29cb31f3 |
File details
Details for the file passagemath_giac-10.4.62-cp310-cp310-macosx_13_0_x86_64.whl
.
File metadata
- Download URL: passagemath_giac-10.4.62-cp310-cp310-macosx_13_0_x86_64.whl
- Upload date:
- Size: 28.1 MB
- Tags: CPython 3.10, macOS 13.0+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2cc088aa59ce3d87d69da0abf31b577a5607e37081f2b25d71a76dea9e9cfe06 |
|
MD5 | efcf9059fc5ff4e582c680bfca766449 |
|
BLAKE2b-256 | ee4a66456e861f0b6a9282f615fde7fbc1964ed2e7fe6731b2df1bb127c81415 |
File details
Details for the file passagemath_giac-10.4.62-cp39-cp39-macosx_14_0_arm64.whl
.
File metadata
- Download URL: passagemath_giac-10.4.62-cp39-cp39-macosx_14_0_arm64.whl
- Upload date:
- Size: 25.5 MB
- Tags: CPython 3.9, macOS 14.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5dad0a16b6f2edeba5a8645a42a1ef8a30acd011ec0bab0197769612619e4570 |
|
MD5 | 78b6afb9df349dcd61a7c56a51f29c77 |
|
BLAKE2b-256 | 58446c6591e3f9526980c30317e32acd17b6593be57af1eb0ca50908b27067b6 |
File details
Details for the file passagemath_giac-10.4.62-cp39-cp39-macosx_13_0_x86_64.whl
.
File metadata
- Download URL: passagemath_giac-10.4.62-cp39-cp39-macosx_13_0_x86_64.whl
- Upload date:
- Size: 28.1 MB
- Tags: CPython 3.9, macOS 13.0+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 18b86f71f2380ebcaaa740c4d720e695ca6b9fa9f2c7f1c4f5b7f6a57f34ce85 |
|
MD5 | d0f4f88c50693f4b0bafe354254dd3af |
|
BLAKE2b-256 | e1881b37f70fe1be27fc7162fca00a4725ad94d77b72f50f287f8c9a0817e8eb |