| 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 ‘ 𝑆 ) ) |