Symbolic Computation

This page is in English in order to address the international audience at RISC.

Development in Symbolic Computation
Grounding educational math software on Computer Theorem Proving (CTP) does not mean, that such software encounters learners with proofs. Rather, a certain combination of deduction and computation by 'Lucas-Interpretation' builds upon a novel kind of programming language, which in turn builds upon computer algebra.

In the ISAC project programming algorithms from computer algebra needs not to bother with user interaction at all: this is delegated to Lucas-Interpretation, which automatically passes control to the user at 'tactics' extending the current calculation. So, the sub-projects below all concern purely mathematical expertise ranging from seminar/projects and theses for Bakkalaureat to theses for Master and beyond.

All these sub-projects will use knowledge mechanised in the CTP Isabelle and aim at an implementation which is appropriate to be enclosed into the distribution of Isabelle. The theses below are already announced at RISC:


 * 1) Simplification of multivariate rationals (already assigned as a master thesis): Single stepping systems serve educational purposes by giving readable traces of rewriting steps. However, cancellation of multivariate rationals cannot be done by rewriting; this requires an algorithm well documented in a book by Franz Winkler [1]. This sub-project starts with ISACs simplifier for polynomials, adds the algorithm for cancellation and probably extends the simplifier to complex numbers --- and as such contribute to software actually used in education. [1] Franz Winkler, Polynomial Algorithms in Computer Algebra. Series: Texts & Monographs in Symbolic Computation, ISBN 978-3-211-82759-8, 1996.
 * 2) Rewriting for Simplification of  Complex Numbers (master thesis): Rewriting is a fundamental technique for functional languages, which presently gain importance due to their advantages for the upcoming multi core processors. Rewriting is the appropriate technique for simplifying terms with complex numbers, too. This master-thesis shall implement a simplifier for complex numbers in the functional language SML. The implementation shall be integrated into the educational mathematics assistant ISAC, and there will be used in various application areas from signal processing to electro engineering. ISAC's rewrite engine uses theorems proved by the computer theorem prover Isabelle, thus exploiting the mechanized mathematics knowledge which gains importance due to increasing demand for software verification.  Experience in SML is not mandatory, rather students interested in learning write good functional programs are welcome. The project has a bias towards software technology, so students in mathematics as well as in computer science are addressed.
 * 3) Re-engineering integration for single stepping systems (master thesis): Single stepping systems serve educational purposes by giving readable traces of computational steps. Integration is amenable to traces of rewrite steps differentiating the antiderivative (found somehow [2,3]) and show the rewrites in reverse order. This sub-project does the first step for integration within 3 tasks:   identify classes of integrals which can be solved by elementary methods (e.g. partial fractions) and implement them in isac assemble the classes in a hierarchical structure and implement them according to isac's problem refinement mechanism investigate how state-of-the-art techniques of integration can contribute to assign certain integrals to the classes identified and implemented, and how these techniques can provide other kinds of elementary explanations.  [2] Risch, R.H., The Problem of Integration in Finite Terms. Transactions of the American Mathematical Society 139: p.167-189, 1969. [3] Bronstein, M., Symbolic Integration I. Springer-Verlag. Berlin Heidelberg.
 * 4) Re-engineering equation solving for single stepping systems (master thesis): State-of-the-art in solving polynomial equation systems are Groebner bases and the Buchberger algorithm [4]. The isac-project www.ist.tugraz.at/projects/isac builds a learning environment providing support for beginners continuously up to the state-of-the-art in computer mathematics. This sub-project does the first step in equation solving within 3 tasks:  identify classes of equational systems which can be solved by elementary methods (e.g. cut a circle with a straight line) and implement them in isac by use of an existing tool box for rewrite orders assemble the classes in a hierarchical structure and implement them according to isac's problem refinement mechanism  investigate how Groebner bases can contribute to assign certain equational systems to the classes identified and implemented, and how the Buchberger algorithms can provide other kinds of elementary explanations [5].  [4] Buchberger, B., Theoretical Basis for the Reduction of Polynomials to Canonical Forms. ACM SIGSAM Bull. 10 (3): 19-29. ACM. 1976 [5] Middeldorp, A. and Starceviç M., A Rewrite Approach to Polynomial Ideal Theory. report CS-R9160, CWI, Amsterdam, 1991.

A variety of further ideas is ready to be worked on.