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 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350

<?xml version="1.0" encoding="iso88591"?>
<!DOCTYPE html PUBLIC "//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="stylesheet" type="text/css" href="html.css" />
<title>Related projects</title>
</head>
<body class="main">
<h1>Related projects</h1>
<h2>Computer Algebra Systems using Java</h2>
<ul>
<li><p>
<a href="https://github.com/rjolly/scas" target="scas">ScAS</a> is
a computer algebra system developed in Scala. Scala has some more
features than Java to optimally support the implementation of a
computer algebra system. The basic structure of ScAS is developed
in cooperation with the basic structure of JAS, see the
coauthored papers in the <a href="intro.html#docu"
target="main">Documentation</a> section. ScAS is also a successor
of jsclmeditor.
</p>
</li>
<li><p>
<a href="http://jsclmeditor.sourceforge.net/" target="rela">jsclmeditor</a>
Java symbolic computing library and mathematical editor.
The goal of this project is to provide a Java symbolic computing library
and a mathematical editor acting as a frontend to the former.
There are several computer algebra systems available on the market,
most of them developed in other languages, mainly C/C++ and Lisp.
But the benefits of using Java in symbolic computation are great.
Aside from being widely used and to comply with various standards,
this language has two features of concern: readability and portability.
</p>
</li>
<li><p>
<a href="http://www.matheclipse.org" target="rela">MathEclipse</a>
is a Java Computer Algebra system. MathEclipse has functions for
arbitraryprecision integer arithmetic, matrices, vectors, finite sets,
derivatives, patternmatching rewriting rules and functional programming.
</p>
</li>
<li><p>
<a href="http://code.google.com/p/symja/" target="rela">Symja</a> 
a symbolic math system written in Java based on the MathEclipse libraries.
Features: arbitrary precision integers, rationals and complex numbers,
polynomials, differentiation, pattern matching and linear algebra.
</p>
</li>
<li><p>
<a href="http://www.geogebra.org" target="rela">GeoGebra</a>
is dynamic mathematics software for all levels of education that joins
arithmetic, geometry, algebra and calculus. On the one hand, GeoGebra
is an interactive geometry system. You can do constructions with
points, vectors, segments, lines, conic sections as well as functions
and change them dynamically afterwards. On the other hand, equations
and coordinates can be entered directly. Thus, GeoGebra has the
ability to deal with variables for numbers, vectors and points, finds
derivatives and integrals of functions and offers commands like Root
or Extremum. These two views are characteristic of GeoGebra: an
expression in the algebra view corresponds to an object in the
graphics view and vice versa.
</p>
</li>
<li><p>
<a href="http://www.mathpiper.org" target="rela">MathPiper</a>
is a new mathematicsoriented programming language which is simple
enough to be learned as a first programming language and yet powerful
enough to be useful in any science, mathematics, or engineering
related career. MathPiper is also a Computer Algebra System (CAS)
which is similar in function to the CAS which is included in the TI 89
and TI 92 calculators.
</p>
</li>
<li><p>
<a href="http://webuser.hsfurtwangen.de/~dersch/" target="rela">Jasymca</a>:
Programmable Java calculator. CAS (Computer Algebra System),
provides exact and symbolic datatypes, interactive graphics display of functions.
The user interface can be selected from either a Matlab/Octave/SciLabstyle,
or a GNUMaximastyle.
Runs on any Java SE and MEplatform: Windows, MacOS, Linux, Cellphone, PDA and others.
</p>
</li>
<li><p>
<a href="http://woody.cs.wichita.edu/gex/gex.html" target="rela">JGEX</a>:
Java Geometry Expert is an ongoing developing system which initially began in
early 2004 in Wichita State Univerisity. JGEX is a system which combines
our approach for visually dynamic presentation of proofs (VDDP),
dynamic geometry software (DGS), automated geometry theorem prover (GTP).
The VDDP part is the most distinctive part of JGEX. It is based on our work
on DGS and GTP. JGEX can be used to create proofs either manually and automatically.
It provides a seris of visual effects for presenting of these proofs.
With the applet version of JGEX, the user may create beautiful examples
and put them on the web to share with others
</p>
</li>
<li><p>
<a href="http://jlinalg.sourceforge.net/" target="rela">JLinAlg</a>
is an open source and easytouse Javalibrary for linear algebra that
is licensed under the GNU General Public License (GPL).
</p>
</li>
<li><p>
The <a href="http://commons.apache.org/math/" target="rela"
>Apache Commons Mathematics Library</a> is a library of
lightweight, selfcontained mathematics and statistics components
addressing the most common problems not available in the Java
programming language or Commons Lang.
</p>
</li>
<li><p>
<a href="http://java.symcomp.org/" target="rela">java.symcomp.org</a>
Java Library for
<a href="http://www.symboliccomputation.org/scscp" target="rela">SCSCP</a>
and <a href="http://www.openmath.org" target="rela">OpenMath</a>.
The libraries
<a href="http://java.symcomp.org/#openmath" target="rela"><tt>org.symcomp.openmath</tt></a>
and <a href="http://java.symcomp.org/#scscp" target="rela"><tt>org.symcomp.scscp</tt></a>
were developed in the
<a href="http://www.symboliccomputation.org" target="rela">SCIEnce Project</a>,
an Integrated Infrastructure Initiative, funded by the European Commission
under the Research Infrastructures Action of Framework 6.
<a href="http://java.symcomp.org/wupsi.html" target="rela">WUPSI</a>
is a Universal Popcorn SCSCP Interface  The SCSCP Swiss Army Knife.
</p>
</li>
<li><p> The
<a href="http://symbolaris.com/orbital/" target="rela">Orbital Library</a>
is a Java class library providing objectoriented representations
and algorithms for logic, mathematics, and artificial intelligence.
It comprises theorem proving, computer algebra, search and planning,
as well as machine learning algorithms.
</p>
</li>
<li><p>
<a href="http://redberry.cc/" target="rela">Redberry</a>
is an open source Java framework providing capabilities for manipulation
with tensors. The framework contains wide spectrum of algorithms required
by tensor algebra. It is designed to find analytical solutions of
complicated mathematical and physical problems.
</p>
</li>
<li><p>
<a href="http://jscience.org/" target="rela">Jscience</a>
is a set of Java Tools and Libraries for the Advancement of Sciences.
The system is not limited to computer algebra.
</p>
</li>
</ul>
<h2>Other Open Source Computer Algebra Systems</h2>
<ul>
<li><p>
<a href="http://www.singular.unikl.de/" target="rela">Singular</a>
is a Computer Algebra System for polynomial computations
with special emphasis on the needs of commutative algebra,
algebraic geometry, and singularity theory.
</p>
</li>
<li><p>
<a href="http://cocoa.dima.unige.it/" target="rela">CoCoA</a>
Computations in Commutative Algebra.
</p>
</li>
<li><p>
<a href="http://www.math.kobeu.ac.jp/Asir/" target="rela">Risa/Asir</a>
is an open source general computer algebra system.
</p>
</li>
<li><p>
<a href="http://www.mathemagix.org/" target="rela">Mathemagix</a>
is a free computer algebra and analysis system under development.
Standard libraries are available for algebraic computation
(large numbers, polynomials, power series, matrices, etc. based
on FFT and other fast algorithms) for exact and approximate computation.
This should make Mathemagix particularly suitable as a bridge between
symbolic computation and numerical analysis. The packages are written in
C++. They can both be used from the new compiler mmc, from the old
interpreter Mmxlight, or as standalone C++ libraries.
</p>
</li>
<li><p>
<a href="http://pari.math.ubordeaux.fr/" target="rela">Pari/GP</a>
is a widely used computer algebra system designed for
fast computations in number theory (factorizations, algebraic number theory,
elliptic curves...), but also contains a large number of
other useful functions to compute with mathematical entities
such as matrices, polynomials, power series, algebraic numbers, etc.,
and a lot of transcendental functions.
</p>
</li>
<li><p>
<a href="http://www.reducealgebra.com/" target="rela">Reduce</a> is an
interactive system for general algebraic computations of interest to
mathematicians, scientists and engineers. It has been produced by a
collaborative effort involving many contributors. Its capabilities include:
expansion and ordering of polynomials and rational functions;
substitutions and pattern matching in a wide variety of forms;
automatic and user controlled simplification of expressions;
calculations with symbolic matrices;
arbitrary precision integer and real arithmetic;
facilities for defining new functions and extending program syntax;
analytic differentiation and integration;
factorization of polynomials;
facilities for the solution of a variety of algebraic equations;
facilities for the output of expressions in a variety of formats;
facilities for generating optimized numerical programs from symbolic input;
calculations with a wide variety of special functions;
Dirac matrix calculations of interest to high energy physicists.
</p>
</li>
<li><p>
<a href="http://www.flintlib.org/" target="rela">FLINT</a>
is a C library for doing number theory.
FLINT provides types and functions for computing over various
base rings. FLINT uses many new algorithms and is sometimes
orders of magnitude faster than other available software.
FLINT is written in ANSI C and runs on many platforms, but is
currently mostly optimised for x86 and x8664 architectures.
It is designed to be threadsafe. FLINT depends on the MPIR (GMP)
and MPFR libraries.
</p>
</li>
<li><p>
<a href="http://maxima.sourceforge.net/" target="rela">Maxima</a> is a system
for the manipulation of symbolic and numerical expressions, including
differentiation, integration, Taylor series, Laplace transforms,
ordinary differential equations, systems of linear equations,
polynomials, and sets, lists, vectors, matrices, and tensors. Maxima
yields high precision numeric results by using exact fractions,
arbitrary precision integers, and variable precision floating point
numbers. Maxima can plot functions and data in two and three
dimensions.
</p>
</li>
<li><p>
<a href="http://www.math.uiuc.edu/Macaulay2/" target="rela">Macaulay 2</a> is
a software system devoted to supporting research in algebraic geometry
and commutative algebra, whose creation has been funded by the
National Science Foundation since 1992.
Macaulay2 includes core algorithms for computing Gröbner bases and
graded or multigraded free resolutions of modules over quotient
rings of graded or multigraded polynomial rings with a monomial
ordering. The core algorithms are accessible through a versatile
high level interpreted user language with a powerful debugger
supporting the creation of new classes of mathematical objects and
the installation of methods for computing specifically with
them. Macaulay2 can compute Betti numbers, Ext, cohomology of
coherent sheaves on projective varieties, primary decomposition of
ideals, integral closure of rings, and more.
</p>
</li>
<li><p>
<a href="http://www.axiomdeveloper.org/" target="rela">Axiom</a> is a
general purpose Computer Algebra system. It is useful for research and
development of mathematical algorithms. It defines a strongly typed,
mathematically correct type hierarchy. It has a programming language
and a builtin compiler. In 2007, Axiom was forked into two different
open source projects: OpenAxiom, and FriCAS.
<br />
<a href="http://sourceforge.net/projects/fricas/" target="rela">FriCAS</a>
is an advanced computer algebra system. Its capabilities range
from calculus (integration and differentiation) to abstract algebra.
It can plot functions and has integrated help system.
<br />
<a href="http://www.openaxiom.org/" target="rela">OpenAxiom</a> is an open
source platform for symbolic, algebraic, and numerical
computations. It offers an interactive environment, an expressive
programming language, a compiler, a large set of mathematical
libraries of interest to researchers and practitioners of
computational sciences.
</p>
</li>
<li><p>More <a href="http://www.opensourcemath.org/opensource_math.html" target="rela"
>open source mathematical programs</a>.
</p>
</li>
<li><p><!a href=""></a>to be continued
</p>
</li>
</ul>
<h2>Computer Algebra Systems using other Object Oriented Programing Languages</h2>
<ul>
<li><p>
<a href="http://www.sagemath.org/" target="rela">Sage</a>
is an Open Source Mathematics Software
creating a viable free open source alternative to
Magma, Maple, Mathematica, and Matlab.
Sage is written in Python and Cython as an interface to
other open source CAS Singular, PARI/GP, GAP, gnuplot, Magma, and Maple.
</p>
</li>
<li><p>
<a href="http://code.google.com/p/sympy/" target="rela">SymPy</a>
is a Python library for symbolic mathematics.
It aims to become a fullfeatured computer algebra system (CAS)
while keeping the code as simple as possible in order
to be comprehensible and easily extensible.
SymPy is written entirely in Python and does not require any external libraries.
</p>
</li>
<li><p>
<a href="http://www.ginac.de/" target="rela">GiNaC</a>
has been developed to become a replacement engine for xloops which
in the past was powered by the Maple CAS. Its design is revolutionary
in a sense that contrary to other CAS it does not try to
provide extensive algebraic capabilities and a simple programming language
but instead accepts a given language (C++) and extends it by a
set of algebraic capabilities.
The name GiNaC is an iterated and recursive abbreviation for
GiNaC is Not a CAS, where CAS stands for Computer Algebra System.
</p>
</li>
<li><p>
<a href="http://www.aei.mpg.de/~peekas/cadabra/" target="rela">Cadabra</a>
is a computer algebra system (CAS) designed specifically for the
solution of problems encountered in field theory.
It has extensive functionality for tensor polynomial simplification
including multiterm symmetries, fermions and anticommuting variables,
Clifford algebras and Fierz transformations, implicit coordinate dependence,
multiple index types and many more.
The input format is a subset of TeX.
Both a commandline and a graphical interface are available.
</p>
</li>
</ul>
<hr />
<address><a name="contact"
href="mailto:kredel@at@rz.unimannheim.de">Heinz Kredel</a>
</address>
<p>
<! Created: Thu Aug 23 21:09:21 CEST 2007 >
<! hhmts start >
Last modified: Sat Jan 28 15:07:25 CET 2012
<! hhmts end >
</p>
<!p align="right" >
$Id: related.html 4345 20121231 18:35:10Z kredel $
</p>
</body>
</html>
