src/HOL/Tools/Datatype/datatype_rep_proofs.ML
changeset 33726 0878aecbf119
parent 33669 ae9a2ea9a989
child 33832 cff42395c246
equal deleted inserted replaced
33725:a8481da77270 33726:0878aecbf119
   172         ((1 upto (length constrs)) ~~ constrs)) (descr' ~~ rep_set_names');
   172         ((1 upto (length constrs)) ~~ constrs)) (descr' ~~ rep_set_names');
   173 
   173 
   174     val ({raw_induct = rep_induct, intrs = rep_intrs, ...}, thy2) =
   174     val ({raw_induct = rep_induct, intrs = rep_intrs, ...}, thy2) =
   175       thy1
   175       thy1
   176       |> Sign.map_naming Name_Space.conceal
   176       |> Sign.map_naming Name_Space.conceal
   177       |> Inductive.add_inductive_global (serial ())
   177       |> Inductive.add_inductive_global
   178           {quiet_mode = #quiet config, verbose = false, alt_name = Binding.name big_rec_name,
   178           {quiet_mode = #quiet config, verbose = false, alt_name = Binding.name big_rec_name,
   179            coind = false, no_elim = true, no_ind = false, skip_mono = true, fork_mono = false}
   179            coind = false, no_elim = true, no_ind = false, skip_mono = true, fork_mono = false}
   180           (map (fn s => ((Binding.name s, UnivT'), NoSyn)) rep_set_names') []
   180           (map (fn s => ((Binding.name s, UnivT'), NoSyn)) rep_set_names') []
   181           (map (fn x => (Attrib.empty_binding, x)) intr_ts) []
   181           (map (fn x => (Attrib.empty_binding, x)) intr_ts) []
   182       ||> Sign.restore_naming thy1
   182       ||> Sign.restore_naming thy1