equal
deleted
inserted
replaced
78 |
78 |
79 (** proof terms for specific inference rules **) |
79 (** proof terms for specific inference rules **) |
80 val implies_intr_proof: term -> proof -> proof |
80 val implies_intr_proof: term -> proof -> proof |
81 val forall_intr_proof: term -> string -> proof -> proof |
81 val forall_intr_proof: term -> string -> proof -> proof |
82 val varify_proof: term -> (string * sort) list -> proof -> proof |
82 val varify_proof: term -> (string * sort) list -> proof -> proof |
83 val freezeT: term -> proof -> proof |
83 val legacy_freezeT: term -> proof -> proof |
84 val rotate_proof: term list -> term -> int -> proof -> proof |
84 val rotate_proof: term list -> term -> int -> proof -> proof |
85 val permute_prems_prf: term list -> int -> int -> proof -> proof |
85 val permute_prems_prf: term list -> int -> int -> proof -> proof |
86 val generalize: string list * string list -> int -> proof -> proof |
86 val generalize: string list * string list -> int -> proof -> proof |
87 val instantiate: ((indexname * sort) * typ) list * ((indexname * typ) * term) list |
87 val instantiate: ((indexname * sort) * typ) list * ((indexname * typ) * term) list |
88 -> proof -> proof |
88 -> proof -> proof |
650 NONE => TVar (ix, sort) |
650 NONE => TVar (ix, sort) |
651 | SOME name => TFree (name, sort)); |
651 | SOME name => TFree (name, sort)); |
652 |
652 |
653 in |
653 in |
654 |
654 |
655 fun freezeT t prf = |
655 fun legacy_freezeT t prf = |
656 let |
656 let |
657 val used = OldTerm.it_term_types OldTerm.add_typ_tfree_names (t, []) |
657 val used = OldTerm.it_term_types OldTerm.add_typ_tfree_names (t, []) |
658 and tvars = map #1 (OldTerm.it_term_types OldTerm.add_typ_tvars (t, [])); |
658 and tvars = map #1 (OldTerm.it_term_types OldTerm.add_typ_tvars (t, [])); |
659 val (alist, _) = List.foldr new_name ([], used) tvars; |
659 val (alist, _) = List.foldr new_name ([], used) tvars; |
660 in |
660 in |