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

Theorem fin0or 6834
Description: A finite set is either empty or inhabited. (Contributed by Jim Kingdon, 30-Sep-2021.)
Assertion
Ref Expression
fin0or  |-  ( A  e.  Fin  ->  ( A  =  (/)  \/  E. x  x  e.  A
) )
Distinct variable group:    x, A

Proof of Theorem fin0or
Dummy variables  f  m  n are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 isfi 6709 . . 3  |-  ( A  e.  Fin  <->  E. n  e.  om  A  ~~  n
)
21biimpi 119 . 2  |-  ( A  e.  Fin  ->  E. n  e.  om  A  ~~  n
)
3 nn0suc 4566 . . . 4  |-  ( n  e.  om  ->  (
n  =  (/)  \/  E. m  e.  om  n  =  suc  m ) )
43ad2antrl 482 . . 3  |-  ( ( A  e.  Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  ->  ( n  =  (/)  \/  E. m  e.  om  n  =  suc  m ) )
5 simplrr 526 . . . . . . 7  |-  ( ( ( A  e.  Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  /\  n  =  (/) )  ->  A  ~~  n )
6 simpr 109 . . . . . . 7  |-  ( ( ( A  e.  Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  /\  n  =  (/) )  ->  n  =  (/) )
75, 6breqtrd 3993 . . . . . 6  |-  ( ( ( A  e.  Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  /\  n  =  (/) )  ->  A  ~~  (/) )
8 en0 6743 . . . . . 6  |-  ( A 
~~  (/)  <->  A  =  (/) )
97, 8sylib 121 . . . . 5  |-  ( ( ( A  e.  Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  /\  n  =  (/) )  ->  A  =  (/) )
109ex 114 . . . 4  |-  ( ( A  e.  Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  ->  ( n  =  (/)  ->  A  =  (/) ) )
11 simplrr 526 . . . . . . . . . 10  |-  ( ( ( A  e.  Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  /\  m  e. 
om )  ->  A  ~~  n )
1211adantr 274 . . . . . . . . 9  |-  ( ( ( ( A  e. 
Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  /\  m  e.  om )  /\  n  =  suc  m )  ->  A  ~~  n )
1312ensymd 6731 . . . . . . . 8  |-  ( ( ( ( A  e. 
Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  /\  m  e.  om )  /\  n  =  suc  m )  ->  n  ~~  A )
14 bren 6695 . . . . . . . 8  |-  ( n 
~~  A  <->  E. f 
f : n -1-1-onto-> A )
1513, 14sylib 121 . . . . . . 7  |-  ( ( ( ( A  e. 
Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  /\  m  e.  om )  /\  n  =  suc  m )  ->  E. f 
f : n -1-1-onto-> A )
16 f1of 5417 . . . . . . . . . 10  |-  ( f : n -1-1-onto-> A  ->  f :
n --> A )
1716adantl 275 . . . . . . . . 9  |-  ( ( ( ( ( A  e.  Fin  /\  (
n  e.  om  /\  A  ~~  n ) )  /\  m  e.  om )  /\  n  =  suc  m )  /\  f : n -1-1-onto-> A )  ->  f : n --> A )
18 sucidg 4379 . . . . . . . . . . 11  |-  ( m  e.  om  ->  m  e.  suc  m )
1918ad3antlr 485 . . . . . . . . . 10  |-  ( ( ( ( ( A  e.  Fin  /\  (
n  e.  om  /\  A  ~~  n ) )  /\  m  e.  om )  /\  n  =  suc  m )  /\  f : n -1-1-onto-> A )  ->  m  e.  suc  m )
20 simplr 520 . . . . . . . . . 10  |-  ( ( ( ( ( A  e.  Fin  /\  (
n  e.  om  /\  A  ~~  n ) )  /\  m  e.  om )  /\  n  =  suc  m )  /\  f : n -1-1-onto-> A )  ->  n  =  suc  m )
2119, 20eleqtrrd 2237 . . . . . . . . 9  |-  ( ( ( ( ( A  e.  Fin  /\  (
n  e.  om  /\  A  ~~  n ) )  /\  m  e.  om )  /\  n  =  suc  m )  /\  f : n -1-1-onto-> A )  ->  m  e.  n )
2217, 21ffvelrnd 5606 . . . . . . . 8  |-  ( ( ( ( ( A  e.  Fin  /\  (
n  e.  om  /\  A  ~~  n ) )  /\  m  e.  om )  /\  n  =  suc  m )  /\  f : n -1-1-onto-> A )  ->  (
f `  m )  e.  A )
23 elex2 2728 . . . . . . . 8  |-  ( ( f `  m )  e.  A  ->  E. x  x  e.  A )
2422, 23syl 14 . . . . . . 7  |-  ( ( ( ( ( A  e.  Fin  /\  (
n  e.  om  /\  A  ~~  n ) )  /\  m  e.  om )  /\  n  =  suc  m )  /\  f : n -1-1-onto-> A )  ->  E. x  x  e.  A )
2515, 24exlimddv 1878 . . . . . 6  |-  ( ( ( ( A  e. 
Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  /\  m  e.  om )  /\  n  =  suc  m )  ->  E. x  x  e.  A )
2625ex 114 . . . . 5  |-  ( ( ( A  e.  Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  /\  m  e. 
om )  ->  (
n  =  suc  m  ->  E. x  x  e.  A ) )
2726rexlimdva 2574 . . . 4  |-  ( ( A  e.  Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  ->  ( E. m  e.  om  n  =  suc  m  ->  E. x  x  e.  A )
)
2810, 27orim12d 776 . . 3  |-  ( ( A  e.  Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  ->  ( (
n  =  (/)  \/  E. m  e.  om  n  =  suc  m )  -> 
( A  =  (/)  \/ 
E. x  x  e.  A ) ) )
294, 28mpd 13 . 2  |-  ( ( A  e.  Fin  /\  ( n  e.  om  /\  A  ~~  n ) )  ->  ( A  =  (/)  \/  E. x  x  e.  A )
)
302, 29rexlimddv 2579 1  |-  ( A  e.  Fin  ->  ( A  =  (/)  \/  E. x  x  e.  A
) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 103    \/ wo 698    = wceq 1335   E.wex 1472    e. wcel 2128   E.wrex 2436   (/)c0 3395   class class class wbr 3967   suc csuc 4328   omcom 4552   -->wf 5169   -1-1-onto->wf1o 5172   ` cfv 5173    ~~ cen 6686   Fincfn 6688
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 604  ax-in2 605  ax-io 699  ax-5 1427  ax-7 1428  ax-gen 1429  ax-ie1 1473  ax-ie2 1474  ax-8 1484  ax-10 1485  ax-11 1486  ax-i12 1487  ax-bndl 1489  ax-4 1490  ax-17 1506  ax-i9 1510  ax-ial 1514  ax-i5r 1515  ax-13 2130  ax-14 2131  ax-ext 2139  ax-sep 4085  ax-nul 4093  ax-pow 4138  ax-pr 4172  ax-un 4396  ax-iinf 4550
This theorem depends on definitions:  df-bi 116  df-3an 965  df-tru 1338  df-fal 1341  df-nf 1441  df-sb 1743  df-eu 2009  df-mo 2010  df-clab 2144  df-cleq 2150  df-clel 2153  df-nfc 2288  df-ral 2440  df-rex 2441  df-v 2714  df-sbc 2938  df-dif 3104  df-un 3106  df-in 3108  df-ss 3115  df-nul 3396  df-pw 3546  df-sn 3567  df-pr 3568  df-op 3570  df-uni 3775  df-int 3810  df-br 3968  df-opab 4029  df-id 4256  df-suc 4334  df-iom 4553  df-xp 4595  df-rel 4596  df-cnv 4597  df-co 4598  df-dm 4599  df-rn 4600  df-res 4601  df-ima 4602  df-iota 5138  df-fun 5175  df-fn 5176  df-f 5177  df-f1 5178  df-fo 5179  df-f1o 5180  df-fv 5181  df-er 6483  df-en 6689  df-fin 6691
This theorem is referenced by:  xpfi  6877  fival  6917  fsumcllem  11308  fprodcllem  11515
  Copyright terms: Public domain W3C validator