Metamath Proof Explorer


Theorem nn0constr

Description: Nonnegative integers are constructible. (Contributed by Thierry Arnoux, 2-Nov-2025)

Ref Expression
Hypothesis nn0constr.1
|- ( ph -> N e. NN0 )
Assertion nn0constr
|- ( ph -> N e. Constr )

Proof

Step Hyp Ref Expression
1 nn0constr.1
 |-  ( ph -> N e. NN0 )
2 eleq1
 |-  ( m = 0 -> ( m e. Constr <-> 0 e. Constr ) )
3 eleq1
 |-  ( m = n -> ( m e. Constr <-> n e. Constr ) )
4 eleq1
 |-  ( m = ( n + 1 ) -> ( m e. Constr <-> ( n + 1 ) e. Constr ) )
5 eleq1
 |-  ( m = N -> ( m e. Constr <-> N e. Constr ) )
6 peano1
 |-  (/) e. _om
7 6 a1i
 |-  ( ph -> (/) e. _om )
8 fveq2
 |-  ( u = (/) -> ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` u ) = ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` (/) ) )
9 8 eleq2d
 |-  ( u = (/) -> ( 0 e. ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` u ) <-> 0 e. ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` (/) ) ) )
10 9 adantl
 |-  ( ( ph /\ u = (/) ) -> ( 0 e. ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` u ) <-> 0 e. ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` (/) ) ) )
11 0elpr01
 |-  0 e. { 0 , 1 }
12 11 a1i
 |-  ( ph -> 0 e. { 0 , 1 } )
13 constrcbvlem
 |-  rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) = rec ( ( s e. _V |-> { x e. CC | ( E. a e. s E. b e. s E. c e. s E. d e. s E. t e. RR E. r e. RR ( x = ( a + ( t x. ( b - a ) ) ) /\ x = ( c + ( r x. ( d - c ) ) ) /\ ( Im ` ( ( * ` ( b - a ) ) x. ( d - c ) ) ) =/= 0 ) \/ E. a e. s E. b e. s E. c e. s E. e e. s E. f e. s E. t e. RR ( x = ( a + ( t x. ( b - a ) ) ) /\ ( abs ` ( x - c ) ) = ( abs ` ( e - f ) ) ) \/ E. a e. s E. b e. s E. c e. s E. d e. s E. e e. s E. f e. s ( a =/= d /\ ( abs ` ( x - a ) ) = ( abs ` ( b - c ) ) /\ ( abs ` ( x - d ) ) = ( abs ` ( e - f ) ) ) ) } ) , { 0 , 1 } )
14 13 constr0
 |-  ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` (/) ) = { 0 , 1 }
15 12 14 eleqtrrdi
 |-  ( ph -> 0 e. ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` (/) ) )
16 7 10 15 rspcedvd
 |-  ( ph -> E. u e. _om 0 e. ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` u ) )
17 13 isconstr
 |-  ( 0 e. Constr <-> E. u e. _om 0 e. ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` u ) )
18 16 17 sylibr
 |-  ( ph -> 0 e. Constr )
19 18 ad2antrr
 |-  ( ( ( ph /\ n e. NN0 ) /\ n e. Constr ) -> 0 e. Constr )
20 8 eleq2d
 |-  ( u = (/) -> ( 1 e. ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` u ) <-> 1 e. ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` (/) ) ) )
21 20 adantl
 |-  ( ( ph /\ u = (/) ) -> ( 1 e. ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` u ) <-> 1 e. ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` (/) ) ) )
22 1elpr01
 |-  1 e. { 0 , 1 }
23 22 a1i
 |-  ( ph -> 1 e. { 0 , 1 } )
24 23 14 eleqtrrdi
 |-  ( ph -> 1 e. ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` (/) ) )
25 7 21 24 rspcedvd
 |-  ( ph -> E. u e. _om 1 e. ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` u ) )
