GiNaC

From Wikipedia, the free encyclopedia

GiNaC
Developed by Christian Bauer, Alexander Frink, Richard B. Kreckel, et al.
Latest release 1.4.3 / April 4, 2008
Written in C++
OS Cross-platform
Genre Mathematical software
License GPL
Website http://www.ginac.de/

GiNaC is a free computer algebra system released under the GNU General Public License. The name is a recursive acronym for GiNaC is Not a CAS (Computer Algebra System). This misleading name is an allusion to the GNU project.

What distinguishes GiNaC from most other computer algebra systems is that it does not provide a high-level interface for user interaction. Rather, it encourages its users to write symbolic algorithms directly in C++, which is GiNaC's implementation programming language. Algebraic syntax is achieved in C++ through the use of operator overloading. The name GiNaC is also explained by its developers' perception that most "computer algebra systems" put too much emphasis on a high-level interface and too little on interoperability.

GiNaC uses the CLN library for implementing arbitrary precision arithmetic. Symbolically, it can do multivariate polynomial arithmetic and compute GCDs, series expansions and matrices. It is equipped to handle certain non-commutative algebras which are extensively used in theoretical high energy physics: Clifford algebras, SU(3) Lie_algebras, and Lorentz tensors. Due to this, it is extensively used in dimensional regularization computations — but it is not restricted to physics.

[edit] See also

[edit] External links

Languages