1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
|
JAS: Java Algebra System
========================
Version 2.7, 2023
by Heinz Kredel, University of Mannheim, kredel at rz.uni-mannheim.de
Copyright (c) 2000-2023 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/
Requirements
------------
A Java JDK 1.11.
Documentation see index.html.
Required libraries are log4j-core-2.17.1.jar, log4j-api-2.17.1.jar
(from Apache Log4j2 or jars from some other compatible logging
framework like SLF4J)
and junit-4.12.jar, hamcrest-core-1.3.jar (from Junit 4 for tests in trc)
Usage
-----
> java -cp {other_jar_files}:jas-<version>-bin.jar:. <sample class>
for example
> java -cp ../lib/log4j-core-2.17.1.jar:../lib/log4j-api-2.17.1.jar:jas-2.6.5428-bin.jar edu.jas.application.RunGB seq examples/trinks7.jas
or
> jruby examples/<some input file>.rb
or
> jas examples/<some input file>.rb
for example
> ./jas examples/all_rings.rb
or
> jython examples/<some input file>.py
or
> jas -py examples/<some input file>.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-<version>-bin.jar:. <your sample code>
Versions and jar files
----------------------
JAS is distributed in 3 jar files:
jas-<version>-bin.jar: or
jas-<version>.jar: the Java class files
jas-<version>-src.zip: the java source code
jas-<version>-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
nolog.jar: a substitute for log4j to disable any 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_<version>-all.deb a Debian 10 (buster) package usable in MathLibre
ruboto-irb-jas-release.apk an Android App based on Ruboto (defunct)
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
https://oss.sonatype.org/
groupId: de.uni-mannheim.rz.krum, artifactId: jas, version (for example): 2.7.50
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
jas-2.7.80-bin.jar
"2.7" is the JAS version number and
"80" is the git 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-<version>-src.zip
> cd <JAS version number>
> jar -xf jas-<version>-bin.jar
> jar -xf jas-<version>-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: 1cce2e100633f66aec4569b73fe887068886aab4 $
|