Skip to content

Commit a7920b4

Browse files
committed
Speedup EQF_INTRO
1 parent 4874b68 commit a7920b4

File tree

1 file changed

+12
-5
lines changed

1 file changed

+12
-5
lines changed

src/1/Drule.sml

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -618,14 +618,21 @@ fun NOT_EQ_SYM th =
618618
* *
619619
* [TFM 90.05.08] *
620620
* --------------------------------------------------------------------------*)
621-
622621
local
623-
val Fth = ASSUME F
622+
val eqF_thm =
623+
let
624+
val (Bvar, _) = dest_forall (concl boolTheory.EQ_CLAUSES)
625+
val thm = el 4 $ CONJUNCTS (SPEC Bvar boolTheory.EQ_CLAUSES)
626+
in
627+
GEN Bvar (SYM thm)
628+
end
624629
in
625630
fun EQF_INTRO th =
626-
IMP_ANTISYM_RULE (NOT_ELIM th)
627-
(DISCH F (CONTR (dest_neg (concl th)) Fth))
628-
handle HOL_ERR _ => raise ERR "EQF_INTRO" ""
631+
let val t' = dest_neg (concl th)
632+
in
633+
EQ_MP (SPEC t' eqF_thm) th
634+
end
635+
handle HOL_ERR _ => raise ERR "EQF_INTRO" ""
629636
end
630637

631638
(* --------------------------------------------------------------------------*

0 commit comments

Comments
 (0)