Step |
Hyp |
Ref |
Expression |
1 |
|
ccatf1.s |
|- ( ph -> S e. V ) |
2 |
|
ccatf1.a |
|- ( ph -> A e. Word S ) |
3 |
|
ccatf1.b |
|- ( ph -> B e. Word S ) |
4 |
|
ccatf1.1 |
|- ( ph -> A : dom A -1-1-> S ) |
5 |
|
ccatf1.2 |
|- ( ph -> B : dom B -1-1-> S ) |
6 |
|
ccatf1.3 |
|- ( ph -> ( ran A i^i ran B ) = (/) ) |
7 |
|
ccatcl |
|- ( ( A e. Word S /\ B e. Word S ) -> ( A ++ B ) e. Word S ) |
8 |
2 3 7
|
syl2anc |
|- ( ph -> ( A ++ B ) e. Word S ) |
9 |
|
wrdf |
|- ( ( A ++ B ) e. Word S -> ( A ++ B ) : ( 0 ..^ ( # ` ( A ++ B ) ) ) --> S ) |
10 |
8 9
|
syl |
|- ( ph -> ( A ++ B ) : ( 0 ..^ ( # ` ( A ++ B ) ) ) --> S ) |
11 |
10
|
ffdmd |
|- ( ph -> ( A ++ B ) : dom ( A ++ B ) --> S ) |
12 |
|
simpllr |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) |
13 |
|
id |
|- ( i e. ( 0 ..^ ( # ` A ) ) -> i e. ( 0 ..^ ( # ` A ) ) ) |
14 |
|
ccatval1 |
|- ( ( A e. Word S /\ B e. Word S /\ i e. ( 0 ..^ ( # ` A ) ) ) -> ( ( A ++ B ) ` i ) = ( A ` i ) ) |
15 |
2 3 13 14
|
syl2an3an |
|- ( ( ph /\ i e. ( 0 ..^ ( # ` A ) ) ) -> ( ( A ++ B ) ` i ) = ( A ` i ) ) |
16 |
15
|
ad4ant13 |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( ( A ++ B ) ` i ) = ( A ` i ) ) |
17 |
|
id |
|- ( j e. ( 0 ..^ ( # ` A ) ) -> j e. ( 0 ..^ ( # ` A ) ) ) |
18 |
|
ccatval1 |
|- ( ( A e. Word S /\ B e. Word S /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( ( A ++ B ) ` j ) = ( A ` j ) ) |
19 |
2 3 17 18
|
syl2an3an |
|- ( ( ph /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( ( A ++ B ) ` j ) = ( A ` j ) ) |
20 |
19
|
ad4ant14 |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( ( A ++ B ) ` j ) = ( A ` j ) ) |
21 |
12 16 20
|
3eqtr3d |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( A ` i ) = ( A ` j ) ) |
22 |
|
wrddm |
|- ( A e. Word S -> dom A = ( 0 ..^ ( # ` A ) ) ) |
23 |
2 22
|
syl |
|- ( ph -> dom A = ( 0 ..^ ( # ` A ) ) ) |
24 |
|
f1eq2 |
|- ( dom A = ( 0 ..^ ( # ` A ) ) -> ( A : dom A -1-1-> S <-> A : ( 0 ..^ ( # ` A ) ) -1-1-> S ) ) |
25 |
24
|
biimpa |
|- ( ( dom A = ( 0 ..^ ( # ` A ) ) /\ A : dom A -1-1-> S ) -> A : ( 0 ..^ ( # ` A ) ) -1-1-> S ) |
26 |
23 4 25
|
syl2anc |
|- ( ph -> A : ( 0 ..^ ( # ` A ) ) -1-1-> S ) |
27 |
|
dff13 |
|- ( A : ( 0 ..^ ( # ` A ) ) -1-1-> S <-> ( A : ( 0 ..^ ( # ` A ) ) --> S /\ A. i e. ( 0 ..^ ( # ` A ) ) A. j e. ( 0 ..^ ( # ` A ) ) ( ( A ` i ) = ( A ` j ) -> i = j ) ) ) |
28 |
27
|
simprbi |
|- ( A : ( 0 ..^ ( # ` A ) ) -1-1-> S -> A. i e. ( 0 ..^ ( # ` A ) ) A. j e. ( 0 ..^ ( # ` A ) ) ( ( A ` i ) = ( A ` j ) -> i = j ) ) |
29 |
26 28
|
syl |
|- ( ph -> A. i e. ( 0 ..^ ( # ` A ) ) A. j e. ( 0 ..^ ( # ` A ) ) ( ( A ` i ) = ( A ` j ) -> i = j ) ) |
30 |
29
|
r19.21bi |
|- ( ( ph /\ i e. ( 0 ..^ ( # ` A ) ) ) -> A. j e. ( 0 ..^ ( # ` A ) ) ( ( A ` i ) = ( A ` j ) -> i = j ) ) |
31 |
30
|
r19.21bi |
|- ( ( ( ph /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( ( A ` i ) = ( A ` j ) -> i = j ) ) |
32 |
31
|
adantllr |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( ( A ` i ) = ( A ` j ) -> i = j ) ) |
33 |
21 32
|
mpd |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> i = j ) |
34 |
33
|
ex |
|- ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) -> ( j e. ( 0 ..^ ( # ` A ) ) -> i = j ) ) |
35 |
34
|
adantllr |
|- ( ( ( ( ph /\ j e. dom ( A ++ B ) ) /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) -> ( j e. ( 0 ..^ ( # ` A ) ) -> i = j ) ) |
36 |
|
f1fun |
|- ( A : dom A -1-1-> S -> Fun A ) |
37 |
4 36
|
syl |
|- ( ph -> Fun A ) |
38 |
|
simpr |
|- ( ( ph /\ i e. ( 0 ..^ ( # ` A ) ) ) -> i e. ( 0 ..^ ( # ` A ) ) ) |
39 |
23
|
adantr |
|- ( ( ph /\ i e. ( 0 ..^ ( # ` A ) ) ) -> dom A = ( 0 ..^ ( # ` A ) ) ) |
40 |
38 39
|
eleqtrrd |
|- ( ( ph /\ i e. ( 0 ..^ ( # ` A ) ) ) -> i e. dom A ) |
41 |
|
fvelrn |
|- ( ( Fun A /\ i e. dom A ) -> ( A ` i ) e. ran A ) |
42 |
37 40 41
|
syl2an2r |
|- ( ( ph /\ i e. ( 0 ..^ ( # ` A ) ) ) -> ( A ` i ) e. ran A ) |
43 |
42
|
ad4ant13 |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( A ` i ) e. ran A ) |
44 |
|
simpllr |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) |
45 |
15
|
ad4ant13 |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( ( A ++ B ) ` i ) = ( A ` i ) ) |
46 |
2
|
adantr |
|- ( ( ph /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> A e. Word S ) |
47 |
3
|
adantr |
|- ( ( ph /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> B e. Word S ) |
48 |
|
simpr |
|- ( ( ph /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) |
49 |
|
ccatlen |
|- ( ( A e. Word S /\ B e. Word S ) -> ( # ` ( A ++ B ) ) = ( ( # ` A ) + ( # ` B ) ) ) |
50 |
2 3 49
|
syl2anc |
|- ( ph -> ( # ` ( A ++ B ) ) = ( ( # ` A ) + ( # ` B ) ) ) |
51 |
50
|
oveq2d |
|- ( ph -> ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) = ( ( # ` A ) ..^ ( ( # ` A ) + ( # ` B ) ) ) ) |
52 |
51
|
adantr |
|- ( ( ph /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) = ( ( # ` A ) ..^ ( ( # ` A ) + ( # ` B ) ) ) ) |
53 |
48 52
|
eleqtrd |
|- ( ( ph /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> j e. ( ( # ` A ) ..^ ( ( # ` A ) + ( # ` B ) ) ) ) |
54 |
|
ccatval2 |
|- ( ( A e. Word S /\ B e. Word S /\ j e. ( ( # ` A ) ..^ ( ( # ` A ) + ( # ` B ) ) ) ) -> ( ( A ++ B ) ` j ) = ( B ` ( j - ( # ` A ) ) ) ) |
55 |
46 47 53 54
|
syl3anc |
|- ( ( ph /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( ( A ++ B ) ` j ) = ( B ` ( j - ( # ` A ) ) ) ) |
56 |
55
|
ad4ant14 |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( ( A ++ B ) ` j ) = ( B ` ( j - ( # ` A ) ) ) ) |
57 |
44 45 56
|
3eqtr3d |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( A ` i ) = ( B ` ( j - ( # ` A ) ) ) ) |
58 |
|
f1fun |
|- ( B : dom B -1-1-> S -> Fun B ) |
59 |
5 58
|
syl |
|- ( ph -> Fun B ) |
60 |
|
lencl |
|- ( B e. Word S -> ( # ` B ) e. NN0 ) |
61 |
3 60
|
syl |
|- ( ph -> ( # ` B ) e. NN0 ) |
62 |
61
|
nn0zd |
|- ( ph -> ( # ` B ) e. ZZ ) |
63 |
62
|
adantr |
|- ( ( ph /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( # ` B ) e. ZZ ) |
64 |
|
fzosubel3 |
|- ( ( j e. ( ( # ` A ) ..^ ( ( # ` A ) + ( # ` B ) ) ) /\ ( # ` B ) e. ZZ ) -> ( j - ( # ` A ) ) e. ( 0 ..^ ( # ` B ) ) ) |
65 |
53 63 64
|
syl2anc |
|- ( ( ph /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( j - ( # ` A ) ) e. ( 0 ..^ ( # ` B ) ) ) |
66 |
|
wrddm |
|- ( B e. Word S -> dom B = ( 0 ..^ ( # ` B ) ) ) |
67 |
3 66
|
syl |
|- ( ph -> dom B = ( 0 ..^ ( # ` B ) ) ) |
68 |
67
|
adantr |
|- ( ( ph /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> dom B = ( 0 ..^ ( # ` B ) ) ) |
69 |
65 68
|
eleqtrrd |
|- ( ( ph /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( j - ( # ` A ) ) e. dom B ) |
70 |
|
fvelrn |
|- ( ( Fun B /\ ( j - ( # ` A ) ) e. dom B ) -> ( B ` ( j - ( # ` A ) ) ) e. ran B ) |
71 |
59 69 70
|
syl2an2r |
|- ( ( ph /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( B ` ( j - ( # ` A ) ) ) e. ran B ) |
72 |
71
|
ad4ant14 |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( B ` ( j - ( # ` A ) ) ) e. ran B ) |
73 |
57 72
|
eqeltrd |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( A ` i ) e. ran B ) |
74 |
43 73
|
elind |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( A ` i ) e. ( ran A i^i ran B ) ) |
75 |
6
|
ad3antrrr |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( ran A i^i ran B ) = (/) ) |
76 |
74 75
|
eleqtrd |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( A ` i ) e. (/) ) |
77 |
|
noel |
|- -. ( A ` i ) e. (/) |
78 |
77
|
a1i |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> -. ( A ` i ) e. (/) ) |
79 |
76 78
|
pm2.21dd |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> i = j ) |
80 |
79
|
ex |
|- ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) -> ( j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) -> i = j ) ) |
81 |
80
|
adantllr |
|- ( ( ( ( ph /\ j e. dom ( A ++ B ) ) /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) -> ( j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) -> i = j ) ) |
82 |
|
wrddm |
|- ( ( A ++ B ) e. Word S -> dom ( A ++ B ) = ( 0 ..^ ( # ` ( A ++ B ) ) ) ) |
83 |
8 82
|
syl |
|- ( ph -> dom ( A ++ B ) = ( 0 ..^ ( # ` ( A ++ B ) ) ) ) |
84 |
83
|
eleq2d |
|- ( ph -> ( j e. dom ( A ++ B ) <-> j e. ( 0 ..^ ( # ` ( A ++ B ) ) ) ) ) |
85 |
84
|
biimpa |
|- ( ( ph /\ j e. dom ( A ++ B ) ) -> j e. ( 0 ..^ ( # ` ( A ++ B ) ) ) ) |
86 |
|
lencl |
|- ( A e. Word S -> ( # ` A ) e. NN0 ) |
87 |
2 86
|
syl |
|- ( ph -> ( # ` A ) e. NN0 ) |
88 |
87
|
nn0zd |
|- ( ph -> ( # ` A ) e. ZZ ) |
89 |
88
|
adantr |
|- ( ( ph /\ j e. dom ( A ++ B ) ) -> ( # ` A ) e. ZZ ) |
90 |
|
fzospliti |
|- ( ( j e. ( 0 ..^ ( # ` ( A ++ B ) ) ) /\ ( # ` A ) e. ZZ ) -> ( j e. ( 0 ..^ ( # ` A ) ) \/ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) ) |
91 |
85 89 90
|
syl2anc |
|- ( ( ph /\ j e. dom ( A ++ B ) ) -> ( j e. ( 0 ..^ ( # ` A ) ) \/ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) ) |
92 |
91
|
ad2antrr |
|- ( ( ( ( ph /\ j e. dom ( A ++ B ) ) /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) -> ( j e. ( 0 ..^ ( # ` A ) ) \/ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) ) |
93 |
35 81 92
|
mpjaod |
|- ( ( ( ( ph /\ j e. dom ( A ++ B ) ) /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( 0 ..^ ( # ` A ) ) ) -> i = j ) |
94 |
93
|
ex |
|- ( ( ( ph /\ j e. dom ( A ++ B ) ) /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) -> ( i e. ( 0 ..^ ( # ` A ) ) -> i = j ) ) |
95 |
94
|
adantlrl |
|- ( ( ( ph /\ ( i e. dom ( A ++ B ) /\ j e. dom ( A ++ B ) ) ) /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) -> ( i e. ( 0 ..^ ( # ` A ) ) -> i = j ) ) |
96 |
|
simpr |
|- ( ( ph /\ j e. ( 0 ..^ ( # ` A ) ) ) -> j e. ( 0 ..^ ( # ` A ) ) ) |
97 |
23
|
adantr |
|- ( ( ph /\ j e. ( 0 ..^ ( # ` A ) ) ) -> dom A = ( 0 ..^ ( # ` A ) ) ) |
98 |
96 97
|
eleqtrrd |
|- ( ( ph /\ j e. ( 0 ..^ ( # ` A ) ) ) -> j e. dom A ) |
99 |
|
fvelrn |
|- ( ( Fun A /\ j e. dom A ) -> ( A ` j ) e. ran A ) |
100 |
37 98 99
|
syl2an2r |
|- ( ( ph /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( A ` j ) e. ran A ) |
101 |
100
|
ad4ant14 |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( A ` j ) e. ran A ) |
102 |
|
simpllr |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) |
103 |
2
|
adantr |
|- ( ( ph /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> A e. Word S ) |
104 |
3
|
adantr |
|- ( ( ph /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> B e. Word S ) |
105 |
|
simpr |
|- ( ( ph /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) |
106 |
51
|
adantr |
|- ( ( ph /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) = ( ( # ` A ) ..^ ( ( # ` A ) + ( # ` B ) ) ) ) |
107 |
105 106
|
eleqtrd |
|- ( ( ph /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> i e. ( ( # ` A ) ..^ ( ( # ` A ) + ( # ` B ) ) ) ) |
108 |
|
ccatval2 |
|- ( ( A e. Word S /\ B e. Word S /\ i e. ( ( # ` A ) ..^ ( ( # ` A ) + ( # ` B ) ) ) ) -> ( ( A ++ B ) ` i ) = ( B ` ( i - ( # ` A ) ) ) ) |
109 |
103 104 107 108
|
syl3anc |
|- ( ( ph /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( ( A ++ B ) ` i ) = ( B ` ( i - ( # ` A ) ) ) ) |
110 |
109
|
ad4ant13 |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( ( A ++ B ) ` i ) = ( B ` ( i - ( # ` A ) ) ) ) |
111 |
19
|
ad4ant14 |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( ( A ++ B ) ` j ) = ( A ` j ) ) |
112 |
102 110 111
|
3eqtr3rd |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( A ` j ) = ( B ` ( i - ( # ` A ) ) ) ) |
113 |
62
|
adantr |
|- ( ( ph /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( # ` B ) e. ZZ ) |
114 |
|
fzosubel3 |
|- ( ( i e. ( ( # ` A ) ..^ ( ( # ` A ) + ( # ` B ) ) ) /\ ( # ` B ) e. ZZ ) -> ( i - ( # ` A ) ) e. ( 0 ..^ ( # ` B ) ) ) |
115 |
107 113 114
|
syl2anc |
|- ( ( ph /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( i - ( # ` A ) ) e. ( 0 ..^ ( # ` B ) ) ) |
116 |
67
|
adantr |
|- ( ( ph /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> dom B = ( 0 ..^ ( # ` B ) ) ) |
117 |
115 116
|
eleqtrrd |
|- ( ( ph /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( i - ( # ` A ) ) e. dom B ) |
118 |
|
fvelrn |
|- ( ( Fun B /\ ( i - ( # ` A ) ) e. dom B ) -> ( B ` ( i - ( # ` A ) ) ) e. ran B ) |
119 |
59 117 118
|
syl2an2r |
|- ( ( ph /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( B ` ( i - ( # ` A ) ) ) e. ran B ) |
120 |
119
|
ad4ant13 |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( B ` ( i - ( # ` A ) ) ) e. ran B ) |
121 |
112 120
|
eqeltrd |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( A ` j ) e. ran B ) |
122 |
101 121
|
elind |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( A ` j ) e. ( ran A i^i ran B ) ) |
123 |
6
|
ad3antrrr |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( ran A i^i ran B ) = (/) ) |
124 |
122 123
|
eleqtrd |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> ( A ` j ) e. (/) ) |
125 |
|
noel |
|- -. ( A ` j ) e. (/) |
126 |
125
|
a1i |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> -. ( A ` j ) e. (/) ) |
127 |
124 126
|
pm2.21dd |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( 0 ..^ ( # ` A ) ) ) -> i = j ) |
128 |
127
|
ex |
|- ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( j e. ( 0 ..^ ( # ` A ) ) -> i = j ) ) |
129 |
128
|
adantllr |
|- ( ( ( ( ph /\ j e. dom ( A ++ B ) ) /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( j e. ( 0 ..^ ( # ` A ) ) -> i = j ) ) |
130 |
|
elfzoelz |
|- ( i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) -> i e. ZZ ) |
131 |
130
|
zcnd |
|- ( i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) -> i e. CC ) |
132 |
131
|
ad2antlr |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> i e. CC ) |
133 |
|
elfzoelz |
|- ( j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) -> j e. ZZ ) |
134 |
133
|
zcnd |
|- ( j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) -> j e. CC ) |
135 |
134
|
adantl |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> j e. CC ) |
136 |
87
|
nn0cnd |
|- ( ph -> ( # ` A ) e. CC ) |
137 |
136
|
ad3antrrr |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( # ` A ) e. CC ) |
138 |
5
|
ad3antrrr |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> B : dom B -1-1-> S ) |
139 |
117
|
ad4ant13 |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( i - ( # ` A ) ) e. dom B ) |
140 |
69
|
ad4ant14 |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( j - ( # ` A ) ) e. dom B ) |
141 |
139 140
|
jca |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( ( i - ( # ` A ) ) e. dom B /\ ( j - ( # ` A ) ) e. dom B ) ) |
142 |
|
simpllr |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) |
143 |
109
|
ad4ant13 |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( ( A ++ B ) ` i ) = ( B ` ( i - ( # ` A ) ) ) ) |
144 |
55
|
ad4ant14 |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( ( A ++ B ) ` j ) = ( B ` ( j - ( # ` A ) ) ) ) |
145 |
142 143 144
|
3eqtr3d |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( B ` ( i - ( # ` A ) ) ) = ( B ` ( j - ( # ` A ) ) ) ) |
146 |
|
f1veqaeq |
|- ( ( B : dom B -1-1-> S /\ ( ( i - ( # ` A ) ) e. dom B /\ ( j - ( # ` A ) ) e. dom B ) ) -> ( ( B ` ( i - ( # ` A ) ) ) = ( B ` ( j - ( # ` A ) ) ) -> ( i - ( # ` A ) ) = ( j - ( # ` A ) ) ) ) |
147 |
146
|
imp |
|- ( ( ( B : dom B -1-1-> S /\ ( ( i - ( # ` A ) ) e. dom B /\ ( j - ( # ` A ) ) e. dom B ) ) /\ ( B ` ( i - ( # ` A ) ) ) = ( B ` ( j - ( # ` A ) ) ) ) -> ( i - ( # ` A ) ) = ( j - ( # ` A ) ) ) |
148 |
138 141 145 147
|
syl21anc |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( i - ( # ` A ) ) = ( j - ( # ` A ) ) ) |
149 |
132 135 137 148
|
subcan2d |
|- ( ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) /\ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> i = j ) |
150 |
149
|
ex |
|- ( ( ( ph /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) -> i = j ) ) |
151 |
150
|
adantllr |
|- ( ( ( ( ph /\ j e. dom ( A ++ B ) ) /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) -> i = j ) ) |
152 |
91
|
ad2antrr |
|- ( ( ( ( ph /\ j e. dom ( A ++ B ) ) /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> ( j e. ( 0 ..^ ( # ` A ) ) \/ j e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) ) |
153 |
129 151 152
|
mpjaod |
|- ( ( ( ( ph /\ j e. dom ( A ++ B ) ) /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) /\ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) -> i = j ) |
154 |
153
|
ex |
|- ( ( ( ph /\ j e. dom ( A ++ B ) ) /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) -> ( i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) -> i = j ) ) |
155 |
154
|
adantlrl |
|- ( ( ( ph /\ ( i e. dom ( A ++ B ) /\ j e. dom ( A ++ B ) ) ) /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) -> ( i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) -> i = j ) ) |
156 |
83
|
eleq2d |
|- ( ph -> ( i e. dom ( A ++ B ) <-> i e. ( 0 ..^ ( # ` ( A ++ B ) ) ) ) ) |
157 |
156
|
biimpa |
|- ( ( ph /\ i e. dom ( A ++ B ) ) -> i e. ( 0 ..^ ( # ` ( A ++ B ) ) ) ) |
158 |
88
|
adantr |
|- ( ( ph /\ i e. dom ( A ++ B ) ) -> ( # ` A ) e. ZZ ) |
159 |
|
fzospliti |
|- ( ( i e. ( 0 ..^ ( # ` ( A ++ B ) ) ) /\ ( # ` A ) e. ZZ ) -> ( i e. ( 0 ..^ ( # ` A ) ) \/ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) ) |
160 |
157 158 159
|
syl2anc |
|- ( ( ph /\ i e. dom ( A ++ B ) ) -> ( i e. ( 0 ..^ ( # ` A ) ) \/ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) ) |
161 |
160
|
adantrr |
|- ( ( ph /\ ( i e. dom ( A ++ B ) /\ j e. dom ( A ++ B ) ) ) -> ( i e. ( 0 ..^ ( # ` A ) ) \/ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) ) |
162 |
161
|
adantr |
|- ( ( ( ph /\ ( i e. dom ( A ++ B ) /\ j e. dom ( A ++ B ) ) ) /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) -> ( i e. ( 0 ..^ ( # ` A ) ) \/ i e. ( ( # ` A ) ..^ ( # ` ( A ++ B ) ) ) ) ) |
163 |
95 155 162
|
mpjaod |
|- ( ( ( ph /\ ( i e. dom ( A ++ B ) /\ j e. dom ( A ++ B ) ) ) /\ ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) ) -> i = j ) |
164 |
163
|
ex |
|- ( ( ph /\ ( i e. dom ( A ++ B ) /\ j e. dom ( A ++ B ) ) ) -> ( ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) -> i = j ) ) |
165 |
164
|
ralrimivva |
|- ( ph -> A. i e. dom ( A ++ B ) A. j e. dom ( A ++ B ) ( ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) -> i = j ) ) |
166 |
|
dff13 |
|- ( ( A ++ B ) : dom ( A ++ B ) -1-1-> S <-> ( ( A ++ B ) : dom ( A ++ B ) --> S /\ A. i e. dom ( A ++ B ) A. j e. dom ( A ++ B ) ( ( ( A ++ B ) ` i ) = ( ( A ++ B ) ` j ) -> i = j ) ) ) |
167 |
11 165 166
|
sylanbrc |
|- ( ph -> ( A ++ B ) : dom ( A ++ B ) -1-1-> S ) |