The Java Algebra System (JAS) is an object oriented, type safe, multi-threaded approach to computer algebra. JAS provides a well designed software library using generic types for algebraic computations implemented in the Java programming language. The library can be used as any other Java software package, or it can be used interactively or interpreted through a Jython or JRuby front end. The focus at the moment is on commutative and solvable polynomials, power-series, multivariate polynomial factorization, Gröbner bases, and applications.
|Tags||Mathematics Scientific/Engineering algebra education Symbolic Computation|
|Operating Systems||Java Capable|
|Implementation||Java Jython JRuby|
JAS code analysis is available from Ohloh at
Release Notes: This release adds new solvable local residue ring SolvableLocalResidue as solvable quotient field modulo an ideal. Additionally there are new generic solvable polynomials: QLRSolvablePolynomial with abstracted generic coefficients from solvable quotient, local or local-residue rings. The abstracting interfaces QuotPair and QuotPairFactory are implemented in the corresponding classes. Scripting examples for the new classes are adjusted and extended. Differences were removed and different versions of Run*GB stand alone Gröbner base programs were cleaned up.
Release Notes: The Android version of JAS, based on Ruboto (JRuby for Android), is now available with signed code and can be directly installed. This release contains new algorithms for least common multiples and a trial greatest common divisor in solvable polynomial rings. Additionally, the Apel-Lassner canonical simplifier for solvable quotients is available. Some refactoring was required to break package dependency cycles. More Findbugs issues have been solved. Java 5 compatibility has been dropped.
Release Notes: This release contains new distributed Gröbner base algorithms based on the Java bindings of OpenMPI similarly to the MPJ version. Since both MPI and MPJ are not thread-safe, a work-around was developed to split the transport layer to allow selection of TCP/IP sockets or MPI/MPJ channels for transport. The socket-based distributed hash table now implements the clear() method, which solves non-specific errors in iterated distributed Gröbner base computations. The solvable multiplications have been simplified. Fixes and improvements have been made for Jython and JRuby scripts.
Release Notes: This release adds new algorithms for solvable polynomial rings over solvable local rings in classes LocalSolvablePolynomialRing and LocalSolvablePolynomial and new scripting examples for such solvable polynomial rings. The handling of non-commutative relations of solvable polynomials has been refactored to implement and use an interface RelationGenerator. Some more Findbugs and Eclipse issues and several problems with jruby of Android have been fixed and improved.
Release Notes: This release adds new algorithms for solvable polynomial rings over solvable residue rings in classes ResidueSolvablePolynomialRing and ResidueSolvablePolynomial, new methods to compute annihilators with respect to ideals and solvable ideals, new scripting examples for solvable polynomials with solvable residue coefficients, and a fix for associativity of solvable multiplication by considering all cases.