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

Theorem acexmid 5741
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 7030 and df-exmid 4089 syntaxes, see exmidac 7033. (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 1493 . . . . . . . . . . . . . 14  |-  F/ v ( f  e.  c  /\  E. e  e.  b  ( c  e.  e  /\  f  e.  e ) )
21sb8eu 1990 . . . . . . . . . . . . 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 2182 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( f  =  v  /\  c  =  z )  ->  ( f  e.  c  <-> 
v  e.  z ) )
43ancoms 266 . . . . . . . . . . . . . . . . . . 19  |-  ( ( c  =  z  /\  f  =  v )  ->  ( f  e.  c  <-> 
v  e.  z ) )
543adant3 986 . . . . . . . . . . . . . . . . . 18  |-  ( ( c  =  z  /\  f  =  v  /\  b  =  y )  ->  ( f  e.  c  <-> 
v  e.  z ) )
6 eleq12 2182 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( c  =  z  /\  e  =  u )  ->  ( c  e.  e  <-> 
z  e.  u ) )
763ad2antl1 1128 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( c  =  z  /\  f  =  v  /\  b  =  y )  /\  e  =  u )  ->  (
c  e.  e  <->  z  e.  u ) )
8 eleq12 2182 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( f  =  v  /\  e  =  u )  ->  ( f  e.  e  <-> 
v  e.  u ) )
983ad2antl2 1129 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( c  =  z  /\  f  =  v  /\  b  =  y )  /\  e  =  u )  ->  (
f  e.  e  <->  v  e.  u ) )
107, 9anbi12d 464 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( c  =  z  /\  f  =  v  /\  b  =  y )  /\  e  =  u )  ->  (
( c  e.  e  /\  f  e.  e )  <->  ( z  e.  u  /\  v  e.  u ) ) )
11 simpl3 971 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( c  =  z  /\  f  =  v  /\  b  =  y )  /\  e  =  u )  ->  b  =  y )
1210, 11cbvrexdva2 2636 . . . . . . . . . . . . . . . . . 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 464 . . . . . . . . . . . . . . . . 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 1172 . . . . . . . . . . . . . . . 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 1166 . . . . . . . . . . . . . . 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 1747 . . . . . . . . . . . . . 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 1985 . . . . . . . . . . . . 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, 17syl5bb 191 . . . . . . . . . . . 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 2400 . . . . . . . . . . . 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 2400 . . . . . . . . . . . 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 222 . . . . . . . . . . 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 274 . . . . . . . . . 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 503 . . . . . . . . . 10  |-  ( ( ( c  =  z  /\  b  =  y )  /\  d  =  w )  ->  c  =  z )
2422, 23cbvraldva2 2635 . . . . . . . . 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 266 . . . . . . . 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 467 . . . . . . 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 503 . . . . . . 7  |-  ( ( ( a  =  x  /\  b  =  y )  /\  c  =  z )  ->  a  =  x )
2826, 27cbvraldva2 2635 . . . . . 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 1881 . . . . 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 1871 . . . 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 1414 . . 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 1501 . 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 5740 1  |-  ( ph  \/  -.  ph )
Colors of variables: wff set class
Syntax hints:   -. wn 3    /\ wa 103    <-> wb 104    \/ wo 682    /\ w3a 947   A.wal 1314   E.wex 1453   [wsb 1720   E!weu 1977   A.wral 2393   E.wrex 2394   E!wreu 2395
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-in1 588  ax-in2 589  ax-io 683  ax-5 1408  ax-7 1409  ax-gen 1410  ax-ie1 1454  ax-ie2 1455  ax-8 1467  ax-10 1468  ax-11 1469  ax-i12 1470  ax-bndl 1471  ax-4 1472  ax-14 1477  ax-17 1491  ax-i9 1495  ax-ial 1499  ax-i5r 1500  ax-ext 2099  ax-sep 4016  ax-nul 4024  ax-pow 4068  ax-pr 4101
This theorem depends on definitions:  df-bi 116  df-3or 948  df-3an 949  df-tru 1319  df-nf 1422  df-sb 1721  df-eu 1980  df-clab 2104  df-cleq 2110  df-clel 2113  df-nfc 2247  df-ral 2398  df-rex 2399  df-reu 2400  df-rab 2402  df-v 2662  df-sbc 2883  df-dif 3043  df-un 3045  df-in 3047  df-ss 3054  df-nul 3334  df-pw 3482  df-sn 3503  df-pr 3504  df-uni 3707  df-tr 3997  df-iord 4258  df-on 4260  df-suc 4263  df-iota 5058  df-riota 5698
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator