HomeHome Intuitionistic Logic Explorer
Theorem List (p. 130 of 165)
< Previous  Next >
Browser slow? Try the
Unicode version.

Mirrors  >  Metamath Home Page  >  ILE Home Page  >  Theorem List Contents  >  Recent Proofs       This page: Page List

Theorem List for Intuitionistic Logic Explorer - 12901-13000   *Has distinct variable group(s)
TypeLabelDescription
Statement
 
Theorem4sqlem6 12901 Lemma for 4sq 12928. (Contributed by Mario Carneiro, 15-Jul-2014.)
 |-  ( ph  ->  A  e.  ZZ )   &    |-  ( ph  ->  M  e.  NN )   &    |-  B  =  ( ( ( A  +  ( M  / 
 2 ) )  mod  M )  -  ( M 
 /  2 ) )   =>    |-  ( ph  ->  ( -u ( M  /  2 )  <_  B  /\  B  <  ( M  /  2 ) ) )
 
Theorem4sqlem7 12902 Lemma for 4sq 12928. (Contributed by Mario Carneiro, 15-Jul-2014.)
 |-  ( ph  ->  A  e.  ZZ )   &    |-  ( ph  ->  M  e.  NN )   &    |-  B  =  ( ( ( A  +  ( M  / 
 2 ) )  mod  M )  -  ( M 
 /  2 ) )   =>    |-  ( ph  ->  ( B ^ 2 )  <_  ( ( ( M ^ 2 )  / 
 2 )  /  2
 ) )
 
Theorem4sqlem8 12903 Lemma for 4sq 12928. (Contributed by Mario Carneiro, 15-Jul-2014.)
 |-  ( ph  ->  A  e.  ZZ )   &    |-  ( ph  ->  M  e.  NN )   &    |-  B  =  ( ( ( A  +  ( M  / 
 2 ) )  mod  M )  -  ( M 
 /  2 ) )   =>    |-  ( ph  ->  M  ||  (
 ( A ^ 2
 )  -  ( B ^ 2 ) ) )
 
Theorem4sqlem9 12904 Lemma for 4sq 12928. (Contributed by Mario Carneiro, 15-Jul-2014.)
 |-  ( ph  ->  A  e.  ZZ )   &    |-  ( ph  ->  M  e.  NN )   &    |-  B  =  ( ( ( A  +  ( M  / 
 2 ) )  mod  M )  -  ( M 
 /  2 ) )   &    |-  ( ( ph  /\  ps )  ->  ( B ^
 2 )  =  0 )   =>    |-  ( ( ph  /\  ps )  ->  ( M ^
 2 )  ||  ( A ^ 2 ) )
 
Theorem4sqlem10 12905 Lemma for 4sq 12928. (Contributed by Mario Carneiro, 16-Jul-2014.)
 |-  ( ph  ->  A  e.  ZZ )   &    |-  ( ph  ->  M  e.  NN )   &    |-  B  =  ( ( ( A  +  ( M  / 
 2 ) )  mod  M )  -  ( M 
 /  2 ) )   &    |-  ( ( ph  /\  ps )  ->  ( ( ( ( M ^ 2
 )  /  2 )  /  2 )  -  ( B ^ 2 ) )  =  0 )   =>    |-  ( ( ph  /\  ps )  ->  ( M ^
 2 )  ||  (
 ( A ^ 2
 )  -  ( ( ( M ^ 2
 )  /  2 )  /  2 ) ) )
 
