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

Theorem eu1 1019
Description: An alternate way of expressing uniqueness used by some authors. Exercise 2(b) of [Margaris] p. 110.
Hypothesis
Ref Expression
eu1.1 |- (ph -> A.yph)
Assertion
Ref Expression
eu1 |- (E!xph <-> E.x(ph /\ A.y([y / x]ph -> x = y)))
Distinct variable group(s):   x,y

Proof of Theorem eu1
StepHypRef Expression
1 hbs1 986 . . 3 |- ([y / x]ph -> A.x[y / x]ph)
21euf 1011 . 2 |- (E!y[y / x]ph <-> E.xA.y([y / x]ph <-> y = x))
3 eu1.1 . . 3 |- (ph -> A.yph)
43sb8eu 1017 . 2 |- (E!xph <-> E!y[y / x]ph)
5 eqcomb 812 . . . . . . 7 |- (x = y <-> y = x)
65imbi2i 160 . . . . . 6 |- (([y / x]ph -> x = y) <-> ([y / x]ph -> y = x))
76bial 695 . . . . 5 |- (A.y([y / x]ph -> x = y) <-> A.y([y / x]ph -> y = x))
83sb5f1 917 . . . . 5 |- (ph <-> A.y(y = x -> [y / x]ph))
97, 8anbi12i 369 . . . 4 |- ((A.y([y / x]ph -> x = y) /\ ph) <-> (A.y([y / x]ph -> y = x) /\ A.y(y = x -> [y / x]ph)))
10 ancom 333 . . . 4 |- ((ph /\ A.y([y / x]ph -> x = y)) <-> (A.y([y / x]ph -> x = y) /\ ph))
11 albi 785 . . . 4 |- (A.y([y / x]ph <-> y = x) <-> (A.y([y / x]ph -> y = x) /\ A.y(y = x -> [y / x]ph)))
129, 10, 113bitr4 158 . . 3 |- ((ph /\ A.y([y / x]ph -> x = y)) <-> A.y([y / x]ph <-> y = x))
1312biex 733 . 2 |- (E.x(ph /\ A.y([y / x]ph -> x = y)) <-> E.xA.y([y / x]ph <-> y = x))
142, 4, 133bitr4 158 1 |- (E!xph <-> E.x(ph /\ A.y([y / x]ph -> x = y)))
Colors of variables: wff set class
Syntax hints:   -> wi 2   <-> wb 127   /\ wa 196  A.wal 672  E.wex 678   = weq 797  [wsb 852  E!weu 1007
This theorem is referenced by:  euex 1021  eu2 1023  kmlem15 3594
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-16 922  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