src/Pure/thm.ML
changeset 70404 9dc99e3153b3
parent 70398 725438ceae7c
child 70453 492cb3aaa562
equal deleted inserted replaced
70403:468cfd56ee03 70404:9dc99e3153b3
   102   val peek_status: thm -> {oracle: bool, unfinished: bool, failed: bool}
   102   val peek_status: thm -> {oracle: bool, unfinished: bool, failed: bool}
   103   val future: thm future -> cterm -> thm
   103   val future: thm future -> cterm -> thm
   104   val derivation_closed: thm -> bool
   104   val derivation_closed: thm -> bool
   105   val derivation_name: thm -> string
   105   val derivation_name: thm -> string
   106   val name_derivation: string -> thm -> thm
   106   val name_derivation: string -> thm -> thm
       
   107   val close_derivation: thm -> thm
   107   val axiom: theory -> string -> thm
   108   val axiom: theory -> string -> thm
   108   val axioms_of: theory -> (string * thm) list
   109   val axioms_of: theory -> (string * thm) list
   109   val get_tags: thm -> Properties.T
   110   val get_tags: thm -> Properties.T
   110   val map_tags: (Properties.T -> Properties.T) -> thm -> thm
   111   val map_tags: (Properties.T -> Properties.T) -> thm -> thm
   111   val norm_proof: thm -> thm
   112   val norm_proof: thm -> thm
   757 
   758 
   758     val ps = map (apsnd (Future.map fulfill_body)) promises;
   759     val ps = map (apsnd (Future.map fulfill_body)) promises;
   759     val (pthm, proof) = Proofterm.thm_proof thy name shyps hyps prop ps body;
   760     val (pthm, proof) = Proofterm.thm_proof thy name shyps hyps prop ps body;
   760     val der' = make_deriv [] [] [pthm] proof;
   761     val der' = make_deriv [] [] [pthm] proof;
   761   in Thm (der', args) end;
   762   in Thm (der', args) end;
       
   763 
       
   764 fun close_derivation thm =
       
   765   if derivation_closed thm then thm else name_derivation "" thm;
   762 
   766 
   763 
   767 
   764 
   768 
   765 (** Axioms **)
   769 (** Axioms **)
   766 
   770