src/Pure/drule.ML
changeset 36330 0584e203960e
parent 35985 0bbf0d2348f9
child 36615 88756a5a92fc
equal deleted inserted replaced
36329:85004134055c 36330:0584e203960e
   104   val cterm_rule: (thm -> thm) -> cterm -> cterm
   104   val cterm_rule: (thm -> thm) -> cterm -> cterm
   105   val term_rule: theory -> (thm -> thm) -> term -> term
   105   val term_rule: theory -> (thm -> thm) -> term -> term
   106   val dummy_thm: thm
   106   val dummy_thm: thm
   107   val sort_constraintI: thm
   107   val sort_constraintI: thm
   108   val sort_constraint_eq: thm
   108   val sort_constraint_eq: thm
   109   val unconstrainTs: thm -> thm
       
   110   val with_subgoal: int -> (thm -> thm) -> thm -> thm
   109   val with_subgoal: int -> (thm -> thm) -> thm -> thm
   111   val comp_no_flatten: thm * int -> int -> thm -> thm
   110   val comp_no_flatten: thm * int -> int -> thm -> thm
   112   val rename_bvars: (string * string) list -> thm -> thm
   111   val rename_bvars: (string * string) list -> thm -> thm
   113   val rename_bvars': string option list -> thm -> thm
   112   val rename_bvars': string option list -> thm -> thm
   114   val incr_type_indexes: int -> thm -> thm
   113   val incr_type_indexes: int -> thm -> thm
   201 
   200 
   202 
   201 
   203 
   202 
   204 
   203 
   205 (** Standardization of rules **)
   204 (** Standardization of rules **)
   206 
       
   207 (* type classes and sorts *)
       
   208 
       
   209 fun unconstrainTs th =
       
   210   fold (Thm.unconstrainT o Thm.ctyp_of (Thm.theory_of_thm th) o TVar)
       
   211     (Thm.fold_terms Term.add_tvars th []) th;
       
   212 
   205 
   213 (*Generalization over a list of variables*)
   206 (*Generalization over a list of variables*)
   214 val forall_intr_list = fold_rev forall_intr;
   207 val forall_intr_list = fold_rev forall_intr;
   215 
   208 
   216 (*Generalization over Vars -- canonical order*)
   209 (*Generalization over Vars -- canonical order*)