src/Pure/Proof/proof_checker.ML
changeset 70493 a9053fa30909
parent 70447 755d58b48cec
child 70838 e381e2624077
equal deleted inserted replaced
70492:c65ccd813f4d 70493:a9053fa30909
    82               (tvars @ map (fn ((_, S), ixn) => (ixn, S)) fmap ~~ map (Thm.global_ctyp_of thy) Ts);
    82               (tvars @ map (fn ((_, S), ixn) => (ixn, S)) fmap ~~ map (Thm.global_ctyp_of thy) Ts);
    83           in
    83           in
    84             Thm.instantiate (ctye, []) (forall_intr_vars (Thm.forall_intr_frees thm'))
    84             Thm.instantiate (ctye, []) (forall_intr_vars (Thm.forall_intr_frees thm'))
    85           end;
    85           end;
    86 
    86 
    87         fun thm_of _ _ (PThm (_, ((name, prop', SOME Ts, _), _))) =
    87         fun thm_of _ _ (PThm ({name, prop = prop', types = SOME Ts, ...}, _)) =
    88               let
    88               let
    89                 val thm = Thm.unconstrainT (Drule.implies_intr_hyps (lookup name));
    89                 val thm = Thm.unconstrainT (Drule.implies_intr_hyps (lookup name));
    90                 val prop = Thm.prop_of thm;
    90                 val prop = Thm.prop_of thm;
    91                 val _ =
    91                 val _ =
    92                   if is_equal prop prop' then ()
    92                   if is_equal prop prop' then ()