ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  acexmid Unicode version

Theorem acexmid 6057
Description: The axiom of choice implies excluded middle. Theorem 1.3 in [Bauer] p. 483.

The statement of the axiom of choice given here is ac2 in the Metamath Proof Explorer (version of 3-Aug-2019). In particular, note that the choice function  y provides a value when  z is inhabited (as opposed to nonempty as in some statements of the axiom of choice).

Essentially the same proof can also be found at "The axiom of choice implies instances of EM", [Crosilla], p. "Set-theoretic principles incompatible with intuitionistic logic".

Often referred to as Diaconescu's theorem, or Diaconescu-Goodman-Myhill theorem, after Radu Diaconescu who discovered it in 1975 in the framework of topos theory and N. D. Goodman and John Myhill in 1978 in the framework of set theory (although it already appeared as an exercise in Errett Bishop's book Foundations of Constructive Analysis from 1967).

For this theorem stated using the df-ac 7526 and df-exmid 4313 syntaxes, see exmidac 7529. (Contributed by Jim Kingdon, 4-Aug-2019.)

Hypothesis
Ref Expression
acexmid.choice  |-  E. y A. z  e.  x  A. w  e.  z  E! v  e.  z  E. u  e.  y 
( z  e.  u  /\  v  e.  u
)
Assertion
Ref Expression
acexmid  |-  ( ph  \/  -.  ph )
Distinct variable group:    x, y, z, w, v, u
Allowed substitution hints:    ph( x, y, z, w, v, u)

