A' _ §(Ap) for some s; hence in particularConsequently A =3E The PT algorithm 45cc' = §(a), TIl = §(al), ... , nt = s(at),aaRR1'' = §(Y )Case III. If M - 2x P and x FV(P), say FV(P) = {xl,...,xt}, apply thealgorithm to P. If P is not typable then M is not. If P has a principal deductionAp its conclusion must have formxl:al,...,xt:at H P:/3for some types al, ... , at, /3. Choose a new type-variable d not in Ap and applyvacuously discharging x:d, to get a deduction ofCall this deduction Ap.xl:al,...,xt:at '--* (.lxJustification of Case III. We must show that the above Daxr is principal. Let 0 beany other deduction of a type for By 2B2 its last step must be an applicationof rule (j)vac, with formxl:nl,...,xt:nt '.-+ P: f3'xl:ni,...,xt:nt '-- (2x.P):a'-./3'for some a', nl..... ins, /3'. The steps above the last one form a deduction S' of a typefor P, /and A is principal, so A' _ s(Ap) for some §. Choose s' - § U [a'/d] ; thenA = §'(Alx.P )Case IV. If M - PQ, apply the algorithm to P and Q. If P or Q is untypable thenso is M. If P and Q are both typable, suppose they have principal deductions Apand AQ. First rename type-variables, if necessary, to ensure that A and AQ haveno common type-variables. Next list the free term-variables in P and those in Q(noting that these lists may overlap); sayrFV(P) = lul,...,up>N't>...,wr (p,r > 0),FV(Q) = {vii...,vq,w1,...,wr} (q? 0),where u1.... , up, vl..... vq, W1 ...., wr are distinct.Subcase IVa: M . PQ and PT(P) is composite, say PT(P) - p-+Q. Then theconclusions of A and AQ have form, respectively,(1) ul:O1,...,up:B p, wl:ipl,...,wr:1pr '--(2)ttvt:4'1i...,vq:4q,wl:X1,...,wr:Xr h-> Q:t.Apply the unification algorithm (3D5) to the pair of sequences(3) (ipl,..., l1r,P), (XI,...,Xr,r)Subcase IVal: the pair (3) has no unifier. Then PQ is not typable.justification below.][See the
46 3 The principal-type algorithmSubcase IVa2: the pair (3) has a unifier. Then the unification algorithm gives a mostgeneral unifier uu; apply a renaming if necessary (3D2.5) to ensure that(4) Dom(u) = Vars(ipl, Xr, T),(5) Range(u) fl V = 0,where(6) V = (Vars(AP) U Vars(AQ)) - Dom(u).Then apply u to Ap and AQ; this changes their conclusions to, respectively,u1:6* ,...,uP:BP, Wl :tpi ,...,Wr:tpr r-* P:p*-.v*,vl:(al*,...,vq:(a9*,WI:XI*,...,Wr:Xr*F-iQ:2*,where Bi =- u(Bi), etc. And by the definition of uu we have* * * * *Wi = Xl , . tr - Xr , P = 7Hence (-->E) can be applied to the conclusions of u(Ap) and u(AQ).resulting combined deduction APQ; its conclusion isCall the(7) u1:0*.... I UP OPJustification of Subcase IVa. For IVal we must prove that if PQ is typable then(wl, . , Wr, p) and (Xi, ... , Xr, i) have a unifier, and for IVa2 we must prove that theabove APQ is principal for PQ.Justification of IVal. If PQ is typable, there is a deduction A whose conclusionhas form(8) U1:2r1,...,UP:7rP, vl:µl,...,vy:uq, wl:vl,...,Wr:Vr F-s PQ:/3for some types 7t1, ... , 7tp, etc. By the subject-construction theorem (2B2), A must havebeen built by applying rule (--* E) to two deductions Al and A2 whose conclusionsare(9) UI:7tl,...,up:7tp, W1:V1,...,Wr:Vr f-a P:(10) v1:1,11,...,vy:zq, W1:Vl,...,Wr:Vr I--.. Q:afor some type a. But Ap and AQ are principal deductions for P and Q, soAl = ri(Ap),for some substitutions r1 and r2 such thatDom(rl) = Vars(Ap),A2 = r2(AQ)Dom(r2) = Vars(AQ).FRoughly speaking, (5) and (6) say that when u is applied to Ap and AQ any new variables it introduceswill differ from all those already in Ap and AQ, and hence no unnecessary identifications of variableswill be made. (Cf. the motivation in 3C4.) By the way, if the aim of the algorithm had been toconstruct merely a principal type and not a principal deduction, (5) could have been weakened byre-defining V to consist of just the variables (if any) in a that do not occur in the types in (3). (Cf. (1)in 3C4.)
- Page 2 and 3:
BASIC SIMPLE TYPE THEORY
- Page 4 and 5:
BASIC SIMPLE TYPE THEORYJ. Roger Hi
- Page 6:
To Carol
- Page 9 and 10: VlllContents7C The converse PT proo
- Page 11 and 12: xIntroductionhave proved themselves
- Page 14 and 15: 1The type-free A-calculusThe R-calc
- Page 16 and 17: 1A A-terms and their structure 31A6
- Page 18 and 19: I B #-reduction and #-normal forms
- Page 20 and 21: IC rl- and firs-reductions 7Proof S
- Page 22 and 23: IC q- and iq-reductions93TFig. lC7a
- Page 24 and 25: 1D Restricted A-terms 11(ii) The BC
- Page 26 and 27: 2A The system TAA 132A2 Definition
- Page 28 and 29: 2A The system TA, 152A5.1 Notation
- Page 30 and 31: 2A The system TA2172A8.3 Example Le
- Page 32 and 33: Proof Trivial from 2A9.2A The syste
- Page 34 and 35: 2B The subject-construction theorem
- Page 36 and 37: 2B The subject-construction theorem
- Page 38 and 39: 2C Subject reduction and expansion2
- Page 40 and 41: 2D The typable terms 27However, Cha
- Page 42 and 43: 2D The typable terms 292D8.1 Note T
- Page 44 and 45: 3A Principal types and their histor
- Page 46 and 47: 3A Principal types and their histor
- Page 48 and 49: 3B Type-substitutions 353B1 Notatio
- Page 50 and 51: 3B Type-substitutions 37Then r U (s
- Page 52 and 53: 3C Motivating the PT algorithm 39(i
- Page 54 and 55: 3D Unification 41this pair was show
- Page 56 and 57: 3D Unification 43If pk * Tk and the
- Page 60 and 61: 3E The PT algorithm 47Let r - rl U
- Page 62 and 63: 3E The PT algorithm 49for some subs
- Page 64 and 65: 3E The PT algorithm 513E4 Further R
- Page 66 and 67: 4A The equality rule 53The name "TA
- Page 68 and 69: (M).4A The equality rule 554A3 Weak
- Page 70 and 71: 4B Semantics and completeness 574A1
- Page 72 and 73: 4B Semantics and completeness 59413
- Page 74 and 75: 4B Semantics and completeness 61Pro
- Page 76 and 77: 5A version using typed termsIn Chap
- Page 78 and 79: 5A Typed terms 655A1.5 Warning If M
- Page 80 and 81: 5B Reducing typed terms(ii) if MT E
- Page 82 and 83: 5B Reducing typed terms 695B5.1 Not
- Page 84 and 85: 5C Normalization theorems 71of rede
- Page 86 and 87: SC Normalization theorems 73in leng
- Page 88 and 89: 6A Intuitionist implicational logic
- Page 90 and 91: 6A Intuitionist implicational logic
- Page 92 and 93: 6B The Curry-Howard isomorphism 79T
- Page 94 and 95: 6B The Curry-Howard isomorphism 816
- Page 96 and 97: 6B The Curry-Howard isomorphism 83t
- Page 98 and 99: 6C Some weaker logics 85for some cl
- Page 100 and 101: 6C Some weaker logics 87logic in 6A
- Page 102 and 103: 6D Axiom-based versions 89Deduction
- Page 104 and 105: 6D Axiom-based versions 916D6.1 Not
- Page 106 and 107: The converse principal-type algorit
- Page 108 and 109:
7B Identifications 957A3 Converse P
- Page 110 and 111:
7C The converse PT proofNext, suppo
- Page 112 and 113:
Since (a-+b)* __ a--+b, we must pro
- Page 114 and 115:
7C The converse PT proof 101Conside
- Page 116 and 117:
instance, construct an m.g.c.i. V -
- Page 118 and 119:
AD-7D Condensed detachment 1057D6 M
- Page 120 and 121:
7D Condensed detachment 107Proof By
- Page 122 and 123:
8A Inhabitants 109A Pq-normal inhab
- Page 124 and 125:
8A Inhabitants 1118A7.1 Example Let
- Page 126 and 127:
8A Inhabitants113Fig. 8A12a.8A11.2
- Page 128 and 129:
8B Examples of the search strategy
- Page 130 and 131:
8B Examples of the search strategy
- Page 132 and 133:
8C The search algorithm 119Long(s)
- Page 134 and 135:
8C The search algorithm 121Note. Th
- Page 136 and 137:
8C The search algorithm1238C6.1 Exa
- Page 138 and 139:
8D The Counting algorithm 1258D3.1
- Page 140 and 141:
8E The structure of a nf-scheme 127
- Page 142 and 143:
8E The structure of a nf-scheme129x
- Page 144 and 145:
8E The structure of a nf-scheme131T
- Page 146 and 147:
8F Stretching, shrinking and comple
- Page 148 and 149:
8F Stretching, shrinking and comple
- Page 150 and 151:
8F Stretching, shrinking and comple
- Page 152 and 153:
8F Stretching, shrinking and comple
- Page 154 and 155:
9A The structure of a term 1419A2 D
- Page 156 and 157:
9A The structure of a term(ii) if r
- Page 158 and 159:
9B Residuals 145Proof-note Two case
- Page 160 and 161:
9B Residuals 1479134.1 Lemma Every
- Page 162 and 163:
9C The structure of a TAR-deduction
- Page 164 and 165:
9D The structure of a type 151below
- Page 166 and 167:
9E The condensed structure of a typ
- Page 168 and 169:
9E The condensed structure of a typ
- Page 170 and 171:
9F Imitating combinatory logic in A
- Page 172:
[x].N*Before constructing9F Imitati
- Page 175 and 176:
162 Answers to starred exerciseswit
- Page 177 and 178:
164 Answers to starred exercisesIf
- Page 179 and 180:
166 Answers to starred exercisesTo
- Page 182 and 183:
BibliographyReferences to unpublish
- Page 184 and 185:
Bibliography 171DOSEN, K. [1992a] M
- Page 186 and 187:
Bibliography 173KALMAN, J. A. [1983
- Page 188 and 189:
Bibliography 175SCEDROV, A. [1990]
- Page 190 and 191:
Table of principal typesThis table
- Page 192 and 193:
IndexA-logics (see axiom-based logi
- Page 194 and 195:
Index 181D-incompleteness of BCI, B
- Page 196 and 197:
Index183PT algorithm, converse (see
- Page 198 and 199:
Index185#-contraction 4of typed ter