Maxima is a system for manipulating symbolic and numeric expressions. It is used by many universities and institutions around the world to teach mathematics. Maxima started at MIT under the name of Macsyma.
Maxima can do a lot of symbolic mathematics including differentiation, integration, Taylor series, Laplace transforms, ordinary differential equations, systems of linear equations, polynomials, sets, lists, vectors, matrices and tensors. Maxima yields high precision numerical 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.
Maxima is cross-platform software with Linux, Windows, MacOS, and Android-based versions available.