Yacas is an easy to use, general purpose Computer Algebra System, a program for symbolic manipulation of mathematical expressions. It uses its own programming language designed for symbolic as well as arbitrary-precision numerical computations. The system has a library of scripts that implement many of the symbolic algebra operations; new algorithms can be easily added to the library. YACAS comes with extensive documentation (hundreds of pages) covering the scripting language, the functionality that is already implemented in the system, and the algorithms we used.

Yacas (Yet Another Computer Algebra System) is a small and highly flexible general-purpose computer algebra system and programming language. The language has a familiar, C-like infix-operator syntax. The distribution contains a small library of mathematical functions, but its real strength is in the language in which you can easily write your own symbolic manipulation algorithms. The core engine supports arbitrary precision arithmetic, and is able to execute symbolic manipulations on various mathematical objects by following user-defined rules.

**Yacas Features:**

- Arithmetic and other operations on numbers
- Elementary functions
- Calculus
- Simplification of expressions
- Solvers
- Differential Equations
- Propositional logic theorem prover
- Linear Algebra
- Operations on polynomials
- List operations
- Graphs
- Functional operators
- Control flow functions
- Predicates
- Constants
- Variables
- Input/output
- Plotting
- String manipulation
- Random numbers
- Probability and Statistics
- Special functions
- Number theory
- Numerical methods
- Physics
- Functions related to programming in Yacas
- Debugging
- Miscellaneous