What is Pynac?
Pynac is a derivative of the C++ library GiNaC, which allows manipulation of symbolic expressions. It currently provides the backend for symbolic expressions in Sage.
The main difference between Pynac and GiNaC is that Pynac relies on Sage to provide the operations on numerical types, while GiNaC depends on CLN for this purpose.
For more information on how Pynac came to be, and the differences between Pynac and GiNaC, please visit the FAQ page.
Contributors
- Burcin Erocal – main developer
- William Stein – main developer
- Robert Bradshaw – various fixes and improvements during the switch of the symbolics backend in Sage
- Mike Hansen – various fixes and improvements during the switch of the symbolics backend in Sage
- Clement Pernet – helped with initial removal of CLN dependency.
- Golam Mortuza Hossain
- Jean-Pierre Flori – fixed inconsistencies in printing order which led to segfaults, various bug fixes
- Volker Braun – reimplemented infinity handling, help with ordering fixes.
- Julien Puydt – build system improvements.
- Titus Nicolae – GSoC 2012 student - implemented number types to access GMP, etc. directly, benchmarking framework, bug fixes
- Sebastien Gouezel – printing fixes
Pynac would not have been possible if it wasn’t for the great work of the GiNaC developers.
License
Pynac is free software, distributed under the terms and conditions of the GNU general public license (GPL) version 2, or (at your option) any later version.
Download
Source tarball for the latest version is available here:
Older versions are here.
Dependencies
In order to use Pynac, one needs to have the Sage library available. Also see the FAQ entry about this.
Contact
We use the pynac-devel google group for discussions. You can also e-mail the developers directly at burcin@erocal.org and wstein@gmail.com with comments and suggestions.