Step |
Hyp |
Ref |
Expression |
1 |
|
sadval.a |
|- ( ph -> A C_ NN0 ) |
2 |
|
sadval.b |
|- ( ph -> B C_ NN0 ) |
3 |
|
sadval.c |
|- C = seq 0 ( ( c e. 2o , m e. NN0 |-> if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) ) , ( n e. NN0 |-> if ( n = 0 , (/) , ( n - 1 ) ) ) ) |
4 |
|
0nn0 |
|- 0 e. NN0 |
5 |
|
iftrue |
|- ( n = 0 -> if ( n = 0 , (/) , ( n - 1 ) ) = (/) ) |
6 |
|
eqid |
|- ( n e. NN0 |-> if ( n = 0 , (/) , ( n - 1 ) ) ) = ( n e. NN0 |-> if ( n = 0 , (/) , ( n - 1 ) ) ) |
7 |
|
0ex |
|- (/) e. _V |
8 |
5 6 7
|
fvmpt |
|- ( 0 e. NN0 -> ( ( n e. NN0 |-> if ( n = 0 , (/) , ( n - 1 ) ) ) ` 0 ) = (/) ) |
9 |
4 8
|
ax-mp |
|- ( ( n e. NN0 |-> if ( n = 0 , (/) , ( n - 1 ) ) ) ` 0 ) = (/) |
10 |
7
|
prid1 |
|- (/) e. { (/) , 1o } |
11 |
|
df2o3 |
|- 2o = { (/) , 1o } |
12 |
10 11
|
eleqtrri |
|- (/) e. 2o |
13 |
9 12
|
eqeltri |
|- ( ( n e. NN0 |-> if ( n = 0 , (/) , ( n - 1 ) ) ) ` 0 ) e. 2o |
14 |
13
|
a1i |
|- ( ph -> ( ( n e. NN0 |-> if ( n = 0 , (/) , ( n - 1 ) ) ) ` 0 ) e. 2o ) |
15 |
|
df-ov |
|- ( x ( c e. 2o , m e. NN0 |-> if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) ) y ) = ( ( c e. 2o , m e. NN0 |-> if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) ) ` <. x , y >. ) |
16 |
|
1oex |
|- 1o e. _V |
17 |
16
|
prid2 |
|- 1o e. { (/) , 1o } |
18 |
17 11
|
eleqtrri |
|- 1o e. 2o |
19 |
18 12
|
ifcli |
|- if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) e. 2o |
20 |
19
|
rgen2w |
|- A. c e. 2o A. m e. NN0 if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) e. 2o |
21 |
|
eqid |
|- ( c e. 2o , m e. NN0 |-> if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) ) = ( c e. 2o , m e. NN0 |-> if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) ) |
22 |
21
|
fmpo |
|- ( A. c e. 2o A. m e. NN0 if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) e. 2o <-> ( c e. 2o , m e. NN0 |-> if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) ) : ( 2o X. NN0 ) --> 2o ) |
23 |
20 22
|
mpbi |
|- ( c e. 2o , m e. NN0 |-> if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) ) : ( 2o X. NN0 ) --> 2o |
24 |
23 12
|
f0cli |
|- ( ( c e. 2o , m e. NN0 |-> if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) ) ` <. x , y >. ) e. 2o |
25 |
15 24
|
eqeltri |
|- ( x ( c e. 2o , m e. NN0 |-> if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) ) y ) e. 2o |
26 |
25
|
a1i |
|- ( ( ph /\ ( x e. 2o /\ y e. _V ) ) -> ( x ( c e. 2o , m e. NN0 |-> if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) ) y ) e. 2o ) |
27 |
|
nn0uz |
|- NN0 = ( ZZ>= ` 0 ) |
28 |
|
0zd |
|- ( ph -> 0 e. ZZ ) |
29 |
|
fvexd |
|- ( ( ph /\ x e. ( ZZ>= ` ( 0 + 1 ) ) ) -> ( ( n e. NN0 |-> if ( n = 0 , (/) , ( n - 1 ) ) ) ` x ) e. _V ) |
30 |
14 26 27 28 29
|
seqf2 |
|- ( ph -> seq 0 ( ( c e. 2o , m e. NN0 |-> if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) ) , ( n e. NN0 |-> if ( n = 0 , (/) , ( n - 1 ) ) ) ) : NN0 --> 2o ) |
31 |
3
|
feq1i |
|- ( C : NN0 --> 2o <-> seq 0 ( ( c e. 2o , m e. NN0 |-> if ( cadd ( m e. A , m e. B , (/) e. c ) , 1o , (/) ) ) , ( n e. NN0 |-> if ( n = 0 , (/) , ( n - 1 ) ) ) ) : NN0 --> 2o ) |
32 |
30 31
|
sylibr |
|- ( ph -> C : NN0 --> 2o ) |