MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  mo Unicode version

Theorem mo 2178
Description: Equivalent definitions of "there exists at most one." (Contributed by NM, 7-Aug-1994.) (Revised by Mario Carneiro, 7-Oct-2016.)
Hypothesis
Ref Expression
mo.1  |-  F/ y
ph
Assertion
Ref Expression
mo  |-  ( E. y A. x (
ph  ->  x  =  y )  <->  A. x A. y
( ( ph  /\  [ y  /  x ] ph )  ->  x  =  y ) )
Distinct variable group:    x, y
Allowed substitution hints:    ph( x, y)

Proof of Theorem mo
Dummy variable  z is distinct from all other variables.
StepHypRef Expression
1 mo.1 . . . . . 6  |-  F/ y
ph
2 nfv 1609 . . . . . 6  |-  F/ y  x  =  z
31, 2nfim 1781 . . . . 5  |-  F/ y ( ph  ->  x  =  z )
43nfal 1778 . . . 4  |-  F/ y A. x ( ph  ->  x  =  z )
5 nfv 1609 . . . 4  |-  F/ z A. x ( ph  ->  x  =  y )
6 equequ2 1669 . . . . . 6  |-  ( z  =  y  ->  (
x  =  z  <->  x  =  y ) )
76imbi2d 307 . . . . 5  |-  ( z  =  y  ->  (
( ph  ->  x  =  z )  <->  ( ph  ->  x  =  y ) ) )
87albidv 1615 . . . 4  |-  ( z  =  y  ->  ( A. x ( ph  ->  x  =  z )  <->  A. x
( ph  ->  x  =  y ) ) )
94, 5, 8cbvex 1938 . . 3  |-  ( E. z A. x (
ph  ->  x  =  z )  <->  E. y A. x
( ph  ->  x  =  y ) )
101nfs1 1997 . . . . . . . . 9  |-  F/ x [ y  /  x ] ph
11 nfv 1609 . . . . . . . . 9  |-  F/ x  y  =  z
1210, 11nfim 1781 . . . . . . . 8  |-  F/ x
( [ y  /  x ] ph  ->  y  =  z )
13 sbequ2 1640 . . . . . . . . 9  |-  ( x  =  y  ->  ( [ y  /  x ] ph  ->  ph ) )
14 ax-8 1661 . . . . . . . . 9  |-  ( x  =  y  ->  (
x  =  z  -> 
y  =  z ) )
1513, 14imim12d 68 . . . . . . . 8  |-  ( x  =  y  ->  (
( ph  ->  x  =  z )  ->  ( [ y  /  x ] ph  ->  y  =  z ) ) )
163, 12, 15cbv3 1935 . . . . . . 7  |-  ( A. x ( ph  ->  x  =  z )  ->  A. y ( [ y  /  x ] ph  ->  y  =  z ) )
1716ancli 534 . . . . . 6  |-  ( A. x ( ph  ->  x  =  z )  -> 
( A. x (
ph  ->  x  =  z )  /\  A. y
( [ y  /  x ] ph  ->  y  =  z ) ) )
183, 12aaan 1837 . . . . . 6  |-  ( A. x A. y ( (
ph  ->  x  =  z )  /\  ( [ y  /  x ] ph  ->  y  =  z ) )  <->  ( A. x ( ph  ->  x  =  z )  /\  A. y ( [ y  /  x ] ph  ->  y  =  z ) ) )
1917, 18sylibr 203 . . . . 5  |-  ( A. x ( ph  ->  x  =  z )  ->  A. x A. y ( ( ph  ->  x  =  z )  /\  ( [ y  /  x ] ph  ->  y  =  z ) ) )
20 prth 554 . . . . . . 7  |-  ( ( ( ph  ->  x  =  z )  /\  ( [ y  /  x ] ph  ->  y  =  z ) )  -> 
( ( ph  /\  [ y  /  x ] ph )  ->  ( x  =  z  /\  y  =  z ) ) )
21 equtr2 1673 . . . . . . 7  |-  ( ( x  =  z  /\  y  =  z )  ->  x  =  y )
2220, 21syl6 29 . . . . . 6  |-  ( ( ( ph  ->  x  =  z )  /\  ( [ y  /  x ] ph  ->  y  =  z ) )  -> 
( ( ph  /\  [ y  /  x ] ph )  ->  x  =  y ) )
23222alimi 1550 . . . . 5  |-  ( A. x A. y ( (
ph  ->  x  =  z )  /\  ( [ y  /  x ] ph  ->  y  =  z ) )  ->  A. x A. y ( ( ph  /\ 
[ y  /  x ] ph )  ->  x  =  y ) )
2419, 23syl 15 . . . 4  |-  ( A. x ( ph  ->  x  =  z )  ->  A. x A. y ( ( ph  /\  [
y  /  x ] ph )  ->  x  =  y ) )
2524exlimiv 1624 . . 3  |-  ( E. z A. x (
ph  ->  x  =  z )  ->  A. x A. y ( ( ph  /\ 
[ y  /  x ] ph )  ->  x  =  y ) )
269, 25sylbir 204 . 2  |-  ( E. y A. x (
ph  ->  x  =  y )  ->  A. x A. y ( ( ph  /\ 
[ y  /  x ] ph )  ->  x  =  y ) )
27 nfa2 1789 . . . 4  |-  F/ y A. x A. y
( ( ph  /\  [ y  /  x ] ph )  ->  x  =  y )
28 sp 1728 . . . . . . . 8  |-  ( A. y ( ( ph  /\ 
[ y  /  x ] ph )  ->  x  =  y )  -> 
( ( ph  /\  [ y  /  x ] ph )  ->  x  =  y ) )
2928exp3a 425 . . . . . . 7  |-  ( A. y ( ( ph  /\ 
[ y  /  x ] ph )  ->  x  =  y )  -> 
( ph  ->  ( [ y  /  x ] ph  ->  x  =  y ) ) )
3029com3r 73 . . . . . 6  |-  ( [ y  /  x ] ph  ->  ( A. y
( ( ph  /\  [ y  /  x ] ph )  ->  x  =  y )  ->  ( ph  ->  x  =  y ) ) )
3110, 30alimd 1756 . . . . 5  |-  ( [ y  /  x ] ph  ->  ( A. x A. y ( ( ph  /\ 
[ y  /  x ] ph )  ->  x  =  y )  ->  A. x ( ph  ->  x  =  y ) ) )
3231com12 27 . . . 4  |-  ( A. x A. y ( (
ph  /\  [ y  /  x ] ph )  ->  x  =  y )  ->  ( [ y  /  x ] ph  ->  A. x ( ph  ->  x  =  y ) ) )
3327, 32eximd 1762 . . 3  |-  ( A. x A. y ( (
ph  /\  [ y  /  x ] ph )  ->  x  =  y )  ->  ( E. y [ y  /  x ] ph  ->  E. y A. x ( ph  ->  x  =  y ) ) )
34 alnex 1533 . . . 4  |-  ( A. y  -.  [ y  /  x ] ph  <->  -.  E. y [ y  /  x ] ph )
3510nfn 1777 . . . . . 6  |-  F/ x  -.  [ y  /  x ] ph
361nfn 1777 . . . . . 6  |-  F/ y  -.  ph
37 sbequ1 1871 . . . . . . . 8  |-  ( x  =  y  ->  ( ph  ->  [ y  /  x ] ph ) )
3837equcoms 1666 . . . . . . 7  |-  ( y  =  x  ->  ( ph  ->  [ y  /  x ] ph ) )
3938con3d 125 . . . . . 6  |-  ( y  =  x  ->  ( -.  [ y  /  x ] ph  ->  -.  ph )
)
4035, 36, 39cbv3 1935 . . . . 5  |-  ( A. y  -.  [ y  /  x ] ph  ->  A. x  -.  ph )
41 pm2.21 100 . . . . . 6  |-  ( -. 
ph  ->  ( ph  ->  x  =  y ) )
4241alimi 1549 . . . . 5  |-  ( A. x  -.  ph  ->  A. x
( ph  ->  x  =  y ) )
43 19.8a 1730 . . . . 5  |-  ( A. x ( ph  ->  x  =  y )  ->  E. y A. x (
ph  ->  x  =  y ) )
4440, 42, 433syl 18 . . . 4  |-  ( A. y  -.  [ y  /  x ] ph  ->  E. y A. x ( ph  ->  x  =  y ) )
4534, 44sylbir 204 . . 3  |-  ( -. 
E. y [ y  /  x ] ph  ->  E. y A. x
( ph  ->  x  =  y ) )
4633, 45pm2.61d1 151 . 2  |-  ( A. x A. y ( (
ph  /\  [ y  /  x ] ph )  ->  x  =  y )  ->  E. y A. x
( ph  ->  x  =  y ) )
4726, 46impbii 180 1  |-  ( E. y A. x (
ph  ->  x  =  y )  <->  A. x A. y
( ( ph  /\  [ y  /  x ] ph )  ->  x  =  y ) )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 176    /\ wa 358   A.wal 1530   E.wex 1531   F/wnf 1534    = wceq 1632   [wsb 1638
This theorem is referenced by:  eu2  2181  eu3  2182  mo3  2187
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1536  ax-5 1547  ax-17 1606  ax-9 1644  ax-8 1661  ax-6 1715  ax-7 1720  ax-11 1727  ax-12 1878
This theorem depends on definitions:  df-bi 177  df-an 360  df-tru 1310  df-ex 1532  df-nf 1535  df-sb 1639
  Copyright terms: Public domain W3C validator