equal
deleted
inserted
replaced
97 (** Admissibility / Chain Completeness **) |
97 (** Admissibility / Chain Completeness **) |
98 (* All rules can be found on pages 199--200 of Larry's LCF book. |
98 (* All rules can be found on pages 199--200 of Larry's LCF book. |
99 Note that "easiness" of types is not taken into account |
99 Note that "easiness" of types is not taken into account |
100 because it cannot be expressed schematically; flatness could be. *) |
100 because it cannot be expressed schematically; flatness could be. *) |
101 |
101 |
102 adm_less "adm(%x.t(x) << u(x))" |
102 adm_less "adm(%x. t(x) << u(x))" |
103 adm_not_less "adm(%x.~ t(x) << u)" |
103 adm_not_less "adm(%x.~ t(x) << u)" |
104 adm_not_free "adm(%x.A)" |
104 adm_not_free "adm(%x. A)" |
105 adm_subst "adm(P) ==> adm(%x.P(t(x)))" |
105 adm_subst "adm(P) ==> adm(%x. P(t(x)))" |
106 adm_conj "[| adm(P); adm(Q) |] ==> adm(%x.P(x)&Q(x))" |
106 adm_conj "[| adm(P); adm(Q) |] ==> adm(%x. P(x)&Q(x))" |
107 adm_disj "[| adm(P); adm(Q) |] ==> adm(%x.P(x)|Q(x))" |
107 adm_disj "[| adm(P); adm(Q) |] ==> adm(%x. P(x)|Q(x))" |
108 adm_imp "[| adm(%x.~P(x)); adm(Q) |] ==> adm(%x.P(x)-->Q(x))" |
108 adm_imp "[| adm(%x.~P(x)); adm(Q) |] ==> adm(%x. P(x)-->Q(x))" |
109 adm_all "(!!y.adm(P(y))) ==> adm(%x.ALL y.P(y,x))" |
109 adm_all "(!!y. adm(P(y))) ==> adm(%x. ALL y. P(y,x))" |
110 end |
110 end |