26 13 isconstr
 |-  ( 1 e. Constr <-> E. u e. _om 1 e. ( rec ( ( z e. _V |-> { y e. CC | ( E. i e. z E. j e. z E. k e. z E. l e. z E. o e. RR E. p e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ y = ( k + ( p x. ( l - k ) ) ) /\ ( Im ` ( ( * ` ( j - i ) ) x. ( l - k ) ) ) =/= 0 ) \/ E. i e. z E. j e. z E. k e. z E. m e. z E. q e. z E. o e. RR ( y = ( i + ( o x. ( j - i ) ) ) /\ ( abs ` ( y - k ) ) = ( abs ` ( m - q ) ) ) \/ E. i e. z E. j e. z E. k e. z E. l e. z E. m e. z E. q e. z ( i =/= l /\ ( abs ` ( y - i ) ) = ( abs ` ( j - k ) ) /\ ( abs ` ( y - l ) ) = ( abs ` ( m - q ) ) ) ) } ) , { 0 , 1 } ) ` u ) )
27 25 26 sylibr
 |-  ( ph -> 1 e. Constr )
28 27 ad2antrr
 |-  ( ( ( ph /\ n e. NN0 ) /\ n e. Constr ) -> 1 e. Constr )
29 simpr
 |-  ( ( ( ph /\ n e. NN0 ) /\ n e. Constr ) -> n e. Constr )
30 peano2nn0
 |-  ( n e. NN0 -> ( n + 1 ) e. NN0 )
31 30 ad2antlr
 |-  ( ( ( ph /\ n e. NN0 ) /\ n e. Constr ) -> ( n + 1 ) e. NN0 )
32 31 nn0red
 |-  ( ( ( ph /\ n e. NN0 ) /\ n e. Constr ) -> ( n + 1 ) e. RR )
33 32 recnd
 |-  ( ( ( ph /\ n e. NN0 ) /\ n e. Constr ) -> ( n + 1 ) e. CC )
34 nn0cn
 |-  ( n e. NN0 -> n e. CC )
35 1cnd
 |-  ( n e. NN0 -> 1 e. CC )
36 34 35 addcld
 |-  ( n e. NN0 -> ( n + 1 ) e. CC )
37 35 subid1d
 |-  ( n e. NN0 -> ( 1 - 0 ) = 1 )
38 37 35 eqeltrd
 |-  ( n e. NN0 -> ( 1 - 0 ) e. CC )
39 36 38 mulcld
 |-  ( n e. NN0 -> ( ( n + 1 ) x. ( 1 - 0 ) ) e. CC )
40 39 addlidd
 |-  ( n e. NN0 -> ( 0 + ( ( n + 1 ) x. ( 1 - 0 ) ) ) = ( ( n + 1 ) x. ( 1 - 0 ) ) )
41 37 oveq2d
 |-  ( n e. NN0 -> ( ( n + 1 ) x. ( 1 - 0 ) ) = ( ( n + 1 ) x. 1 ) )
42 36 mulridd
 |-  ( n e. NN0 -> ( ( n + 1 ) x. 1 ) = ( n + 1 ) )
43 40 41 42 3eqtrrd
 |-  ( n e. NN0 -> ( n + 1 ) = ( 0 + ( ( n + 1 ) x. ( 1 - 0 ) ) ) )
44 43 ad2antlr
 |-  ( ( ( ph /\ n e. NN0 ) /\ n e. Constr ) -> ( n + 1 ) = ( 0 + ( ( n + 1 ) x. ( 1 - 0 ) ) ) )
45 34 35 pncan2d
 |-  ( n e. NN0 -> ( ( n + 1 ) - n ) = 1 )
46 45 37 eqtr4d
 |-  ( n e. NN0 -> ( ( n + 1 ) - n ) = ( 1 - 0 ) )
47 46 fveq2d
 |-  ( n e. NN0 -> ( abs ` ( ( n + 1 ) - n ) ) = ( abs ` ( 1 - 0 ) ) )
48 47 ad2antlr
 |-  ( ( ( ph /\ n e. NN0 ) /\ n e. Constr ) -> ( abs ` ( ( n + 1 ) - n ) ) = ( abs ` ( 1 - 0 ) ) )
49 19 28 29 28 19 32 33 44 48 constrlccl
 |-  ( ( ( ph /\ n e. NN0 ) /\ n e. Constr ) -> ( n + 1 ) e. Constr )
50 2 3 4 5 18 49 nn0indd
 |-  ( ( ph /\ N e. NN0 ) -> N e. Constr )
51 1 50 mpdan
 |-  ( ph -> N e. Constr )