src/Pure/Isar/expression.ML
changeset 32801 6f97a67e8da8
parent 32800 57fcca4e7c0e
child 32804 ca430e6aee1c
equal deleted inserted replaced
32800:57fcca4e7c0e 32801:6f97a67e8da8
   813       in
   813       in
   814         thy
   814         thy
   815         |> PureThy.note_thmss Thm.lemmaK eqn_attrss
   815         |> PureThy.note_thmss Thm.lemmaK eqn_attrss
   816         |-> (fn facts => `(fn thy => meta_rewrite thy facts))
   816         |-> (fn facts => `(fn thy => meta_rewrite thy facts))
   817       end;
   817       end;
   818 
   818 (*
   819     fun after_qed witss eqns = ProofContext.theory (note_eqns eqns
   819     fun after_qed witss eqns = ProofContext.theory (note_eqns eqns
   820       #-> (fn eqns => fold (fn ((dep, morph), wits) =>
   820       #-> (fn eqns => fold (fn ((dep, morph), wits) =>
   821         Locale.add_registration_eqs (dep, morph $> Element.satisfy_morphism
   821         Locale.add_registration_eqs (dep, morph $> Element.satisfy_morphism
   822           (map (Element.morph_witness export') wits)) eqns export) (deps ~~ witss)));
   822           (map (Element.morph_witness export') wits)) eqns export) (deps ~~ witss)));
       
   823 *)
       
   824     fun after_qed witss eqns = ProofContext.theory (note_eqns eqns
       
   825       #-> (fn eqns => fold (fn ((dep, morph), wits) =>
       
   826         Locale.add_registration (dep, morph $> Element.satisfy_morphism
       
   827           (map (Element.morph_witness export') wits)) export
       
   828          #> not (null eqns) ? (fn thy => Locale.amend_registration (Element.eq_morphism thy eqns, true) (dep, morph) thy)) (deps ~~ witss)));
   823 
   829 
   824   in Element.witness_proof_eqs after_qed propss eqns goal_ctxt end;
   830   in Element.witness_proof_eqs after_qed propss eqns goal_ctxt end;
   825 
   831 
   826 in
   832 in
   827 
   833