src/Pure/Isar/element.ML
changeset 19466 29bc35832a77
parent 19305 5c16895d548b
child 19482 9f11af8f7ef9
equal deleted inserted replaced
19465:e6093a7fa53a 19466:29bc35832a77
   324 
   324 
   325 fun pretty_statement ctxt kind raw_th =
   325 fun pretty_statement ctxt kind raw_th =
   326   let
   326   let
   327     val thy = ProofContext.theory_of ctxt;
   327     val thy = ProofContext.theory_of ctxt;
   328     val th = Goal.norm_hhf raw_th;
   328     val th = Goal.norm_hhf raw_th;
   329     val maxidx = #maxidx (Thm.rep_thm th);
       
   330 
   329 
   331     fun standard_thesis t =
   330     fun standard_thesis t =
   332       let
   331       let
   333         val C = ObjectLogic.drop_judgment thy (Thm.concl_of th);
   332         val C = ObjectLogic.drop_judgment thy (Thm.concl_of th);
   334         val C' = Var ((AutoBind.thesisN, maxidx + 1), Term.fastype_of C);
   333         val C' = Var ((AutoBind.thesisN, Thm.maxidx_of th + 1), Term.fastype_of C);
   335       in Term.subst_atomic [(C, C')] t end;
   334       in Term.subst_atomic [(C, C')] t end;
   336 
   335 
   337     val raw_prop =
   336     val raw_prop =
   338       Thm.prop_of th
   337       Thm.prop_of th
   339       |> singleton (ProofContext.monomorphic ctxt)
   338       |> singleton (ProofContext.monomorphic ctxt)