Users' Mathboxes Mathbox for Thierry Arnoux < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  cycpmco2lem4 Structured version   Visualization version   GIF version

Theorem cycpmco2lem4 30821
Description: Lemma for cycpmco2 30825. (Contributed by Thierry Arnoux, 4-Jan-2024.)
Hypotheses
Ref Expression
cycpmco2.c 𝑀 = (toCyc‘𝐷)
cycpmco2.s 𝑆 = (SymGrp‘𝐷)
cycpmco2.d (𝜑𝐷𝑉)
cycpmco2.w (𝜑𝑊 ∈ dom 𝑀)
cycpmco2.i (𝜑𝐼 ∈ (𝐷 ∖ ran 𝑊))
cycpmco2.j (𝜑𝐽 ∈ ran 𝑊)
cycpmco2.e 𝐸 = ((𝑊𝐽) + 1)
cycpmco2.1 𝑈 = (𝑊 splice ⟨𝐸, 𝐸, ⟨“𝐼”⟩⟩)
Assertion
Ref Expression
cycpmco2lem4 (𝜑 → ((𝑀𝑊)‘((𝑀‘⟨“𝐼𝐽”⟩)‘𝐼)) = ((𝑀𝑈)‘𝐼))

Proof of Theorem cycpmco2lem4
Dummy variable 𝑤 is distinct from all other variables.
StepHypRef Expression
1 cycpmco2.c . . 3 𝑀 = (toCyc‘𝐷)
2 cycpmco2.s . . 3 𝑆 = (SymGrp‘𝐷)
3 cycpmco2.d . . 3 (𝜑𝐷𝑉)
4 cycpmco2.w . . 3 (𝜑𝑊 ∈ dom 𝑀)
5 cycpmco2.i . . 3 (𝜑𝐼 ∈ (𝐷 ∖ ran 𝑊))
6 cycpmco2.j . . 3 (𝜑𝐽 ∈ ran 𝑊)
7 cycpmco2.e . . 3 𝐸 = ((𝑊𝐽) + 1)
8 cycpmco2.1 . . 3 𝑈 = (𝑊 splice ⟨𝐸, 𝐸, ⟨“𝐼”⟩⟩)
91, 2, 3, 4, 5, 6, 7, 8cycpmco2lem1 30818 . 2 (𝜑 → ((𝑀𝑊)‘((𝑀‘⟨“𝐼𝐽”⟩)‘𝐼)) = ((𝑀𝑊)‘𝐽))
103adantr 484 . . . . 5 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → 𝐷𝑉)
11 ssrab2 4007 . . . . . . . . 9 {𝑤 ∈ Word 𝐷𝑤:dom 𝑤1-1𝐷} ⊆ Word 𝐷
12 eqid 2798 . . . . . . . . . . . . 13 (Base‘𝑆) = (Base‘𝑆)
131, 2, 12tocycf 30809 . . . . . . . . . . . 12 (𝐷𝑉𝑀:{𝑤 ∈ Word 𝐷𝑤:dom 𝑤1-1𝐷}⟶(Base‘𝑆))
143, 13syl 17 . . . . . . . . . . 11 (𝜑𝑀:{𝑤 ∈ Word 𝐷𝑤:dom 𝑤1-1𝐷}⟶(Base‘𝑆))
1514fdmd 6497 . . . . . . . . . 10 (𝜑 → dom 𝑀 = {𝑤 ∈ Word 𝐷𝑤:dom 𝑤1-1𝐷})
164, 15eleqtrd 2892 . . . . . . . . 9 (𝜑𝑊 ∈ {𝑤 ∈ Word 𝐷𝑤:dom 𝑤1-1𝐷})
1711, 16sseldi 3913 . . . . . . . 8 (𝜑𝑊 ∈ Word 𝐷)
185eldifad 3893 . . . . . . . . 9 (𝜑𝐼𝐷)
1918s1cld 13948 . . . . . . . 8 (𝜑 → ⟨“𝐼”⟩ ∈ Word 𝐷)
20 splcl 14105 . . . . . . . 8 ((𝑊 ∈ Word 𝐷 ∧ ⟨“𝐼”⟩ ∈ Word 𝐷) → (𝑊 splice ⟨𝐸, 𝐸, ⟨“𝐼”⟩⟩) ∈ Word 𝐷)
2117, 19, 20syl2anc 587 . . . . . . 7 (𝜑 → (𝑊 splice ⟨𝐸, 𝐸, ⟨“𝐼”⟩⟩) ∈ Word 𝐷)
228, 21eqeltrid 2894 . . . . . 6 (𝜑𝑈 ∈ Word 𝐷)
2322adantr 484 . . . . 5 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → 𝑈 ∈ Word 𝐷)
241, 2, 3, 4, 5, 6, 7, 8cycpmco2f1 30816 . . . . . 6 (𝜑𝑈:dom 𝑈1-1𝐷)
2524adantr 484 . . . . 5 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → 𝑈:dom 𝑈1-1𝐷)
26 simpr 488 . . . . . 6 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → 𝐸 ∈ (0..^(♯‘𝑊)))
271, 2, 3, 4, 5, 6, 7, 8cycpmco2lem3 30820 . . . . . . . 8 (𝜑 → ((♯‘𝑈) − 1) = (♯‘𝑊))
2827oveq2d 7151 . . . . . . 7 (𝜑 → (0..^((♯‘𝑈) − 1)) = (0..^(♯‘𝑊)))
2928adantr 484 . . . . . 6 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → (0..^((♯‘𝑈) − 1)) = (0..^(♯‘𝑊)))
3026, 29eleqtrrd 2893 . . . . 5 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → 𝐸 ∈ (0..^((♯‘𝑈) − 1)))
311, 10, 23, 25, 30cycpmfv1 30805 . . . 4 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → ((𝑀𝑈)‘(𝑈𝐸)) = (𝑈‘(𝐸 + 1)))
321, 2, 3, 4, 5, 6, 7, 8cycpmco2lem2 30819 . . . . . 6 (𝜑 → (𝑈𝐸) = 𝐼)
3332fveq2d 6649 . . . . 5 (𝜑 → ((𝑀𝑈)‘(𝑈𝐸)) = ((𝑀𝑈)‘𝐼))
3433adantr 484 . . . 4 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → ((𝑀𝑈)‘(𝑈𝐸)) = ((𝑀𝑈)‘𝐼))
3517adantr 484 . . . . . 6 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → 𝑊 ∈ Word 𝐷)
36 lencl 13876 . . . . . . . . 9 (𝑊 ∈ Word 𝐷 → (♯‘𝑊) ∈ ℕ0)
3717, 36syl 17 . . . . . . . 8 (𝜑 → (♯‘𝑊) ∈ ℕ0)
38 nn0fz0 13000 . . . . . . . 8 ((♯‘𝑊) ∈ ℕ0 ↔ (♯‘𝑊) ∈ (0...(♯‘𝑊)))
3937, 38sylib 221 . . . . . . 7 (𝜑 → (♯‘𝑊) ∈ (0...(♯‘𝑊)))
4039adantr 484 . . . . . 6 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → (♯‘𝑊) ∈ (0...(♯‘𝑊)))
41 swrdfv0 14002 . . . . . 6 ((𝑊 ∈ Word 𝐷𝐸 ∈ (0..^(♯‘𝑊)) ∧ (♯‘𝑊) ∈ (0...(♯‘𝑊))) → ((𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)‘0) = (𝑊𝐸))
4235, 26, 40, 41syl3anc 1368 . . . . 5 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → ((𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)‘0) = (𝑊𝐸))
43 ovexd 7170 . . . . . . . . . . 11 (𝜑 → ((𝑊𝐽) + 1) ∈ V)
447, 43eqeltrid 2894 . . . . . . . . . 10 (𝜑𝐸 ∈ V)
45 splval 14104 . . . . . . . . . 10 ((𝑊 ∈ dom 𝑀 ∧ (𝐸 ∈ V ∧ 𝐸 ∈ V ∧ ⟨“𝐼”⟩ ∈ Word 𝐷)) → (𝑊 splice ⟨𝐸, 𝐸, ⟨“𝐼”⟩⟩) = (((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)))
464, 44, 44, 19, 45syl13anc 1369 . . . . . . . . 9 (𝜑 → (𝑊 splice ⟨𝐸, 𝐸, ⟨“𝐼”⟩⟩) = (((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)))
478, 46syl5eq 2845 . . . . . . . 8 (𝜑𝑈 = (((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)))
4847fveq1d 6647 . . . . . . 7 (𝜑 → (𝑈‘(𝐸 + 1)) = ((((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))‘(𝐸 + 1)))
4948adantr 484 . . . . . 6 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → (𝑈‘(𝐸 + 1)) = ((((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))‘(𝐸 + 1)))
50 pfxcl 14030 . . . . . . . . . 10 (𝑊 ∈ Word 𝐷 → (𝑊 prefix 𝐸) ∈ Word 𝐷)
5117, 50syl 17 . . . . . . . . 9 (𝜑 → (𝑊 prefix 𝐸) ∈ Word 𝐷)
52 ccatcl 13917 . . . . . . . . 9 (((𝑊 prefix 𝐸) ∈ Word 𝐷 ∧ ⟨“𝐼”⟩ ∈ Word 𝐷) → ((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ∈ Word 𝐷)
5351, 19, 52syl2anc 587 . . . . . . . 8 (𝜑 → ((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ∈ Word 𝐷)
5453adantr 484 . . . . . . 7 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → ((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ∈ Word 𝐷)
55 swrdcl 13998 . . . . . . . . 9 (𝑊 ∈ Word 𝐷 → (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩) ∈ Word 𝐷)
5617, 55syl 17 . . . . . . . 8 (𝜑 → (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩) ∈ Word 𝐷)
5756adantr 484 . . . . . . 7 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩) ∈ Word 𝐷)
58 1z 12000 . . . . . . . . . . 11 1 ∈ ℤ
59 fzoaddel 13085 . . . . . . . . . . 11 ((𝐸 ∈ (0..^(♯‘𝑊)) ∧ 1 ∈ ℤ) → (𝐸 + 1) ∈ ((0 + 1)..^((♯‘𝑊) + 1)))
6058, 59mpan2 690 . . . . . . . . . 10 (𝐸 ∈ (0..^(♯‘𝑊)) → (𝐸 + 1) ∈ ((0 + 1)..^((♯‘𝑊) + 1)))
61 elfzolt2b 13044 . . . . . . . . . 10 ((𝐸 + 1) ∈ ((0 + 1)..^((♯‘𝑊) + 1)) → (𝐸 + 1) ∈ ((𝐸 + 1)..^((♯‘𝑊) + 1)))
6260, 61syl 17 . . . . . . . . 9 (𝐸 ∈ (0..^(♯‘𝑊)) → (𝐸 + 1) ∈ ((𝐸 + 1)..^((♯‘𝑊) + 1)))
6362adantl 485 . . . . . . . 8 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → (𝐸 + 1) ∈ ((𝐸 + 1)..^((♯‘𝑊) + 1)))
64 ccatws1len 13965 . . . . . . . . . . . 12 ((𝑊 prefix 𝐸) ∈ Word 𝐷 → (♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)) = ((♯‘(𝑊 prefix 𝐸)) + 1))
6551, 64syl 17 . . . . . . . . . . 11 (𝜑 → (♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)) = ((♯‘(𝑊 prefix 𝐸)) + 1))
66 id 22 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑤 = 𝑊𝑤 = 𝑊)
67 dmeq 5736 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑤 = 𝑊 → dom 𝑤 = dom 𝑊)
68 eqidd 2799 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑤 = 𝑊𝐷 = 𝐷)
6966, 67, 68f1eq123d 6583 . . . . . . . . . . . . . . . . . . . . . 22 (𝑤 = 𝑊 → (𝑤:dom 𝑤1-1𝐷𝑊:dom 𝑊1-1𝐷))
7069elrab3 3629 . . . . . . . . . . . . . . . . . . . . 21 (𝑊 ∈ Word 𝐷 → (𝑊 ∈ {𝑤 ∈ Word 𝐷𝑤:dom 𝑤1-1𝐷} ↔ 𝑊:dom 𝑊1-1𝐷))
7170biimpa 480 . . . . . . . . . . . . . . . . . . . 20 ((𝑊 ∈ Word 𝐷𝑊 ∈ {𝑤 ∈ Word 𝐷𝑤:dom 𝑤1-1𝐷}) → 𝑊:dom 𝑊1-1𝐷)
7217, 16, 71syl2anc 587 . . . . . . . . . . . . . . . . . . 19 (𝜑𝑊:dom 𝑊1-1𝐷)
73 f1cnv 6613 . . . . . . . . . . . . . . . . . . 19 (𝑊:dom 𝑊1-1𝐷𝑊:ran 𝑊1-1-onto→dom 𝑊)
7472, 73syl 17 . . . . . . . . . . . . . . . . . 18 (𝜑𝑊:ran 𝑊1-1-onto→dom 𝑊)
75 f1of 6590 . . . . . . . . . . . . . . . . . 18 (𝑊:ran 𝑊1-1-onto→dom 𝑊𝑊:ran 𝑊⟶dom 𝑊)
7674, 75syl 17 . . . . . . . . . . . . . . . . 17 (𝜑𝑊:ran 𝑊⟶dom 𝑊)
7776, 6ffvelrnd 6829 . . . . . . . . . . . . . . . 16 (𝜑 → (𝑊𝐽) ∈ dom 𝑊)
78 wrddm 13864 . . . . . . . . . . . . . . . . 17 (𝑊 ∈ Word 𝐷 → dom 𝑊 = (0..^(♯‘𝑊)))
7917, 78syl 17 . . . . . . . . . . . . . . . 16 (𝜑 → dom 𝑊 = (0..^(♯‘𝑊)))
8077, 79eleqtrd 2892 . . . . . . . . . . . . . . 15 (𝜑 → (𝑊𝐽) ∈ (0..^(♯‘𝑊)))
81 fzofzp1 13129 . . . . . . . . . . . . . . 15 ((𝑊𝐽) ∈ (0..^(♯‘𝑊)) → ((𝑊𝐽) + 1) ∈ (0...(♯‘𝑊)))
8280, 81syl 17 . . . . . . . . . . . . . 14 (𝜑 → ((𝑊𝐽) + 1) ∈ (0...(♯‘𝑊)))
837, 82eqeltrid 2894 . . . . . . . . . . . . 13 (𝜑𝐸 ∈ (0...(♯‘𝑊)))
84 pfxlen 14036 . . . . . . . . . . . . 13 ((𝑊 ∈ Word 𝐷𝐸 ∈ (0...(♯‘𝑊))) → (♯‘(𝑊 prefix 𝐸)) = 𝐸)
8517, 83, 84syl2anc 587 . . . . . . . . . . . 12 (𝜑 → (♯‘(𝑊 prefix 𝐸)) = 𝐸)
8685oveq1d 7150 . . . . . . . . . . 11 (𝜑 → ((♯‘(𝑊 prefix 𝐸)) + 1) = (𝐸 + 1))
8765, 86eqtrd 2833 . . . . . . . . . 10 (𝜑 → (♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)) = (𝐸 + 1))
8887adantr 484 . . . . . . . . 9 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → (♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)) = (𝐸 + 1))
8947fveq2d 6649 . . . . . . . . . . 11 (𝜑 → (♯‘𝑈) = (♯‘(((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))))
90 ccatlen 13918 . . . . . . . . . . . . . . 15 ((((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ∈ Word 𝐷 ∧ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩) ∈ Word 𝐷) → (♯‘(((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))) = ((♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)) + (♯‘(𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))))
9153, 56, 90syl2anc 587 . . . . . . . . . . . . . 14 (𝜑 → (♯‘(((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))) = ((♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)) + (♯‘(𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))))
92 swrdlen 14000 . . . . . . . . . . . . . . . 16 ((𝑊 ∈ Word 𝐷𝐸 ∈ (0...(♯‘𝑊)) ∧ (♯‘𝑊) ∈ (0...(♯‘𝑊))) → (♯‘(𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)) = ((♯‘𝑊) − 𝐸))
9317, 83, 39, 92syl3anc 1368 . . . . . . . . . . . . . . 15 (𝜑 → (♯‘(𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)) = ((♯‘𝑊) − 𝐸))
9487, 93oveq12d 7153 . . . . . . . . . . . . . 14 (𝜑 → ((♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)) + (♯‘(𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))) = ((𝐸 + 1) + ((♯‘𝑊) − 𝐸)))
9589, 91, 943eqtrd 2837 . . . . . . . . . . . . 13 (𝜑 → (♯‘𝑈) = ((𝐸 + 1) + ((♯‘𝑊) − 𝐸)))
96 fz0ssnn0 12997 . . . . . . . . . . . . . . . . . 18 (0...(♯‘𝑊)) ⊆ ℕ0
9796, 83sseldi 3913 . . . . . . . . . . . . . . . . 17 (𝜑𝐸 ∈ ℕ0)
9897nn0zd 12073 . . . . . . . . . . . . . . . 16 (𝜑𝐸 ∈ ℤ)
9998peano2zd 12078 . . . . . . . . . . . . . . 15 (𝜑 → (𝐸 + 1) ∈ ℤ)
10099zcnd 12076 . . . . . . . . . . . . . 14 (𝜑 → (𝐸 + 1) ∈ ℂ)
10137nn0cnd 11945 . . . . . . . . . . . . . 14 (𝜑 → (♯‘𝑊) ∈ ℂ)
10297nn0cnd 11945 . . . . . . . . . . . . . 14 (𝜑𝐸 ∈ ℂ)
103100, 101, 102addsubassd 11006 . . . . . . . . . . . . 13 (𝜑 → (((𝐸 + 1) + (♯‘𝑊)) − 𝐸) = ((𝐸 + 1) + ((♯‘𝑊) − 𝐸)))
104 1cnd 10625 . . . . . . . . . . . . . . 15 (𝜑 → 1 ∈ ℂ)
105102, 104, 101addassd 10652 . . . . . . . . . . . . . 14 (𝜑 → ((𝐸 + 1) + (♯‘𝑊)) = (𝐸 + (1 + (♯‘𝑊))))
106105oveq1d 7150 . . . . . . . . . . . . 13 (𝜑 → (((𝐸 + 1) + (♯‘𝑊)) − 𝐸) = ((𝐸 + (1 + (♯‘𝑊))) − 𝐸))
10795, 103, 1063eqtr2d 2839 . . . . . . . . . . . 12 (𝜑 → (♯‘𝑈) = ((𝐸 + (1 + (♯‘𝑊))) − 𝐸))
108104, 101addcld 10649 . . . . . . . . . . . . 13 (𝜑 → (1 + (♯‘𝑊)) ∈ ℂ)
109102, 108pncan2d 10988 . . . . . . . . . . . 12 (𝜑 → ((𝐸 + (1 + (♯‘𝑊))) − 𝐸) = (1 + (♯‘𝑊)))
110104, 101addcomd 10831 . . . . . . . . . . . 12 (𝜑 → (1 + (♯‘𝑊)) = ((♯‘𝑊) + 1))
111107, 109, 1103eqtrd 2837 . . . . . . . . . . 11 (𝜑 → (♯‘𝑈) = ((♯‘𝑊) + 1))
11289, 111, 913eqtr3rd 2842 . . . . . . . . . 10 (𝜑 → ((♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)) + (♯‘(𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))) = ((♯‘𝑊) + 1))
113112adantr 484 . . . . . . . . 9 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → ((♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)) + (♯‘(𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))) = ((♯‘𝑊) + 1))
11488, 113oveq12d 7153 . . . . . . . 8 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → ((♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩))..^((♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)) + (♯‘(𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)))) = ((𝐸 + 1)..^((♯‘𝑊) + 1)))
11563, 114eleqtrrd 2893 . . . . . . 7 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → (𝐸 + 1) ∈ ((♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩))..^((♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)) + (♯‘(𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)))))
116 ccatval2 13923 . . . . . . 7 ((((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ∈ Word 𝐷 ∧ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩) ∈ Word 𝐷 ∧ (𝐸 + 1) ∈ ((♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩))..^((♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)) + (♯‘(𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))))) → ((((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))‘(𝐸 + 1)) = ((𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)‘((𝐸 + 1) − (♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)))))
11754, 57, 115, 116syl3anc 1368 . . . . . 6 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → ((((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))‘(𝐸 + 1)) = ((𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)‘((𝐸 + 1) − (♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)))))
11887oveq2d 7151 . . . . . . . . 9 (𝜑 → ((𝐸 + 1) − (♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩))) = ((𝐸 + 1) − (𝐸 + 1)))
119100subidd 10974 . . . . . . . . 9 (𝜑 → ((𝐸 + 1) − (𝐸 + 1)) = 0)
120118, 119eqtrd 2833 . . . . . . . 8 (𝜑 → ((𝐸 + 1) − (♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩))) = 0)
121120fveq2d 6649 . . . . . . 7 (𝜑 → ((𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)‘((𝐸 + 1) − (♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)))) = ((𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)‘0))
122121adantr 484 . . . . . 6 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → ((𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)‘((𝐸 + 1) − (♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)))) = ((𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)‘0))
12349, 117, 1223eqtrd 2837 . . . . 5 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → (𝑈‘(𝐸 + 1)) = ((𝑊 substr ⟨𝐸, (♯‘𝑊)⟩)‘0))
1247fveq2i 6648 . . . . . . 7 (𝑊𝐸) = (𝑊‘((𝑊𝐽) + 1))
125124a1i 11 . . . . . 6 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → (𝑊𝐸) = (𝑊‘((𝑊𝐽) + 1)))
12672adantr 484 . . . . . . 7 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → 𝑊:dom 𝑊1-1𝐷)
1277oveq1i 7145 . . . . . . . . . 10 (𝐸 − 1) = (((𝑊𝐽) + 1) − 1)
128 elfzonn0 13077 . . . . . . . . . . . . 13 ((𝑊𝐽) ∈ (0..^(♯‘𝑊)) → (𝑊𝐽) ∈ ℕ0)
12980, 128syl 17 . . . . . . . . . . . 12 (𝜑 → (𝑊𝐽) ∈ ℕ0)
130129nn0cnd 11945 . . . . . . . . . . 11 (𝜑 → (𝑊𝐽) ∈ ℂ)
131130, 104pncand 10987 . . . . . . . . . 10 (𝜑 → (((𝑊𝐽) + 1) − 1) = (𝑊𝐽))
132127, 131syl5req 2846 . . . . . . . . 9 (𝜑 → (𝑊𝐽) = (𝐸 − 1))
133132adantr 484 . . . . . . . 8 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → (𝑊𝐽) = (𝐸 − 1))
134 nn0p1gt0 11914 . . . . . . . . . . . . . 14 ((𝑊𝐽) ∈ ℕ0 → 0 < ((𝑊𝐽) + 1))
135129, 134syl 17 . . . . . . . . . . . . 13 (𝜑 → 0 < ((𝑊𝐽) + 1))
136135, 7breqtrrdi 5072 . . . . . . . . . . . 12 (𝜑 → 0 < 𝐸)
137136gt0ne0d 11193 . . . . . . . . . . 11 (𝜑𝐸 ≠ 0)
138137adantr 484 . . . . . . . . . 10 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → 𝐸 ≠ 0)
139 fzo1fzo0n0 13083 . . . . . . . . . 10 (𝐸 ∈ (1..^(♯‘𝑊)) ↔ (𝐸 ∈ (0..^(♯‘𝑊)) ∧ 𝐸 ≠ 0))
14026, 138, 139sylanbrc 586 . . . . . . . . 9 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → 𝐸 ∈ (1..^(♯‘𝑊)))
141 elfzo1elm1fzo0 13133 . . . . . . . . 9 (𝐸 ∈ (1..^(♯‘𝑊)) → (𝐸 − 1) ∈ (0..^((♯‘𝑊) − 1)))
142140, 141syl 17 . . . . . . . 8 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → (𝐸 − 1) ∈ (0..^((♯‘𝑊) − 1)))
143133, 142eqeltrd 2890 . . . . . . 7 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → (𝑊𝐽) ∈ (0..^((♯‘𝑊) − 1)))
1441, 10, 35, 126, 143cycpmfv1 30805 . . . . . 6 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → ((𝑀𝑊)‘(𝑊‘(𝑊𝐽))) = (𝑊‘((𝑊𝐽) + 1)))
145 f1f1orn 6601 . . . . . . . . . 10 (𝑊:dom 𝑊1-1𝐷𝑊:dom 𝑊1-1-onto→ran 𝑊)
14672, 145syl 17 . . . . . . . . 9 (𝜑𝑊:dom 𝑊1-1-onto→ran 𝑊)
147 f1ocnvfv2 7012 . . . . . . . . 9 ((𝑊:dom 𝑊1-1-onto→ran 𝑊𝐽 ∈ ran 𝑊) → (𝑊‘(𝑊𝐽)) = 𝐽)
148146, 6, 147syl2anc 587 . . . . . . . 8 (𝜑 → (𝑊‘(𝑊𝐽)) = 𝐽)
149148fveq2d 6649 . . . . . . 7 (𝜑 → ((𝑀𝑊)‘(𝑊‘(𝑊𝐽))) = ((𝑀𝑊)‘𝐽))
150149adantr 484 . . . . . 6 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → ((𝑀𝑊)‘(𝑊‘(𝑊𝐽))) = ((𝑀𝑊)‘𝐽))
151125, 144, 1503eqtr2rd 2840 . . . . 5 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → ((𝑀𝑊)‘𝐽) = (𝑊𝐸))
15242, 123, 1513eqtr4d 2843 . . . 4 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → (𝑈‘(𝐸 + 1)) = ((𝑀𝑊)‘𝐽))
15331, 34, 1523eqtr3rd 2842 . . 3 ((𝜑𝐸 ∈ (0..^(♯‘𝑊))) → ((𝑀𝑊)‘𝐽) = ((𝑀𝑈)‘𝐼))
154149adantr 484 . . . . 5 ((𝜑𝐸 = (♯‘𝑊)) → ((𝑀𝑊)‘(𝑊‘(𝑊𝐽))) = ((𝑀𝑊)‘𝐽))
1553adantr 484 . . . . . 6 ((𝜑𝐸 = (♯‘𝑊)) → 𝐷𝑉)
15617adantr 484 . . . . . 6 ((𝜑𝐸 = (♯‘𝑊)) → 𝑊 ∈ Word 𝐷)
15772adantr 484 . . . . . 6 ((𝜑𝐸 = (♯‘𝑊)) → 𝑊:dom 𝑊1-1𝐷)
158136adantr 484 . . . . . . 7 ((𝜑𝐸 = (♯‘𝑊)) → 0 < 𝐸)
159 simpr 488 . . . . . . 7 ((𝜑𝐸 = (♯‘𝑊)) → 𝐸 = (♯‘𝑊))
160158, 159breqtrd 5056 . . . . . 6 ((𝜑𝐸 = (♯‘𝑊)) → 0 < (♯‘𝑊))
161 oveq1 7142 . . . . . . 7 (𝐸 = (♯‘𝑊) → (𝐸 − 1) = ((♯‘𝑊) − 1))
162132, 161sylan9eq 2853 . . . . . 6 ((𝜑𝐸 = (♯‘𝑊)) → (𝑊𝐽) = ((♯‘𝑊) − 1))
1631, 155, 156, 157, 160, 162cycpmfv2 30806 . . . . 5 ((𝜑𝐸 = (♯‘𝑊)) → ((𝑀𝑊)‘(𝑊‘(𝑊𝐽))) = (𝑊‘0))
164154, 163eqtr3d 2835 . . . 4 ((𝜑𝐸 = (♯‘𝑊)) → ((𝑀𝑊)‘𝐽) = (𝑊‘0))
16522adantr 484 . . . . . 6 ((𝜑𝐸 = (♯‘𝑊)) → 𝑈 ∈ Word 𝐷)
16624adantr 484 . . . . . 6 ((𝜑𝐸 = (♯‘𝑊)) → 𝑈:dom 𝑈1-1𝐷)
167 nn0p1gt0 11914 . . . . . . . . 9 ((♯‘𝑊) ∈ ℕ0 → 0 < ((♯‘𝑊) + 1))
16837, 167syl 17 . . . . . . . 8 (𝜑 → 0 < ((♯‘𝑊) + 1))
169168, 111breqtrrd 5058 . . . . . . 7 (𝜑 → 0 < (♯‘𝑈))
170169adantr 484 . . . . . 6 ((𝜑𝐸 = (♯‘𝑊)) → 0 < (♯‘𝑈))
17127adantr 484 . . . . . . 7 ((𝜑𝐸 = (♯‘𝑊)) → ((♯‘𝑈) − 1) = (♯‘𝑊))
172159, 171eqtr4d 2836 . . . . . 6 ((𝜑𝐸 = (♯‘𝑊)) → 𝐸 = ((♯‘𝑈) − 1))
1731, 155, 165, 166, 170, 172cycpmfv2 30806 . . . . 5 ((𝜑𝐸 = (♯‘𝑊)) → ((𝑀𝑈)‘(𝑈𝐸)) = (𝑈‘0))
17447fveq1d 6647 . . . . . 6 (𝜑 → (𝑈‘0) = ((((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))‘0))
175174adantr 484 . . . . 5 ((𝜑𝐸 = (♯‘𝑊)) → (𝑈‘0) = ((((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))‘0))
176 nn0p1nn 11924 . . . . . . . . . . 11 (𝐸 ∈ ℕ0 → (𝐸 + 1) ∈ ℕ)
17797, 176syl 17 . . . . . . . . . 10 (𝜑 → (𝐸 + 1) ∈ ℕ)
178 lbfzo0 13072 . . . . . . . . . 10 (0 ∈ (0..^(𝐸 + 1)) ↔ (𝐸 + 1) ∈ ℕ)
179177, 178sylibr 237 . . . . . . . . 9 (𝜑 → 0 ∈ (0..^(𝐸 + 1)))
18087oveq2d 7151 . . . . . . . . 9 (𝜑 → (0..^(♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩))) = (0..^(𝐸 + 1)))
181179, 180eleqtrrd 2893 . . . . . . . 8 (𝜑 → 0 ∈ (0..^(♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩))))
182 ccatval1 13921 . . . . . . . 8 ((((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ∈ Word 𝐷 ∧ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩) ∈ Word 𝐷 ∧ 0 ∈ (0..^(♯‘((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)))) → ((((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))‘0) = (((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)‘0))
18353, 56, 181, 182syl3anc 1368 . . . . . . 7 (𝜑 → ((((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))‘0) = (((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)‘0))
184 nn0p1nn 11924 . . . . . . . . . . . 12 ((𝑊𝐽) ∈ ℕ0 → ((𝑊𝐽) + 1) ∈ ℕ)
185129, 184syl 17 . . . . . . . . . . 11 (𝜑 → ((𝑊𝐽) + 1) ∈ ℕ)
1867, 185eqeltrid 2894 . . . . . . . . . 10 (𝜑𝐸 ∈ ℕ)
187 lbfzo0 13072 . . . . . . . . . 10 (0 ∈ (0..^𝐸) ↔ 𝐸 ∈ ℕ)
188186, 187sylibr 237 . . . . . . . . 9 (𝜑 → 0 ∈ (0..^𝐸))
18985oveq2d 7151 . . . . . . . . 9 (𝜑 → (0..^(♯‘(𝑊 prefix 𝐸))) = (0..^𝐸))
190188, 189eleqtrrd 2893 . . . . . . . 8 (𝜑 → 0 ∈ (0..^(♯‘(𝑊 prefix 𝐸))))
191 ccatval1 13921 . . . . . . . 8 (((𝑊 prefix 𝐸) ∈ Word 𝐷 ∧ ⟨“𝐼”⟩ ∈ Word 𝐷 ∧ 0 ∈ (0..^(♯‘(𝑊 prefix 𝐸)))) → (((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)‘0) = ((𝑊 prefix 𝐸)‘0))
19251, 19, 190, 191syl3anc 1368 . . . . . . 7 (𝜑 → (((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩)‘0) = ((𝑊 prefix 𝐸)‘0))
193 fzne1 30537 . . . . . . . . . 10 ((𝐸 ∈ (0...(♯‘𝑊)) ∧ 𝐸 ≠ 0) → 𝐸 ∈ ((0 + 1)...(♯‘𝑊)))
19483, 137, 193syl2anc 587 . . . . . . . . 9 (𝜑𝐸 ∈ ((0 + 1)...(♯‘𝑊)))
195 0p1e1 11747 . . . . . . . . . 10 (0 + 1) = 1
196195oveq1i 7145 . . . . . . . . 9 ((0 + 1)...(♯‘𝑊)) = (1...(♯‘𝑊))
197194, 196eleqtrdi 2900 . . . . . . . 8 (𝜑𝐸 ∈ (1...(♯‘𝑊)))
198 pfxfv0 14045 . . . . . . . 8 ((𝑊 ∈ Word 𝐷𝐸 ∈ (1...(♯‘𝑊))) → ((𝑊 prefix 𝐸)‘0) = (𝑊‘0))
19917, 197, 198syl2anc 587 . . . . . . 7 (𝜑 → ((𝑊 prefix 𝐸)‘0) = (𝑊‘0))
200183, 192, 1993eqtrd 2837 . . . . . 6 (𝜑 → ((((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))‘0) = (𝑊‘0))
201200adantr 484 . . . . 5 ((𝜑𝐸 = (♯‘𝑊)) → ((((𝑊 prefix 𝐸) ++ ⟨“𝐼”⟩) ++ (𝑊 substr ⟨𝐸, (♯‘𝑊)⟩))‘0) = (𝑊‘0))
202173, 175, 2013eqtrd 2837 . . . 4 ((𝜑𝐸 = (♯‘𝑊)) → ((𝑀𝑈)‘(𝑈𝐸)) = (𝑊‘0))
20333adantr 484 . . . 4 ((𝜑𝐸 = (♯‘𝑊)) → ((𝑀𝑈)‘(𝑈𝐸)) = ((𝑀𝑈)‘𝐼))
204164, 202, 2033eqtr2d 2839 . . 3 ((𝜑𝐸 = (♯‘𝑊)) → ((𝑀𝑊)‘𝐽) = ((𝑀𝑈)‘𝐼))
205 elfzr 13145 . . . 4 (𝐸 ∈ (0...(♯‘𝑊)) → (𝐸 ∈ (0..^(♯‘𝑊)) ∨ 𝐸 = (♯‘𝑊)))
20683, 205syl 17 . . 3 (𝜑 → (𝐸 ∈ (0..^(♯‘𝑊)) ∨ 𝐸 = (♯‘𝑊)))
207153, 204, 206mpjaodan 956 . 2 (𝜑 → ((𝑀𝑊)‘𝐽) = ((𝑀𝑈)‘𝐼))
2089, 207eqtrd 2833 1 (𝜑 → ((𝑀𝑊)‘((𝑀‘⟨“𝐼𝐽”⟩)‘𝐼)) = ((𝑀𝑈)‘𝐼))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 399  wo 844   = wceq 1538  wcel 2111  wne 2987  {crab 3110  Vcvv 3441  cdif 3878  cop 4531  cotp 4533   class class class wbr 5030  ccnv 5518  dom cdm 5519  ran crn 5520  wf 6320  1-1wf1 6321  1-1-ontowf1o 6323  cfv 6324  (class class class)co 7135  0cc0 10526  1c1 10527   + caddc 10529   < clt 10664  cmin 10859  cn 11625  0cn0 11885  cz 11969  ...cfz 12885  ..^cfzo 13028  chash 13686  Word cword 13857   ++ cconcat 13913  ⟨“cs1 13940   substr csubstr 13993   prefix cpfx 14023   splice csplice 14102  ⟨“cs2 14194  Basecbs 16475  SymGrpcsymg 18487  toCycctocyc 30798
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2113  ax-9 2121  ax-10 2142  ax-11 2158  ax-12 2175  ax-ext 2770  ax-rep 5154  ax-sep 5167  ax-nul 5174  ax-pow 5231  ax-pr 5295  ax-un 7441  ax-cnex 10582  ax-resscn 10583  ax-1cn 10584  ax-icn 10585  ax-addcl 10586  ax-addrcl 10587  ax-mulcl 10588  ax-mulrcl 10589  ax-mulcom 10590  ax-addass 10591  ax-mulass 10592  ax-distr 10593  ax-i2m1 10594  ax-1ne0 10595  ax-1rid 10596  ax-rnegex 10597  ax-rrecex 10598  ax-cnre 10599  ax-pre-lttri 10600  ax-pre-lttrn 10601  ax-pre-ltadd 10602  ax-pre-mulgt0 10603  ax-pre-sup 10604
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2598  df-eu 2629  df-clab 2777  df-cleq 2791  df-clel 2870  df-nfc 2938  df-ne 2988  df-nel 3092  df-ral 3111  df-rex 3112  df-reu 3113  df-rmo 3114  df-rab 3115  df-v 3443  df-sbc 3721  df-csb 3829  df-dif 3884  df-un 3886  df-in 3888  df-ss 3898  df-pss 3900  df-nul 4244  df-if 4426  df-pw 4499  df-sn 4526  df-pr 4528  df-tp 4530  df-op 4532  df-ot 4534  df-uni 4801  df-int 4839  df-iun 4883  df-br 5031  df-opab 5093  df-mpt 5111  df-tr 5137  df-id 5425  df-eprel 5430  df-po 5438  df-so 5439  df-fr 5478  df-we 5480  df-xp 5525  df-rel 5526  df-cnv 5527  df-co 5528  df-dm 5529  df-rn 5530  df-res 5531  df-ima 5532  df-pred 6116  df-ord 6162  df-on 6163  df-lim 6164  df-suc 6165  df-iota 6283  df-fun 6326  df-fn 6327  df-f 6328  df-f1 6329  df-fo 6330  df-f1o 6331  df-fv 6332  df-riota 7093  df-ov 7138  df-oprab 7139  df-mpo 7140  df-om 7561  df-1st 7671  df-2nd 7672  df-wrecs 7930  df-recs 7991  df-rdg 8029  df-1o 8085  df-oadd 8089  df-er 8272  df-map 8391  df-en 8493  df-dom 8494  df-sdom 8495  df-fin 8496  df-sup 8890  df-inf 8891  df-card 9352  df-pnf 10666  df-mnf 10667  df-xr 10668  df-ltxr 10669  df-le 10670  df-sub 10861  df-neg 10862  df-div 11287  df-nn 11626  df-2 11688  df-3 11689  df-4 11690  df-5 11691  df-6 11692  df-7 11693  df-8 11694  df-9 11695  df-n0 11886  df-z 11970  df-uz 12232  df-rp 12378  df-fz 12886  df-fzo 13029  df-fl 13157  df-mod 13233  df-hash 13687  df-word 13858  df-concat 13914  df-s1 13941  df-substr 13994  df-pfx 14024  df-splice 14103  df-csh 14142  df-s2 14201  df-struct 16477  df-ndx 16478  df-slot 16479  df-base 16481  df-sets 16482  df-ress 16483  df-plusg 16570  df-tset 16576  df-efmnd 18026  df-symg 18488  df-tocyc 30799
This theorem is referenced by:  cycpmco2  30825
  Copyright terms: Public domain W3C validator