Lectures onType Theory
Pure type systems
appendix sectionrules

Pure type systems

For a specification S=(S,A,R), pseudo-terms are M,N,A,B::=xcMNλ(x:A).Mx:AB. Variables V and constants C are disjoint, and SC. The axiom set has entries c:s with sS, and the product-relation entries are triples (s1,s2,s3)R. Compatible beta-reduction is generated by X(λ(x:A).M)NβM[N/x]Beta. Its reflexive-transitive closure is β; =β is the equivalence relation generated by β. The complete typing sheet is

c:sA
Sc:s
Ax
ΓSA:sxdom(Γ)
Γ,x:ASx:A
Var
ΓSM:AΓSB:sxdom(Γ)
Γ,x:BSM:A
Weak
ΓSA:s1Γ,x:ASB:s2(s1,s2,s3)R
ΓSx:AB:s3
Prod
Γ,x:ASM:BΓSx:AB:s
ΓSλ(x:A).M:x:AB
Lam
ΓSF:x:ABΓSN:A
ΓSFN:B[N/x]
App
ΓSM:AΓSB:sA=βB
ΓSM:B
Conv

For the lambda cube, S={,}, A={:}, and every vertex contains (,,). The three independent axes add, respectively, (,,), (,,), and (,,).

Search the book

Type to search the local edition.