page 2  (18 pages)
to previous section1
3to next section

1 Inroduction

The calculi under investigation are

ffl the simply typed >=-calculus with constants and products called >=?.

ffl the simply typed >=-calculus with constants, products and fixpoint operators called >= ? Y

ffl the recursively typed >=-calculus called Y>=?

They are treated in the general framework of type theories, i.e they decompose into

ffl syntax

ffl typing rules

ffl equational rules

1.1 Syntax

The description of the syntax consists of two sets of BNF-productions, one for the syntax of the types and the other for the syntax of the terms.

1.2 Typing rules

For each calculus there is a enumerable set of variables V, a enumerable set of constants C and a collection of types T which may be a proper class. A typing context H consists of two partial functions

HV : V ! T

and

HC : C ! T

Hv and Hc have finite domains and often written as lists. At a first glance it seems artificial to split a typing context in a variable and a constant part. However, the latter come from a different syntax class and, in particular, cannot be bound by abstractions like the former. A typing judgement H ` M : t means that the term M has the type t relative to the typing context H. A typing rules consist of a finite number of typing judgements as premisses and a conclusion, often written

H1 ` M1 : t1; : : : ; H1 ` Mn : tn
H ` M : t

The typing rules define an inference system. where a proof of H ` M : t is called a typing derivation. It certifies that a term is well-typed and only welltyped terms are given a meaning in a semantic model.