Building Up Hierarchical Mathematical Domains Using Functors in TH∃OREM∀

Wolfgang Windsteiger · Electronic Notes in Theoretical Computer Science · 1999

The world of mathematical domains is structured hierarchically. There are elementary domains and there are well-known techniques how to build up new domains from existing ones. Which of the domains to view as the actual basis of the hierarchy is the freedom of the mathematician who wants to work with these domains and it depends of course on the intention of their use. The strength of the concept lies, however, in the fact that a new domain is constructed from given domains by well-defined rules, which do not depend on the actually given domains but only rely on certain properties that hold in the given domains, and the construction rules guarantee certain properties for the new domain then. In the Theorema system, B. Buchberger introduced the concept of functors to represent these domain construction rules. A functor can actually be viewed as a function that produces a new domain from given domains by describing, which objects and operations are available in the new domain, and by defining, how new objects can be constructed from known objects and how operations on the new objects can be carried out using known operations in the underlying domains. Following the general philosophy of the Theorema system, functors play a role both in proving and in computing. The domain description contained in the functor holds structural information, which can be used by a prover for the new domain in order to find an appropriate structure of proofs for formulae containing objects of the new domain. The domain definitions, on the other hand, contain rules, which can be used by an evaluator for executing computations involving objects of the new domain. In the sequel, we will demonstrate the facilities that are provided in Theorema to define functors, to build up a hierarchy of domains using functors, and to do computations in the constructed domains.

Read the paper · More papers on PaperTik