Oberwolfach References on Mathematical Software

22 Search Results

Axiom

Axiom 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 built-in compiler.

More information

CASA

CASA is a special-purpose system for computational algebra and constructive algebraic geometry. The system has been developed since 1990. CASA is the ongoing product of the Computer Algebra Group at the Research Institute for Symbolic Computation (RISC-Linz), the University of Linz, Austria, under the direction of Prof. Winkler. The system is built on the kernel of the widely used computer algebra system Maple.

More information

CoCoA

CoCoA is a system for Computations in Commutative Algebra. It is able to perform simple and sophisticated operations on multivaraiate polynomials and on various data related to them (ideals, modules, matrices, rational functions). For example, it can readily compute Grobner bases, syzygies and minimal free resolution, intersection, division, the radical of an ideal, the ideal of zero-dimensional schemes, Poincare' series and Hilbert functions, factorization of polynomials, toric ideals. The capabilities of CoCoA and the flexibility of its use are further enhanced by the dedicated high-level programming language. For convenience, the system offers a textual interface, an Emacs mode, and a graphical user interface common to most platforms.

More information

Fermat

Fermat is a super calculator - computer algebra system, in which the basic items being computed can be rational numbers, modular numbers, elements of finite fields, multivariable polynomials, multivariable rational functions, or multivariable polynomials modulo other polynomials. Fermat is available for Mac OS, Windows, Unix, and Linux. It is shareware. The basic “ground ring" F is the field of rational numbers. One may choose to work modulo a specified integer n, thereby changing the ground ring F from Q to Z/n. On top of this may be attached any number of unevaluated variables t_1, t_2, .. t_n., thereby creating the polynomial ring F[t_1, t_2, .. t_n] and its quotient field, the rational functions. Further, polynomials p, q, .. can be chosen to mod out with, creating the quotient ring F(t_1, t_2, ..)/[p, q, ...]. It is possible to allow Laurent polynomials. Once the computational ring is established in this way, all computations are of elements of this ring.

More information

GAP

GAP is a system for computational discrete algebra, with particular emphasis on Computational Group Theory. GAP provides a programming language, a library of thousands of functions implementing algebraic algorithms written in the GAP language as well as large data libraries of algebraic objects. GAP is used in research and teaching for studying groups and their representations, rings, vector spaces, algebras, combinatorial structures, and more. GAP is developed by international cooperation. The system, including source, is distributed freely under the terms of the GNU General Public License. You can study and easily modify or extend GAP for your special use. The current version is GAP 4, the older version GAP 3 is still available.

More information

Givaro

In the joint CNRS-INRIA / INPG-UJF project APACHE, Givaro is a C++ library for arithmetic and algebraic computations. Its main features are implementations of the basic arithmetic of many mathematical entities: Primes fields, Extensions Fields, Finite Fields, Finite Rings, Polynomials, Algebraic numbers, Arbitrary precision integers and rationals (C++ wrappers over gmp) It also provides data-structures and templated classes for the manipulation of basic algebraic objects, such as vectors, matrices (dense, sparse, structured), univariate polynomials (and therefore recursive multivariate). It contains different program modules and is fully compatible with the LinBox linear algebra library and the Athapascan environment, which permits parallel programming.

More information

HiFlow³

HiFlow³ is a multi-purpose finite element software providing powerful tools for efficient and accurate solution of a wide range of problems modeled by partial differential equations. Based on object-oriented concepts and the full capabilities of C++ the HiFlow³ project follows a modular and generic approach for building efficient parallel numerical solvers. It provides highly capable modules dealing with the mesh setup, finite element spaces, degrees of freedom, linear algebra routines, numerical solvers, and output data for visualization. Parallelism – as the basis for high performance simulations on modern computing systems – is introduced on two levels: coarse-grained parallelism by means of distributed grids and distributed data structures, and fine-grained parallelism by means of platform-optimized linear algebra back-ends.

More information

KANT

KASH/KANT is a computer algebra system for sophisticated computations in algebraic number fields and global function fields. It has been developed under the project leadership of Prof. Dr. M. Pohst at Technische Universität Berlin.

More information

LiDIA

LiDIA is a C++ library for computational number theory which provides a collection of highly optimized implementations of various multiprecision data types and time-intensive algorithms.

More information

LiE

LiE is the name of a software package that enables mathematicians and physicists to perform computations of a Lie group theoretic nature. It focuses on the representation theory of complex semisimple (reductive) Lie groups and algebras, and on the structure of their Weyl groups and root systems. LiE does not compute directly with elements of the Lie groups and algebras themselves; it rather computes with weights, roots, characters and similar objects.

More information

LinBox

LinBox is a C++ template library for exact, high-performance linear algebra computation with dense, sparse, and structured matrices over the integers and over finite fields. LinBox has the following top-level functions: solve linear system, matrix rank, determinant, minimal polynomial, characteristic polynomial, Smith normal form and trace. A good collection of finite field and ring implementations is provided, for use with numerous black box matrix storage schemes.