Theorem4sqlem1 12906* Lemma for 4sq 12928. The set  S is the set of all numbers that are expressible as a sum of four squares. Our goal is to show that  S  =  NN0; here we show one subset direction. (Contributed by Mario Carneiro, 14-Jul-2014.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   =>    |-  S  C_  NN0
 
Theorem4sqlem2 12907* Lemma for 4sq 12928. Change bound variables in  S. (Contributed by Mario Carneiro, 14-Jul-2014.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   =>    |-  ( A  e.  S  <->  E. a  e.  ZZ  E. b  e.  ZZ  E. c  e.  ZZ  E. d  e. 
 ZZ  A  =  ( ( ( a ^
 2 )  +  (
 b ^ 2 ) )  +  ( ( c ^ 2 )  +  ( d ^
 2 ) ) ) )
 
Theorem4sqlem3 12908* Lemma for 4sq 12928. Sufficient condition to be in  S. (Contributed by Mario Carneiro, 14-Jul-2014.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   =>    |-  ( ( ( A  e.  ZZ  /\  B  e.  ZZ )  /\  ( C  e.  ZZ  /\  D  e.  ZZ ) )  ->  ( ( ( A ^ 2 )  +  ( B ^ 2 ) )  +  ( ( C ^ 2 )  +  ( D ^
 2 ) ) )  e.  S )
 
Theorem4sqlem4a 12909* Lemma for 4sqlem4 12910. (Contributed by Mario Carneiro, 14-Jul-2014.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   =>    |-  ( ( A  e.  ZZ[_i]  /\  B  e.  ZZ[_i] )  ->  (
 ( ( abs `  A ) ^ 2 )  +  ( ( abs `  B ) ^ 2 ) )  e.  S )
 
Theorem4sqlem4 12910* Lemma for 4sq 12928. We can express the four-square property more compactly in terms of gaussian integers, because the norms of gaussian integers are exactly sums of two squares. (Contributed by Mario Carneiro, 14-Jul-2014.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   =>    |-  ( A  e.  S  <->  E. u  e.  ZZ[_i]  E. v  e.  ZZ[_i]  A  =  ( (
 ( abs `  u ) ^ 2 )  +  ( ( abs `  v
 ) ^ 2 ) ) )
 
Theoremmul4sqlem 12911* Lemma for mul4sq 12912: algebraic manipulations. The extra assumptions involving  M would let us know not just that the product is a sum of squares, but also that it preserves divisibility by  M. (Contributed by Mario Carneiro, 14-Jul-2014.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   &    |-  ( ph  ->  A  e.  ZZ[_i] )   &    |-  ( ph  ->  B  e.  ZZ[_i] )   &    |-  ( ph  ->  C  e.  ZZ[_i] )   &    |-  ( ph  ->  D  e.  ZZ[_i] )   &    |-  X  =  ( ( ( abs `  A ) ^ 2 )  +  ( ( abs `  B ) ^ 2 ) )   &    |-  Y  =  ( (
 ( abs `  C ) ^ 2 )  +  ( ( abs `  D ) ^ 2 ) )   &    |-  ( ph  ->  M  e.  NN )   &    |-  ( ph  ->  ( ( A  -  C )  /  M )  e. 
 ZZ[_i]
 )   &    |-  ( ph  ->  (
 ( B  -  D )  /  M )  e. 
 ZZ[_i]
 )   &    |-  ( ph  ->  ( X  /  M )  e. 
 NN0 )   =>    |-  ( ph  ->  (
 ( X  /  M )  x.  ( Y  /  M ) )  e.  S )
 
Theoremmul4sq 12912* Euler's four-square identity: The product of two sums of four squares is also a sum of four squares. This is usually quoted as an explicit formula involving eight real variables; we save some time by working with complex numbers (gaussian integers) instead, so that we only have to work with four variables, and also hiding the actual formula for the product in the proof of mul4sqlem 12911. (For the curious, the explicit formula that is used is  (  |  a  |  ^ 2  +  |  b  |  ^
2 ) (  |  c  |  ^ 2  +  |  d  |  ^ 2 )  =  |  a *  x.  c  +  b  x.  d *  |  ^ 2  +  | 
a *  x.  d  -  b  x.  c
*  |  ^ 2.) (Contributed by Mario Carneiro, 14-Jul-2014.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   =>    |-  ( ( A  e.  S  /\  B  e.  S )  ->  ( A  x.  B )  e.  S )
 
Theorem4sqlemafi 12913* Lemma for 4sq 12928. 
A is finite. (Contributed by Jim Kingdon, 24-May-2025.)
 |-  ( ph  ->  N  e.  NN )   &    |-  ( ph  ->  P  e.  NN )   &    |-  A  =  { u  |  E. m  e.  ( 0 ... N ) u  =  ( ( m ^
 2 )  mod  P ) }   =>    |-  ( ph  ->  A  e.  Fin )
 
Theorem4sqlemffi 12914* Lemma for 4sq 12928.  ran  F is finite. (Contributed by Jim Kingdon, 24-May-2025.)
 |-  ( ph  ->  N  e.  NN )   &    |-  ( ph  ->  P  e.  NN )   &    |-  A  =  { u  |  E. m  e.  ( 0 ... N ) u  =  ( ( m ^
 2 )  mod  P ) }   &    |-  F  =  ( v  e.  A  |->  ( ( P  -  1
 )  -  v ) )   =>    |-  ( ph  ->  ran  F  e.  Fin )
 
Theorem4sqleminfi 12915* Lemma for 4sq 12928. 
A  i^i  ran  F is finite. (Contributed by Jim Kingdon, 24-May-2025.)
 |-  ( ph  ->  N  e.  NN )   &    |-  ( ph  ->  P  e.  NN )   &    |-  A  =  { u  |  E. m  e.  ( 0 ... N ) u  =  ( ( m ^
 2 )  mod  P ) }   &    |-  F  =  ( v  e.  A  |->  ( ( P  -  1
 )  -  v ) )   =>    |-  ( ph  ->  ( A  i^i  ran  F )  e.  Fin )
 
Theorem4sqexercise1 12916* Exercise which may help in understanding the proof of 4sqlemsdc 12918. (Contributed by Jim Kingdon, 25-May-2025.)
 |-  S  =  { n  |  E. x  e.  ZZ  n  =  ( x ^ 2 ) }   =>    |-  ( A  e.  NN0  -> DECID  A  e.  S )
 
Theorem4sqexercise2 12917* Exercise which may help in understanding the proof of 4sqlemsdc 12918. (Contributed by Jim Kingdon, 30-May-2025.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  n  =  ( ( x ^
 2 )  +  (
 y ^ 2 ) ) }   =>    |-  ( A  e.  NN0  -> DECID  A  e.  S )
 
Theorem4sqlemsdc 12918* Lemma for 4sq 12928. The property of being the sum of four squares is decidable.

The proof involves showing that (for a particular  A) there are only a finite number of possible ways that it could be the sum of four squares, so checking each of those possibilities in turn decides whether the number is the sum of four squares. If this proof is hard to follow, especially because of its length, the simplified versions at 4sqexercise1 12916 and 4sqexercise2 12917 may help clarify, as they are using very much the same techniques on simplified versions of this lemma. (Contributed by Jim Kingdon, 25-May-2025.)

 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   =>    |-  ( A  e.  NN0  -> DECID  A  e.  S )
 
Theorem4sqlem11 12919* Lemma for 4sq 12928. Use the pigeonhole principle to show that the sets  { m ^
2  |  m  e.  ( 0 ... N
) } and  { -u 1  -  n ^ 2  |  n  e.  ( 0 ... N ) } have a common element,  mod  P. Note that although the conclusion is stated in terms of  A  i^i  ran  F being nonempty, it is also inhabited by 4sqleminfi 12915 and fin0 7043. (Contributed by Mario Carneiro, 15-Jul-2014.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   &    |-  ( ph  ->  N  e.  NN )   &    |-  ( ph  ->  P  =  ( ( 2  x.  N )  +  1 )
 )   &    |-  ( ph  ->  P  e.  Prime )   &    |-  A  =  { u  |  E. m  e.  ( 0 ... N ) u  =  (
 ( m ^ 2
 )  mod  P ) }   &    |-  F  =  ( v  e.  A  |->  ( ( P  -  1 )  -  v ) )   =>    |-  ( ph  ->  ( A  i^i  ran  F )  =/=  (/) )
 
Theorem4sqlem12 12920* Lemma for 4sq 12928. For any odd prime  P, there is a  k  <  P such that  k P  -  1 is a sum of two squares. (Contributed by Mario Carneiro, 15-Jul-2014.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   &    |-  ( ph  ->  N  e.  NN )   &    |-  ( ph  ->  P  =  ( ( 2  x.  N )  +  1 )
 )   &    |-  ( ph  ->  P  e.  Prime )   &    |-  A  =  { u  |  E. m  e.  ( 0 ... N ) u  =  (
 ( m ^ 2
 )  mod  P ) }   &    |-  F  =  ( v  e.  A  |->  ( ( P  -  1 )  -  v ) )   =>    |-  ( ph  ->  E. k  e.  ( 1 ... ( P  -  1 ) ) E. u  e.  ZZ[_i]  ( ( ( abs `  u ) ^ 2 )  +  1 )  =  (
 k  x.  P ) )
 
Theorem4sqlem13m 12921* Lemma for 4sq 12928. (Contributed by Mario Carneiro, 16-Jul-2014.) (Revised by AV, 14-Sep-2020.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   &    |-  ( ph  ->  N  e.  NN )   &    |-  ( ph  ->  P  =  ( ( 2  x.  N )  +  1 )
 )   &    |-  ( ph  ->  P  e.  Prime )   &    |-  ( ph  ->  ( 0 ... ( 2  x.  N ) ) 
 C_  S )   &    |-  T  =  { i  e.  NN  |  ( i  x.  P )  e.  S }   &    |-  M  = inf ( T ,  RR ,  <  )   =>    |-  ( ph  ->  ( E. j  j  e.  T  /\  M  <  P ) )
 
Theorem4sqlem14 12922* Lemma for 4sq 12928. (Contributed by Mario Carneiro, 16-Jul-2014.) (Revised by AV, 14-Sep-2020.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   &    |-  ( ph  ->  N  e.  NN )   &    |-  ( ph  ->  P  =  ( ( 2  x.  N )  +  1 )
 )   &    |-  ( ph  ->  P  e.  Prime )   &    |-  ( ph  ->  ( 0 ... ( 2  x.  N ) ) 
 C_  S )   &    |-  T  =  { i  e.  NN  |  ( i  x.  P )  e.  S }   &    |-  M  = inf ( T ,  RR ,  <  )   &    |-  ( ph  ->  M  e.  ( ZZ>= `  2
 ) )   &    |-  ( ph  ->  A  e.  ZZ )   &    |-  ( ph  ->  B  e.  ZZ )   &    |-  ( ph  ->  C  e.  ZZ )   &    |-  ( ph  ->  D  e.  ZZ )   &    |-  E  =  ( ( ( A  +  ( M  / 
 2 ) )  mod  M )  -  ( M 
 /  2 ) )   &    |-  F  =  ( (
 ( B  +  ( M  /  2 ) ) 
 mod  M )  -  ( M  /  2 ) )   &    |-  G  =  ( (
 ( C  +  ( M  /  2 ) ) 
 mod  M )  -  ( M  /  2 ) )   &    |-  H  =  ( (
 ( D  +  ( M  /  2 ) ) 
 mod  M )  -  ( M  /  2 ) )   &    |-  R  =  ( (
 ( ( E ^
 2 )  +  ( F ^ 2 ) )  +  ( ( G ^ 2 )  +  ( H ^ 2 ) ) )  /  M )   &    |-  ( ph  ->  ( M  x.  P )  =  ( ( ( A ^ 2 )  +  ( B ^ 2 ) )  +  ( ( C ^ 2 )  +  ( D ^
 2 ) ) ) )   =>    |-  ( ph  ->  R  e.  NN0 )
 
Theorem4sqlem15 12923* Lemma for 4sq 12928. (Contributed by Mario Carneiro, 16-Jul-2014.) (Revised by AV, 14-Sep-2020.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   &    |-  ( ph  ->  N  e.  NN )   &    |-  ( ph  ->  P  =  ( ( 2  x.  N )  +  1 )
 )   &    |-  ( ph  ->  P  e.  Prime )   &    |-  ( ph  ->  ( 0 ... ( 2  x.  N ) ) 
 C_  S )   &    |-  T  =  { i  e.  NN  |  ( i  x.  P )  e.  S }   &    |-  M  = inf ( T ,  RR ,  <  )   &    |-  ( ph  ->  M  e.  ( ZZ>= `  2
 ) )   &    |-  ( ph  ->  A  e.  ZZ )   &    |-  ( ph  ->  B  e.  ZZ )   &    |-  ( ph  ->  C  e.  ZZ )   &    |-  ( ph  ->  D  e.  ZZ )   &    |-  E  =  ( ( ( A  +  ( M  / 
 2 ) )  mod  M )  -  ( M 
 /  2 ) )   &    |-  F  =  ( (
 ( B  +  ( M  /  2 ) ) 
 mod  M )  -  ( M  /  2 ) )   &    |-  G  =  ( (
 ( C  +  ( M  /  2 ) ) 
 mod  M )  -  ( M  /  2 ) )   &    |-  H  =  ( (
 ( D  +  ( M  /  2 ) ) 
 mod  M )  -  ( M  /  2 ) )   &    |-  R  =  ( (
 ( ( E ^
 2 )  +  ( F ^ 2 ) )  +  ( ( G ^ 2 )  +  ( H ^ 2 ) ) )  /  M )   &    |-  ( ph  ->  ( M  x.  P )  =  ( ( ( A ^ 2 )  +  ( B ^ 2 ) )  +  ( ( C ^ 2 )  +  ( D ^
 2 ) ) ) )   =>    |-  ( ( ph  /\  R  =  M )  ->  (
 ( ( ( ( ( M ^ 2
 )  /  2 )  /  2 )  -  ( E ^ 2 ) )  =  0  /\  ( ( ( ( M ^ 2 ) 
 /  2 )  / 
 2 )  -  ( F ^ 2 ) )  =  0 )  /\  ( ( ( ( ( M ^ 2
 )  /  2 )  /  2 )  -  ( G ^ 2 ) )  =  0  /\  ( ( ( ( M ^ 2 ) 
 /  2 )  / 
 2 )  -  ( H ^ 2 ) )  =  0 ) ) )
 
Theorem4sqlem16 12924* Lemma for 4sq 12928. (Contributed by Mario Carneiro, 16-Jul-2014.) (Revised by AV, 14-Sep-2020.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   &    |-  ( ph  ->  N  e.  NN )   &    |-  ( ph  ->  P  =  ( ( 2  x.  N )  +  1 )
 )   &    |-  ( ph  ->  P  e.  Prime )   &    |-  ( ph  ->  ( 0 ... ( 2  x.  N ) ) 
 C_  S )   &    |-  T  =  { i  e.  NN  |  ( i  x.  P )  e.  S }   &    |-  M  = inf ( T ,  RR ,  <  )   &    |-  ( ph  ->  M  e.  ( ZZ>= `  2
 ) )   &    |-  ( ph  ->  A  e.  ZZ )   &    |-  ( ph  ->  B  e.  ZZ )   &    |-  ( ph  ->  C  e.  ZZ )   &    |-  ( ph  ->  D  e.  ZZ )   &    |-  E  =  ( ( ( A  +  ( M  / 
 2 ) )  mod  M )  -  ( M 
 /  2 ) )   &    |-  F  =  ( (
 ( B  +  ( M  /  2 ) ) 
 mod  M )  -  ( M  /  2 ) )   &    |-  G  =  ( (
 ( C  +  ( M  /  2 ) ) 
 mod  M )  -  ( M  /  2 ) )   &    |-  H  =  ( (
 ( D  +  ( M  /  2 ) ) 
 mod  M )  -  ( M  /  2 ) )   &    |-  R  =  ( (
 ( ( E ^
 2 )  +  ( F ^ 2 ) )  +  ( ( G ^ 2 )  +  ( H ^ 2 ) ) )  /  M )   &    |-  ( ph  ->  ( M  x.  P )  =  ( ( ( A ^ 2 )  +  ( B ^ 2 ) )  +  ( ( C ^ 2 )  +  ( D ^
 2 ) ) ) )   =>    |-  ( ph  ->  ( R  <_  M  /\  (
 ( R  =  0  \/  R  =  M )  ->  ( M ^
 2 )  ||  ( M  x.  P ) ) ) )
 
Theorem4sqlem17 12925* Lemma for 4sq 12928. (Contributed by Mario Carneiro, 16-Jul-2014.) (Revised by AV, 14-Sep-2020.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   &    |-  ( ph  ->  N  e.  NN )   &    |-  ( ph  ->  P  =  ( ( 2  x.  N )  +  1 )
 )   &    |-  ( ph  ->  P  e.  Prime )   &    |-  ( ph  ->  ( 0 ... ( 2  x.  N ) ) 
 C_  S )   &    |-  T  =  { i  e.  NN  |  ( i  x.  P )  e.  S }   &    |-  M  = inf ( T ,  RR ,  <  )   &    |-  ( ph  ->  M  e.  ( ZZ>= `  2
 ) )   &    |-  ( ph  ->  A  e.  ZZ )   &    |-  ( ph  ->  B  e.  ZZ )   &    |-  ( ph  ->  C  e.  ZZ )   &    |-  ( ph  ->  D  e.  ZZ )   &    |-  E  =  ( ( ( A  +  ( M  / 
 2 ) )  mod  M )  -  ( M 
 /  2 ) )   &    |-  F  =  ( (
 ( B  +  ( M  /  2 ) ) 
 mod  M )  -  ( M  /  2 ) )   &    |-  G  =  ( (
 ( C  +  ( M  /  2 ) ) 
 mod  M )  -  ( M  /  2 ) )   &    |-  H  =  ( (
 ( D  +  ( M  /  2 ) ) 
 mod  M )  -  ( M  /  2 ) )   &    |-  R  =  ( (
 ( ( E ^
 2 )  +  ( F ^ 2 ) )  +  ( ( G ^ 2 )  +  ( H ^ 2 ) ) )  /  M )   &    |-  ( ph  ->  ( M  x.  P )  =  ( ( ( A ^ 2 )  +  ( B ^ 2 ) )  +  ( ( C ^ 2 )  +  ( D ^
 2 ) ) ) )   =>    |- 
 -.  ph
 
Theorem4sqlem18 12926* Lemma for 4sq 12928. Inductive step, odd prime case. (Contributed by Mario Carneiro, 16-Jul-2014.) (Revised by AV, 14-Sep-2020.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   &    |-  ( ph  ->  N  e.  NN )   &    |-  ( ph  ->  P  =  ( ( 2  x.  N )  +  1 )
 )   &    |-  ( ph  ->  P  e.  Prime )   &    |-  ( ph  ->  ( 0 ... ( 2  x.  N ) ) 
 C_  S )   &    |-  T  =  { i  e.  NN  |  ( i  x.  P )  e.  S }   &    |-  M  = inf ( T ,  RR ,  <  )   =>    |-  ( ph  ->  P  e.  S )
 
Theorem4sqlem19 12927* Lemma for 4sq 12928. The proof is by strong induction - we show that if all the integers less than  k are in  S, then  k is as well. In this part of the proof we do the induction argument and dispense with all the cases except the odd prime case, which is sent to 4sqlem18 12926. If  k is  0 ,  1 ,  2, we show  k  e.  S directly; otherwise if  k is composite,  k is the product of two numbers less than it (and hence in  S by assumption), so by mul4sq 12912  k  e.  S. (Contributed by Mario Carneiro, 14-Jul-2014.) (Revised by Mario Carneiro, 20-Jun-2015.)
 |-  S  =  { n  |  E. x  e.  ZZ  E. y  e.  ZZ  E. z  e.  ZZ  E. w  e.  ZZ  n  =  ( ( ( x ^
 2 )  +  (
 y ^ 2 ) )  +  ( ( z ^ 2 )  +  ( w ^
 2 ) ) ) }   =>    |- 
 NN0  =  S
 
Theorem4sq 12928* Lagrange's four-square theorem, or Bachet's conjecture: every nonnegative integer is expressible as a sum of four squares. This is Metamath 100 proof #19. (Contributed by Mario Carneiro, 16-Jul-2014.)
 |-  ( A  e.  NN0  <->  E. a  e.  ZZ  E. b  e.  ZZ  E. c  e. 
 ZZ  E. d  e.  ZZ  A  =  ( (
 ( a ^ 2
 )  +  ( b ^ 2 ) )  +  ( ( c ^ 2 )  +  ( d ^ 2
 ) ) ) )
 
5.2.13  Decimal arithmetic (cont.)
 
Theoremdec2dvds 12929 Divisibility by two is obvious in base 10. (Contributed by Mario Carneiro, 19-Apr-2015.)
 |-  A  e.  NN0   &    |-  B  e.  NN0   &    |-  ( B  x.  2
 )  =  C   &    |-  D  =  ( C  +  1 )   =>    |- 
 -.  2  || ; A D
 
Theoremdec5dvds 12930 Divisibility by five is obvious in base 10. (Contributed by Mario Carneiro, 19-Apr-2015.)
 |-  A  e.  NN0   &    |-  B  e.  NN   &    |-  B  <  5   =>    |- 
 -.  5  || ; A B
 
Theoremdec5dvds2 12931 Divisibility by five is obvious in base 10. (Contributed by Mario Carneiro, 19-Apr-2015.)
 |-  A  e.  NN0   &    |-  B  e.  NN   &    |-  B  <  5   &    |-  ( 5  +  B )  =  C   =>    |-  -.  5  || ; A C
 
Theoremdec5nprm 12932 A decimal number greater than 10 and ending with five is not a prime number. (Contributed by Mario Carneiro, 19-Apr-2015.)
 |-  A  e.  NN   =>    |-  -. ; A 5  e.  Prime
 
Theoremdec2nprm 12933 A decimal number greater than 10 and ending with an even digit is not a prime number. (Contributed by Mario Carneiro, 19-Apr-2015.)
 |-  A  e.  NN   &    |-  B  e.  NN0   &    |-  ( B  x.  2
 )  =  C   =>    |-  -. ; A C  e.  Prime
 
Theoremmodxai 12934 Add exponents in a power mod calculation. (Contributed by Mario Carneiro, 21-Feb-2014.) (Revised by Mario Carneiro, 5-Feb-2015.)
 |-  N  e.  NN   &    |-  A  e.  NN   &    |-  B  e.  NN0   &    |-  D  e.  ZZ   &    |-  K  e.  NN0   &    |-  M  e.  NN0   &    |-  C  e.  NN0   &    |-  L  e.  NN0   &    |-  ( ( A ^ B )  mod  N )  =  ( K  mod  N )   &    |-  ( ( A ^ C )  mod  N )  =  ( L 
 mod  N )   &    |-  ( B  +  C )  =  E   &    |-  (
 ( D  x.  N )  +  M )  =  ( K  x.  L )   =>    |-  ( ( A ^ E )  mod  N )  =  ( M  mod  N )
 
Theoremmod2xi 12935 Double exponents in a power mod calculation. (Contributed by Mario Carneiro, 21-Feb-2014.)
 |-  N  e.  NN   &    |-  A  e.  NN   &    |-  B  e.  NN0   &    |-  D  e.  ZZ   &    |-  K  e.  NN0   &    |-  M  e.  NN0   &    |-  ( ( A ^ B )  mod  N )  =  ( K  mod  N )   &    |-  ( 2  x.  B )  =  E   &    |-  (
 ( D  x.  N )  +  M )  =  ( K  x.  K )   =>    |-  ( ( A ^ E )  mod  N )  =  ( M  mod  N )
 
Theoremmodxp1i 12936 Add one to an exponent in a power mod calculation. (Contributed by Mario Carneiro, 21-Feb-2014.)
 |-  N  e.  NN   &    |-  A  e.  NN   &    |-  B  e.  NN0   &    |-  D  e.  ZZ   &    |-  K  e.  NN0   &    |-  M  e.  NN0   &    |-  ( ( A ^ B )  mod  N )  =  ( K  mod  N )   &    |-  ( B  +  1 )  =  E   &    |-  (
 ( D  x.  N )  +  M )  =  ( K  x.  A )   =>    |-  ( ( A ^ E )  mod  N )  =  ( M  mod  N )
 
Theoremmodsubi 12937 Subtract from within a mod calculation. (Contributed by Mario Carneiro, 18-Feb-2014.)
 |-  N  e.  NN   &    |-  A  e.  NN   &    |-  B  e.  NN0   &    |-  M  e.  NN0   &    |-  ( A  mod  N )  =  ( K  mod  N )   &    |-  ( M  +  B )  =  K   =>    |-  (
 ( A  -  B )  mod  N )  =  ( M  mod  N )
 
Theoremgcdi 12938 Calculate a GCD via Euclid's algorithm. (Contributed by Mario Carneiro, 19-Feb-2014.)
 |-  K  e.  NN0   &    |-  R  e.  NN0   &    |-  N  e.  NN0   &    |-  ( N  gcd  R )  =  G   &    |-  ( ( K  x.  N )  +  R )  =  M   =>    |-  ( M  gcd  N )  =  G
 
Theoremgcdmodi 12939 Calculate a GCD via Euclid's algorithm. Theorem 5.6 in [ApostolNT] p. 109. (Contributed by Mario Carneiro, 19-Feb-2014.)
 |-  K  e.  NN0   &    |-  R  e.  NN0   &    |-  N  e.  NN   &    |-  ( K  mod  N )  =  ( R  mod  N )   &    |-  ( N  gcd  R )  =  G   =>    |-  ( K  gcd  N )  =  G
 
Theoremnumexp0 12940 Calculate an integer power. (Contributed by Mario Carneiro, 17-Apr-2015.)
 |-  A  e.  NN0   =>    |-  ( A ^ 0
 )  =  1
 
Theoremnumexp1 12941 Calculate an integer power. (Contributed by Mario Carneiro, 17-Apr-2015.)
 |-  A  e.  NN0   =>    |-  ( A ^ 1
 )  =  A
 
Theoremnumexpp1 12942 Calculate an integer power. (Contributed by Mario Carneiro, 17-Apr-2015.)
 |-  A  e.  NN0   &    |-  M  e.  NN0   &    |-  ( M  +  1 )  =  N   &    |-  (
 ( A ^ M )  x.  A )  =  C   =>    |-  ( A ^ N )  =  C
 
Theoremnumexp2x 12943 Double an integer power. (Contributed by Mario Carneiro, 17-Apr-2015.)
 |-  A  e.  NN0   &    |-  M  e.  NN0   &    |-  ( 2  x.  M )  =  N   &    |-  ( A ^ M )  =  D   &    |-  ( D  x.  D )  =  C   =>    |-  ( A ^ N )  =  C
 
Theoremdecsplit0b 12944 Split a decimal number into two parts. Base case:  N  =  0. (Contributed by Mario Carneiro, 16-Jul-2015.) (Revised by AV, 8-Sep-2021.)
 |-  A  e.  NN0   =>    |-  ( ( A  x.  (; 1 0 ^ 0 ) )  +  B )  =  ( A  +  B )
 
Theoremdecsplit0 12945 Split a decimal number into two parts. Base case:  N  =  0. (Contributed by Mario Carneiro, 16-Jul-2015.) (Revised by AV, 8-Sep-2021.)
 |-  A  e.  NN0   =>    |-  ( ( A  x.  (; 1 0 ^ 0 ) )  +  0 )  =  A
 
Theoremdecsplit1 12946 Split a decimal number into two parts. Base case:  N  =  1. (Contributed by Mario Carneiro, 16-Jul-2015.) (Revised by AV, 8-Sep-2021.)
 |-  A  e.  NN0   =>    |-  ( ( A  x.  (; 1 0 ^ 1 ) )  +  B )  = ; A B
 
Theoremdecsplit 12947 Split a decimal number into two parts. Inductive step. (Contributed by Mario Carneiro, 16-Jul-2015.) (Revised by AV, 8-Sep-2021.)
 |-  A  e.  NN0   &    |-  B  e.  NN0   &    |-  D  e.  NN0   &    |-  M  e.  NN0   &    |-  ( M  +  1 )  =  N   &    |-  (
 ( A  x.  (; 1 0 ^ M ) )  +  B )  =  C   =>    |-  ( ( A  x.  (; 1 0 ^ N ) )  + ; B D )  = ; C D
 
Theoremkaratsuba 12948 The Karatsuba multiplication algorithm. If  X and 
Y are decomposed into two groups of digits of length  M (only the lower group is known to be this size but the algorithm is most efficient when the partition is chosen near the middle of the digit string), then  X Y can be written in three groups of digits, where each group needs only one multiplication. Thus, we can halve both inputs with only three multiplications on the smaller operands, yielding an asymptotic improvement of n^(log2 3) instead of n^2 for the "naive" algorithm decmul1c 9638. (Contributed by Mario Carneiro, 16-Jul-2015.) (Revised by AV, 9-Sep-2021.)
 |-  A  e.  NN0   &    |-  B  e.  NN0   &    |-  C  e.  NN0   &    |-  D  e.  NN0   &    |-  S  e.  NN0   &    |-  M  e.  NN0   &    |-  ( A  x.  C )  =  R   &    |-  ( B  x.  D )  =  T   &    |-  (
 ( A  +  B )  x.  ( C  +  D ) )  =  ( ( R  +  S )  +  T )   &    |-  ( ( A  x.  (; 1 0 ^ M ) )  +  B )  =  X   &    |-  ( ( C  x.  (; 1 0 ^ M ) )  +  D )  =  Y   &    |-  ( ( R  x.  (; 1 0 ^ M ) )  +  S )  =  W   &    |-  ( ( W  x.  (; 1 0 ^ M ) )  +  T )  =  Z   =>    |-  ( X  x.  Y )  =  Z
 
Theorem2exp4 12949 Two to the fourth power is 16. (Contributed by Mario Carneiro, 20-Apr-2015.)
 |-  ( 2 ^ 4
 )  = ; 1 6
 
Theorem2exp5 12950 Two to the fifth power is 32. (Contributed by AV, 16-Aug-2021.)
 |-  ( 2 ^ 5
 )  = ; 3 2
 
Theorem2exp6 12951 Two to the sixth power is 64. (Contributed by Mario Carneiro, 20-Apr-2015.) (Proof shortened by OpenAI, 25-Mar-2020.)
 |-  ( 2 ^ 6
 )  = ; 6 4
 
Theorem2exp7 12952 Two to the seventh power is 128. (Contributed by AV, 16-Aug-2021.)
 |-  ( 2 ^ 7
 )  = ;; 1 2 8
 
Theorem2exp8 12953 Two to the eighth power is 256. (Contributed by Mario Carneiro, 20-Apr-2015.)
 |-  ( 2 ^ 8
 )  = ;; 2 5 6
 
Theorem2exp11 12954 Two to the eleventh power is 2048. (Contributed by AV, 16-Aug-2021.)
 |-  ( 2 ^; 1 1 )  = ;;; 2 0 4 8
 
Theorem2exp16 12955 Two to the sixteenth power is 65536. (Contributed by Mario Carneiro, 20-Apr-2015.)
 |-  ( 2 ^; 1 6 )  = ;;;; 6 5 5 3 6
 
Theorem3exp3 12956 Three to the third power is 27. (Contributed by Mario Carneiro, 20-Apr-2015.)
 |-  ( 3 ^ 3
 )  = ; 2 7
 
Theorem2expltfac 12957 The factorial grows faster than two to the power  N. (Contributed by Mario Carneiro, 15-Sep-2016.)
 |-  ( N  e.  ( ZZ>=
 `  4 )  ->  ( 2 ^ N )  <  ( ! `  N ) )
 
5.3  Cardinality of real and complex number subsets
 
5.3.1  Countability of integers and rationals
 
Theoremoddennn 12958 There are as many odd positive integers as there are positive integers. (Contributed by Jim Kingdon, 11-May-2022.)
 |- 
 { z  e.  NN  |  -.  2  ||  z }  ~~  NN
 
Theoremevenennn 12959 There are as many even positive integers as there are positive integers. (Contributed by Jim Kingdon, 12-May-2022.)
 |- 
 { z  e.  NN  |  2  ||  z }  ~~  NN
 
Theoremxpnnen 12960 The Cartesian product of the set of positive integers with itself is equinumerous to the set of positive integers. (Contributed by NM, 1-Aug-2004.)
 |-  ( NN  X.  NN )  ~~  NN
 
Theoremxpomen 12961 The Cartesian product of omega (the set of ordinal natural numbers) with itself is equinumerous to omega. Exercise 1 of [Enderton] p. 133. (Contributed by NM, 23-Jul-2004.)
 |-  ( om  X.  om )  ~~  om
 
Theoremxpct 12962 The cartesian product of two sets dominated by  om is dominated by  om. (Contributed by Thierry Arnoux, 24-Sep-2017.)
 |-  ( ( A  ~<_  om  /\  B 
 ~<_  om )  ->  ( A  X.  B )  ~<_  om )
 
Theoremunennn 12963 The union of two disjoint countably infinite sets is countably infinite. (Contributed by Jim Kingdon, 13-May-2022.)
 |-  ( ( A  ~~  NN  /\  B  ~~  NN  /\  ( A  i^i  B )  =  (/) )  ->  ( A  u.  B )  ~~  NN )
 
Theoremznnen 12964 The set of integers and the set of positive integers are equinumerous. Corollary 8.1.23 of [AczelRathjen], p. 75. (Contributed by NM, 31-Jul-2004.)
 |- 
 ZZ  ~~  NN
 
Theoremennnfonelemdc 12965* Lemma for ennnfone 12991. A direct consequence of fidcenumlemrk 7117. (Contributed by Jim Kingdon, 15-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  P  e.  om )   =>    |-  ( ph  -> DECID  ( F `
  P )  e.  ( F " P ) )
 
Theoremennnfonelemk 12966* Lemma for ennnfone 12991. (Contributed by Jim Kingdon, 15-Jul-2023.)
 |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  K  e.  om )   &    |-  ( ph  ->  N  e.  om )   &    |-  ( ph  ->  A. j  e.  suc  N ( F `
  K )  =/=  ( F `  j
 ) )   =>    |-  ( ph  ->  N  e.  K )
 
Theoremennnfonelemj0 12967* Lemma for ennnfone 12991. Initial state for  J. (Contributed by Jim Kingdon, 20-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   =>    |-  ( ph  ->  ( J `  0 )  e. 
 { g  e.  ( A  ^pm  om )  | 
 dom  g  e.  om } )
 
Theoremennnfonelemjn 12968* Lemma for ennnfone 12991. Non-initial state for  J. (Contributed by Jim Kingdon, 20-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   =>    |-  ( ( ph  /\  f  e.  ( ZZ>= `  ( 0  +  1 ) ) )  ->  ( J `  f )  e.  om )
 
Theoremennnfonelemg 12969* Lemma for ennnfone 12991. Closure for  G. (Contributed by Jim Kingdon, 20-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   =>    |-  ( ( ph  /\  (
 f  e.  { g  e.  ( A  ^pm  om )  |  dom  g  e.  om } 
 /\  j  e.  om ) )  ->  ( f G j )  e. 
 { g  e.  ( A  ^pm  om )  | 
 dom  g  e.  om } )
 
Theoremennnfonelemh 12970* Lemma for ennnfone 12991. (Contributed by Jim Kingdon, 8-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   =>    |-  ( ph  ->  H : NN0 --> ( A  ^pm  om ) )
 
Theoremennnfonelem0 12971* Lemma for ennnfone 12991. Initial value. (Contributed by Jim Kingdon, 15-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   =>    |-  ( ph  ->  ( H `  0 )  =  (/) )
 
Theoremennnfonelemp1 12972* Lemma for ennnfone 12991. Value of  H at a successor. (Contributed by Jim Kingdon, 23-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  ( ph  ->  P  e.  NN0 )   =>    |-  ( ph  ->  ( H `  ( P  +  1 ) )  =  if ( ( F `
  ( `' N `  P ) )  e.  ( F " ( `' N `  P ) ) ,  ( H `
  P ) ,  ( ( H `  P )  u.  { <. dom  ( H `  P ) ,  ( F `  ( `' N `  P ) ) >. } ) ) )
 
Theoremennnfonelem1 12973* Lemma for ennnfone 12991. Second value. (Contributed by Jim Kingdon, 19-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   =>    |-  ( ph  ->  ( H `  1 )  =  { <. (/) ,  ( F `
  (/) ) >. } )
 
Theoremennnfonelemom 12974* Lemma for ennnfone 12991. 
H yields finite sequences. (Contributed by Jim Kingdon, 19-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  ( ph  ->  P  e.  NN0 )   =>    |-  ( ph  ->  dom  ( H `  P )  e. 
 om )
 
Theoremennnfonelemhdmp1 12975* Lemma for ennnfone 12991. Domain at a successor where we need to add an element to the sequence. (Contributed by Jim Kingdon, 23-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  ( ph  ->  P  e.  NN0 )   &    |-  ( ph  ->  -.  ( F `  ( `' N `  P ) )  e.  ( F
 " ( `' N `  P ) ) )   =>    |-  ( ph  ->  dom  ( H `
  ( P  +  1 ) )  = 
 suc  dom  ( H `  P ) )
 
Theoremennnfonelemss 12976* Lemma for ennnfone 12991. We only add elements to  H as the index increases. (Contributed by Jim Kingdon, 15-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  ( ph  ->  P  e.  NN0 )   =>    |-  ( ph  ->  ( H `  P )  C_  ( H `  ( P  +  1 ) ) )
 
Theoremennnfoneleminc 12977* Lemma for ennnfone 12991. We only add elements to  H as the index increases. (Contributed by Jim Kingdon, 21-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  ( ph  ->  P  e.  NN0 )   &    |-  ( ph  ->  Q  e.  NN0 )   &    |-  ( ph  ->  P 
 <_  Q )   =>    |-  ( ph  ->  ( H `  P )  C_  ( H `  Q ) )
 
Theoremennnfonelemkh 12978* Lemma for ennnfone 12991. Because we add zero or one entries for each new index, the length of each sequence is no greater than its index. (Contributed by Jim Kingdon, 19-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  ( ph  ->  P  e.  NN0 )   =>    |-  ( ph  ->  dom  ( H `  P )  C_  ( `' N `  P ) )
 
Theoremennnfonelemhf1o 12979* Lemma for ennnfone 12991. Each of the functions in  H is one to one and onto an image of  F. (Contributed by Jim Kingdon, 17-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  ( ph  ->  P  e.  NN0 )   =>    |-  ( ph  ->  ( H `  P ) : dom  ( H `  P ) -1-1-onto-> ( F " ( `' N `  P ) ) )
 
Theoremennnfonelemex 12980* Lemma for ennnfone 12991. Extending the sequence  ( H `  P ) to include an additional element. (Contributed by Jim Kingdon, 19-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  ( ph  ->  P  e.  NN0 )   =>    |-  ( ph  ->  E. i  e.  NN0  dom  ( H `  P )  e.  dom  ( H `  i ) )
 
Theoremennnfonelemhom 12981* Lemma for ennnfone 12991. The sequences in  H increase in length without bound if you go out far enough. (Contributed by Jim Kingdon, 19-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  ( ph  ->  M  e.  om )   =>    |-  ( ph  ->  E. i  e.  NN0  M  e.  dom  ( H `  i ) )
 
Theoremennnfonelemrnh 12982* Lemma for ennnfone 12991. A consequence of ennnfonelemss 12976. (Contributed by Jim Kingdon, 16-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  ( ph  ->  X  e.  ran  H )   &    |-  ( ph  ->  Y  e.  ran  H )   =>    |-  ( ph  ->  ( X  C_  Y  \/  Y  C_  X ) )
 
Theoremennnfonelemfun 12983* Lemma for ennnfone 12991. 
L is a function. (Contributed by Jim Kingdon, 16-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  L  =  U_ i  e.  NN0  ( H `  i )   =>    |-  ( ph  ->  Fun  L )
 
Theoremennnfonelemf1 12984* Lemma for ennnfone 12991. 
L is one-to-one. (Contributed by Jim Kingdon, 16-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  L  =  U_ i  e.  NN0  ( H `  i )   =>    |-  ( ph  ->  L : dom  L -1-1-> A )
 
Theoremennnfonelemrn 12985* Lemma for ennnfone 12991. 
L is onto  A. (Contributed by Jim Kingdon, 16-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  L  =  U_ i  e.  NN0  ( H `  i )   =>    |-  ( ph  ->  ran  L  =  A )
 
Theoremennnfonelemdm 12986* Lemma for ennnfone 12991. The function  L is defined everywhere. (Contributed by Jim Kingdon, 16-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  L  =  U_ i  e.  NN0  ( H `  i )   =>    |-  ( ph  ->  dom  L  =  om )
 
Theoremennnfonelemen 12987* Lemma for ennnfone 12991. The result. (Contributed by Jim Kingdon, 16-Jul-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e.  om  E. k  e.  om  A. j  e.  suc  n ( F `
  k )  =/=  ( F `  j
 ) )   &    |-  G  =  ( x  e.  ( A 
 ^pm  om ) ,  y  e.  om  |->  if ( ( F `
  y )  e.  ( F " y
 ) ,  x ,  ( x  u.  { <. dom 
 x ,  ( F `
  y ) >. } ) ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  J  =  ( x  e.  NN0  |->  if ( x  =  0 ,  (/)
 ,  ( `' N `  ( x  -  1
 ) ) ) )   &    |-  H  =  seq 0
 ( G ,  J )   &    |-  L  =  U_ i  e.  NN0  ( H `  i )   =>    |-  ( ph  ->  A  ~~ 
 NN )
 
Theoremennnfonelemnn0 12988* Lemma for ennnfone 12991. A version of ennnfonelemen 12987 expressed in terms of  NN0 instead of  om. (Contributed by Jim Kingdon, 27-Oct-2022.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : NN0
 -onto-> A )   &    |-  ( ph  ->  A. n  e.  NN0  E. k  e.  NN0  A. j  e.  (
 0 ... n ) ( F `  k )  =/=  ( F `  j ) )   &    |-  N  = frec ( ( x  e. 
 ZZ  |->  ( x  +  1 ) ) ,  0 )   =>    |-  ( ph  ->  A  ~~ 
 NN )
 
Theoremennnfonelemr 12989* Lemma for ennnfone 12991. The interesting direction, expressed in deduction form. (Contributed by Jim Kingdon, 27-Oct-2022.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  F : NN0
 -onto-> A )   &    |-  ( ph  ->  A. n  e.  NN0  E. k  e.  NN0  A. j  e.  (
 0 ... n ) ( F `  k )  =/=  ( F `  j ) )   =>    |-  ( ph  ->  A 
 ~~  NN )
 
Theoremennnfonelemim 12990* Lemma for ennnfone 12991. The trivial direction. (Contributed by Jim Kingdon, 27-Oct-2022.)
 |-  ( A  ~~  NN  ->  ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  E. f ( f :
 NN0 -onto-> A  /\  A. n  e.  NN0  E. k  e. 
 NN0  A. j  e.  (
 0 ... n ) ( f `  k )  =/=  ( f `  j ) ) ) )
 
Theoremennnfone 12991* A condition for a set being countably infinite. Corollary 8.1.13 of [AczelRathjen], p. 73. Roughly speaking, the condition says that 
A is countable (that's the  f : NN0 -onto-> A part, as seen in theorems like ctm 7272), infinite (that's the part about being able to find an element of  A distinct from any mapping of a natural number via  f), and has decidable equality. (Contributed by Jim Kingdon, 27-Oct-2022.)
 |-  ( A  ~~  NN  <->  ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  E. f
 ( f : NN0 -onto-> A 
 /\  A. n  e.  NN0  E. k  e.  NN0  A. j  e.  ( 0 ... n ) ( f `  k )  =/=  (
 f `  j )
 ) ) )
 
Theoremexmidunben 12992* If any unbounded set of positive integers is equinumerous to  NN, then the Limited Principle of Omniscience (LPO) implies excluded middle. (Contributed by Jim Kingdon, 29-Jul-2023.)
 |-  ( ( A. x ( ( x  C_  NN  /\  A. m  e. 
 NN  E. n  e.  x  m  <  n )  ->  x  ~~  NN )  /\  om  e. Omni )  -> EXMID )
 
Theoremctinfomlemom 12993* Lemma for ctinfom 12994. Converting between  om and  NN0. (Contributed by Jim Kingdon, 10-Aug-2023.)
 |-  N  = frec ( ( x  e.  ZZ  |->  ( x  +  1 ) ) ,  0 )   &    |-  G  =  ( F  o.  `' N )   &    |-  ( ph  ->  F : om -onto-> A )   &    |-  ( ph  ->  A. n  e. 
 om  E. k  e.  om  -.  ( F `  k
 )  e.  ( F
 " n ) )   =>    |-  ( ph  ->  ( G : NN0 -onto-> A  /\  A. m  e.  NN0  E. j  e. 
 NN0  A. i  e.  (
 0 ... m ) ( G `  j )  =/=  ( G `  i ) ) )
 
Theoremctinfom 12994* A condition for a set being countably infinite. Restates ennnfone 12991 in terms of  om and function image. Like ennnfone 12991 the condition can be summarized as  A being countable, infinite, and having decidable equality. (Contributed by Jim Kingdon, 7-Aug-2023.)
 |-  ( A  ~~  NN  <->  ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  E. f
 ( f : om -onto-> A  /\  A. n  e. 
 om  E. k  e.  om  -.  ( f `  k
 )  e.  ( f
 " n ) ) ) )
 
Theoreminffinp1 12995* An infinite set contains an element not contained in a given finite subset. (Contributed by Jim Kingdon, 7-Aug-2023.)
 |-  ( ph  ->  A. x  e.  A  A. y  e.  A DECID  x  =  y )   &    |-  ( ph  ->  om  ~<_  A )   &    |-  ( ph  ->  B  C_  A )   &    |-  ( ph  ->  B  e.  Fin )   =>    |-  ( ph  ->  E. x  e.  A  -.  x  e.  B )
 
Theoremctinf 12996* A set is countably infinite if and only if it has decidable equality, is countable, and is infinite. (Contributed by Jim Kingdon, 7-Aug-2023.)
 |-  ( A  ~~  NN  <->  ( A. x  e.  A  A. y  e.  A DECID  x  =  y  /\  E. f  f : om -onto-> A  /\  om  ~<_  A ) )
 
Theoremqnnen 12997 The rational numbers are countably infinite. Corollary 8.1.23 of [AczelRathjen], p. 75. This is Metamath 100 proof #3. (Contributed by Jim Kingdon, 11-Aug-2023.)
 |- 
 QQ  ~~  NN
 
Theoremenctlem 12998* Lemma for enct 12999. One direction of the biconditional. (Contributed by Jim Kingdon, 23-Dec-2023.)
 |-  ( A  ~~  B  ->  ( E. f  f : om -onto-> ( A 1o )  ->  E. g  g : om -onto-> ( B 1o ) ) )
 
Theoremenct 12999* Countability is invariant relative to equinumerosity. (Contributed by Jim Kingdon, 23-Dec-2023.)
 |-  ( A  ~~  B  ->  ( E. f  f : om -onto-> ( A 1o )  <->  E. g  g : om -onto-> ( B 1o )
 ) )
 
Theoremctiunctlemu1st 13000* Lemma for ctiunct 13006. (Contributed by Jim Kingdon, 28-Oct-2023.)
 |-  ( ph  ->  S  C_ 
 om )   &    |-  ( ph  ->  A. n  e.  om DECID  n  e.  S )   &    |-  ( ph  ->  F : S -onto-> A )   &    |-  ( ( ph  /\  x  e.  A )  ->  T  C_ 
 om )   &    |-  ( ( ph  /\  x  e.  A ) 
 ->  A. n  e.  om DECID  n  e.  T )   &    |-  ( ( ph  /\  x  e.  A ) 
 ->  G : T -onto-> B )   &    |-  ( ph  ->  J : om
 -1-1-onto-> ( om  X.  om )
 )   &    |-  U  =  { z  e.  om  |  ( ( 1st `  ( J `  z ) )  e.  S  /\  ( 2nd `  ( J `  z
 ) )  e.  [_ ( F `  ( 1st `  ( J `  z
 ) ) )  /  x ]_ T ) }   &    |-  ( ph  ->  N  e.  U )   =>    |-  ( ph  ->  ( 1st `  ( J `  N ) )  e.  S )
    < Previous  Next >

Page List
Jump to page: Contents  1 1-100 2 101-200 3 201-300 4 301-400 5 401-500 6 501-600 7 601-700 8 701-800 9 801-900 10 901-1000 11 1001-1100 12 1101-1200 13 1201-1300 14 1301-1400 15 1401-1500 16 1501-1600 17 1601-1700 18 1701-1800 19 1801-1900 20 1901-2000 21 2001-2100 22 2101-2200 23 2201-2300 24 2301-2400 25 2401-2500 26 2501-2600 27 2601-2700 28 2701-2800 29 2801-2900 30 2901-3000 31 3001-3100 32 3101-3200 33 3201-3300 34 3301-3400 35 3401-3500 36 3501-3600 37 3601-3700 38 3701-3800 39 3801-3900 40 3901-4000 41 4001-4100 42 4101-4200 43 4201-4300 44 4301-4400 45 4401-4500 46 4501-4600 47 4601-4700 48 4701-4800 49 4801-4900 50 4901-5000 51 5001-5100 52 5101-5200 53 5201-5300 54 5301-5400 55 5401-5500 56 5501-5600 57 5601-5700 58 5701-5800 59 5801-5900 60 5901-6000 61 6001-6100 62 6101-6200 63 6201-6300 64 6301-6400 65 6401-6500 66 6501-6600 67 6601-6700 68 6701-6800 69 6801-6900 70 6901-7000 71 7001-7100 72 7101-7200 73 7201-7300 74 7301-7400 75 7401-7500 76 7501-7600 77 7601-7700 78 7701-7800 79 7801-7900 80 7901-8000 81 8001-8100 82 8101-8200 83 8201-8300 84 8301-8400 85 8401-8500 86 8501-8600 87 8601-8700 88 8701-8800 89 8801-8900 90 8901-9000 91 9001-9100 92 9101-9200 93 9201-9300 94 9301-9400 95 9401-9500 96 9501-9600 97 9601-9700 98 9701-9800 99 9801-9900 100 9901-10000 101 10001-10100 102 10101-10200 103 10201-10300 104 10301-10400 105 10401-10500 106 10501-10600 107 10601-10700 108 10701-10800 109 10801-10900 110 10901-11000 111 11001-11100 112 11101-11200 113 11201-11300 114 11301-11400 115 11401-11500 116 11501-11600 117 11601-11700 118 11701-11800 119 11801-11900 120 11901-12000 121 12001-12100 122 12101-12200 123 12201-12300 124 12301-12400 125 12401-12500 126 12501-12600 127 12601-12700 128 12701-12800 129 12801-12900 130 12901-13000 131 13001-13100 132 13101-13200 133 13201-13300 134 13301-13400 135 13401-13500 136 13501-13600 137 13601-13700 138 13701-13800 139 13801-13900 140 13901-14000 141 14001-14100 142 14101-14200 143 14201-14300 144 14301-14400 145 14401-14500 146 14501-14600 147 14601-14700 148 14701-14800 149 14801-14900 150 14901-15000 151 15001-15100 152 15101-15200 153 15201-15300 154 15301-15400 155 15401-15500 156 15501-15600 157 15601-15700 158 15701-15800 159 15801-15900 160 15901-16000 161 16001-16100 162 16101-16200 163 16201-16300 164 16301-16400 165 16401-16411
  Copyright terms: Public domain < Previous  Next >