HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem sb8eu 1017
Description: Variable substitution in uniqueness quantifier. (This theorem can also be proved without requiring that x and y be distinct, but the proof would be longer.)
Hypothesis
Ref Expression
sb8eu.1 |- (ph -> A.yph)
Assertion
Ref Expression
sb8eu |- (E!xph <-> E!y[y / x]ph)
Distinct variable group(s):   x,y

Proof of Theorem sb8eu
StepHypRef Expression
1 sb8eu.1 . . . . . 6 |- (ph -> A.yph)
2 ax-17 925 . . . . . 6 |- (x = z -> A.y x = z)
31, 2hbbi 705 . . . . 5 |- ((ph <-> x = z) -> A.y(ph <-> x = z))
43sb8 918 . . . 4 |- (A.x(ph <-> x = z) <-> A.y[y / x](ph <-> x = z))
5 ax-17 925 . . . . . . 7 |- (y = z -> A.x y = z)
6 a8b 817 . . . . . . 7 |- (x = y -> (x = z <-> y = z))
75, 6sbie 904 . . . . . 6 |- ([y / x]x = z <-> y = z)
87sblbis 891 . . . . 5 |- ([y / x](ph <-> x = z) <-> ([y / x]ph <-> y = z))
98bial 695 . . . 4 |- (A.y[y / x](ph <-> x = z) <-> A.y([y / x]ph <-> y = z))
104, 9bitr 151 . . 3 |- (A.x(ph <-> x = z) <-> A.y([y / x]ph <-> y = z))
1110biex 733 . 2 |- (E.zA.x(ph <-> x = z) <-> E.zA.y([y / x]ph <-> y = z))
12 df-eu 1009 . 2 |- (E!xph <-> E.zA.x(ph <-> x = z))
13 df-eu 1009 . 2 |- (E!y[y / x]ph <-> E.zA.y([y / x]ph <-> y = z))
1411, 12, 133bitr4 158 1 |- (E!xph <-> E!y[y / x]ph)
Colors of variables: wff set class
Syntax hints:   -> wi 2   <-> wb 127  A.wal 672  E.wex 678   = weq 797  [wsb 852  E!weu 1007
This theorem is referenced by:  cbveu 1018  eu1 1019
This theorem was proved from axioms:  ax-1 3  ax-2 4  ax-3 5  ax-mp 6  ax-4 673  ax-5 674  ax-6 675  ax-7 676  ax-gen 677  ax-8 798  ax-9 799  ax-10 800  ax-11 801  ax-12 802  ax-17 925
This theorem depends on definitions:  df-bi 128  df-or 197  df-an 198  df-ex 679  df-sb 853  df-eu 1009
metamath.org