diff -r b2e1a7b83e05 -r 67370521c09c Nominal/Nominal2.thy --- a/Nominal/Nominal2.thy Tue Jul 08 11:18:31 2014 +0100 +++ b/Nominal/Nominal2.thy Thu Jul 09 02:32:46 2015 +0100 @@ -149,7 +149,7 @@ val bn_fun_strs = get_bn_fun_strs bn_funs val bn_fun_strs' = add_raws bn_fun_strs val bn_fun_env = bn_fun_strs ~~ bn_fun_strs' - val bn_fun_full_env = map (pairself (Long_Name.qualify thy_name)) + val bn_fun_full_env = map (apply2 (Long_Name.qualify thy_name)) (bn_fun_strs ~~ bn_fun_strs') val raw_dts = rawify_dts dts dts_env @@ -157,14 +157,14 @@ val raw_bclauses = rawify_bclauses dts_env cnstrs_env bn_fun_full_env bclauses val (raw_full_dt_names', thy1) = - Datatype.add_datatype Datatype.default_config raw_dts thy + Old_Datatype.add_datatype Old_Datatype_Aux.default_config raw_dts thy val lthy1 = Named_Target.theory_init thy1 - val dtinfos = map (Datatype.the_info (Proof_Context.theory_of lthy1)) raw_full_dt_names' + val dtinfos = map (Old_Datatype_Data.the_info (Proof_Context.theory_of lthy1)) raw_full_dt_names' val {descr, ...} = hd dtinfos - val raw_tys = Datatype_Aux.get_rec_types descr + val raw_tys = Old_Datatype_Aux.get_rec_types descr val raw_ty_args = hd raw_tys |> snd o dest_Type |> map dest_TFree @@ -179,7 +179,7 @@ val raw_exhaust_thms = map #exhaust dtinfos val raw_size_trms = map HOLogic.size_const raw_tys val raw_size_thms = these (Option.map ((fn ths => drop (length ths div 2) ths) o fst o snd) - (BNF_LFP_Size.lookup_size lthy1 (hd raw_full_dt_names'))) + (BNF_LFP_Size.size_of lthy1 (hd raw_full_dt_names'))) val raw_result = RawDtInfo {raw_dt_names = raw_full_dt_names', @@ -303,7 +303,7 @@ val raw_funs_rsp = map (Drule.eta_contraction_rule o mk_funs_rsp lthy5) raw_funs_rsp_aux fun match_const cnst th = - (fst o dest_Const o snd o dest_comb o HOLogic.dest_Trueprop o prop_of) th = + (fst o dest_Const o snd o dest_comb o HOLogic.dest_Trueprop o Thm.prop_of) th = fst (dest_Const cnst); fun find_matching_rsp cnst = hd (filter (fn th => match_const cnst th) raw_funs_rsp); @@ -398,7 +398,7 @@ val qperm_bns = map #qconst qperm_bns_info val _ = trace_msg (K "Lifting of theorems...") - val eq_iff_simps = @{thms alphas permute_prod.simps prod_fv.simps prod_alpha_def rel_prod_def + val eq_iff_simps = @{thms alphas permute_prod.simps prod_fv.simps prod_alpha_def rel_prod_sel prod.case} val ([ qdistincts, qeq_iffs, qfv_defs, qbn_defs, qperm_simps, qfv_qbn_eqvts, @@ -452,7 +452,7 @@ val qsupp_constrs = qfv_defs |> map (simplify (put_simpset HOL_basic_ss lthyC - addsimps (filter (is_qfv_thm o prop_of) qfv_supp_thms))) + addsimps (filter (is_qfv_thm o Thm.prop_of) qfv_supp_thms))) val transform_thm = @{lemma "x = y \ a \ x \ a \ y" by simp} val transform_thms = @@ -548,7 +548,7 @@ ((tname, tvs, mx), constrs |> map (fn (c, atys, mx', _) => (c, map snd atys, mx'))) val (dts, spec_ctxt) = - Datatype.read_specs (map prep_spec dt_strs) thy + Old_Datatype.read_specs (map prep_spec dt_strs) thy fun augment ((tname, tvs, mx), constrs) = ((tname, map (apsnd (augment_sort thy)) tvs, mx), @@ -736,10 +736,9 @@ end (* Command Keyword *) -val _ = Outer_Syntax.local_theory @{command_spec "nominal_datatype"} +val _ = Outer_Syntax.local_theory @{command_keyword nominal_datatype} "declaration of nominal datatypes" (main_parser >> nominal_datatype2_cmd) *} - end