src/ZF/Tools/induct_tacs.ML
changeset 59936 b8ffc3dc9e24
parent 59788 6f7b6adac439
child 60695 757549b4bbe6
equal deleted inserted replaced
59935:343905de27b1 59936:b8ffc3dc9e24
   189 
   189 
   190 
   190 
   191 (* outer syntax *)
   191 (* outer syntax *)
   192 
   192 
   193 val _ =
   193 val _ =
   194   Outer_Syntax.command @{command_spec "rep_datatype"} "represent existing set inductively"
   194   Outer_Syntax.command @{command_keyword rep_datatype} "represent existing set inductively"
   195     ((@{keyword "elimination"} |-- Parse.!!! Parse.xthm) --
   195     ((@{keyword "elimination"} |-- Parse.!!! Parse.xthm) --
   196      (@{keyword "induction"} |-- Parse.!!! Parse.xthm) --
   196      (@{keyword "induction"} |-- Parse.!!! Parse.xthm) --
   197      (@{keyword "case_eqns"} |-- Parse.!!! Parse.xthms1) --
   197      (@{keyword "case_eqns"} |-- Parse.!!! Parse.xthms1) --
   198      Scan.optional (@{keyword "recursor_eqns"} |-- Parse.!!! Parse.xthms1) []
   198      Scan.optional (@{keyword "recursor_eqns"} |-- Parse.!!! Parse.xthms1) []
   199      >> (fn (((x, y), z), w) => Toplevel.theory (rep_datatype x y z w)));
   199      >> (fn (((x, y), z), w) => Toplevel.theory (rep_datatype x y z w)));