ViziSolve solves math problems. It does this by going one step at a time, highlighting each part as it is being used for the next line, and stating what it is doing at each step. Right now, it can solve most common algebra I level problems (not including graphing or word problems), and it may make a mistake once in a while. It runs on the Web.
The Java Algebra System (JAS) is an object oriented, type safe, multi-threaded approach to computer algebra. JAS provides a well designed software library using generic types for algebraic computations implemented in the Java programming language. The library can be used as any other Java software package, or it can be used interactively or interpreted through a Jython or JRuby front end. The focus at the moment is on commutative and solvable polynomials, power-series, multivariate polynomial factorization, Gröbner bases, and applications.
Mathomatic is a portable, general-purpose computer algebra system (CAS) that can solve, differentiate, simplify, combine, and compare algebraic equations, perform standard, complex number, modular, and polynomial arithmetic, etc. It does some calculus and is very easy to compile/install, learn, and use. The symbolic math application with a simple command-line interface is designed to be a colorful algebra calculator that is reliable, responsive, and convenient to use. The symbolic math library is lightweight and easy to include in other software, due to being written entirely in C with no additional dependencies.