Domain specific extensions and their framework

This topic is about extensions of Type Theory by a language modelled by the structure central to a specific application domain. The language provides a higher level of abstractions for reasoning with the type theoretic representation of the structure, encapsulating ``implementation details'' of the representation. We aim to have a unified framework for such an extension: an inherent, hierarchical description of the target structures independent of their possible representations, a method to derive a language for a given structure, and semantics that guarantees correct interaction between extensions and base systems. The framework is to lead to systematic machine implementations of extensions and further to a single, extensible system. For example, Szasz's theory of specifications can be seen as such an extension for the structure of specifications represented by (data type, predicate) pairs. Each natural step of inference in her theory (e.g., formation of higher-order specification) corresponds to several steps of inference on the pair-representations in the base Type Theory; so, the pairs models the theory. Note that representing the pairs by dependent sums and then manipulating them as plain types (e.g., applying function type formation) cannot give desired results. Similar developments can be expected for setoids , setoids with algebraic structure , domains , categories , etc.; study of various calculus encodings of objects , processes , etc., should also benefit from mixing machine-assisted reasoning at their original calculi level. Development of their theories will enjoy the usual advantages of modular programming; e.g., we can start experimenting with the use of new abstraction, even if its representation is not in place yet; we can change representation to support more abstractions without affecting a prior development.

For the framework, we will unify and extend the correspondences between various categorical structures and their internal languages, e.g., cartesian closed categories and simply typed lambda-calculi . We continue development and implementation of the framework for categories with extra structure based on universal properties . Compared to the more established one for categories with (essentially) algebraic structure , it gives rise to internal languages suited for more logical, rather than equational, reasoning with the familiar pattern of introduction and elimination rules. Further theoretical issues are: adaptation of sketches (e.g. ) for description of specific instances; generalisation to fibred categories for a clear semantics of interactions between the base and extensions; and iterations and other ways to combine extensions for a hierarchical, modular development of abstractions. The framework itself, which talks about Type Theory extensions, will be studied in the ordinary mathematical context, but constructive aspects in each instance, e.g. issues of equality, will be a part of investigation.

Last modified: Wed May 27 13:49:13 MET DST 1998