Proof of Theorem cycpmcl
| Step | Hyp | Ref
| Expression |
| 1 | | f1oi 6886 |
. . . . 5
⊢ ( I
↾ (𝐷 ∖ ran
𝑊)):(𝐷 ∖ ran 𝑊)–1-1-onto→(𝐷 ∖ ran 𝑊) |
| 2 | 1 | a1i 11 |
. . . 4
⊢ (𝜑 → ( I ↾ (𝐷 ∖ ran 𝑊)):(𝐷 ∖ ran 𝑊)–1-1-onto→(𝐷 ∖ ran 𝑊)) |
| 3 | | tocycfv.w |
. . . . . . . . 9
⊢ (𝜑 → 𝑊 ∈ Word 𝐷) |
| 4 | | 1zzd 12648 |
. . . . . . . . 9
⊢ (𝜑 → 1 ∈
ℤ) |
| 5 | | cshwf 14838 |
. . . . . . . . 9
⊢ ((𝑊 ∈ Word 𝐷 ∧ 1 ∈ ℤ) → (𝑊 cyclShift
1):(0..^(♯‘𝑊))⟶𝐷) |
| 6 | 3, 4, 5 | syl2anc 584 |
. . . . . . . 8
⊢ (𝜑 → (𝑊 cyclShift 1):(0..^(♯‘𝑊))⟶𝐷) |
| 7 | 6 | ffnd 6737 |
. . . . . . 7
⊢ (𝜑 → (𝑊 cyclShift 1) Fn (0..^(♯‘𝑊))) |
| 8 | | tocycfv.1 |
. . . . . . . . . 10
⊢ (𝜑 → 𝑊:dom 𝑊–1-1→𝐷) |
| 9 | | df-f1 6566 |
. . . . . . . . . 10
⊢ (𝑊:dom 𝑊–1-1→𝐷 ↔ (𝑊:dom 𝑊⟶𝐷 ∧ Fun ◡𝑊)) |
| 10 | 8, 9 | sylib 218 |
. . . . . . . . 9
⊢ (𝜑 → (𝑊:dom 𝑊⟶𝐷 ∧ Fun ◡𝑊)) |
| 11 | 10 | simprd 495 |
. . . . . . . 8
⊢ (𝜑 → Fun ◡𝑊) |
| 12 | | eqid 2737 |
. . . . . . . . 9
⊢ (𝑊 cyclShift 1) = (𝑊 cyclShift 1) |
| 13 | | cshinj 14849 |
. . . . . . . . 9
⊢ ((𝑊 ∈ Word 𝐷 ∧ Fun ◡𝑊 ∧ 1 ∈ ℤ) → ((𝑊 cyclShift 1) = (𝑊 cyclShift 1) → Fun ◡(𝑊 cyclShift 1))) |
| 14 | 12, 13 | mpi 20 |
. . . . . . . 8
⊢ ((𝑊 ∈ Word 𝐷 ∧ Fun ◡𝑊 ∧ 1 ∈ ℤ) → Fun ◡(𝑊 cyclShift 1)) |
| 15 | 3, 11, 4, 14 | syl3anc 1373 |
. . . . . . 7
⊢ (𝜑 → Fun ◡(𝑊 cyclShift 1)) |
| 16 | | f1orn 6858 |
. . . . . . 7
⊢ ((𝑊 cyclShift
1):(0..^(♯‘𝑊))–1-1-onto→ran
(𝑊 cyclShift 1) ↔
((𝑊 cyclShift 1) Fn
(0..^(♯‘𝑊))
∧ Fun ◡(𝑊 cyclShift 1))) |
| 17 | 7, 15, 16 | sylanbrc 583 |
. . . . . 6
⊢ (𝜑 → (𝑊 cyclShift 1):(0..^(♯‘𝑊))–1-1-onto→ran
(𝑊 cyclShift
1)) |
| 18 | | eqidd 2738 |
. . . . . . 7
⊢ (𝜑 → (𝑊 cyclShift 1) = (𝑊 cyclShift 1)) |
| 19 | | wrdf 14557 |
. . . . . . . . 9
⊢ (𝑊 ∈ Word 𝐷 → 𝑊:(0..^(♯‘𝑊))⟶𝐷) |
| 20 | 3, 19 | syl 17 |
. . . . . . . 8
⊢ (𝜑 → 𝑊:(0..^(♯‘𝑊))⟶𝐷) |
| 21 | 20 | fdmd 6746 |
. . . . . . 7
⊢ (𝜑 → dom 𝑊 = (0..^(♯‘𝑊))) |
| 22 | | cshwrnid 32946 |
. . . . . . . . 9
⊢ ((𝑊 ∈ Word 𝐷 ∧ 1 ∈ ℤ) → ran (𝑊 cyclShift 1) = ran 𝑊) |
| 23 | 3, 4, 22 | syl2anc 584 |
. . . . . . . 8
⊢ (𝜑 → ran (𝑊 cyclShift 1) = ran 𝑊) |
| 24 | 23 | eqcomd 2743 |
. . . . . . 7
⊢ (𝜑 → ran 𝑊 = ran (𝑊 cyclShift 1)) |
| 25 | 18, 21, 24 | f1oeq123d 6842 |
. . . . . 6
⊢ (𝜑 → ((𝑊 cyclShift 1):dom 𝑊–1-1-onto→ran
𝑊 ↔ (𝑊 cyclShift 1):(0..^(♯‘𝑊))–1-1-onto→ran
(𝑊 cyclShift
1))) |
| 26 | 17, 25 | mpbird 257 |
. . . . 5
⊢ (𝜑 → (𝑊 cyclShift 1):dom 𝑊–1-1-onto→ran
𝑊) |
| 27 | | f1f1orn 6859 |
. . . . . 6
⊢ (𝑊:dom 𝑊–1-1→𝐷 → 𝑊:dom 𝑊–1-1-onto→ran
𝑊) |
| 28 | | f1ocnv 6860 |
. . . . . 6
⊢ (𝑊:dom 𝑊–1-1-onto→ran
𝑊 → ◡𝑊:ran 𝑊–1-1-onto→dom
𝑊) |
| 29 | 8, 27, 28 | 3syl 18 |
. . . . 5
⊢ (𝜑 → ◡𝑊:ran 𝑊–1-1-onto→dom
𝑊) |
| 30 | | f1oco 6871 |
. . . . 5
⊢ (((𝑊 cyclShift 1):dom 𝑊–1-1-onto→ran
𝑊 ∧ ◡𝑊:ran 𝑊–1-1-onto→dom
𝑊) → ((𝑊 cyclShift 1) ∘ ◡𝑊):ran 𝑊–1-1-onto→ran
𝑊) |
| 31 | 26, 29, 30 | syl2anc 584 |
. . . 4
⊢ (𝜑 → ((𝑊 cyclShift 1) ∘ ◡𝑊):ran 𝑊–1-1-onto→ran
𝑊) |
| 32 | | disjdifr 4473 |
. . . . 5
⊢ ((𝐷 ∖ ran 𝑊) ∩ ran 𝑊) = ∅ |
| 33 | 32 | a1i 11 |
. . . 4
⊢ (𝜑 → ((𝐷 ∖ ran 𝑊) ∩ ran 𝑊) = ∅) |
| 34 | | f1oun 6867 |
. . . 4
⊢ (((( 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 𝑊)) |
| 35 | 2, 31, 33, 33, 34 | syl22anc 839 |
. . 3
⊢ (𝜑 → (( I ↾ (𝐷 ∖ ran 𝑊)) ∪ ((𝑊 cyclShift 1) ∘ ◡𝑊)):((𝐷 ∖ ran 𝑊) ∪ ran 𝑊)–1-1-onto→((𝐷 ∖ ran 𝑊) ∪ ran 𝑊)) |
| 36 | | tocycval.1 |
. . . . 5
⊢ 𝐶 = (toCyc‘𝐷) |
| 37 | | tocycfv.d |
. . . . 5
⊢ (𝜑 → 𝐷 ∈ 𝑉) |
| 38 | 36, 37, 3, 8 | tocycfv 33129 |
. . . 4
⊢ (𝜑 → (𝐶‘𝑊) = (( I ↾ (𝐷 ∖ ran 𝑊)) ∪ ((𝑊 cyclShift 1) ∘ ◡𝑊))) |
| 39 | 20 | frnd 6744 |
. . . . . 6
⊢ (𝜑 → ran 𝑊 ⊆ 𝐷) |
| 40 | | undif 4482 |
. . . . . 6
⊢ (ran
𝑊 ⊆ 𝐷 ↔ (ran 𝑊 ∪ (𝐷 ∖ ran 𝑊)) = 𝐷) |
| 41 | 39, 40 | sylib 218 |
. . . . 5
⊢ (𝜑 → (ran 𝑊 ∪ (𝐷 ∖ ran 𝑊)) = 𝐷) |
| 42 | | uncom 4158 |
. . . . 5
⊢ (ran
𝑊 ∪ (𝐷 ∖ ran 𝑊)) = ((𝐷 ∖ ran 𝑊) ∪ ran 𝑊) |
| 43 | 41, 42 | eqtr3di 2792 |
. . . 4
⊢ (𝜑 → 𝐷 = ((𝐷 ∖ ran 𝑊) ∪ ran 𝑊)) |
| 44 | 38, 43, 43 | f1oeq123d 6842 |
. . 3
⊢ (𝜑 → ((𝐶‘𝑊):𝐷–1-1-onto→𝐷 ↔ (( I ↾ (𝐷 ∖ ran 𝑊)) ∪ ((𝑊 cyclShift 1) ∘ ◡𝑊)):((𝐷 ∖ ran 𝑊) ∪ ran 𝑊)–1-1-onto→((𝐷 ∖ ran 𝑊) ∪ ran 𝑊))) |
| 45 | 35, 44 | mpbird 257 |
. 2
⊢ (𝜑 → (𝐶‘𝑊):𝐷–1-1-onto→𝐷) |
| 46 | | fvex 6919 |
. . 3
⊢ (𝐶‘𝑊) ∈ V |
| 47 | | cycpmcl.s |
. . . 4
⊢ 𝑆 = (SymGrp‘𝐷) |
| 48 | | eqid 2737 |
. . . 4
⊢
(Base‘𝑆) =
(Base‘𝑆) |
| 49 | 47, 48 | elsymgbas2 19390 |
. . 3
⊢ ((𝐶‘𝑊) ∈ V → ((𝐶‘𝑊) ∈ (Base‘𝑆) ↔ (𝐶‘𝑊):𝐷–1-1-onto→𝐷)) |
| 50 | 46, 49 | ax-mp 5 |
. 2
⊢ ((𝐶‘𝑊) ∈ (Base‘𝑆) ↔ (𝐶‘𝑊):𝐷–1-1-onto→𝐷) |
| 51 | 45, 50 | sylibr 234 |
1
⊢ (𝜑 → (𝐶‘𝑊) ∈ (Base‘𝑆)) |