src/Pure/Proof/proof_syntax.ML
changeset 29635 31d14e9fa0da
parent 29606 fedb8be05f24
child 30344 10a67c5ddddb
equal deleted inserted replaced
29634:2baf1b2f6655 29635:31d14e9fa0da
   226   let
   226   let
   227     val thy = Thm.theory_of_thm thm;
   227     val thy = Thm.theory_of_thm thm;
   228     val prop = Thm.full_prop_of thm;
   228     val prop = Thm.full_prop_of thm;
   229     val prf = Thm.proof_of thm;
   229     val prf = Thm.proof_of thm;
   230     val prf' = (case strip_combt (fst (strip_combP prf)) of
   230     val prf' = (case strip_combt (fst (strip_combP prf)) of
   231         (PThm (_, ((_, prop', _), body)), _) => if prop = prop' then force_proof body else prf
   231         (PThm (_, ((_, prop', _), body)), _) => if prop = prop' then join_proof body else prf
   232       | _ => prf)
   232       | _ => prf)
   233   in if full then Reconstruct.reconstruct_proof thy prop prf' else prf' end;
   233   in if full then Reconstruct.reconstruct_proof thy prop prf' else prf' end;
   234 
   234 
   235 fun pretty_proof ctxt prf =
   235 fun pretty_proof ctxt prf =
   236   ProofContext.pretty_term_abbrev
   236   ProofContext.pretty_term_abbrev