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

Theorem mo3 2356
Description: Alternate definition of "at most one." Definition of [BellMachover] p. 460, except that definition has the side condition that  y not occur in  ph in place of our hypothesis. (Contributed by NM, 8-Mar-1995.) (Proof shortened by Wolf Lammen, 18-Aug-2019.)
Hypothesis
Ref Expression
mo3.1  |-  F/ y
ph
Assertion
Ref Expression
mo3  |-  ( E* x ph  <->  A. x A. y ( ( ph  /\ 
[ y  /  x ] ph )  ->  x  =  y ) )
Distinct variable group:    x, y
Allowed substitution hints:    ph( x, y)

Proof of Theorem mo3
Dummy variable  z is distinct from all other variables.
StepHypRef Expression
1 nfmo1 2330 . . 3  |-  F/ x E* x ph
2 mo3.1 . . . . 5  |-  F/ y
ph
32nfmo 2336 . . . 4  |-  F/ y E* x ph
4 mo2v 2326 . . . . 5  |-  ( E* x ph  <->  E. z A. x ( ph  ->  x  =  z ) )
5 sp 1957 . . . . . . . 8  |-  ( A. x ( ph  ->  x  =  z )  -> 
( ph  ->  x  =  z ) )
6 spsbim 2243 . . . . . . . . 9  |-  ( A. x ( ph  ->  x  =  z )  -> 
( [ y  /  x ] ph  ->  [ y  /  x ] x  =  z ) )
7 equsb3 2281 . . . . . . . . 9  |-  ( [ y  /  x ]
x  =  z  <->  y  =  z )
86, 7syl6ib 234 . . . . . . . 8  |-  ( A. x ( ph  ->  x  =  z )  -> 
( [ y  /  x ] ph  ->  y  =  z ) )
95, 8anim12d 572 . . . . . . 7  |-  ( A. x ( ph  ->  x  =  z )  -> 
( ( ph  /\  [ y  /  x ] ph )  ->  ( x  =  z  /\  y  =  z ) ) )
10 equtr2 1877 . . . . . . 7  |-  ( ( x  =  z  /\  y  =  z )  ->  x  =  y )
119, 10syl6 33 . . . . . 6  |-  ( A. x ( ph  ->  x  =  z )  -> 
( ( ph  /\  [ y  /  x ] ph )  ->  x  =  y ) )
1211exlimiv 1784 . . . . 5  |-  ( E. z A. x (
ph  ->  x  =  z )  ->  ( ( ph  /\  [ y  /  x ] ph )  ->  x  =  y )
)
134, 12sylbi 200 . . . 4  |-  ( E* x ph  ->  (
( ph  /\  [ y  /  x ] ph )  ->  x  =  y ) )
143, 13alrimi 1975 . . 3  |-  ( E* x ph  ->  A. y
( ( ph  /\  [ y  /  x ] ph )  ->  x  =  y ) )
151, 14alrimi 1975 . 2  |-  ( E* x ph  ->  A. x A. y ( ( ph  /\ 
[ y  /  x ] ph )  ->  x  =  y ) )
16 nfs1v 2286 . . . . . . . 8  |-  F/ x [ y  /  x ] ph
17 pm3.21 455 . . . . . . . . 9  |-  ( [ y  /  x ] ph  ->  ( ph  ->  (
ph  /\  [ y  /  x ] ph )
) )
1817imim1d 77 . . . . . . . 8  |-  ( [ y  /  x ] ph  ->  ( ( (
ph  /\  [ y  /  x ] ph )  ->  x  =  y )  ->  ( ph  ->  x  =  y ) ) )
1916, 18alimd 1974 . . . . . . 7  |-  ( [ y  /  x ] ph  ->  ( A. x
( ( ph  /\  [ y  /  x ] ph )  ->  x  =  y )  ->  A. x
( ph  ->  x  =  y ) ) )
2019com12 31 . . . . . 6  |-  ( A. x ( ( ph  /\ 
[ y  /  x ] ph )  ->  x  =  y )  -> 
( [ y  /  x ] ph  ->  A. x
( ph  ->  x  =  y ) ) )
2120aleximi 1712 . . . . 5  |-  ( A. y A. x ( (
ph  /\  [ y  /  x ] ph )  ->  x  =  y )  ->  ( E. y [ y  /  x ] ph  ->  E. y A. x ( ph  ->  x  =  y ) ) )
222sb8e 2274 . . . . 5  |-  ( E. x ph  <->  E. y [ y  /  x ] ph )
232mo2 2328 . . . . 5  |-  ( E* x ph  <->  E. y A. x ( ph  ->  x  =  y ) )
2421, 22, 233imtr4g 278 . . . 4  |-  ( A. y A. x ( (
ph  /\  [ y  /  x ] ph )  ->  x  =  y )  ->  ( E. x ph  ->  E* x ph ) )
25 moabs 2350 . . . 4  |-  ( E* x ph  <->  ( E. x ph  ->  E* x ph ) )
2624, 25sylibr 217 . . 3  |-  ( A. y A. x ( (
ph  /\  [ y  /  x ] ph )  ->  x  =  y )  ->  E* x ph )
2726alcoms 1938 . 2  |-  ( A. x A. y ( (
ph  /\  [ y  /  x ] ph )  ->  x  =  y )  ->  E* x ph )
2815, 27impbii 192 1  |-  ( E* x ph  <->  A. x A. y ( ( ph  /\ 
[ y  /  x ] ph )  ->  x  =  y ) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 189    /\ wa 376   A.wal 1450   E.wex 1671   F/wnf 1675   [wsb 1805   E*wmo 2320
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1677  ax-4 1690  ax-5 1766  ax-6 1813  ax-7 1859  ax-10 1932  ax-11 1937  ax-12 1950  ax-13 2104
This theorem depends on definitions:  df-bi 190  df-or 377  df-an 378  df-tru 1455  df-ex 1672  df-nf 1676  df-sb 1806  df-eu 2323  df-mo 2324
This theorem is referenced by:  mo  2357  eu2  2358  mo4f  2365  2mo  2400  rmo3  3344  isarep2  5673  mo5f  28199  rmo3f  28210  rmo4fOLD  28211  bnj580  29796  pm14.12  36842
  Copyright terms: Public domain W3C validator