Proof of Theorem acexmid
Dummy variables  a  b  c  d  e  f are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 nfv 1577 . . . . . . . . . . . . . 14  |-  F/ v ( f  e.  c  /\  E. e  e.  b  ( c  e.  e  /\  f  e.  e ) )
21sb8eu 2095 . . . . . . . . . . . . 13  |-  ( E! f ( f  e.  c  /\  E. e  e.  b  ( c  e.  e  /\  f  e.  e ) )  <->  E! v [ v  /  f ] ( f  e.  c  /\  E. e  e.  b  ( c  e.  e  /\  f  e.  e ) ) )
3 eleq12 2299 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( f  =  v  /\  c  =  z )  ->  ( f  e.  c  <-> 
v  e.  z ) )
43ancoms 268 . . . . . . . . . . . . . . . . . . 19  |-  ( ( c  =  z  /\  f  =  v )  ->  ( f  e.  c  <-> 
v  e.  z ) )
543adant3 1044 . . . . . . . . . . . . . . . . . 18  |-  ( ( c  =  z  /\  f  =  v  /\  b  =  y )  ->  ( f  e.  c  <-> 
v  e.  z ) )
6 eleq12 2299 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( c  =  z  /\  e  =  u )  ->  ( c  e.  e  <-> 
z  e.  u ) )
763ad2antl1 1186 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( c  =  z  /\  f  =  v  /\  b  =  y )  /\  e  =  u )  ->  (
c  e.  e  <->  z  e.  u ) )
8 eleq12 2299 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( f  =  v  /\  e  =  u )  ->  ( f  e.  e  <-> 
v  e.  u ) )
983ad2antl2 1187 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( c  =  z  /\  f  =  v  /\  b  =  y )  /\  e  =  u )  ->  (
f  e.  e  <->  v  e.  u ) )
107, 9anbi12d 473 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( c  =  z  /\  f  =  v  /\  b  =  y )  /\  e  =  u )  ->  (
( c  e.  e  /\  f  e.  e )  <->  ( z  e.  u  /\  v  e.  u ) ) )
11 simpl3 1029 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( c  =  z  /\  f  =  v  /\  b  =  y )  /\  e  =  u )  ->  b  =  y )
1210, 11cbvrexdva2 2788 . . . . . . . . . . . . . . . . . 18  |-  ( ( c  =  z  /\  f  =  v  /\  b  =  y )  ->  ( E. e  e.  b  ( c  e.  e  /\  f  e.  e )  <->  E. u  e.  y  ( z  e.  u  /\  v  e.  u ) ) )
135, 12anbi12d 473 . . . . . . . . . . . . . . . . 17  |-  ( ( c  =  z  /\  f  =  v  /\  b  =  y )  ->  ( ( f  e.  c  /\  E. e  e.  b  ( c  e.  e  /\  f  e.  e ) )  <->  ( v  e.  z  /\  E. u  e.  y  ( z  e.  u  /\  v  e.  u ) ) ) )
14133com23 1236 . . . . . . . . . . . . . . . 16  |-  ( ( c  =  z  /\  b  =  y  /\  f  =  v )  ->  ( ( f  e.  c  /\  E. e  e.  b  ( c  e.  e  /\  f  e.  e ) )  <->  ( v  e.  z  /\  E. u  e.  y  ( z  e.  u  /\  v  e.  u ) ) ) )
15143expa 1230 . . . . . . . . . . . . . . 15  |-  ( ( ( c  =  z  /\  b  =  y )  /\  f  =  v )  ->  (
( f  e.  c  /\  E. e  e.  b  ( c  e.  e  /\  f  e.  e ) )  <->  ( v  e.  z  /\  E. u  e.  y  ( z  e.  u  /\  v  e.  u ) ) ) )
1615sbiedv 1838 . . . . . . . . . . . . . 14  |-  ( ( c  =  z  /\  b  =  y )  ->  ( [ v  / 
f ] ( f  e.  c  /\  E. e  e.  b  (
c  e.  e  /\  f  e.  e )
)  <->  ( v  e.  z  /\  E. u  e.  y  ( z  e.  u  /\  v  e.  u ) ) ) )
1716eubidv 2090 . . . . . . . . . . . . 13  |-  ( ( c  =  z  /\  b  =  y )  ->  ( E! v [ v  /  f ] ( f  e.  c  /\  E. e  e.  b  ( c  e.  e  /\  f  e.  e ) )  <->  E! v
( v  e.  z  /\  E. u  e.  y  ( z  e.  u  /\  v  e.  u ) ) ) )
182, 17bitrid 192 . . . . . . . . . . . 12  |-  ( ( c  =  z  /\  b  =  y )  ->  ( E! f ( f  e.  c  /\  E. e  e.  b  ( c  e.  e  /\  f  e.  e )
)  <->  E! v ( v  e.  z  /\  E. u  e.  y  (
z  e.  u  /\  v  e.  u )
) ) )
19 df-reu 2529 . . . . . . . . . . . 12  |-  ( E! f  e.  c  E. e  e.  b  (
c  e.  e  /\  f  e.  e )  <->  E! f ( f  e.  c  /\  E. e  e.  b  ( c  e.  e  /\  f  e.  e ) ) )
20 df-reu 2529 . . . . . . . . . . . 12  |-  ( E! v  e.  z  E. u  e.  y  (
z  e.  u  /\  v  e.  u )  <->  E! v ( v  e.  z  /\  E. u  e.  y  ( z  e.  u  /\  v  e.  u ) ) )
2118, 19, 203bitr4g 223 . . . . . . . . . . 11  |-  ( ( c  =  z  /\  b  =  y )  ->  ( E! f  e.  c  E. e  e.  b  ( c  e.  e  /\  f  e.  e )  <->  E! v  e.  z  E. u  e.  y  ( z  e.  u  /\  v  e.  u ) ) )
2221adantr 276 . . . . . . . . . 10  |-  ( ( ( c  =  z  /\  b  =  y )  /\  d  =  w )  ->  ( E! f  e.  c  E. e  e.  b 
( c  e.  e  /\  f  e.  e )  <->  E! v  e.  z  E. u  e.  y  ( z  e.  u  /\  v  e.  u
) ) )
23 simpll 527 . . . . . . . . . 10  |-  ( ( ( c  =  z  /\  b  =  y )  /\  d  =  w )  ->  c  =  z )
2422, 23cbvraldva2 2787 . . . . . . . . 9  |-  ( ( c  =  z  /\  b  =  y )  ->  ( A. d  e.  c  E! f  e.  c  E. e  e.  b  ( c  e.  e  /\  f  e.  e )  <->  A. w  e.  z  E! v  e.  z  E. u  e.  y  ( z  e.  u  /\  v  e.  u ) ) )
2524ancoms 268 . . . . . . . 8  |-  ( ( b  =  y  /\  c  =  z )  ->  ( A. d  e.  c  E! f  e.  c  E. e  e.  b  ( c  e.  e  /\  f  e.  e )  <->  A. w  e.  z  E! v  e.  z  E. u  e.  y  ( z  e.  u  /\  v  e.  u ) ) )
2625adantll 476 . . . . . . 7  |-  ( ( ( a  =  x  /\  b  =  y )  /\  c  =  z )  ->  ( A. d  e.  c  E! f  e.  c  E. e  e.  b 
( c  e.  e  /\  f  e.  e )  <->  A. w  e.  z  E! v  e.  z  E. u  e.  y  ( z  e.  u  /\  v  e.  u
) ) )
27 simpll 527 . . . . . . 7  |-  ( ( ( a  =  x  /\  b  =  y )  /\  c  =  z )  ->  a  =  x )
2826, 27cbvraldva2 2787 . . . . . 6  |-  ( ( a  =  x  /\  b  =  y )  ->  ( A. c  e.  a  A. d  e.  c  E! f  e.  c  E. e  e.  b  ( c  e.  e  /\  f  e.  e )  <->  A. z  e.  x  A. w  e.  z  E! v  e.  z  E. u  e.  y  ( z  e.  u  /\  v  e.  u ) ) )
2928cbvexdva 1981 . . . . 5  |-  ( a  =  x  ->  ( E. b A. c  e.  a  A. d  e.  c  E! f  e.  c  E. e  e.  b  ( c  e.  e  /\  f  e.  e )  <->  E. y A. z  e.  x  A. w  e.  z  E! v  e.  z  E. u  e.  y 
( z  e.  u  /\  v  e.  u
) ) )
3029cbvalv 1969 . . . 4  |-  ( A. a E. b A. c  e.  a  A. d  e.  c  E! f  e.  c  E. e  e.  b  ( c  e.  e  /\  f  e.  e )  <->  A. x E. y A. z  e.  x  A. w  e.  z  E! v  e.  z  E. u  e.  y  ( z  e.  u  /\  v  e.  u ) )
31 acexmid.choice . . . 4  |-  E. y A. z  e.  x  A. w  e.  z  E! v  e.  z  E. u  e.  y 
( z  e.  u  /\  v  e.  u
)
3230, 31mpgbir 1502 . . 3  |-  A. a E. b A. c  e.  a  A. d  e.  c  E! f  e.  c  E. e  e.  b  ( c  e.  e  /\  f  e.  e )
3332spi 1585 . 2  |-  E. b A. c  e.  a  A. d  e.  c  E! f  e.  c  E. e  e.  b 
( c  e.  e  /\  f  e.  e )
3433acexmidlemv 6056 1  |-  ( ph  \/  -.  ph )
Colors of variables: wff set class
Syntax hints:   -. wn 3    /\ wa 104    <-> wb 105    \/ wo 716    /\ w3a 1005   A.wal 1396   E.wex 1541   [wsb 1811   E!weu 2082   A.wral 2522   E.wrex 2523   E!wreu 2524
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 619  ax-in2 620  ax-io 717  ax-5 1496  ax-7 1497  ax-gen 1498  ax-ie1 1542  ax-ie2 1543  ax-8 1553  ax-10 1554  ax-11 1555  ax-i12 1556  ax-bndl 1558  ax-4 1559  ax-17 1575  ax-i9 1579  ax-ial 1583  ax-i5r 1584  ax-14 2208  ax-ext 2216  ax-sep 4233  ax-nul 4241  ax-pow 4292  ax-pr 4327
This theorem depends on definitions:  df-bi 117  df-3or 1006  df-3an 1007  df-tru 1401  df-nf 1510  df-sb 1812  df-eu 2085  df-clab 2221  df-cleq 2227  df-clel 2230  df-nfc 2375  df-ral 2527  df-rex 2528  df-reu 2529  df-rab 2531  df-v 2817  df-sbc 3046  df-dif 3216  df-un 3218  df-in 3220  df-ss 3227  df-nul 3513  df-pw 3676  df-sn 3700  df-pr 3701  df-uni 3920  df-tr 4214  df-iord 4492  df-on 4494  df-suc 4497  df-iota 5317  df-riota 6011
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator