Step |
Hyp |
Ref |
Expression |
1 |
|
fldext2chn.l |
|- .< = { <. f , e >. | ( e /FldExt f /\ ( e [:] f ) = 2 ) } |
2 |
|
fldext2chn.t |
|- ( ph -> T e. ( .< Chain Field ) ) |
3 |
|
fldext2chn.1 |
|- ( ph -> ( T ` 0 ) = Q ) |
4 |
|
fldext2chn.2 |
|- ( ph -> ( lastS ` T ) = F ) |
5 |
|
fldext2chn.3 |
|- ( ph -> 0 < ( # ` T ) ) |
6 |
|
fveq2 |
|- ( d = (/) -> ( # ` d ) = ( # ` (/) ) ) |
7 |
6
|
breq2d |
|- ( d = (/) -> ( 0 < ( # ` d ) <-> 0 < ( # ` (/) ) ) ) |
8 |
|
fveq2 |
|- ( d = (/) -> ( lastS ` d ) = ( lastS ` (/) ) ) |
9 |
|
fveq1 |
|- ( d = (/) -> ( d ` 0 ) = ( (/) ` 0 ) ) |
10 |
8 9
|
breq12d |
|- ( d = (/) -> ( ( lastS ` d ) /FldExt ( d ` 0 ) <-> ( lastS ` (/) ) /FldExt ( (/) ` 0 ) ) ) |
11 |
8 9
|
oveq12d |
|- ( d = (/) -> ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( ( lastS ` (/) ) [:] ( (/) ` 0 ) ) ) |
12 |
11
|
eqeq1d |
|- ( d = (/) -> ( ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) <-> ( ( lastS ` (/) ) [:] ( (/) ` 0 ) ) = ( 2 ^ n ) ) ) |
13 |
12
|
rexbidv |
|- ( d = (/) -> ( E. n e. NN0 ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) <-> E. n e. NN0 ( ( lastS ` (/) ) [:] ( (/) ` 0 ) ) = ( 2 ^ n ) ) ) |
14 |
10 13
|
anbi12d |
|- ( d = (/) -> ( ( ( lastS ` d ) /FldExt ( d ` 0 ) /\ E. n e. NN0 ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) ) <-> ( ( lastS ` (/) ) /FldExt ( (/) ` 0 ) /\ E. n e. NN0 ( ( lastS ` (/) ) [:] ( (/) ` 0 ) ) = ( 2 ^ n ) ) ) ) |
15 |
7 14
|
imbi12d |
|- ( d = (/) -> ( ( 0 < ( # ` d ) -> ( ( lastS ` d ) /FldExt ( d ` 0 ) /\ E. n e. NN0 ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) ) ) <-> ( 0 < ( # ` (/) ) -> ( ( lastS ` (/) ) /FldExt ( (/) ` 0 ) /\ E. n e. NN0 ( ( lastS ` (/) ) [:] ( (/) ` 0 ) ) = ( 2 ^ n ) ) ) ) ) |
16 |
|
fveq2 |
|- ( d = c -> ( # ` d ) = ( # ` c ) ) |
17 |
16
|
breq2d |
|- ( d = c -> ( 0 < ( # ` d ) <-> 0 < ( # ` c ) ) ) |
18 |
|
fveq2 |
|- ( d = c -> ( lastS ` d ) = ( lastS ` c ) ) |
19 |
|
fveq1 |
|- ( d = c -> ( d ` 0 ) = ( c ` 0 ) ) |
20 |
18 19
|
breq12d |
|- ( d = c -> ( ( lastS ` d ) /FldExt ( d ` 0 ) <-> ( lastS ` c ) /FldExt ( c ` 0 ) ) ) |
21 |
18 19
|
oveq12d |
|- ( d = c -> ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( ( lastS ` c ) [:] ( c ` 0 ) ) ) |
22 |
21
|
eqeq1d |
|- ( d = c -> ( ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) <-> ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) |
23 |
22
|
rexbidv |
|- ( d = c -> ( E. n e. NN0 ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) <-> E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) |
24 |
20 23
|
anbi12d |
|- ( d = c -> ( ( ( lastS ` d ) /FldExt ( d ` 0 ) /\ E. n e. NN0 ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) ) <-> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) |
25 |
17 24
|
imbi12d |
|- ( d = c -> ( ( 0 < ( # ` d ) -> ( ( lastS ` d ) /FldExt ( d ` 0 ) /\ E. n e. NN0 ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) ) ) <-> ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) ) |
26 |
|
fveq2 |
|- ( d = ( c ++ <" g "> ) -> ( # ` d ) = ( # ` ( c ++ <" g "> ) ) ) |
27 |
26
|
breq2d |
|- ( d = ( c ++ <" g "> ) -> ( 0 < ( # ` d ) <-> 0 < ( # ` ( c ++ <" g "> ) ) ) ) |
28 |
|
fveq2 |
|- ( d = ( c ++ <" g "> ) -> ( lastS ` d ) = ( lastS ` ( c ++ <" g "> ) ) ) |
29 |
|
fveq1 |
|- ( d = ( c ++ <" g "> ) -> ( d ` 0 ) = ( ( c ++ <" g "> ) ` 0 ) ) |
30 |
28 29
|
breq12d |
|- ( d = ( c ++ <" g "> ) -> ( ( lastS ` d ) /FldExt ( d ` 0 ) <-> ( lastS ` ( c ++ <" g "> ) ) /FldExt ( ( c ++ <" g "> ) ` 0 ) ) ) |
31 |
28 29
|
oveq12d |
|- ( d = ( c ++ <" g "> ) -> ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) ) |
32 |
31
|
eqeq1d |
|- ( d = ( c ++ <" g "> ) -> ( ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) <-> ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ n ) ) ) |
33 |
32
|
rexbidv |
|- ( d = ( c ++ <" g "> ) -> ( E. n e. NN0 ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) <-> E. n e. NN0 ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ n ) ) ) |
34 |
|
oveq2 |
|- ( n = m -> ( 2 ^ n ) = ( 2 ^ m ) ) |
35 |
34
|
eqeq2d |
|- ( n = m -> ( ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ n ) <-> ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ m ) ) ) |
36 |
35
|
cbvrexvw |
|- ( E. n e. NN0 ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ n ) <-> E. m e. NN0 ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ m ) ) |
37 |
33 36
|
bitrdi |
|- ( d = ( c ++ <" g "> ) -> ( E. n e. NN0 ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) <-> E. m e. NN0 ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ m ) ) ) |
38 |
30 37
|
anbi12d |
|- ( d = ( c ++ <" g "> ) -> ( ( ( lastS ` d ) /FldExt ( d ` 0 ) /\ E. n e. NN0 ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) ) <-> ( ( lastS ` ( c ++ <" g "> ) ) /FldExt ( ( c ++ <" g "> ) ` 0 ) /\ E. m e. NN0 ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ m ) ) ) ) |
39 |
27 38
|
imbi12d |
|- ( d = ( c ++ <" g "> ) -> ( ( 0 < ( # ` d ) -> ( ( lastS ` d ) /FldExt ( d ` 0 ) /\ E. n e. NN0 ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) ) ) <-> ( 0 < ( # ` ( c ++ <" g "> ) ) -> ( ( lastS ` ( c ++ <" g "> ) ) /FldExt ( ( c ++ <" g "> ) ` 0 ) /\ E. m e. NN0 ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ m ) ) ) ) ) |
40 |
|
fveq2 |
|- ( d = T -> ( # ` d ) = ( # ` T ) ) |
41 |
40
|
breq2d |
|- ( d = T -> ( 0 < ( # ` d ) <-> 0 < ( # ` T ) ) ) |
42 |
|
fveq2 |
|- ( d = T -> ( lastS ` d ) = ( lastS ` T ) ) |
43 |
|
fveq1 |
|- ( d = T -> ( d ` 0 ) = ( T ` 0 ) ) |
44 |
42 43
|
breq12d |
|- ( d = T -> ( ( lastS ` d ) /FldExt ( d ` 0 ) <-> ( lastS ` T ) /FldExt ( T ` 0 ) ) ) |
45 |
42 43
|
oveq12d |
|- ( d = T -> ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( ( lastS ` T ) [:] ( T ` 0 ) ) ) |
46 |
45
|
eqeq1d |
|- ( d = T -> ( ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) <-> ( ( lastS ` T ) [:] ( T ` 0 ) ) = ( 2 ^ n ) ) ) |
47 |
46
|
rexbidv |
|- ( d = T -> ( E. n e. NN0 ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) <-> E. n e. NN0 ( ( lastS ` T ) [:] ( T ` 0 ) ) = ( 2 ^ n ) ) ) |
48 |
44 47
|
anbi12d |
|- ( d = T -> ( ( ( lastS ` d ) /FldExt ( d ` 0 ) /\ E. n e. NN0 ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) ) <-> ( ( lastS ` T ) /FldExt ( T ` 0 ) /\ E. n e. NN0 ( ( lastS ` T ) [:] ( T ` 0 ) ) = ( 2 ^ n ) ) ) ) |
49 |
41 48
|
imbi12d |
|- ( d = T -> ( ( 0 < ( # ` d ) -> ( ( lastS ` d ) /FldExt ( d ` 0 ) /\ E. n e. NN0 ( ( lastS ` d ) [:] ( d ` 0 ) ) = ( 2 ^ n ) ) ) <-> ( 0 < ( # ` T ) -> ( ( lastS ` T ) /FldExt ( T ` 0 ) /\ E. n e. NN0 ( ( lastS ` T ) [:] ( T ` 0 ) ) = ( 2 ^ n ) ) ) ) ) |
50 |
|
0re |
|- 0 e. RR |
51 |
50
|
ltnri |
|- -. 0 < 0 |
52 |
51
|
a1i |
|- ( ph -> -. 0 < 0 ) |
53 |
|
hash0 |
|- ( # ` (/) ) = 0 |
54 |
53
|
breq2i |
|- ( 0 < ( # ` (/) ) <-> 0 < 0 ) |
55 |
52 54
|
sylnibr |
|- ( ph -> -. 0 < ( # ` (/) ) ) |
56 |
55
|
pm2.21d |
|- ( ph -> ( 0 < ( # ` (/) ) -> ( ( lastS ` (/) ) /FldExt ( (/) ` 0 ) /\ E. n e. NN0 ( ( lastS ` (/) ) [:] ( (/) ` 0 ) ) = ( 2 ^ n ) ) ) ) |
57 |
|
simp-5r |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> g e. Field ) |
58 |
|
fldextid |
|- ( g e. Field -> g /FldExt g ) |
59 |
57 58
|
syl |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> g /FldExt g ) |
60 |
|
simp-5r |
|- ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) -> c e. ( .< Chain Field ) ) |
61 |
60
|
chnwrd |
|- ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) -> c e. Word Field ) |
62 |
|
lswccats1 |
|- ( ( c e. Word Field /\ g e. Field ) -> ( lastS ` ( c ++ <" g "> ) ) = g ) |
63 |
61 57 62
|
syl2an2r |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> ( lastS ` ( c ++ <" g "> ) ) = g ) |
64 |
|
simpr |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> c = (/) ) |
65 |
64
|
oveq1d |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> ( c ++ <" g "> ) = ( (/) ++ <" g "> ) ) |
66 |
|
s0s1 |
|- <" g "> = ( (/) ++ <" g "> ) |
67 |
65 66
|
eqtr4di |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> ( c ++ <" g "> ) = <" g "> ) |
68 |
67
|
fveq1d |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> ( ( c ++ <" g "> ) ` 0 ) = ( <" g "> ` 0 ) ) |
69 |
|
s1fv |
|- ( g e. Field -> ( <" g "> ` 0 ) = g ) |
70 |
57 69
|
syl |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> ( <" g "> ` 0 ) = g ) |
71 |
68 70
|
eqtrd |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> ( ( c ++ <" g "> ) ` 0 ) = g ) |
72 |
59 63 71
|
3brtr4d |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> ( lastS ` ( c ++ <" g "> ) ) /FldExt ( ( c ++ <" g "> ) ` 0 ) ) |
73 |
|
oveq2 |
|- ( m = 0 -> ( 2 ^ m ) = ( 2 ^ 0 ) ) |
74 |
|
2cn |
|- 2 e. CC |
75 |
|
exp0 |
|- ( 2 e. CC -> ( 2 ^ 0 ) = 1 ) |
76 |
74 75
|
ax-mp |
|- ( 2 ^ 0 ) = 1 |
77 |
73 76
|
eqtrdi |
|- ( m = 0 -> ( 2 ^ m ) = 1 ) |
78 |
77
|
eqeq2d |
|- ( m = 0 -> ( ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ m ) <-> ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = 1 ) ) |
79 |
|
0nn0 |
|- 0 e. NN0 |
80 |
79
|
a1i |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> 0 e. NN0 ) |
81 |
63 71
|
oveq12d |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( g [:] g ) ) |
82 |
|
extdgid |
|- ( g e. Field -> ( g [:] g ) = 1 ) |
83 |
57 82
|
syl |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> ( g [:] g ) = 1 ) |
84 |
81 83
|
eqtrd |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = 1 ) |
85 |
78 80 84
|
rspcedvdw |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> E. m e. NN0 ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ m ) ) |
86 |
72 85
|
jca |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c = (/) ) -> ( ( lastS ` ( c ++ <" g "> ) ) /FldExt ( ( c ++ <" g "> ) ` 0 ) /\ E. m e. NN0 ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ m ) ) ) |
87 |
|
simp-6r |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( c = (/) \/ ( lastS ` c ) .< g ) ) |
88 |
|
simpllr |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> c =/= (/) ) |
89 |
88
|
neneqd |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> -. c = (/) ) |
90 |
87 89
|
orcnd |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( lastS ` c ) .< g ) |
91 |
61
|
ad3antrrr |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> c e. Word Field ) |
92 |
|
lswcl |
|- ( ( c e. Word Field /\ c =/= (/) ) -> ( lastS ` c ) e. Field ) |
93 |
91 88 92
|
syl2anc |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( lastS ` c ) e. Field ) |
94 |
|
simp-7r |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> g e. Field ) |
95 |
|
breq12 |
|- ( ( e = g /\ f = ( lastS ` c ) ) -> ( e /FldExt f <-> g /FldExt ( lastS ` c ) ) ) |
96 |
|
oveq12 |
|- ( ( e = g /\ f = ( lastS ` c ) ) -> ( e [:] f ) = ( g [:] ( lastS ` c ) ) ) |
97 |
96
|
eqeq1d |
|- ( ( e = g /\ f = ( lastS ` c ) ) -> ( ( e [:] f ) = 2 <-> ( g [:] ( lastS ` c ) ) = 2 ) ) |
98 |
95 97
|
anbi12d |
|- ( ( e = g /\ f = ( lastS ` c ) ) -> ( ( e /FldExt f /\ ( e [:] f ) = 2 ) <-> ( g /FldExt ( lastS ` c ) /\ ( g [:] ( lastS ` c ) ) = 2 ) ) ) |
99 |
98
|
ancoms |
|- ( ( f = ( lastS ` c ) /\ e = g ) -> ( ( e /FldExt f /\ ( e [:] f ) = 2 ) <-> ( g /FldExt ( lastS ` c ) /\ ( g [:] ( lastS ` c ) ) = 2 ) ) ) |
100 |
99 1
|
brabga |
|- ( ( ( lastS ` c ) e. Field /\ g e. Field ) -> ( ( lastS ` c ) .< g <-> ( g /FldExt ( lastS ` c ) /\ ( g [:] ( lastS ` c ) ) = 2 ) ) ) |
101 |
93 94 100
|
syl2anc |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( ( lastS ` c ) .< g <-> ( g /FldExt ( lastS ` c ) /\ ( g [:] ( lastS ` c ) ) = 2 ) ) ) |
102 |
90 101
|
mpbid |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( g /FldExt ( lastS ` c ) /\ ( g [:] ( lastS ` c ) ) = 2 ) ) |
103 |
102
|
simpld |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> g /FldExt ( lastS ` c ) ) |
104 |
|
hashgt0 |
|- ( ( c e. ( .< Chain Field ) /\ c =/= (/) ) -> 0 < ( # ` c ) ) |
105 |
60 104
|
sylan |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) -> 0 < ( # ` c ) ) |
106 |
|
simpllr |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) -> ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) |
107 |
105 106
|
mpd |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) |
108 |
107
|
simprd |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) -> E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) |
109 |
|
oveq2 |
|- ( n = o -> ( 2 ^ n ) = ( 2 ^ o ) ) |
110 |
109
|
eqeq2d |
|- ( n = o -> ( ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) <-> ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) ) |
111 |
110
|
cbvrexvw |
|- ( E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) <-> E. o e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) |
112 |
108 111
|
sylib |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) -> E. o e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) |
113 |
103 112
|
r19.29a |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) -> g /FldExt ( lastS ` c ) ) |
114 |
107
|
simpld |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) -> ( lastS ` c ) /FldExt ( c ` 0 ) ) |
115 |
|
fldexttr |
|- ( ( g /FldExt ( lastS ` c ) /\ ( lastS ` c ) /FldExt ( c ` 0 ) ) -> g /FldExt ( c ` 0 ) ) |
116 |
113 114 115
|
syl2anc |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) -> g /FldExt ( c ` 0 ) ) |
117 |
91 94 62
|
syl2anc |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( lastS ` ( c ++ <" g "> ) ) = g ) |
118 |
117 112
|
r19.29a |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) -> ( lastS ` ( c ++ <" g "> ) ) = g ) |
119 |
94
|
s1cld |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> <" g "> e. Word Field ) |
120 |
105
|
ad2antrr |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> 0 < ( # ` c ) ) |
121 |
|
ccatfv0 |
|- ( ( c e. Word Field /\ <" g "> e. Word Field /\ 0 < ( # ` c ) ) -> ( ( c ++ <" g "> ) ` 0 ) = ( c ` 0 ) ) |
122 |
91 119 120 121
|
syl3anc |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( ( c ++ <" g "> ) ` 0 ) = ( c ` 0 ) ) |
123 |
122 112
|
r19.29a |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) -> ( ( c ++ <" g "> ) ` 0 ) = ( c ` 0 ) ) |
124 |
116 118 123
|
3brtr4d |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) -> ( lastS ` ( c ++ <" g "> ) ) /FldExt ( ( c ++ <" g "> ) ` 0 ) ) |
125 |
|
oveq2 |
|- ( m = ( o + 1 ) -> ( 2 ^ m ) = ( 2 ^ ( o + 1 ) ) ) |
126 |
125
|
eqeq2d |
|- ( m = ( o + 1 ) -> ( ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ m ) <-> ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ ( o + 1 ) ) ) ) |
127 |
|
simplr |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> o e. NN0 ) |
128 |
|
1nn0 |
|- 1 e. NN0 |
129 |
128
|
a1i |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> 1 e. NN0 ) |
130 |
127 129
|
nn0addcld |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( o + 1 ) e. NN0 ) |
131 |
117 122
|
oveq12d |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( g [:] ( c ` 0 ) ) ) |
132 |
114
|
ad2antrr |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( lastS ` c ) /FldExt ( c ` 0 ) ) |
133 |
|
extdgmul |
|- ( ( g /FldExt ( lastS ` c ) /\ ( lastS ` c ) /FldExt ( c ` 0 ) ) -> ( g [:] ( c ` 0 ) ) = ( ( g [:] ( lastS ` c ) ) *e ( ( lastS ` c ) [:] ( c ` 0 ) ) ) ) |
134 |
103 132 133
|
syl2anc |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( g [:] ( c ` 0 ) ) = ( ( g [:] ( lastS ` c ) ) *e ( ( lastS ` c ) [:] ( c ` 0 ) ) ) ) |
135 |
|
2cnd |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> 2 e. CC ) |
136 |
135 127
|
expcld |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( 2 ^ o ) e. CC ) |
137 |
135 136
|
mulcomd |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( 2 x. ( 2 ^ o ) ) = ( ( 2 ^ o ) x. 2 ) ) |
138 |
102
|
simprd |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( g [:] ( lastS ` c ) ) = 2 ) |
139 |
|
simpr |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) |
140 |
138 139
|
oveq12d |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( ( g [:] ( lastS ` c ) ) *e ( ( lastS ` c ) [:] ( c ` 0 ) ) ) = ( 2 *e ( 2 ^ o ) ) ) |
141 |
|
2re |
|- 2 e. RR |
142 |
141
|
a1i |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> 2 e. RR ) |
143 |
142 127
|
reexpcld |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( 2 ^ o ) e. RR ) |
144 |
|
rexmul |
|- ( ( 2 e. RR /\ ( 2 ^ o ) e. RR ) -> ( 2 *e ( 2 ^ o ) ) = ( 2 x. ( 2 ^ o ) ) ) |
145 |
142 143 144
|
syl2anc |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( 2 *e ( 2 ^ o ) ) = ( 2 x. ( 2 ^ o ) ) ) |
146 |
140 145
|
eqtrd |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( ( g [:] ( lastS ` c ) ) *e ( ( lastS ` c ) [:] ( c ` 0 ) ) ) = ( 2 x. ( 2 ^ o ) ) ) |
147 |
135 127
|
expp1d |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( 2 ^ ( o + 1 ) ) = ( ( 2 ^ o ) x. 2 ) ) |
148 |
137 146 147
|
3eqtr4d |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( ( g [:] ( lastS ` c ) ) *e ( ( lastS ` c ) [:] ( c ` 0 ) ) ) = ( 2 ^ ( o + 1 ) ) ) |
149 |
131 134 148
|
3eqtrd |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ ( o + 1 ) ) ) |
150 |
126 130 149
|
rspcedvdw |
|- ( ( ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) /\ o e. NN0 ) /\ ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ o ) ) -> E. m e. NN0 ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ m ) ) |
151 |
150 112
|
r19.29a |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) -> E. m e. NN0 ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ m ) ) |
152 |
124 151
|
jca |
|- ( ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) /\ c =/= (/) ) -> ( ( lastS ` ( c ++ <" g "> ) ) /FldExt ( ( c ++ <" g "> ) ` 0 ) /\ E. m e. NN0 ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ m ) ) ) |
153 |
86 152
|
pm2.61dane |
|- ( ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) /\ 0 < ( # ` ( c ++ <" g "> ) ) ) -> ( ( lastS ` ( c ++ <" g "> ) ) /FldExt ( ( c ++ <" g "> ) ` 0 ) /\ E. m e. NN0 ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ m ) ) ) |
154 |
153
|
ex |
|- ( ( ( ( ( ph /\ c e. ( .< Chain Field ) ) /\ g e. Field ) /\ ( c = (/) \/ ( lastS ` c ) .< g ) ) /\ ( 0 < ( # ` c ) -> ( ( lastS ` c ) /FldExt ( c ` 0 ) /\ E. n e. NN0 ( ( lastS ` c ) [:] ( c ` 0 ) ) = ( 2 ^ n ) ) ) ) -> ( 0 < ( # ` ( c ++ <" g "> ) ) -> ( ( lastS ` ( c ++ <" g "> ) ) /FldExt ( ( c ++ <" g "> ) ` 0 ) /\ E. m e. NN0 ( ( lastS ` ( c ++ <" g "> ) ) [:] ( ( c ++ <" g "> ) ` 0 ) ) = ( 2 ^ m ) ) ) ) |
155 |
15 25 39 49 2 56 154
|
chnind |
|- ( ph -> ( 0 < ( # ` T ) -> ( ( lastS ` T ) /FldExt ( T ` 0 ) /\ E. n e. NN0 ( ( lastS ` T ) [:] ( T ` 0 ) ) = ( 2 ^ n ) ) ) ) |
156 |
5 155
|
mpd |
|- ( ph -> ( ( lastS ` T ) /FldExt ( T ` 0 ) /\ E. n e. NN0 ( ( lastS ` T ) [:] ( T ` 0 ) ) = ( 2 ^ n ) ) ) |
157 |
156
|
simprd |
|- ( ph -> E. n e. NN0 ( ( lastS ` T ) [:] ( T ` 0 ) ) = ( 2 ^ n ) ) |
158 |
4 3
|
oveq12d |
|- ( ph -> ( ( lastS ` T ) [:] ( T ` 0 ) ) = ( F [:] Q ) ) |
159 |
158
|
eqeq1d |
|- ( ph -> ( ( ( lastS ` T ) [:] ( T ` 0 ) ) = ( 2 ^ n ) <-> ( F [:] Q ) = ( 2 ^ n ) ) ) |
160 |
159
|
rexbidv |
|- ( ph -> ( E. n e. NN0 ( ( lastS ` T ) [:] ( T ` 0 ) ) = ( 2 ^ n ) <-> E. n e. NN0 ( F [:] Q ) = ( 2 ^ n ) ) ) |
161 |
157 160
|
mpbid |
|- ( ph -> E. n e. NN0 ( F [:] Q ) = ( 2 ^ n ) ) |