Results 1 -
2 of
2
Programming Metalogics with a Fixpoint Type
, 1992
"... A programming metalogic is a formal system into which programming languages can be translated and given meaning. The translation should both reflect the structure of the language and make it easy to prove properties of programs. This thesis develops certain metalogics using techniques of category th ..."
Abstract
-
Cited by 12 (6 self)
- Add to MetaCart
A programming metalogic is a formal system into which programming languages can be translated and given meaning. The translation should both reflect the structure of the language and make it easy to prove properties of programs. This thesis develops certain metalogics using techniques of category theory and treats recursion in a new way. The notion of a category with fixpoint object is defined. Corresponding to this categorical structure there are type theoretic equational rules which will be present in all of the metalogics considered. These rules define the fixpoint type which will allow the interpretation of recursive declarations. With these core notions FIX categories are defined. These are the categorical equivalent of an equational logic which can be viewed as a very basic programming metalogic. Recursion is treated both syntactically and categorically. The expressive power of the equational logic is increased by embedding it in an intuitionistic predicate calculus, giving rise to the FIX logic. This contains propositions about the evaluation of computations to values and an induction principle which is derived from the definition of a fixpoint object as an initial algebra. The categorical structure which accompanies the FIX logic is defined, called a FIX hyperdoctrine, and certain existence and disjunction properties of FIX are stated. A particular FIX hyperdoctrine is constructed and used in the proof of the same properties. PCF-style languages are translated into the FIX logic and computational adequacy reaulta are proved. Two languages are studied: Both are similar to PCF except one has call by value recursive function declararations and the other higher order conditionals. ...
Recursive Types via Fixpoint Objects
, 1992
"... This paper introduces a new dependently typed equational logic, FIX µ =, which contains both a type universe and a fixpoint object, building upon core material which was introduced in [CP90]. Within the logic FIX µ =, fixpoints are definable at the level of terms, inducing fixpoints at the level of ..."
Abstract
- Add to MetaCart
This paper introduces a new dependently typed equational logic, FIX µ =, which contains both a type universe and a fixpoint object, building upon core material which was introduced in [CP90]. Within the logic FIX µ =, fixpoints are definable at the level of terms, inducing fixpoints at the level of types by a coding through the type universe. Thus we are able to solve recursive domain equations with the aid of the fixpoint type. The logic has a clean categorical semantics, being modelled by a particular variety of category-with-attributes. We note a mild generalisation of information systems, from which we prove a representation theorem for Scott predomains, and use this to describe a concrete model of our logic. FIX µ = may be viewed as a programming metalogic into which programming languages with recursive types may be translated and reasoned about. We demonstrate this by proving computational adequacy results of FIX µ = for a PCF-style language with recursive types. Research supported by the CLICS project (EEC ESPRIT BR nr 3003).

