SymbolicC++:An Introduction to Computer Algebra using Object-Oriented Programming