src/HOL/Inductive.thy
changeset 29270 0eade173f77e
parent 26793 e36a92ff543e
child 29281 b22ccb3998db
equal deleted inserted replaced
29269:5c25a2012975 29270:0eade173f77e
     1 (*  Title:      HOL/Inductive.thy
     1 (*  Title:      HOL/Inductive.thy
     2     ID:         $Id$
       
     3     Author:     Markus Wenzel, TU Muenchen
     2     Author:     Markus Wenzel, TU Muenchen
     4 *)
     3 *)
     5 
     4 
     6 header {* Knaster-Tarski Fixpoint Theorem and inductive definitions *}
     5 header {* Knaster-Tarski Fixpoint Theorem and inductive definitions *}
     7 
     6 
   361 
   360 
   362 parse_translation (advanced) {*
   361 parse_translation (advanced) {*
   363 let
   362 let
   364   fun fun_tr ctxt [cs] =
   363   fun fun_tr ctxt [cs] =
   365     let
   364     let
   366       val x = Free (Name.variant (add_term_free_names (cs, [])) "x", dummyT);
   365       val x = Free (Name.variant (OldTerm.add_term_free_names (cs, [])) "x", dummyT);
   367       val ft = DatatypeCase.case_tr true DatatypePackage.datatype_of_constr
   366       val ft = DatatypeCase.case_tr true DatatypePackage.datatype_of_constr
   368                  ctxt [x, cs]
   367                  ctxt [x, cs]
   369     in lambda x ft end
   368     in lambda x ft end
   370 in [("_lam_pats_syntax", fun_tr)] end
   369 in [("_lam_pats_syntax", fun_tr)] end
   371 *}
   370 *}