*Software Engineering Project:*

## Building up the Domain of Polynomials with Functors in Theorema

#### Project Description

Theorema is an ongoing project in automated theorem proving, which aims at the
implementation of a software system that integrates all aspects of
mathematical work (i.e. defining and proving theorems, implementing
algorithms, computing, presenting mathematical material, etc.) in one common
framework.
Theorema defines its own mathematical language, which should
contain all constructs necessary in order to support all these workphases. One
ingredient of this language is the concept of functors, that allow to
construct new domains from already existing domains (a domain in this case is
a set of objects together with a set of operations on them). In other words, a
functor describes how the new objects are built from existing objects and how
the new operations are defined in terms of already existing operations on the
objects that make up the new object (e.g. rational numbers are represented as
pairs of integers, operations on rational numbers are defined in terms of
operations on the integers involved). Using this concept the domain of
multivariate polynomials should be built up based on the existing Theorema
language components and should be embedded into the whole Theorema system.

The implementation language used is Mathematica 3.0, no Theorema specific
tools for debugging and testing have been developped yet.

This project would be suited best for those who intend to join the Theorema
group later in order to understand the philosophy of the system and get the
flavour of how things are supposed to work in the Theorema system.

Contact person: Wolfgang
Windsteiger

Last modified: Wed Feb 4 12:01:52 MET 1998