Metamath Proof Explorer


Theorem cycpmco2f1

Description: The word U used in cycpmco2 is injective, so it can represent a cycle and form a cyclic permutation ( MU ) . (Contributed by Thierry Arnoux, 4-Jan-2024)

Ref Expression
Hypotheses cycpmco2.c ⊢ M = toCyc ⁡ D
cycpmco2.s ⊢ S = SymGrp ⁡ D
cycpmco2.d ⊢ φ → D ∈ V
cycpmco2.w ⊢ φ → W ∈ dom ⁡ M
cycpmco2.i ⊢ φ → I ∈ D ∖ ran ⁡ W
cycpmco2.j ⊢ φ → J ∈ ran ⁡ W
cycpmco2.e ⊢ E = W -1 ⁡ J + 1
cycpmco2.1 ⊢ U = W splice E E ⟨“ I ”⟩
Assertion cycpmco2f1 ⊢ φ → U : dom ⁡ U ⟶ 1-1 D

Proof

Step Hyp Ref Expression
1 cycpmco2.c ⊢ M = toCyc ⁡ D
2 cycpmco2.s ⊢ S = SymGrp ⁡ D
3 cycpmco2.d ⊢ φ → D ∈ V
4 cycpmco2.w ⊢ φ → W ∈ dom ⁡ M
5 cycpmco2.i ⊢ φ → I ∈ D ∖ ran ⁡ W
6 cycpmco2.j ⊢ φ → J ∈ ran ⁡ W
7 cycpmco2.e ⊢ E = W -1 ⁡ J + 1
8 cycpmco2.1 ⊢ U = W splice E E ⟨“ I ”⟩
9 ssrab2 ⊢ w ∈ Word D | w : dom ⁡ w ⟶ 1-1 D ⊆ Word D
10 eqid ⊢ Base S = Base S
11 1 2 10 tocycf ⊢ D ∈ V → M : w ∈ Word D | w : dom ⁡ w ⟶ 1-1 D ⟶ Base S
12 3 11 syl ⊢ φ → M : w ∈ Word D | w : dom ⁡ w ⟶ 1-1 D ⟶ Base S
13 12 fdmd ⊢ φ → dom ⁡ M = w ∈ Word D | w : dom ⁡ w ⟶ 1-1 D
14 4 13 eleqtrd ⊢ φ → W ∈ w ∈ Word D | w : dom ⁡ w ⟶ 1-1 D
15 9 14 sselid ⊢ φ → W ∈ Word D
16 pfxcl ⊢ W ∈ Word D → W prefix E ∈ Word D
17 15 16 syl ⊢ φ → W prefix E ∈ Word D
18 5 eldifad ⊢ φ → I ∈ D
19 18 s1cld ⊢ φ → ⟨“ I ”⟩ ∈ Word D
20 ccatcl ⊢ W prefix E ∈ Word D ∧ ⟨“ I ”⟩ ∈ Word D → W prefix E ++ ⟨“ I ”⟩ ∈ Word D
21 17 19 20 syl2anc ⊢ φ → W prefix E ++ ⟨“ I ”⟩ ∈ Word D
22 swrdcl ⊢ W ∈ Word D → W substr E W ∈ Word D
23 15 22 syl ⊢ φ → W substr E W ∈ Word D
24 id ⊢ w = W → w = W
25 dmeq ⊢ w = W → dom ⁡ w = dom ⁡ W
26 eqidd ⊢ w = W → D = D
27 24 25 26 f1eq123d ⊢ w = W → w : dom ⁡ w ⟶ 1-1 D ↔ W : dom ⁡ W ⟶ 1-1 D
28 27 elrab ⊢ W ∈ w ∈ Word D | w : dom ⁡ w ⟶ 1-1 D ↔ W ∈ Word D ∧ W : dom ⁡ W ⟶ 1-1 D
29 14 28 sylib ⊢ φ → W ∈ Word D ∧ W : dom ⁡ W ⟶ 1-1 D
30 29 simprd ⊢ φ → W : dom ⁡ W ⟶ 1-1 D
31 f1cnv ⊢ W : dom ⁡ W ⟶ 1-1 D → W -1 : ran ⁡ W ⟶ 1-1 onto dom ⁡ W
32 f1of ⊢ W -1 : ran ⁡ W ⟶ 1-1 onto dom ⁡ W → W -1 : ran ⁡ W ⟶ dom ⁡ W
33 30 31 32 3syl ⊢ φ → W -1 : ran ⁡ W ⟶ dom ⁡ W
34 33 6 ffvelcdmd ⊢ φ → W -1 ⁡ J ∈ dom ⁡ W
35 wrddm ⊢ W ∈ Word D → dom ⁡ W = 0 ..^ W
36 15 35 syl ⊢ φ → dom ⁡ W = 0 ..^ W
37 34 36 eleqtrd ⊢ φ → W -1 ⁡ J ∈ 0 ..^ W
38 fzofzp1 ⊢ W -1 ⁡ J ∈ 0 ..^ W → W -1 ⁡ J + 1 ∈ 0 … W
39 37 38 syl ⊢ φ → W -1 ⁡ J + 1 ∈ 0 … W
40 7 39 eqeltrid ⊢ φ → E ∈ 0 … W
41 15 30 40 pfxf1 ⊢ φ → W prefix E : dom ⁡ W prefix E ⟶ 1-1 D
42 18 s1f1 ⊢ φ → ⟨“ I ”⟩ : dom ⁡ ⟨“ I ”⟩ ⟶ 1-1 D
43 s1rn ⊢ I ∈ D → ran ⁡ ⟨“ I ”⟩ = I
44 18 43 syl ⊢ φ → ran ⁡ ⟨“ I ”⟩ = I
45 44 ineq2d ⊢ φ → ran ⁡ W prefix E ∩ ran ⁡ ⟨“ I ”⟩ = ran ⁡ W prefix E ∩ I
46 pfxrn2 ⊢ W ∈ Word D ∧ E ∈ 0 … W → ran ⁡ W prefix E ⊆ ran ⁡ W
47 15 40 46 syl2anc ⊢ φ → ran ⁡ W prefix E ⊆ ran ⁡ W
48 47 ssrind ⊢ φ → ran ⁡ W prefix E ∩ I ⊆ ran ⁡ W ∩ I
49 5 eldifbd ⊢ φ → ¬ I ∈ ran ⁡ W
50 disjsn ⊢ ran ⁡ W ∩ I = ∅ ↔ ¬ I ∈ ran ⁡ W
51 49 50 sylibr ⊢ φ → ran ⁡ W ∩ I = ∅
52 48 51 sseqtrd ⊢ φ → ran ⁡ W prefix E ∩ I ⊆ ∅
53 ss0 ⊢ ran ⁡ W prefix E ∩ I ⊆ ∅ → ran ⁡ W prefix E ∩ I = ∅
54 52 53 syl ⊢ φ → ran ⁡ W prefix E ∩ I = ∅
55 45 54 eqtrd ⊢ φ → ran ⁡ W prefix E ∩ ran ⁡ ⟨“ I ”⟩ = ∅
56 3 17 19 41 42 55 ccatf1 ⊢ φ → W prefix E ++ ⟨“ I ”⟩ : dom ⁡ W prefix E ++ ⟨“ I ”⟩ ⟶ 1-1 D
57 lencl ⊢ W ∈ Word D → W ∈ ℕ 0
58 nn0fz0 ⊢ W ∈ ℕ 0 ↔ W ∈ 0 … W
59 58 biimpi ⊢ W ∈ ℕ 0 → W ∈ 0 … W
60 15 57 59 3syl ⊢ φ → W ∈ 0 … W
61 15 40 60 30 swrdf1 ⊢ φ → W substr E W : dom ⁡ W substr E W ⟶ 1-1 D
62 ccatrn ⊢ W prefix E ∈ Word D ∧ ⟨“ I ”⟩ ∈ Word D → ran ⁡ W prefix E ++ ⟨“ I ”⟩ = ran ⁡ W prefix E ∪ ran ⁡ ⟨“ I ”⟩
63 17 19 62 syl2anc ⊢ φ → ran ⁡ W prefix E ++ ⟨“ I ”⟩ = ran ⁡ W prefix E ∪ ran ⁡ ⟨“ I ”⟩
64 63 ineq1d ⊢ φ → ran ⁡ W prefix E ++ ⟨“ I ”⟩ ∩ ran ⁡ W substr E W = ran ⁡ W prefix E ∪ ran ⁡ ⟨“ I ”⟩ ∩ ran ⁡ W substr E W
65 indir ⊢ ran ⁡ W prefix E ∪ ran ⁡ ⟨“ I ”⟩ ∩ ran ⁡ W substr E W = ran ⁡ W prefix E ∩ ran ⁡ W substr E W ∪ ran ⁡ ⟨“ I ”⟩ ∩ ran ⁡ W substr E W
66 64 65 eqtrdi ⊢ φ → ran ⁡ W prefix E ++ ⟨“ I ”⟩ ∩ ran ⁡ W substr E W = ran ⁡ W prefix E ∩ ran ⁡ W substr E W ∪ ran ⁡ ⟨“ I ”⟩ ∩ ran ⁡ W substr E W
67 fz0ssnn0 ⊢ 0 … W ⊆ ℕ 0
68 67 40 sselid ⊢ φ → E ∈ ℕ 0
69 pfxval ⊢ W ∈ Word D ∧ E ∈ ℕ 0 → W prefix E = W substr 0 E
70 15 68 69 syl2anc ⊢ φ → W prefix E = W substr 0 E
71 70 rneqd ⊢ φ → ran ⁡ W prefix E = ran ⁡ W substr 0 E
72 71 ineq1d ⊢ φ → ran ⁡ W prefix E ∩ ran ⁡ W substr E W = ran ⁡ W substr 0 E ∩ ran ⁡ W substr E W
73 0elfz ⊢ E ∈ ℕ 0 → 0 ∈ 0 … E
74 68 73 syl ⊢ φ → 0 ∈ 0 … E
75 elfzuz3 ⊢ E ∈ 0 … W → W ∈ ℤ ≥ E
76 eluzfz1 ⊢ W ∈ ℤ ≥ E → E ∈ E … W
77 40 75 76 3syl ⊢ φ → E ∈ E … W
78 eluzfz2 ⊢ W ∈ ℤ ≥ E → W ∈ E … W
79 40 75 78 3syl ⊢ φ → W ∈ E … W
80 15 74 40 30 77 79 swrdrndisj ⊢ φ → ran ⁡ W substr 0 E ∩ ran ⁡ W substr E W = ∅
81 72 80 eqtrd ⊢ φ → ran ⁡ W prefix E ∩ ran ⁡ W substr E W = ∅
82 incom ⊢ ran ⁡ ⟨“ I ”⟩ ∩ ran ⁡ W substr E W = ran ⁡ W substr E W ∩ ran ⁡ ⟨“ I ”⟩
83 44 ineq2d ⊢ φ → ran ⁡ W substr E W ∩ ran ⁡ ⟨“ I ”⟩ = ran ⁡ W substr E W ∩ I
84 swrdrn2 ⊢ W ∈ Word D ∧ E ∈ 0 … W ∧ W ∈ 0 … W → ran ⁡ W substr E W ⊆ ran ⁡ W
85 15 40 60 84 syl3anc ⊢ φ → ran ⁡ W substr E W ⊆ ran ⁡ W
86 85 ssrind ⊢ φ → ran ⁡ W substr E W ∩ I ⊆ ran ⁡ W ∩ I
87 86 51 sseqtrd ⊢ φ → ran ⁡ W substr E W ∩ I ⊆ ∅
88 ss0 ⊢ ran ⁡ W substr E W ∩ I ⊆ ∅ → ran ⁡ W substr E W ∩ I = ∅
89 87 88 syl ⊢ φ → ran ⁡ W substr E W ∩ I = ∅
90 83 89 eqtrd ⊢ φ → ran ⁡ W substr E W ∩ ran ⁡ ⟨“ I ”⟩ = ∅
91 82 90 eqtrid ⊢ φ → ran ⁡ ⟨“ I ”⟩ ∩ ran ⁡ W substr E W = ∅
92 81 91 uneq12d ⊢ φ → ran ⁡ W prefix E ∩ ran ⁡ W substr E W ∪ ran ⁡ ⟨“ I ”⟩ ∩ ran ⁡ W substr E W = ∅ ∪ ∅
93 unidm ⊢ ∅ ∪ ∅ = ∅
94 93 a1i ⊢ φ → ∅ ∪ ∅ = ∅
95 66 92 94 3eqtrd ⊢ φ → ran ⁡ W prefix E ++ ⟨“ I ”⟩ ∩ ran ⁡ W substr E W = ∅
96 3 21 23 56 61 95 ccatf1 ⊢ φ → W prefix E ++ ⟨“ I ”⟩ ++ W substr E W : dom ⁡ W prefix E ++ ⟨“ I ”⟩ ++ W substr E W ⟶ 1-1 D
97 ovexd ⊢ φ → W -1 ⁡ J + 1 ∈ V
98 7 97 eqeltrid ⊢ φ → E ∈ V
99 splval ⊢ W ∈ dom ⁡ M ∧ E ∈ V ∧ E ∈ V ∧ ⟨“ I ”⟩ ∈ Word D → W splice E E ⟨“ I ”⟩ = W prefix E ++ ⟨“ I ”⟩ ++ W substr E W
100 4 98 98 19 99 syl13anc ⊢ φ → W splice E E ⟨“ I ”⟩ = W prefix E ++ ⟨“ I ”⟩ ++ W substr E W
101 8 100 eqtrid ⊢ φ → U = W prefix E ++ ⟨“ I ”⟩ ++ W substr E W
102 101 dmeqd ⊢ φ → dom ⁡ U = dom ⁡ W prefix E ++ ⟨“ I ”⟩ ++ W substr E W
103 eqidd ⊢ φ → D = D
104 101 102 103 f1eq123d ⊢ φ → U : dom ⁡ U ⟶ 1-1 D ↔ W prefix E ++ ⟨“ I ”⟩ ++ W substr E W : dom ⁡ W prefix E ++ ⟨“ I ”⟩ ++ W substr E W ⟶ 1-1 D
105 96 104 mpbird ⊢ φ → U : dom ⁡ U ⟶ 1-1 D