Step |
Hyp |
Ref |
Expression |
1 |
|
tocycval.1 |
⊢ 𝐶 = ( toCyc ‘ 𝐷 ) |
2 |
|
tocycfv.d |
⊢ ( 𝜑 → 𝐷 ∈ 𝑉 ) |
3 |
|
tocycfv.w |
⊢ ( 𝜑 → 𝑊 ∈ Word 𝐷 ) |
4 |
|
tocycfv.1 |
⊢ ( 𝜑 → 𝑊 : dom 𝑊 –1-1→ 𝐷 ) |
5 |
|
cycpmcl.s |
⊢ 𝑆 = ( SymGrp ‘ 𝐷 ) |
6 |
|
f1oi |
⊢ ( I ↾ ( 𝐷 ∖ ran 𝑊 ) ) : ( 𝐷 ∖ ran 𝑊 ) –1-1-onto→ ( 𝐷 ∖ ran 𝑊 ) |
7 |
6
|
a1i |
⊢ ( 𝜑 → ( I ↾ ( 𝐷 ∖ ran 𝑊 ) ) : ( 𝐷 ∖ ran 𝑊 ) –1-1-onto→ ( 𝐷 ∖ ran 𝑊 ) ) |
8 |
|
1zzd |
⊢ ( 𝜑 → 1 ∈ ℤ ) |
9 |
|
cshwf |
⊢ ( ( 𝑊 ∈ Word 𝐷 ∧ 1 ∈ ℤ ) → ( 𝑊 cyclShift 1 ) : ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ⟶ 𝐷 ) |
10 |
3 8 9
|
syl2anc |
⊢ ( 𝜑 → ( 𝑊 cyclShift 1 ) : ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ⟶ 𝐷 ) |
11 |
10
|
ffnd |
⊢ ( 𝜑 → ( 𝑊 cyclShift 1 ) Fn ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ) |
12 |
|
df-f1 |
⊢ ( 𝑊 : dom 𝑊 –1-1→ 𝐷 ↔ ( 𝑊 : dom 𝑊 ⟶ 𝐷 ∧ Fun ◡ 𝑊 ) ) |
13 |
4 12
|
sylib |
⊢ ( 𝜑 → ( 𝑊 : dom 𝑊 ⟶ 𝐷 ∧ Fun ◡ 𝑊 ) ) |
14 |
13
|
simprd |
⊢ ( 𝜑 → Fun ◡ 𝑊 ) |
15 |
|
eqid |
⊢ ( 𝑊 cyclShift 1 ) = ( 𝑊 cyclShift 1 ) |
16 |
|
cshinj |
⊢ ( ( 𝑊 ∈ Word 𝐷 ∧ Fun ◡ 𝑊 ∧ 1 ∈ ℤ ) → ( ( 𝑊 cyclShift 1 ) = ( 𝑊 cyclShift 1 ) → Fun ◡ ( 𝑊 cyclShift 1 ) ) ) |
17 |
15 16
|
mpi |
⊢ ( ( 𝑊 ∈ Word 𝐷 ∧ Fun ◡ 𝑊 ∧ 1 ∈ ℤ ) → Fun ◡ ( 𝑊 cyclShift 1 ) ) |
18 |
3 14 8 17
|
syl3anc |
⊢ ( 𝜑 → Fun ◡ ( 𝑊 cyclShift 1 ) ) |
19 |
|
f1orn |
⊢ ( ( 𝑊 cyclShift 1 ) : ( 0 ..^ ( ♯ ‘ 𝑊 ) ) –1-1-onto→ ran ( 𝑊 cyclShift 1 ) ↔ ( ( 𝑊 cyclShift 1 ) Fn ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ∧ Fun ◡ ( 𝑊 cyclShift 1 ) ) ) |
20 |
11 18 19
|
sylanbrc |
⊢ ( 𝜑 → ( 𝑊 cyclShift 1 ) : ( 0 ..^ ( ♯ ‘ 𝑊 ) ) –1-1-onto→ ran ( 𝑊 cyclShift 1 ) ) |
21 |
|
eqidd |
⊢ ( 𝜑 → ( 𝑊 cyclShift 1 ) = ( 𝑊 cyclShift 1 ) ) |
22 |
|
wrdf |
⊢ ( 𝑊 ∈ Word 𝐷 → 𝑊 : ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ⟶ 𝐷 ) |
23 |
3 22
|
syl |
⊢ ( 𝜑 → 𝑊 : ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ⟶ 𝐷 ) |
24 |
23
|
fdmd |
⊢ ( 𝜑 → dom 𝑊 = ( 0 ..^ ( ♯ ‘ 𝑊 ) ) ) |
25 |
|
cshwrnid |
⊢ ( ( 𝑊 ∈ Word 𝐷 ∧ 1 ∈ ℤ ) → ran ( 𝑊 cyclShift 1 ) = ran 𝑊 ) |
26 |
3 8 25
|
syl2anc |
⊢ ( 𝜑 → ran ( 𝑊 cyclShift 1 ) = ran 𝑊 ) |
27 |
26
|
eqcomd |
⊢ ( 𝜑 → ran 𝑊 = ran ( 𝑊 cyclShift 1 ) ) |
28 |
21 24 27
|
f1oeq123d |
⊢ ( 𝜑 → ( ( 𝑊 cyclShift 1 ) : dom 𝑊 –1-1-onto→ ran 𝑊 ↔ ( 𝑊 cyclShift 1 ) : ( 0 ..^ ( ♯ ‘ 𝑊 ) ) –1-1-onto→ ran ( 𝑊 cyclShift 1 ) ) ) |
29 |
20 28
|
mpbird |
⊢ ( 𝜑 → ( 𝑊 cyclShift 1 ) : dom 𝑊 –1-1-onto→ ran 𝑊 ) |
30 |
|
f1f1orn |
⊢ ( 𝑊 : dom 𝑊 –1-1→ 𝐷 → 𝑊 : dom 𝑊 –1-1-onto→ ran 𝑊 ) |
31 |
|
f1ocnv |
⊢ ( 𝑊 : dom 𝑊 –1-1-onto→ ran 𝑊 → ◡ 𝑊 : ran 𝑊 –1-1-onto→ dom 𝑊 ) |
32 |
4 30 31
|
3syl |
⊢ ( 𝜑 → ◡ 𝑊 : ran 𝑊 –1-1-onto→ dom 𝑊 ) |
33 |
|
f1oco |
⊢ ( ( ( 𝑊 cyclShift 1 ) : dom 𝑊 –1-1-onto→ ran 𝑊 ∧ ◡ 𝑊 : ran 𝑊 –1-1-onto→ dom 𝑊 ) → ( ( 𝑊 cyclShift 1 ) ∘ ◡ 𝑊 ) : ran 𝑊 –1-1-onto→ ran 𝑊 ) |
34 |
29 32 33
|
syl2anc |
⊢ ( 𝜑 → ( ( 𝑊 cyclShift 1 ) ∘ ◡ 𝑊 ) : ran 𝑊 –1-1-onto→ ran 𝑊 ) |
35 |
|
disjdifr |
⊢ ( ( 𝐷 ∖ ran 𝑊 ) ∩ ran 𝑊 ) = ∅ |
36 |
35
|
a1i |
⊢ ( 𝜑 → ( ( 𝐷 ∖ ran 𝑊 ) ∩ ran 𝑊 ) = ∅ ) |
37 |
|
f1oun |
⊢ ( ( ( ( I ↾ ( 𝐷 ∖ ran 𝑊 ) ) : ( 𝐷 ∖ ran 𝑊 ) –1-1-onto→ ( 𝐷 ∖ ran 𝑊 ) ∧ ( ( 𝑊 cyclShift 1 ) ∘ ◡ 𝑊 ) : ran 𝑊 –1-1-onto→ ran 𝑊 ) ∧ ( ( ( 𝐷 ∖ ran 𝑊 ) ∩ ran 𝑊 ) = ∅ ∧ ( ( 𝐷 ∖ ran 𝑊 ) ∩ ran 𝑊 ) = ∅ ) ) → ( ( I ↾ ( 𝐷 ∖ ran 𝑊 ) ) ∪ ( ( 𝑊 cyclShift 1 ) ∘ ◡ 𝑊 ) ) : ( ( 𝐷 ∖ ran 𝑊 ) ∪ ran 𝑊 ) –1-1-onto→ ( ( 𝐷 ∖ ran 𝑊 ) ∪ ran 𝑊 ) ) |
38 |
7 34 36 36 37
|
syl22anc |
⊢ ( 𝜑 → ( ( I ↾ ( 𝐷 ∖ ran 𝑊 ) ) ∪ ( ( 𝑊 cyclShift 1 ) ∘ ◡ 𝑊 ) ) : ( ( 𝐷 ∖ ran 𝑊 ) ∪ ran 𝑊 ) –1-1-onto→ ( ( 𝐷 ∖ ran 𝑊 ) ∪ ran 𝑊 ) ) |
39 |
1 2 3 4
|
tocycfv |
⊢ ( 𝜑 → ( 𝐶 ‘ 𝑊 ) = ( ( I ↾ ( 𝐷 ∖ ran 𝑊 ) ) ∪ ( ( 𝑊 cyclShift 1 ) ∘ ◡ 𝑊 ) ) ) |
40 |
23
|
frnd |
⊢ ( 𝜑 → ran 𝑊 ⊆ 𝐷 ) |
41 |
|
undif |
⊢ ( ran 𝑊 ⊆ 𝐷 ↔ ( ran 𝑊 ∪ ( 𝐷 ∖ ran 𝑊 ) ) = 𝐷 ) |
42 |
40 41
|
sylib |
⊢ ( 𝜑 → ( ran 𝑊 ∪ ( 𝐷 ∖ ran 𝑊 ) ) = 𝐷 ) |
43 |
|
uncom |
⊢ ( ran 𝑊 ∪ ( 𝐷 ∖ ran 𝑊 ) ) = ( ( 𝐷 ∖ ran 𝑊 ) ∪ ran 𝑊 ) |
44 |
42 43
|
eqtr3di |
⊢ ( 𝜑 → 𝐷 = ( ( 𝐷 ∖ ran 𝑊 ) ∪ ran 𝑊 ) ) |
45 |
39 44 44
|
f1oeq123d |
⊢ ( 𝜑 → ( ( 𝐶 ‘ 𝑊 ) : 𝐷 –1-1-onto→ 𝐷 ↔ ( ( I ↾ ( 𝐷 ∖ ran 𝑊 ) ) ∪ ( ( 𝑊 cyclShift 1 ) ∘ ◡ 𝑊 ) ) : ( ( 𝐷 ∖ ran 𝑊 ) ∪ ran 𝑊 ) –1-1-onto→ ( ( 𝐷 ∖ ran 𝑊 ) ∪ ran 𝑊 ) ) ) |
46 |
38 45
|
mpbird |
⊢ ( 𝜑 → ( 𝐶 ‘ 𝑊 ) : 𝐷 –1-1-onto→ 𝐷 ) |
47 |
|
fvex |
⊢ ( 𝐶 ‘ 𝑊 ) ∈ V |
48 |
|
eqid |
⊢ ( Base ‘ 𝑆 ) = ( Base ‘ 𝑆 ) |
49 |
5 48
|
elsymgbas2 |
⊢ ( ( 𝐶 ‘ 𝑊 ) ∈ V → ( ( 𝐶 ‘ 𝑊 ) ∈ ( Base ‘ 𝑆 ) ↔ ( 𝐶 ‘ 𝑊 ) : 𝐷 –1-1-onto→ 𝐷 ) ) |
50 |
47 49
|
ax-mp |
⊢ ( ( 𝐶 ‘ 𝑊 ) ∈ ( Base ‘ 𝑆 ) ↔ ( 𝐶 ‘ 𝑊 ) : 𝐷 –1-1-onto→ 𝐷 ) |
51 |
46 50
|
sylibr |
⊢ ( 𝜑 → ( 𝐶 ‘ 𝑊 ) ∈ ( Base ‘ 𝑆 ) ) |