Overview
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.
Components
j'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
Download
The computer algebra system components j'Abr are part of the
This package has been cited in the following work by Heinz Kredel.
[Kre06]
Heinz Kredel.
On the Design of a Java Computer Algebra System.
In Proceedings of the 4th international symposium on Principles and practice of programming in Java,
ACM International Conference Proceeding Series; Vol. 178, pages 143-152. ACM, 2006.
[pdf]
Historical Note
This computer algebra system is called j'Abr in honour of
the mathematician Abu Abd-Allah ibn Musa al'Khwarizmi (≈790-850).
Al'Khwarizmi has written an important treatise "Hisab al-jabr w'al-muqabala" in
830 AD about a systematic approach for the solution of quadratic expressions including
geometric principles. The name
"algebra" derives from the term "al-jabr" coined by Al'Khwarizmi. In his book,
al-jabr describes the process of putting an algebraic equation into a form
that reveals the solutions.
|