j'Abr is a collection of packages for computer algebra in Java. It contains the basics of a computer algebra system (CAS) and important algorithms for solving symbolic (and numerical) mathematical problems.
The j'Abr (alias jAbr) packages provide algorithms for Gröbner Bases, gcd, modular reduction, symbolic differentiation, Chinese remainder algorithm, and even algorithms for symbolically solving classes of differential equation systems. It also contains numerical and statistical algorithms like splines, interpolation, cg and Gaussian equation solving as well as function regression and for numerical solutions of differential equations. As basic data types it provides object-oriented data representation of vectors, matrices, multivariate polynomials, univariate polynomials, real numbers, rationals, integers, complex numbers, quotients, fractions, as well as symbolic values. Whereas the j'Abr architecture supports a strict separation of abstract mathematical data representation and computer implementation such that the very same data types can be supported by multiple implementational variants without change. Arbitrary modular polynomial arithmetic is possible simply by using quotients via Gröbner Bases. The j'Abr components have been implemented in Java and are available as a part of the Orbital library.
Componentsj'Abr provides components of four different kinds:
- data types representing mathematical structures and their implementations
- function representations and functional compositions thereof
- symbolic algorithms for computational algebra
- additional tools like mathematical expression parsing and function plotting, miscellaneous statistical and numerical algorithms
DownloadThe computer algebra system components j'Abr are part of the
- Orbital library
- See packages orbital.math, orbital.math.functional.