jas  2.7.10
About: JAS (Java Algebra System) is an object oriented, type safe and multi-threaded approach to computer algebra.
  Fossies Dox: jas-2.7.10-src.zip  ("unofficial" and yet experimental doxygen-generated source code documentation)  

jas Documentation

Some Fossies usage hints in advance:

  1. To see the Doxygen generated documentation please click on one of the items in the steelblue colored "quick index" bar above or use the side panel at the left which displays a hierarchical tree-like index structure and is adjustable in width.
  2. If you want to search for something by keyword rather than browse for it you can use the client side search facility (using Javascript and DHTML) that provides live searching, i.e. the search results are presented and adapted as you type in the Search input field at the top right.
  3. Doxygen doesn't incorporate all member files but just a definable subset (basically the main project source code files that are written in a supported language). So to search and browse all member files you may visit the Fossies jas-2.7.10-src.zip contents page and use the Fossies standard member browsing features (also with source code highlighting and additionally with optional code folding).

JAS: Java Algebra System

Version 2.7, 2021

by Heinz Kredel, University of Mannheim, kredel at rz.uni-mannheim.de

Copyright (c) 2000-2021 by Heinz Kredel.

Programms released under GPL or LGPL, see COPYING.jas or COPYING.lgpl.jas.

Web home-page: http://krum.rz.uni-mannheim.de/jas/


A Java JDK 1.8.

Documentation see index.html.

Required libraries are log4j-core-2.5.jar, log4j-api-2.5.jar (from Apache Log4j2, or mylog.jar, droidlog.jar) and junit-4.12.jar, hamcrest-core-1.3.jar (from Junit for tests in trc)


java -cp {other_jar_files}:jas--bin.jar:.

for example

java -cp ../lib/log4j-core-2.5.jar:../lib/log4j-api-2.5.jar:jas-2.6.5428-bin.jar edu.jas.application.RunGB seq examples/trinks7.jas


jruby examples/.rb


jas examples/.rb

for example

./jas examples/all_rings.rb


jython examples/.py


jas -py examples/.py

The shell script "jas" figures out the Java, jruby, jython and JAS environment and runs the respective scripting interpreter. See

man -l doc/jas.1 for more information.

Compilation of your own Java files using the JAS library can be done with the "javac" command.

javac -cp {other_jar_files}:jas--bin.jar:.

Versions and jar files

JAS is distributed in 3 jar files:

jas--bin.jar: the Java class files jas--src.zip: the java source code jas--doc.zip: the Java doc, epydoc, jrdoc and more info files

optional jar files which require further installed packages:

jas-meditor.jar: the interface to meditor jas-jython.jar: an interface for Java scripting jas-mpj.jar: MPI Java depending code mylog.jar: a substitute for log4j to use Java logging droidlog.jar: a substitute for log4j to use Android logging jlinalg_adapter.jar: an adaptor to parts of JLinAlg commons-math_adapter.jar: an adaptor to parts of Apache commons.math

pre packaged JAS versions:

jas-java_-all.deb a Debian (wheezy) package usable in MathLibre ruboto-irb-jas-release.apk an Android App based on Ruboto

There are GIT repositories for the scource code, which can be cloned with

git clone http://krum.rz.uni-mannheim.de/jas.git jas or git clone https://github.com/kredel/java-algebra-system.git jas

There is a Maven compatible repository for bytecode, source and javadocs at


groupId: edu.jas, artifactId: jas, version (for example): 2.6.5675

The version is specified by a two digit major.minor number and a revision number. The revision number was the subversion revision number, but with git it is just a consecutive number. For example in


"2.5" is the JAS version number and "5380" is the subversion revision number

The jas--bin.jar and jas--doc.jar can be generated from jas-*-src.jar. The fastest way to get a complete JAS install, is

jar -xf jas--src.zip cd jar -xf jas--bin.jar jar -xf jas--doc.zip

If you have a working Ant with Ivy, the last two steps can be replaced by

ant resolve ant compile ant doc

provided you have setup build.xml, ivy.xml for the required libraries.

Directory structure

. main directory, entry to html documentation +doc html documentation, javadocs, jython docs, jruby docs +edu Java class files +examples examples for jython, jruby and jas +images images for html docs +jython JSR 233 scripting interface +meditor JSR 233 scripting interface for meditor +mpj MPI Java versions of distributed Groebner bases +mpi OpenMPI Java versions of distributed Groebner bases +jlinalg_adaper some adapter classes to JLinAlg +commons-math_adaper some adapter classes to Apache Commons Math3 +src source code +trc junit test sources +test junit test output and log4j output

../lib directory for required libraries, not included

$Id: 2cc511ba963a5938354493dfbae702e85c8c664d $