Step |
Hyp |
Ref |
Expression |
1 |
|
eulerpart.p |
|- P = { f e. ( NN0 ^m NN ) | ( ( `' f " NN ) e. Fin /\ sum_ k e. NN ( ( f ` k ) x. k ) = N ) } |
2 |
|
eulerpart.o |
|- O = { g e. P | A. n e. ( `' g " NN ) -. 2 || n } |
3 |
|
eulerpart.d |
|- D = { g e. P | A. n e. NN ( g ` n ) <_ 1 } |
4 |
|
eulerpart.j |
|- J = { z e. NN | -. 2 || z } |
5 |
|
eulerpart.f |
|- F = ( x e. J , y e. NN0 |-> ( ( 2 ^ y ) x. x ) ) |
6 |
|
eulerpart.h |
|- H = { r e. ( ( ~P NN0 i^i Fin ) ^m J ) | ( r supp (/) ) e. Fin } |
7 |
|
eulerpart.m |
|- M = ( r e. H |-> { <. x , y >. | ( x e. J /\ y e. ( r ` x ) ) } ) |
8 |
|
eulerpart.r |
|- R = { f | ( `' f " NN ) e. Fin } |
9 |
|
eulerpart.t |
|- T = { f e. ( NN0 ^m NN ) | ( `' f " NN ) C_ J } |
10 |
|
elmapi |
|- ( o e. ( NN0 ^m J ) -> o : J --> NN0 ) |
11 |
10
|
adantr |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> o : J --> NN0 ) |
12 |
|
c0ex |
|- 0 e. _V |
13 |
12
|
fconst |
|- ( ( NN \ J ) X. { 0 } ) : ( NN \ J ) --> { 0 } |
14 |
13
|
a1i |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( ( NN \ J ) X. { 0 } ) : ( NN \ J ) --> { 0 } ) |
15 |
|
disjdif |
|- ( J i^i ( NN \ J ) ) = (/) |
16 |
15
|
a1i |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( J i^i ( NN \ J ) ) = (/) ) |
17 |
|
fun |
|- ( ( ( o : J --> NN0 /\ ( ( NN \ J ) X. { 0 } ) : ( NN \ J ) --> { 0 } ) /\ ( J i^i ( NN \ J ) ) = (/) ) -> ( o u. ( ( NN \ J ) X. { 0 } ) ) : ( J u. ( NN \ J ) ) --> ( NN0 u. { 0 } ) ) |
18 |
11 14 16 17
|
syl21anc |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( o u. ( ( NN \ J ) X. { 0 } ) ) : ( J u. ( NN \ J ) ) --> ( NN0 u. { 0 } ) ) |
19 |
|
ssrab2 |
|- { z e. NN | -. 2 || z } C_ NN |
20 |
4 19
|
eqsstri |
|- J C_ NN |
21 |
|
undif |
|- ( J C_ NN <-> ( J u. ( NN \ J ) ) = NN ) |
22 |
20 21
|
mpbi |
|- ( J u. ( NN \ J ) ) = NN |
23 |
|
0nn0 |
|- 0 e. NN0 |
24 |
|
snssi |
|- ( 0 e. NN0 -> { 0 } C_ NN0 ) |
25 |
23 24
|
ax-mp |
|- { 0 } C_ NN0 |
26 |
|
ssequn2 |
|- ( { 0 } C_ NN0 <-> ( NN0 u. { 0 } ) = NN0 ) |
27 |
25 26
|
mpbi |
|- ( NN0 u. { 0 } ) = NN0 |
28 |
22 27
|
feq23i |
|- ( ( o u. ( ( NN \ J ) X. { 0 } ) ) : ( J u. ( NN \ J ) ) --> ( NN0 u. { 0 } ) <-> ( o u. ( ( NN \ J ) X. { 0 } ) ) : NN --> NN0 ) |
29 |
18 28
|
sylib |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( o u. ( ( NN \ J ) X. { 0 } ) ) : NN --> NN0 ) |
30 |
|
nn0ex |
|- NN0 e. _V |
31 |
|
nnex |
|- NN e. _V |
32 |
30 31
|
elmap |
|- ( ( o u. ( ( NN \ J ) X. { 0 } ) ) e. ( NN0 ^m NN ) <-> ( o u. ( ( NN \ J ) X. { 0 } ) ) : NN --> NN0 ) |
33 |
29 32
|
sylibr |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( o u. ( ( NN \ J ) X. { 0 } ) ) e. ( NN0 ^m NN ) ) |
34 |
|
cnvun |
|- `' ( o u. ( ( NN \ J ) X. { 0 } ) ) = ( `' o u. `' ( ( NN \ J ) X. { 0 } ) ) |
35 |
34
|
imaeq1i |
|- ( `' ( o u. ( ( NN \ J ) X. { 0 } ) ) " NN ) = ( ( `' o u. `' ( ( NN \ J ) X. { 0 } ) ) " NN ) |
36 |
|
imaundir |
|- ( ( `' o u. `' ( ( NN \ J ) X. { 0 } ) ) " NN ) = ( ( `' o " NN ) u. ( `' ( ( NN \ J ) X. { 0 } ) " NN ) ) |
37 |
35 36
|
eqtri |
|- ( `' ( o u. ( ( NN \ J ) X. { 0 } ) ) " NN ) = ( ( `' o " NN ) u. ( `' ( ( NN \ J ) X. { 0 } ) " NN ) ) |
38 |
|
vex |
|- o e. _V |
39 |
|
cnveq |
|- ( f = o -> `' f = `' o ) |
40 |
39
|
imaeq1d |
|- ( f = o -> ( `' f " NN ) = ( `' o " NN ) ) |
41 |
40
|
eleq1d |
|- ( f = o -> ( ( `' f " NN ) e. Fin <-> ( `' o " NN ) e. Fin ) ) |
42 |
38 41 8
|
elab2 |
|- ( o e. R <-> ( `' o " NN ) e. Fin ) |
43 |
42
|
biimpi |
|- ( o e. R -> ( `' o " NN ) e. Fin ) |
44 |
43
|
adantl |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( `' o " NN ) e. Fin ) |
45 |
|
cnvxp |
|- `' ( ( NN \ J ) X. { 0 } ) = ( { 0 } X. ( NN \ J ) ) |
46 |
45
|
dmeqi |
|- dom `' ( ( NN \ J ) X. { 0 } ) = dom ( { 0 } X. ( NN \ J ) ) |
47 |
|
2nn |
|- 2 e. NN |
48 |
|
2z |
|- 2 e. ZZ |
49 |
|
iddvds |
|- ( 2 e. ZZ -> 2 || 2 ) |
50 |
48 49
|
ax-mp |
|- 2 || 2 |
51 |
|
breq2 |
|- ( z = 2 -> ( 2 || z <-> 2 || 2 ) ) |
52 |
51
|
notbid |
|- ( z = 2 -> ( -. 2 || z <-> -. 2 || 2 ) ) |
53 |
52 4
|
elrab2 |
|- ( 2 e. J <-> ( 2 e. NN /\ -. 2 || 2 ) ) |
54 |
53
|
simprbi |
|- ( 2 e. J -> -. 2 || 2 ) |
55 |
50 54
|
mt2 |
|- -. 2 e. J |
56 |
|
eldif |
|- ( 2 e. ( NN \ J ) <-> ( 2 e. NN /\ -. 2 e. J ) ) |
57 |
47 55 56
|
mpbir2an |
|- 2 e. ( NN \ J ) |
58 |
|
ne0i |
|- ( 2 e. ( NN \ J ) -> ( NN \ J ) =/= (/) ) |
59 |
|
dmxp |
|- ( ( NN \ J ) =/= (/) -> dom ( { 0 } X. ( NN \ J ) ) = { 0 } ) |
60 |
57 58 59
|
mp2b |
|- dom ( { 0 } X. ( NN \ J ) ) = { 0 } |
61 |
46 60
|
eqtri |
|- dom `' ( ( NN \ J ) X. { 0 } ) = { 0 } |
62 |
61
|
ineq1i |
|- ( dom `' ( ( NN \ J ) X. { 0 } ) i^i NN ) = ( { 0 } i^i NN ) |
63 |
|
incom |
|- ( NN i^i { 0 } ) = ( { 0 } i^i NN ) |
64 |
|
0nnn |
|- -. 0 e. NN |
65 |
|
disjsn |
|- ( ( NN i^i { 0 } ) = (/) <-> -. 0 e. NN ) |
66 |
64 65
|
mpbir |
|- ( NN i^i { 0 } ) = (/) |
67 |
62 63 66
|
3eqtr2i |
|- ( dom `' ( ( NN \ J ) X. { 0 } ) i^i NN ) = (/) |
68 |
|
imadisj |
|- ( ( `' ( ( NN \ J ) X. { 0 } ) " NN ) = (/) <-> ( dom `' ( ( NN \ J ) X. { 0 } ) i^i NN ) = (/) ) |
69 |
67 68
|
mpbir |
|- ( `' ( ( NN \ J ) X. { 0 } ) " NN ) = (/) |
70 |
|
0fin |
|- (/) e. Fin |
71 |
69 70
|
eqeltri |
|- ( `' ( ( NN \ J ) X. { 0 } ) " NN ) e. Fin |
72 |
|
unfi |
|- ( ( ( `' o " NN ) e. Fin /\ ( `' ( ( NN \ J ) X. { 0 } ) " NN ) e. Fin ) -> ( ( `' o " NN ) u. ( `' ( ( NN \ J ) X. { 0 } ) " NN ) ) e. Fin ) |
73 |
44 71 72
|
sylancl |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( ( `' o " NN ) u. ( `' ( ( NN \ J ) X. { 0 } ) " NN ) ) e. Fin ) |
74 |
37 73
|
eqeltrid |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( `' ( o u. ( ( NN \ J ) X. { 0 } ) ) " NN ) e. Fin ) |
75 |
|
cnvimass |
|- ( `' o " NN ) C_ dom o |
76 |
75 11
|
fssdm |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( `' o " NN ) C_ J ) |
77 |
|
0ss |
|- (/) C_ J |
78 |
69 77
|
eqsstri |
|- ( `' ( ( NN \ J ) X. { 0 } ) " NN ) C_ J |
79 |
78
|
a1i |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( `' ( ( NN \ J ) X. { 0 } ) " NN ) C_ J ) |
80 |
76 79
|
unssd |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( ( `' o " NN ) u. ( `' ( ( NN \ J ) X. { 0 } ) " NN ) ) C_ J ) |
81 |
37 80
|
eqsstrid |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( `' ( o u. ( ( NN \ J ) X. { 0 } ) ) " NN ) C_ J ) |
82 |
1 2 3 4 5 6 7 8 9
|
eulerpartlemt0 |
|- ( ( o u. ( ( NN \ J ) X. { 0 } ) ) e. ( T i^i R ) <-> ( ( o u. ( ( NN \ J ) X. { 0 } ) ) e. ( NN0 ^m NN ) /\ ( `' ( o u. ( ( NN \ J ) X. { 0 } ) ) " NN ) e. Fin /\ ( `' ( o u. ( ( NN \ J ) X. { 0 } ) ) " NN ) C_ J ) ) |
83 |
33 74 81 82
|
syl3anbrc |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( o u. ( ( NN \ J ) X. { 0 } ) ) e. ( T i^i R ) ) |
84 |
|
resundir |
|- ( ( o u. ( ( NN \ J ) X. { 0 } ) ) |` J ) = ( ( o |` J ) u. ( ( ( NN \ J ) X. { 0 } ) |` J ) ) |
85 |
|
ffn |
|- ( o : J --> NN0 -> o Fn J ) |
86 |
|
fnresdm |
|- ( o Fn J -> ( o |` J ) = o ) |
87 |
|
disjdifr |
|- ( ( NN \ J ) i^i J ) = (/) |
88 |
|
fnconstg |
|- ( 0 e. NN0 -> ( ( NN \ J ) X. { 0 } ) Fn ( NN \ J ) ) |
89 |
|
fnresdisj |
|- ( ( ( NN \ J ) X. { 0 } ) Fn ( NN \ J ) -> ( ( ( NN \ J ) i^i J ) = (/) <-> ( ( ( NN \ J ) X. { 0 } ) |` J ) = (/) ) ) |
90 |
23 88 89
|
mp2b |
|- ( ( ( NN \ J ) i^i J ) = (/) <-> ( ( ( NN \ J ) X. { 0 } ) |` J ) = (/) ) |
91 |
87 90
|
mpbi |
|- ( ( ( NN \ J ) X. { 0 } ) |` J ) = (/) |
92 |
91
|
a1i |
|- ( o Fn J -> ( ( ( NN \ J ) X. { 0 } ) |` J ) = (/) ) |
93 |
86 92
|
uneq12d |
|- ( o Fn J -> ( ( o |` J ) u. ( ( ( NN \ J ) X. { 0 } ) |` J ) ) = ( o u. (/) ) ) |
94 |
11 85 93
|
3syl |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( ( o |` J ) u. ( ( ( NN \ J ) X. { 0 } ) |` J ) ) = ( o u. (/) ) ) |
95 |
|
un0 |
|- ( o u. (/) ) = o |
96 |
94 95
|
eqtrdi |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> ( ( o |` J ) u. ( ( ( NN \ J ) X. { 0 } ) |` J ) ) = o ) |
97 |
84 96
|
eqtr2id |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> o = ( ( o u. ( ( NN \ J ) X. { 0 } ) ) |` J ) ) |
98 |
|
reseq1 |
|- ( m = ( o u. ( ( NN \ J ) X. { 0 } ) ) -> ( m |` J ) = ( ( o u. ( ( NN \ J ) X. { 0 } ) ) |` J ) ) |
99 |
98
|
rspceeqv |
|- ( ( ( o u. ( ( NN \ J ) X. { 0 } ) ) e. ( T i^i R ) /\ o = ( ( o u. ( ( NN \ J ) X. { 0 } ) ) |` J ) ) -> E. m e. ( T i^i R ) o = ( m |` J ) ) |
100 |
83 97 99
|
syl2anc |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) -> E. m e. ( T i^i R ) o = ( m |` J ) ) |
101 |
|
simpr |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> o = ( m |` J ) ) |
102 |
|
simpl |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> m e. ( T i^i R ) ) |
103 |
1 2 3 4 5 6 7 8 9
|
eulerpartlemt0 |
|- ( m e. ( T i^i R ) <-> ( m e. ( NN0 ^m NN ) /\ ( `' m " NN ) e. Fin /\ ( `' m " NN ) C_ J ) ) |
104 |
102 103
|
sylib |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> ( m e. ( NN0 ^m NN ) /\ ( `' m " NN ) e. Fin /\ ( `' m " NN ) C_ J ) ) |
105 |
104
|
simp1d |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> m e. ( NN0 ^m NN ) ) |
106 |
30 31
|
elmap |
|- ( m e. ( NN0 ^m NN ) <-> m : NN --> NN0 ) |
107 |
105 106
|
sylib |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> m : NN --> NN0 ) |
108 |
|
fssres |
|- ( ( m : NN --> NN0 /\ J C_ NN ) -> ( m |` J ) : J --> NN0 ) |
109 |
107 20 108
|
sylancl |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> ( m |` J ) : J --> NN0 ) |
110 |
4 31
|
rabex2 |
|- J e. _V |
111 |
30 110
|
elmap |
|- ( ( m |` J ) e. ( NN0 ^m J ) <-> ( m |` J ) : J --> NN0 ) |
112 |
109 111
|
sylibr |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> ( m |` J ) e. ( NN0 ^m J ) ) |
113 |
101 112
|
eqeltrd |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> o e. ( NN0 ^m J ) ) |
114 |
|
ffun |
|- ( m : NN --> NN0 -> Fun m ) |
115 |
|
respreima |
|- ( Fun m -> ( `' ( m |` J ) " NN ) = ( ( `' m " NN ) i^i J ) ) |
116 |
107 114 115
|
3syl |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> ( `' ( m |` J ) " NN ) = ( ( `' m " NN ) i^i J ) ) |
117 |
104
|
simp2d |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> ( `' m " NN ) e. Fin ) |
118 |
|
infi |
|- ( ( `' m " NN ) e. Fin -> ( ( `' m " NN ) i^i J ) e. Fin ) |
119 |
117 118
|
syl |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> ( ( `' m " NN ) i^i J ) e. Fin ) |
120 |
116 119
|
eqeltrd |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> ( `' ( m |` J ) " NN ) e. Fin ) |
121 |
|
vex |
|- m e. _V |
122 |
121
|
resex |
|- ( m |` J ) e. _V |
123 |
|
cnveq |
|- ( f = ( m |` J ) -> `' f = `' ( m |` J ) ) |
124 |
123
|
imaeq1d |
|- ( f = ( m |` J ) -> ( `' f " NN ) = ( `' ( m |` J ) " NN ) ) |
125 |
124
|
eleq1d |
|- ( f = ( m |` J ) -> ( ( `' f " NN ) e. Fin <-> ( `' ( m |` J ) " NN ) e. Fin ) ) |
126 |
122 125 8
|
elab2 |
|- ( ( m |` J ) e. R <-> ( `' ( m |` J ) " NN ) e. Fin ) |
127 |
120 126
|
sylibr |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> ( m |` J ) e. R ) |
128 |
101 127
|
eqeltrd |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> o e. R ) |
129 |
113 128
|
jca |
|- ( ( m e. ( T i^i R ) /\ o = ( m |` J ) ) -> ( o e. ( NN0 ^m J ) /\ o e. R ) ) |
130 |
129
|
rexlimiva |
|- ( E. m e. ( T i^i R ) o = ( m |` J ) -> ( o e. ( NN0 ^m J ) /\ o e. R ) ) |
131 |
100 130
|
impbii |
|- ( ( o e. ( NN0 ^m J ) /\ o e. R ) <-> E. m e. ( T i^i R ) o = ( m |` J ) ) |
132 |
131
|
abbii |
|- { o | ( o e. ( NN0 ^m J ) /\ o e. R ) } = { o | E. m e. ( T i^i R ) o = ( m |` J ) } |
133 |
|
df-in |
|- ( ( NN0 ^m J ) i^i R ) = { o | ( o e. ( NN0 ^m J ) /\ o e. R ) } |
134 |
|
eqid |
|- ( m e. ( T i^i R ) |-> ( m |` J ) ) = ( m e. ( T i^i R ) |-> ( m |` J ) ) |
135 |
134
|
rnmpt |
|- ran ( m e. ( T i^i R ) |-> ( m |` J ) ) = { o | E. m e. ( T i^i R ) o = ( m |` J ) } |
136 |
132 133 135
|
3eqtr4i |
|- ( ( NN0 ^m J ) i^i R ) = ran ( m e. ( T i^i R ) |-> ( m |` J ) ) |