src/Pure/zterm.ML
changeset 79360 da22c8ab0112
parent 79329 992c494bda25
child 79361 c28d4d1986f1
equal deleted inserted replaced
79359:5b01b93de062 79360:da22c8ab0112
   196 
   196 
   197 datatype zproof_name =
   197 datatype zproof_name =
   198     ZAxiom of string
   198     ZAxiom of string
   199   | ZOracle of string
   199   | ZOracle of string
   200   | ZBox of serial
   200   | ZBox of serial
   201   | ZThm of {theory_long_name: string, thm_name: Thm_Name.T, pos: Position.T, serial: int};
   201   | ZThm of {theory_name: string, thm_name: Thm_Name.T, pos: Position.T, serial: int};
   202 
   202 
   203 datatype zproof =
   203 datatype zproof =
   204     ZDummy                         (*dummy proof*)
   204     ZDummy                         (*dummy proof*)
   205   | ZConstp of zproof_name * zterm * ztyp ZTVars.table * zterm ZVars.table
   205   | ZConstp of zproof_name * zterm * ztyp ZTVars.table * zterm ZVars.table
   206   | ZBoundp of int
   206   | ZBoundp of int
   818 in
   818 in
   819 
   819 
   820 fun thm_proof thy (name, pos) =
   820 fun thm_proof thy (name, pos) =
   821   let
   821   let
   822     val thy_name = Context.theory_long_name thy;
   822     val thy_name = Context.theory_long_name thy;
   823     fun zproof_name i =
   823     fun zproof_name i = ZThm {theory_name = thy_name, thm_name = name, pos = pos, serial = i};
   824       ZThm {theory_long_name = thy_name, thm_name = name, pos = pos, serial = i};
       
   825   in box_proof zproof_name thy end;
   824   in box_proof zproof_name thy end;
   826 
   825 
   827 fun add_box_proof thy hyps concl (zboxes, prf) =
   826 fun add_box_proof thy hyps concl (zboxes, prf) =
   828   let val (zbox, zbox_prf) = box_proof ZBox thy hyps concl prf
   827   let val (zbox, zbox_prf) = box_proof ZBox thy hyps concl prf
   829   in (add_zboxes zbox zboxes, zbox_prf) end;
   828   in (add_zboxes zbox zboxes, zbox_prf) end;