Step |
Hyp |
Ref |
Expression |
1 |
|
ballotth.m |
|- M e. NN |
2 |
|
ballotth.n |
|- N e. NN |
3 |
|
ballotth.o |
|- O = { c e. ~P ( 1 ... ( M + N ) ) | ( # ` c ) = M } |
4 |
|
ballotth.p |
|- P = ( x e. ~P O |-> ( ( # ` x ) / ( # ` O ) ) ) |
5 |
|
ballotth.f |
|- F = ( c e. O |-> ( i e. ZZ |-> ( ( # ` ( ( 1 ... i ) i^i c ) ) - ( # ` ( ( 1 ... i ) \ c ) ) ) ) ) |
6 |
|
ballotth.e |
|- E = { c e. O | A. i e. ( 1 ... ( M + N ) ) 0 < ( ( F ` c ) ` i ) } |
7 |
|
ballotth.mgtn |
|- N < M |
8 |
|
ballotth.i |
|- I = ( c e. ( O \ E ) |-> inf ( { k e. ( 1 ... ( M + N ) ) | ( ( F ` c ) ` k ) = 0 } , RR , < ) ) |
9 |
|
ballotth.s |
|- S = ( c e. ( O \ E ) |-> ( i e. ( 1 ... ( M + N ) ) |-> if ( i <_ ( I ` c ) , ( ( ( I ` c ) + 1 ) - i ) , i ) ) ) |
10 |
|
imassrn |
|- ( ( S ` C ) " ( 1 ... J ) ) C_ ran ( S ` C ) |
11 |
1 2 3 4 5 6 7 8 9
|
ballotlemsf1o |
|- ( C e. ( O \ E ) -> ( ( S ` C ) : ( 1 ... ( M + N ) ) -1-1-onto-> ( 1 ... ( M + N ) ) /\ `' ( S ` C ) = ( S ` C ) ) ) |
12 |
11
|
simpld |
|- ( C e. ( O \ E ) -> ( S ` C ) : ( 1 ... ( M + N ) ) -1-1-onto-> ( 1 ... ( M + N ) ) ) |
13 |
|
f1of |
|- ( ( S ` C ) : ( 1 ... ( M + N ) ) -1-1-onto-> ( 1 ... ( M + N ) ) -> ( S ` C ) : ( 1 ... ( M + N ) ) --> ( 1 ... ( M + N ) ) ) |
14 |
|
frn |
|- ( ( S ` C ) : ( 1 ... ( M + N ) ) --> ( 1 ... ( M + N ) ) -> ran ( S ` C ) C_ ( 1 ... ( M + N ) ) ) |
15 |
12 13 14
|
3syl |
|- ( C e. ( O \ E ) -> ran ( S ` C ) C_ ( 1 ... ( M + N ) ) ) |
16 |
10 15
|
sstrid |
|- ( C e. ( O \ E ) -> ( ( S ` C ) " ( 1 ... J ) ) C_ ( 1 ... ( M + N ) ) ) |
17 |
|
fzssuz |
|- ( 1 ... ( M + N ) ) C_ ( ZZ>= ` 1 ) |
18 |
|
uzssz |
|- ( ZZ>= ` 1 ) C_ ZZ |
19 |
17 18
|
sstri |
|- ( 1 ... ( M + N ) ) C_ ZZ |
20 |
16 19
|
sstrdi |
|- ( C e. ( O \ E ) -> ( ( S ` C ) " ( 1 ... J ) ) C_ ZZ ) |
21 |
20
|
adantr |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( ( S ` C ) " ( 1 ... J ) ) C_ ZZ ) |
22 |
21
|
sselda |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ( ( S ` C ) " ( 1 ... J ) ) ) -> k e. ZZ ) |
23 |
|
elfzelz |
|- ( k e. ( ( ( S ` C ) ` J ) ... ( I ` C ) ) -> k e. ZZ ) |
24 |
23
|
adantl |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ( ( ( S ` C ) ` J ) ... ( I ` C ) ) ) -> k e. ZZ ) |
25 |
|
f1ofn |
|- ( ( S ` C ) : ( 1 ... ( M + N ) ) -1-1-onto-> ( 1 ... ( M + N ) ) -> ( S ` C ) Fn ( 1 ... ( M + N ) ) ) |
26 |
12 25
|
syl |
|- ( C e. ( O \ E ) -> ( S ` C ) Fn ( 1 ... ( M + N ) ) ) |
27 |
26
|
adantr |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( S ` C ) Fn ( 1 ... ( M + N ) ) ) |
28 |
1 2 3 4 5 6 7 8
|
ballotlemiex |
|- ( C e. ( O \ E ) -> ( ( I ` C ) e. ( 1 ... ( M + N ) ) /\ ( ( F ` C ) ` ( I ` C ) ) = 0 ) ) |
29 |
28
|
simpld |
|- ( C e. ( O \ E ) -> ( I ` C ) e. ( 1 ... ( M + N ) ) ) |
30 |
29
|
adantr |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( I ` C ) e. ( 1 ... ( M + N ) ) ) |
31 |
|
elfzuz3 |
|- ( ( I ` C ) e. ( 1 ... ( M + N ) ) -> ( M + N ) e. ( ZZ>= ` ( I ` C ) ) ) |
32 |
30 31
|
syl |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( M + N ) e. ( ZZ>= ` ( I ` C ) ) ) |
33 |
|
elfzuz3 |
|- ( J e. ( 1 ... ( I ` C ) ) -> ( I ` C ) e. ( ZZ>= ` J ) ) |
34 |
33
|
adantl |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( I ` C ) e. ( ZZ>= ` J ) ) |
35 |
|
uztrn |
|- ( ( ( M + N ) e. ( ZZ>= ` ( I ` C ) ) /\ ( I ` C ) e. ( ZZ>= ` J ) ) -> ( M + N ) e. ( ZZ>= ` J ) ) |
36 |
32 34 35
|
syl2anc |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( M + N ) e. ( ZZ>= ` J ) ) |
37 |
|
fzss2 |
|- ( ( M + N ) e. ( ZZ>= ` J ) -> ( 1 ... J ) C_ ( 1 ... ( M + N ) ) ) |
38 |
36 37
|
syl |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( 1 ... J ) C_ ( 1 ... ( M + N ) ) ) |
39 |
|
fvelimab |
|- ( ( ( S ` C ) Fn ( 1 ... ( M + N ) ) /\ ( 1 ... J ) C_ ( 1 ... ( M + N ) ) ) -> ( k e. ( ( S ` C ) " ( 1 ... J ) ) <-> E. j e. ( 1 ... J ) ( ( S ` C ) ` j ) = k ) ) |
40 |
27 38 39
|
syl2anc |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( k e. ( ( S ` C ) " ( 1 ... J ) ) <-> E. j e. ( 1 ... J ) ( ( S ` C ) ` j ) = k ) ) |
41 |
40
|
adantr |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> ( k e. ( ( S ` C ) " ( 1 ... J ) ) <-> E. j e. ( 1 ... J ) ( ( S ` C ) ` j ) = k ) ) |
42 |
|
1zzd |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> 1 e. ZZ ) |
43 |
1
|
nnzi |
|- M e. ZZ |
44 |
2
|
nnzi |
|- N e. ZZ |
45 |
|
zaddcl |
|- ( ( M e. ZZ /\ N e. ZZ ) -> ( M + N ) e. ZZ ) |
46 |
43 44 45
|
mp2an |
|- ( M + N ) e. ZZ |
47 |
46
|
a1i |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( M + N ) e. ZZ ) |
48 |
|
elfzelz |
|- ( J e. ( 1 ... ( I ` C ) ) -> J e. ZZ ) |
49 |
48
|
adantl |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> J e. ZZ ) |
50 |
|
elfzle1 |
|- ( J e. ( 1 ... ( I ` C ) ) -> 1 <_ J ) |
51 |
50
|
adantl |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> 1 <_ J ) |
52 |
49
|
zred |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> J e. RR ) |
53 |
|
elfzelz |
|- ( ( I ` C ) e. ( 1 ... ( M + N ) ) -> ( I ` C ) e. ZZ ) |
54 |
29 53
|
syl |
|- ( C e. ( O \ E ) -> ( I ` C ) e. ZZ ) |
55 |
54
|
adantr |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( I ` C ) e. ZZ ) |
56 |
55
|
zred |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( I ` C ) e. RR ) |
57 |
47
|
zred |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( M + N ) e. RR ) |
58 |
|
elfzle2 |
|- ( J e. ( 1 ... ( I ` C ) ) -> J <_ ( I ` C ) ) |
59 |
58
|
adantl |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> J <_ ( I ` C ) ) |
60 |
|
elfzle2 |
|- ( ( I ` C ) e. ( 1 ... ( M + N ) ) -> ( I ` C ) <_ ( M + N ) ) |
61 |
29 60
|
syl |
|- ( C e. ( O \ E ) -> ( I ` C ) <_ ( M + N ) ) |
62 |
61
|
adantr |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( I ` C ) <_ ( M + N ) ) |
63 |
52 56 57 59 62
|
letrd |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> J <_ ( M + N ) ) |
64 |
42 47 49 51 63
|
elfzd |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> J e. ( 1 ... ( M + N ) ) ) |
65 |
1 2 3 4 5 6 7 8 9
|
ballotlemsv |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( M + N ) ) ) -> ( ( S ` C ) ` J ) = if ( J <_ ( I ` C ) , ( ( ( I ` C ) + 1 ) - J ) , J ) ) |
66 |
64 65
|
syldan |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( ( S ` C ) ` J ) = if ( J <_ ( I ` C ) , ( ( ( I ` C ) + 1 ) - J ) , J ) ) |
67 |
|
simpr |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> J e. ( 1 ... ( I ` C ) ) ) |
68 |
|
iftrue |
|- ( J <_ ( I ` C ) -> if ( J <_ ( I ` C ) , ( ( ( I ` C ) + 1 ) - J ) , J ) = ( ( ( I ` C ) + 1 ) - J ) ) |
69 |
67 58 68
|
3syl |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> if ( J <_ ( I ` C ) , ( ( ( I ` C ) + 1 ) - J ) , J ) = ( ( ( I ` C ) + 1 ) - J ) ) |
70 |
66 69
|
eqtrd |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( ( S ` C ) ` J ) = ( ( ( I ` C ) + 1 ) - J ) ) |
71 |
70
|
oveq1d |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( ( ( S ` C ) ` J ) ... ( I ` C ) ) = ( ( ( ( I ` C ) + 1 ) - J ) ... ( I ` C ) ) ) |
72 |
71
|
eleq2d |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( k e. ( ( ( S ` C ) ` J ) ... ( I ` C ) ) <-> k e. ( ( ( ( I ` C ) + 1 ) - J ) ... ( I ` C ) ) ) ) |
73 |
72
|
adantr |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> ( k e. ( ( ( S ` C ) ` J ) ... ( I ` C ) ) <-> k e. ( ( ( ( I ` C ) + 1 ) - J ) ... ( I ` C ) ) ) ) |
74 |
54
|
ad2antrr |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> ( I ` C ) e. ZZ ) |
75 |
74
|
zcnd |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> ( I ` C ) e. CC ) |
76 |
|
1cnd |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> 1 e. CC ) |
77 |
75 76
|
pncand |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> ( ( ( I ` C ) + 1 ) - 1 ) = ( I ` C ) ) |
78 |
77
|
oveq2d |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> ( ( ( ( I ` C ) + 1 ) - J ) ... ( ( ( I ` C ) + 1 ) - 1 ) ) = ( ( ( ( I ` C ) + 1 ) - J ) ... ( I ` C ) ) ) |
79 |
78
|
eleq2d |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> ( k e. ( ( ( ( I ` C ) + 1 ) - J ) ... ( ( ( I ` C ) + 1 ) - 1 ) ) <-> k e. ( ( ( ( I ` C ) + 1 ) - J ) ... ( I ` C ) ) ) ) |
80 |
|
1zzd |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> 1 e. ZZ ) |
81 |
48
|
ad2antlr |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> J e. ZZ ) |
82 |
74
|
peano2zd |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> ( ( I ` C ) + 1 ) e. ZZ ) |
83 |
|
simpr |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> k e. ZZ ) |
84 |
|
fzrev |
|- ( ( ( 1 e. ZZ /\ J e. ZZ ) /\ ( ( ( I ` C ) + 1 ) e. ZZ /\ k e. ZZ ) ) -> ( k e. ( ( ( ( I ` C ) + 1 ) - J ) ... ( ( ( I ` C ) + 1 ) - 1 ) ) <-> ( ( ( I ` C ) + 1 ) - k ) e. ( 1 ... J ) ) ) |
85 |
80 81 82 83 84
|
syl22anc |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> ( k e. ( ( ( ( I ` C ) + 1 ) - J ) ... ( ( ( I ` C ) + 1 ) - 1 ) ) <-> ( ( ( I ` C ) + 1 ) - k ) e. ( 1 ... J ) ) ) |
86 |
73 79 85
|
3bitr2d |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> ( k e. ( ( ( S ` C ) ` J ) ... ( I ` C ) ) <-> ( ( ( I ` C ) + 1 ) - k ) e. ( 1 ... J ) ) ) |
87 |
|
risset |
|- ( ( ( ( I ` C ) + 1 ) - k ) e. ( 1 ... J ) <-> E. j e. ( 1 ... J ) j = ( ( ( I ` C ) + 1 ) - k ) ) |
88 |
87
|
a1i |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> ( ( ( ( I ` C ) + 1 ) - k ) e. ( 1 ... J ) <-> E. j e. ( 1 ... J ) j = ( ( ( I ` C ) + 1 ) - k ) ) ) |
89 |
|
eqcom |
|- ( ( ( ( I ` C ) + 1 ) - k ) = j <-> j = ( ( ( I ` C ) + 1 ) - k ) ) |
90 |
54
|
ad2antrr |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> ( I ` C ) e. ZZ ) |
91 |
90
|
adantlr |
|- ( ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) /\ j e. ( 1 ... J ) ) -> ( I ` C ) e. ZZ ) |
92 |
91
|
zcnd |
|- ( ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) /\ j e. ( 1 ... J ) ) -> ( I ` C ) e. CC ) |
93 |
|
1cnd |
|- ( ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) /\ j e. ( 1 ... J ) ) -> 1 e. CC ) |
94 |
92 93
|
addcld |
|- ( ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) /\ j e. ( 1 ... J ) ) -> ( ( I ` C ) + 1 ) e. CC ) |
95 |
|
simplr |
|- ( ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) /\ j e. ( 1 ... J ) ) -> k e. ZZ ) |
96 |
95
|
zcnd |
|- ( ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) /\ j e. ( 1 ... J ) ) -> k e. CC ) |
97 |
|
elfzelz |
|- ( j e. ( 1 ... J ) -> j e. ZZ ) |
98 |
97
|
adantl |
|- ( ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) /\ j e. ( 1 ... J ) ) -> j e. ZZ ) |
99 |
98
|
zcnd |
|- ( ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) /\ j e. ( 1 ... J ) ) -> j e. CC ) |
100 |
|
subsub23 |
|- ( ( ( ( I ` C ) + 1 ) e. CC /\ k e. CC /\ j e. CC ) -> ( ( ( ( I ` C ) + 1 ) - k ) = j <-> ( ( ( I ` C ) + 1 ) - j ) = k ) ) |
101 |
94 96 99 100
|
syl3anc |
|- ( ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) /\ j e. ( 1 ... J ) ) -> ( ( ( ( I ` C ) + 1 ) - k ) = j <-> ( ( ( I ` C ) + 1 ) - j ) = k ) ) |
102 |
89 101
|
bitr3id |
|- ( ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) /\ j e. ( 1 ... J ) ) -> ( j = ( ( ( I ` C ) + 1 ) - k ) <-> ( ( ( I ` C ) + 1 ) - j ) = k ) ) |
103 |
|
simpll |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> C e. ( O \ E ) ) |
104 |
38
|
sselda |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> j e. ( 1 ... ( M + N ) ) ) |
105 |
1 2 3 4 5 6 7 8 9
|
ballotlemsv |
|- ( ( C e. ( O \ E ) /\ j e. ( 1 ... ( M + N ) ) ) -> ( ( S ` C ) ` j ) = if ( j <_ ( I ` C ) , ( ( ( I ` C ) + 1 ) - j ) , j ) ) |
106 |
103 104 105
|
syl2anc |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> ( ( S ` C ) ` j ) = if ( j <_ ( I ` C ) , ( ( ( I ` C ) + 1 ) - j ) , j ) ) |
107 |
97
|
adantl |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> j e. ZZ ) |
108 |
107
|
zred |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> j e. RR ) |
109 |
48
|
ad2antlr |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> J e. ZZ ) |
110 |
109
|
zred |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> J e. RR ) |
111 |
90
|
zred |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> ( I ` C ) e. RR ) |
112 |
|
elfzle2 |
|- ( j e. ( 1 ... J ) -> j <_ J ) |
113 |
112
|
adantl |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> j <_ J ) |
114 |
58
|
ad2antlr |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> J <_ ( I ` C ) ) |
115 |
108 110 111 113 114
|
letrd |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> j <_ ( I ` C ) ) |
116 |
|
iftrue |
|- ( j <_ ( I ` C ) -> if ( j <_ ( I ` C ) , ( ( ( I ` C ) + 1 ) - j ) , j ) = ( ( ( I ` C ) + 1 ) - j ) ) |
117 |
115 116
|
syl |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> if ( j <_ ( I ` C ) , ( ( ( I ` C ) + 1 ) - j ) , j ) = ( ( ( I ` C ) + 1 ) - j ) ) |
118 |
106 117
|
eqtrd |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> ( ( S ` C ) ` j ) = ( ( ( I ` C ) + 1 ) - j ) ) |
119 |
118
|
eqeq1d |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ j e. ( 1 ... J ) ) -> ( ( ( S ` C ) ` j ) = k <-> ( ( ( I ` C ) + 1 ) - j ) = k ) ) |
120 |
119
|
adantlr |
|- ( ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) /\ j e. ( 1 ... J ) ) -> ( ( ( S ` C ) ` j ) = k <-> ( ( ( I ` C ) + 1 ) - j ) = k ) ) |
121 |
102 120
|
bitr4d |
|- ( ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) /\ j e. ( 1 ... J ) ) -> ( j = ( ( ( I ` C ) + 1 ) - k ) <-> ( ( S ` C ) ` j ) = k ) ) |
122 |
121
|
rexbidva |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> ( E. j e. ( 1 ... J ) j = ( ( ( I ` C ) + 1 ) - k ) <-> E. j e. ( 1 ... J ) ( ( S ` C ) ` j ) = k ) ) |
123 |
86 88 122
|
3bitrd |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> ( k e. ( ( ( S ` C ) ` J ) ... ( I ` C ) ) <-> E. j e. ( 1 ... J ) ( ( S ` C ) ` j ) = k ) ) |
124 |
41 123
|
bitr4d |
|- ( ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) /\ k e. ZZ ) -> ( k e. ( ( S ` C ) " ( 1 ... J ) ) <-> k e. ( ( ( S ` C ) ` J ) ... ( I ` C ) ) ) ) |
125 |
22 24 124
|
eqrdav |
|- ( ( C e. ( O \ E ) /\ J e. ( 1 ... ( I ` C ) ) ) -> ( ( S ` C ) " ( 1 ... J ) ) = ( ( ( S ` C ) ` J ) ... ( I ` C ) ) ) |