src/Pure/Isar/local_defs.ML
changeset 31794 71af1fd6a5e4
parent 30763 6976521b4263
child 32091 30e2ffbba718
equal deleted inserted replaced
31793:7c10b13d49fe 31794:71af1fd6a5e4
   168 fun trans_list _ _ [] = raise Empty
   168 fun trans_list _ _ [] = raise Empty
   169   | trans_list trans ctxt (th :: raw_eqs) =
   169   | trans_list trans ctxt (th :: raw_eqs) =
   170       (case filter_out is_trivial raw_eqs of
   170       (case filter_out is_trivial raw_eqs of
   171         [] => th
   171         [] => th
   172       | eqs =>
   172       | eqs =>
   173           let val ((_, th' :: eqs'), ctxt') = Variable.import_thms true (th :: eqs) ctxt
   173           let val ((_, th' :: eqs'), ctxt') = Variable.import true (th :: eqs) ctxt
   174           in singleton (Variable.export ctxt' ctxt) (fold trans eqs' th') end);
   174           in singleton (Variable.export ctxt' ctxt) (fold trans eqs' th') end);
   175 
   175 
   176 in
   176 in
   177 
   177 
   178 val trans_terms = trans_list (fn eq2 => fn eq1 => eq2 COMP (eq1 COMP Drule.transitive_thm));
   178 val trans_terms = trans_list (fn eq2 => fn eq1 => eq2 COMP (eq1 COMP Drule.transitive_thm));