Computer algebra systems can be special purpose, focusing on only a few types of symbolic math, to very large, general purpose programs that do almost everything (for example, the free CAS Maxima, which is the oldest CAS that is still under development). The results output by a good computer algebra system are often exact, simple, and generalized to work in all possible cases. Computer programs do have bugs, so important results should always be verified for correctness.