equal
deleted
inserted
replaced
1018 val _ = T = T' orelse |
1018 val _ = T = T' orelse |
1019 error ("Declared type " ^ ty ^ " of " ^ s ^ |
1019 error ("Declared type " ^ ty ^ " of " ^ s ^ |
1020 "\ndoes not match type " ^ ty' ^ " in definition"); |
1020 "\ndoes not match type " ^ ty' ^ " in definition"); |
1021 val id' = mk_rulename id; |
1021 val id' = mk_rulename id; |
1022 val ((t', (_, th)), lthy') = Named_Target.theory_init thy |
1022 val ((t', (_, th)), lthy') = Named_Target.theory_init thy |
1023 |> Specification.definition NONE [] |
1023 |> Specification.definition NONE [] [] |
1024 ((id', []), HOLogic.mk_Trueprop (HOLogic.mk_eq (Free (s, T), t))); |
1024 ((id', []), HOLogic.mk_Trueprop (HOLogic.mk_eq (Free (s, T), t))); |
1025 val phi = |
1025 val phi = |
1026 Proof_Context.export_morphism lthy' |
1026 Proof_Context.export_morphism lthy' |
1027 (Proof_Context.init_global (Proof_Context.theory_of lthy')); |
1027 (Proof_Context.init_global (Proof_Context.theory_of lthy')); |
1028 in |
1028 in |