| Step | Hyp | Ref | Expression | 
|---|
| 1 |  | ssrab2 4079 | . . . . 5
⊢ {𝑤 ∈ Word 𝐷 ∣ 𝑤:dom 𝑤–1-1→𝐷} ⊆ Word 𝐷 | 
| 2 |  | cycpmco2.w | . . . . . 6
⊢ (𝜑 → 𝑊 ∈ dom 𝑀) | 
| 3 |  | cycpmco2.d | . . . . . . . 8
⊢ (𝜑 → 𝐷 ∈ 𝑉) | 
| 4 |  | cycpmco2.c | . . . . . . . . 9
⊢ 𝑀 = (toCyc‘𝐷) | 
| 5 |  | cycpmco2.s | . . . . . . . . 9
⊢ 𝑆 = (SymGrp‘𝐷) | 
| 6 |  | eqid 2736 | . . . . . . . . 9
⊢
(Base‘𝑆) =
(Base‘𝑆) | 
| 7 | 4, 5, 6 | tocycf 33138 | . . . . . . . 8
⊢ (𝐷 ∈ 𝑉 → 𝑀:{𝑤 ∈ Word 𝐷 ∣ 𝑤:dom 𝑤–1-1→𝐷}⟶(Base‘𝑆)) | 
| 8 | 3, 7 | syl 17 | . . . . . . 7
⊢ (𝜑 → 𝑀:{𝑤 ∈ Word 𝐷 ∣ 𝑤:dom 𝑤–1-1→𝐷}⟶(Base‘𝑆)) | 
| 9 | 8 | fdmd 6745 | . . . . . 6
⊢ (𝜑 → dom 𝑀 = {𝑤 ∈ Word 𝐷 ∣ 𝑤:dom 𝑤–1-1→𝐷}) | 
| 10 | 2, 9 | eleqtrd 2842 | . . . . 5
⊢ (𝜑 → 𝑊 ∈ {𝑤 ∈ Word 𝐷 ∣ 𝑤:dom 𝑤–1-1→𝐷}) | 
| 11 | 1, 10 | sselid 3980 | . . . 4
⊢ (𝜑 → 𝑊 ∈ Word 𝐷) | 
| 12 |  | lencl 14572 | . . . 4
⊢ (𝑊 ∈ Word 𝐷 → (♯‘𝑊) ∈
ℕ0) | 
| 13 | 11, 12 | syl 17 | . . 3
⊢ (𝜑 → (♯‘𝑊) ∈
ℕ0) | 
| 14 | 13 | nn0cnd 12591 | . 2
⊢ (𝜑 → (♯‘𝑊) ∈
ℂ) | 
| 15 |  | 1cnd 11257 | . 2
⊢ (𝜑 → 1 ∈
ℂ) | 
| 16 |  | cycpmco2.1 | . . . . . . 7
⊢ 𝑈 = (𝑊 splice 〈𝐸, 𝐸, 〈“𝐼”〉〉) | 
| 17 |  | cycpmco2.e | . . . . . . . . 9
⊢ 𝐸 = ((◡𝑊‘𝐽) + 1) | 
| 18 |  | ovexd 7467 | . . . . . . . . 9
⊢ (𝜑 → ((◡𝑊‘𝐽) + 1) ∈ V) | 
| 19 | 17, 18 | eqeltrid 2844 | . . . . . . . 8
⊢ (𝜑 → 𝐸 ∈ V) | 
| 20 |  | cycpmco2.i | . . . . . . . . . 10
⊢ (𝜑 → 𝐼 ∈ (𝐷 ∖ ran 𝑊)) | 
| 21 | 20 | eldifad 3962 | . . . . . . . . 9
⊢ (𝜑 → 𝐼 ∈ 𝐷) | 
| 22 | 21 | s1cld 14642 | . . . . . . . 8
⊢ (𝜑 → 〈“𝐼”〉 ∈ Word 𝐷) | 
| 23 |  | splval 14790 | . . . . . . . 8
⊢ ((𝑊 ∈ dom 𝑀 ∧ (𝐸 ∈ V ∧ 𝐸 ∈ V ∧ 〈“𝐼”〉 ∈ Word 𝐷)) → (𝑊 splice 〈𝐸, 𝐸, 〈“𝐼”〉〉) = (((𝑊 prefix 𝐸) ++ 〈“𝐼”〉) ++ (𝑊 substr 〈𝐸, (♯‘𝑊)〉))) | 
| 24 | 2, 19, 19, 22, 23 | syl13anc 1373 | . . . . . . 7
⊢ (𝜑 → (𝑊 splice 〈𝐸, 𝐸, 〈“𝐼”〉〉) = (((𝑊 prefix 𝐸) ++ 〈“𝐼”〉) ++ (𝑊 substr 〈𝐸, (♯‘𝑊)〉))) | 
| 25 | 16, 24 | eqtrid 2788 | . . . . . 6
⊢ (𝜑 → 𝑈 = (((𝑊 prefix 𝐸) ++ 〈“𝐼”〉) ++ (𝑊 substr 〈𝐸, (♯‘𝑊)〉))) | 
| 26 | 25 | fveq2d 6909 | . . . . 5
⊢ (𝜑 → (♯‘𝑈) = (♯‘(((𝑊 prefix 𝐸) ++ 〈“𝐼”〉) ++ (𝑊 substr 〈𝐸, (♯‘𝑊)〉)))) | 
| 27 |  | pfxcl 14716 | . . . . . . . 8
⊢ (𝑊 ∈ Word 𝐷 → (𝑊 prefix 𝐸) ∈ Word 𝐷) | 
| 28 | 11, 27 | syl 17 | . . . . . . 7
⊢ (𝜑 → (𝑊 prefix 𝐸) ∈ Word 𝐷) | 
| 29 |  | ccatcl 14613 | . . . . . . 7
⊢ (((𝑊 prefix 𝐸) ∈ Word 𝐷 ∧ 〈“𝐼”〉 ∈ Word 𝐷) → ((𝑊 prefix 𝐸) ++ 〈“𝐼”〉) ∈ Word 𝐷) | 
| 30 | 28, 22, 29 | syl2anc 584 | . . . . . 6
⊢ (𝜑 → ((𝑊 prefix 𝐸) ++ 〈“𝐼”〉) ∈ Word 𝐷) | 
| 31 |  | swrdcl 14684 | . . . . . . 7
⊢ (𝑊 ∈ Word 𝐷 → (𝑊 substr 〈𝐸, (♯‘𝑊)〉) ∈ Word 𝐷) | 
| 32 | 11, 31 | syl 17 | . . . . . 6
⊢ (𝜑 → (𝑊 substr 〈𝐸, (♯‘𝑊)〉) ∈ Word 𝐷) | 
| 33 |  | ccatlen 14614 | . . . . . 6
⊢ ((((𝑊 prefix 𝐸) ++ 〈“𝐼”〉) ∈ Word 𝐷 ∧ (𝑊 substr 〈𝐸, (♯‘𝑊)〉) ∈ Word 𝐷) → (♯‘(((𝑊 prefix 𝐸) ++ 〈“𝐼”〉) ++ (𝑊 substr 〈𝐸, (♯‘𝑊)〉))) = ((♯‘((𝑊 prefix 𝐸) ++ 〈“𝐼”〉)) + (♯‘(𝑊 substr 〈𝐸, (♯‘𝑊)〉)))) | 
| 34 | 30, 32, 33 | syl2anc 584 | . . . . 5
⊢ (𝜑 → (♯‘(((𝑊 prefix 𝐸) ++ 〈“𝐼”〉) ++ (𝑊 substr 〈𝐸, (♯‘𝑊)〉))) = ((♯‘((𝑊 prefix 𝐸) ++ 〈“𝐼”〉)) + (♯‘(𝑊 substr 〈𝐸, (♯‘𝑊)〉)))) | 
| 35 |  | ccatws1len 14659 | . . . . . . . 8
⊢ ((𝑊 prefix 𝐸) ∈ Word 𝐷 → (♯‘((𝑊 prefix 𝐸) ++ 〈“𝐼”〉)) = ((♯‘(𝑊 prefix 𝐸)) + 1)) | 
| 36 | 28, 35 | syl 17 | . . . . . . 7
⊢ (𝜑 → (♯‘((𝑊 prefix 𝐸) ++ 〈“𝐼”〉)) = ((♯‘(𝑊 prefix 𝐸)) + 1)) | 
| 37 |  | id 22 | . . . . . . . . . . . . . . . . . 18
⊢ (𝑤 = 𝑊 → 𝑤 = 𝑊) | 
| 38 |  | dmeq 5913 | . . . . . . . . . . . . . . . . . 18
⊢ (𝑤 = 𝑊 → dom 𝑤 = dom 𝑊) | 
| 39 |  | eqidd 2737 | . . . . . . . . . . . . . . . . . 18
⊢ (𝑤 = 𝑊 → 𝐷 = 𝐷) | 
| 40 | 37, 38, 39 | f1eq123d 6839 | . . . . . . . . . . . . . . . . 17
⊢ (𝑤 = 𝑊 → (𝑤:dom 𝑤–1-1→𝐷 ↔ 𝑊:dom 𝑊–1-1→𝐷)) | 
| 41 | 40 | elrab 3691 | . . . . . . . . . . . . . . . 16
⊢ (𝑊 ∈ {𝑤 ∈ Word 𝐷 ∣ 𝑤:dom 𝑤–1-1→𝐷} ↔ (𝑊 ∈ Word 𝐷 ∧ 𝑊:dom 𝑊–1-1→𝐷)) | 
| 42 | 10, 41 | sylib 218 | . . . . . . . . . . . . . . 15
⊢ (𝜑 → (𝑊 ∈ Word 𝐷 ∧ 𝑊:dom 𝑊–1-1→𝐷)) | 
| 43 |  | f1cnv 6871 | . . . . . . . . . . . . . . 15
⊢ (𝑊:dom 𝑊–1-1→𝐷 → ◡𝑊:ran 𝑊–1-1-onto→dom
𝑊) | 
| 44 | 42, 43 | simpl2im 503 | . . . . . . . . . . . . . 14
⊢ (𝜑 → ◡𝑊:ran 𝑊–1-1-onto→dom
𝑊) | 
| 45 |  | f1of 6847 | . . . . . . . . . . . . . 14
⊢ (◡𝑊:ran 𝑊–1-1-onto→dom
𝑊 → ◡𝑊:ran 𝑊⟶dom 𝑊) | 
| 46 | 44, 45 | syl 17 | . . . . . . . . . . . . 13
⊢ (𝜑 → ◡𝑊:ran 𝑊⟶dom 𝑊) | 
| 47 |  | cycpmco2.j | . . . . . . . . . . . . 13
⊢ (𝜑 → 𝐽 ∈ ran 𝑊) | 
| 48 | 46, 47 | ffvelcdmd 7104 | . . . . . . . . . . . 12
⊢ (𝜑 → (◡𝑊‘𝐽) ∈ dom 𝑊) | 
| 49 |  | wrddm 14560 | . . . . . . . . . . . . 13
⊢ (𝑊 ∈ Word 𝐷 → dom 𝑊 = (0..^(♯‘𝑊))) | 
| 50 | 11, 49 | syl 17 | . . . . . . . . . . . 12
⊢ (𝜑 → dom 𝑊 = (0..^(♯‘𝑊))) | 
| 51 | 48, 50 | eleqtrd 2842 | . . . . . . . . . . 11
⊢ (𝜑 → (◡𝑊‘𝐽) ∈ (0..^(♯‘𝑊))) | 
| 52 |  | fzofzp1 13804 | . . . . . . . . . . 11
⊢ ((◡𝑊‘𝐽) ∈ (0..^(♯‘𝑊)) → ((◡𝑊‘𝐽) + 1) ∈ (0...(♯‘𝑊))) | 
| 53 | 51, 52 | syl 17 | . . . . . . . . . 10
⊢ (𝜑 → ((◡𝑊‘𝐽) + 1) ∈ (0...(♯‘𝑊))) | 
| 54 | 17, 53 | eqeltrid 2844 | . . . . . . . . 9
⊢ (𝜑 → 𝐸 ∈ (0...(♯‘𝑊))) | 
| 55 |  | pfxlen 14722 | . . . . . . . . 9
⊢ ((𝑊 ∈ Word 𝐷 ∧ 𝐸 ∈ (0...(♯‘𝑊))) → (♯‘(𝑊 prefix 𝐸)) = 𝐸) | 
| 56 | 11, 54, 55 | syl2anc 584 | . . . . . . . 8
⊢ (𝜑 → (♯‘(𝑊 prefix 𝐸)) = 𝐸) | 
| 57 | 56 | oveq1d 7447 | . . . . . . 7
⊢ (𝜑 → ((♯‘(𝑊 prefix 𝐸)) + 1) = (𝐸 + 1)) | 
| 58 | 36, 57 | eqtrd 2776 | . . . . . 6
⊢ (𝜑 → (♯‘((𝑊 prefix 𝐸) ++ 〈“𝐼”〉)) = (𝐸 + 1)) | 
| 59 |  | nn0fz0 13666 | . . . . . . . 8
⊢
((♯‘𝑊)
∈ ℕ0 ↔ (♯‘𝑊) ∈ (0...(♯‘𝑊))) | 
| 60 | 13, 59 | sylib 218 | . . . . . . 7
⊢ (𝜑 → (♯‘𝑊) ∈
(0...(♯‘𝑊))) | 
| 61 |  | swrdlen 14686 | . . . . . . 7
⊢ ((𝑊 ∈ Word 𝐷 ∧ 𝐸 ∈ (0...(♯‘𝑊)) ∧ (♯‘𝑊) ∈
(0...(♯‘𝑊)))
→ (♯‘(𝑊
substr 〈𝐸,
(♯‘𝑊)〉)) =
((♯‘𝑊) −
𝐸)) | 
| 62 | 11, 54, 60, 61 | syl3anc 1372 | . . . . . 6
⊢ (𝜑 → (♯‘(𝑊 substr 〈𝐸, (♯‘𝑊)〉)) = ((♯‘𝑊) − 𝐸)) | 
| 63 | 58, 62 | oveq12d 7450 | . . . . 5
⊢ (𝜑 → ((♯‘((𝑊 prefix 𝐸) ++ 〈“𝐼”〉)) + (♯‘(𝑊 substr 〈𝐸, (♯‘𝑊)〉))) = ((𝐸 + 1) + ((♯‘𝑊) − 𝐸))) | 
| 64 | 26, 34, 63 | 3eqtrd 2780 | . . . 4
⊢ (𝜑 → (♯‘𝑈) = ((𝐸 + 1) + ((♯‘𝑊) − 𝐸))) | 
| 65 |  | fz0ssnn0 13663 | . . . . . . . . 9
⊢
(0...(♯‘𝑊)) ⊆
ℕ0 | 
| 66 | 65, 54 | sselid 3980 | . . . . . . . 8
⊢ (𝜑 → 𝐸 ∈
ℕ0) | 
| 67 | 66 | nn0zd 12641 | . . . . . . 7
⊢ (𝜑 → 𝐸 ∈ ℤ) | 
| 68 | 67 | peano2zd 12727 | . . . . . 6
⊢ (𝜑 → (𝐸 + 1) ∈ ℤ) | 
| 69 | 68 | zcnd 12725 | . . . . 5
⊢ (𝜑 → (𝐸 + 1) ∈ ℂ) | 
| 70 | 66 | nn0cnd 12591 | . . . . 5
⊢ (𝜑 → 𝐸 ∈ ℂ) | 
| 71 | 69, 14, 70 | addsubassd 11641 | . . . 4
⊢ (𝜑 → (((𝐸 + 1) + (♯‘𝑊)) − 𝐸) = ((𝐸 + 1) + ((♯‘𝑊) − 𝐸))) | 
| 72 | 70, 15, 14 | addassd 11284 | . . . . 5
⊢ (𝜑 → ((𝐸 + 1) + (♯‘𝑊)) = (𝐸 + (1 + (♯‘𝑊)))) | 
| 73 | 72 | oveq1d 7447 | . . . 4
⊢ (𝜑 → (((𝐸 + 1) + (♯‘𝑊)) − 𝐸) = ((𝐸 + (1 + (♯‘𝑊))) − 𝐸)) | 
| 74 | 64, 71, 73 | 3eqtr2d 2782 | . . 3
⊢ (𝜑 → (♯‘𝑈) = ((𝐸 + (1 + (♯‘𝑊))) − 𝐸)) | 
| 75 | 15, 14 | addcld 11281 | . . . 4
⊢ (𝜑 → (1 + (♯‘𝑊)) ∈
ℂ) | 
| 76 | 70, 75 | pncan2d 11623 | . . 3
⊢ (𝜑 → ((𝐸 + (1 + (♯‘𝑊))) − 𝐸) = (1 + (♯‘𝑊))) | 
| 77 | 15, 14 | addcomd 11464 | . . 3
⊢ (𝜑 → (1 + (♯‘𝑊)) = ((♯‘𝑊) + 1)) | 
| 78 | 74, 76, 77 | 3eqtrd 2780 | . 2
⊢ (𝜑 → (♯‘𝑈) = ((♯‘𝑊) + 1)) | 
| 79 | 14, 15, 78 | mvrraddd 11676 | 1
⊢ (𝜑 → ((♯‘𝑈) − 1) =
(♯‘𝑊)) |