More information

M4RI

M4RI is a library for fast arithmetic with dense matrices over F2.

More information

Magma

Magma is a large, well-supported software package designed to solve computationally hard problems in algebra, number theory, geometry and combinatorics. It provides a mathematically rigorous environment for computing with algebraic, number-theoretic, combinatoric and geometric objects.

More information

Maple

Maple is an environment for scientific and engineering problem-solving, mathematical exploration, data visualization and technical authoring.

More information

MuPad

MuPAD is a mathematical expert system for doing symbolic and exact algebraic computations as well as numerical calculations with almost arbitrary accuracy. For example, the number of significant digits can be chosen freely. Apart from a vast variety of mathematical libraries the system provides tools for high quality visualization of 2- and 3-dimensional objects. On Microsoft Windows, Apple Macintosh and Linux systems, MuPAD offers a flexible notebook concept for creating mathematical documents combining texts, graphics, formulas, computations and mathematical visualizations and animations. On Microsoft Windows MuPAD further supports the technologies OLE, ActiveX Automation, DCOM, RTF and HTML. Thus it offers a natural integration in Office applications like Word or PowerPoint as well as others.

More information

NTL

NTL is a high-performance, portable C++ library providing data structures and algorithms for manipulating signed, arbitrary length integers, and for vectors, matrices, and polynomials over the integers and over finite fields.

More information

PARI/GP

PARI/GP 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. PARI is also available as a C library to allow for faster computations.

More information

PolyBoRi

The core of PolyBoRi is a C++ library, which provides high-level data types for Boolean polynomials and monomials, exponent vectors, as well as for the underlying polynomial rings and subsets of the powerset of the Boolean variables. As a unique approach, binary decision diagrams are used as internal storage type for polynomial structures. On top of this C++-library we provide a Python interface. This allows parsing of complex polynomial systems, as well as sophisticated and extendable strategies for Gröbner base computation. PolyBoRi features a powerful reference implementation for Gröbner basis computation.

More information

Risa/Asir

Risa/Asir is a general computer algebra system and also a tool for various computation in mathematics and engineering. The development of Risa/Asir started in 1989 at FUJITSU. Binaries have been freely available since 1994 and now the source code is also free. Currently Kobe distribution is the most active branch of its development. We characterize Risa/Asir as follows: (1) An environment for large scale and efficient polynomial computation. (2) A platform for parallel and distributed computation based on OpenXM protocols.

More information

Sage

SAGE is a framework for number theory, algebra, and geometry computation. It is open source and freely available under the terms of the GNU General Public License (GPL). SAGE is a Python library with a customized interpreter. It is written in Python, C++, and C (via Pyrex). Python (http://www.python.org) is an open source object-oriented interpreted language, with a large number of libraries, e.g., for numerical analysis, which are available to users of SAGE. Python can also be accessed in library mode from C/C++ programs. SAGE provides an interface to several important open source libraries, including Cremona’s MWRANK library for computing with elliptic curves, the PARI library (pari.math.u-bordeaux.fr) for number theory, Shoup’s number theory library NTL (http://www.shoup.net/ntl/), SINGULAR (http://www.singular.uni-kl.de) for commutative algebra, GAP (http://www.gap-system.org) for group theory and combinatorics, and maxima (http://maxima.sourceforge.net) for symbolic computation and calculus.

More information

SINGULAR

SINGULAR is a Computer Algebra system for polynomial computations in commutative algebra, algebraic geometry, and singularity theory. SINGULAR's main computational objects are ideals and modules over a large variety of baserings. The baserings are polynomial rings over a field (e.g., finite fields, the rationals, floats, algebraic extensions, transcendental extensions), or localizations thereof, or quotient rings with respect to an ideal. SINGULAR features fast and general implementations for computing Groebner and standard bases, including e.g. Buchberger's algorithm and Mora's Tangent Cone algorithm. Furthermore, it provides polynomial factorizations, resultant, characteristic set and gcd computations, syzygy and free-resolution computations, and many more related functionalities. Based on an easy-to-use interactive shell and a C-like programming language, SINGULAR's internal functionality is augmented and user-extendible by libraries written in the SINGULAR programming language. A general and efficient implementation of communication links allows SINGULAR to make its functionality available to other programs.

More information

SYNAPS

SYNAPS (Symbolic and Numeric APplicationS) is a library developed in C++. The aim of this open source project is to provide a coherent and efficient library for symbolic and numeric computation. It implements data-structures and classes for the manipulation of basic objects, such as (dense, sparse, structured) vectors, matrices, univariate and multivariate polynomials. It also provides fundamental methods such as algebraic number manipulation tools, different types of univariate and multivariate polynomial root solvers, resultant computations, ...

More information