Metamath Proof Explorer


Theorem frgpnabllem1

Description: Lemma for frgpnabl . (Contributed by Mario Carneiro, 21-Apr-2016) (Revised by AV, 25-Apr-2024)

Ref Expression
Hypotheses frgpnabl.g G = freeGrp I
frgpnabl.w W = I Word I × 2 𝑜
frgpnabl.r ˙ = ~ FG I
frgpnabl.p + ˙ = + G
frgpnabl.m M = y I , z 2 𝑜 y 1 𝑜 z
frgpnabl.t T = v W n 0 v , w I × 2 𝑜 v splice n n ⟨“ w M w ”⟩
frgpnabl.d D = W x W ran T x
frgpnabl.u U = var FGrp I
frgpnabl.i φ I V
frgpnabl.a φ A I
frgpnabl.b φ B I
Assertion frgpnabllem1 φ ⟨“ A B ”⟩ D U A + ˙ U B

Proof

Step Hyp Ref Expression
1 frgpnabl.g G = freeGrp I
2 frgpnabl.w W = I Word I × 2 𝑜
3 frgpnabl.r ˙ = ~ FG I
4 frgpnabl.p + ˙ = + G
5 frgpnabl.m M = y I , z 2 𝑜 y 1 𝑜 z
6 frgpnabl.t T = v W n 0 v , w I × 2 𝑜 v splice n n ⟨“ w M w ”⟩
7 frgpnabl.d D = W x W ran T x
8 frgpnabl.u U = var FGrp I
9 frgpnabl.i φ I V
10 frgpnabl.a φ A I
11 frgpnabl.b φ B I
12 0ex V
13 12 prid1 1 𝑜
14 df2o3 2 𝑜 = 1 𝑜
15 13 14 eleqtrri 2 𝑜
16 opelxpi A I 2 𝑜 A I × 2 𝑜
17 10 15 16 sylancl φ A I × 2 𝑜
18 opelxpi B I 2 𝑜 B I × 2 𝑜
19 11 15 18 sylancl φ B I × 2 𝑜
20 17 19 s2cld φ ⟨“ A B ”⟩ Word I × 2 𝑜
21 2on 2 𝑜 On
22 xpexg I V 2 𝑜 On I × 2 𝑜 V
23 9 21 22 sylancl φ I × 2 𝑜 V
24 wrdexg I × 2 𝑜 V Word I × 2 𝑜 V
25 fvi Word I × 2 𝑜 V I Word I × 2 𝑜 = Word I × 2 𝑜
26 23 24 25 3syl φ I Word I × 2 𝑜 = Word I × 2 𝑜
27 2 26 eqtrid φ W = Word I × 2 𝑜
28 20 27 eleqtrrd φ ⟨“ A B ”⟩ W
29 1n0 1 𝑜
30 2cn 2
31 30 addid2i 0 + 2 = 2
32 s2len ⟨“ A B ”⟩ = 2
33 31 32 eqtr4i 0 + 2 = ⟨“ A B ”⟩
34 2 3 5 6 efgtlen x W ⟨“ A B ”⟩ ran T x ⟨“ A B ”⟩ = x + 2
35 34 adantll φ x W ⟨“ A B ”⟩ ran T x ⟨“ A B ”⟩ = x + 2
36 33 35 eqtrid φ x W ⟨“ A B ”⟩ ran T x 0 + 2 = x + 2
37 36 ex φ x W ⟨“ A B ”⟩ ran T x 0 + 2 = x + 2
38 0cnd φ x W 0
39 simpr φ x W x W
40 2 efgrcl x W I V W = Word I × 2 𝑜
41 40 simprd x W W = Word I × 2 𝑜
42 41 adantl φ x W W = Word I × 2 𝑜
43 39 42 eleqtrd φ x W x Word I × 2 𝑜
44 lencl x Word I × 2 𝑜 x 0
45 43 44 syl φ x W x 0
46 45 nn0cnd φ x W x
47 2cnd φ x W 2
48 38 46 47 addcan2d φ x W 0 + 2 = x + 2 0 = x
49 37 48 sylibd φ x W ⟨“ A B ”⟩ ran T x 0 = x
50 2 3 5 6 efgtf W T = a 0 , b I × 2 𝑜 splice a a ⟨“ b M b ”⟩ T : 0 × I × 2 𝑜 W
51 50 adantl φ W T = a 0 , b I × 2 𝑜 splice a a ⟨“ b M b ”⟩ T : 0 × I × 2 𝑜 W
52 51 simpld φ W T = a 0 , b I × 2 𝑜 splice a a ⟨“ b M b ”⟩
53 52 rneqd φ W ran T = ran a 0 , b I × 2 𝑜 splice a a ⟨“ b M b ”⟩
54 53 eleq2d φ W ⟨“ A B ”⟩ ran T ⟨“ A B ”⟩ ran a 0 , b I × 2 𝑜 splice a a ⟨“ b M b ”⟩
55 eqid a 0 , b I × 2 𝑜 splice a a ⟨“ b M b ”⟩ = a 0 , b I × 2 𝑜 splice a a ⟨“ b M b ”⟩
56 ovex splice a a ⟨“ b M b ”⟩ V
57 55 56 elrnmpo ⟨“ A B ”⟩ ran a 0 , b I × 2 𝑜 splice a a ⟨“ b M b ”⟩ a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = splice a a ⟨“ b M b ”⟩
58 wrd0 Word I × 2 𝑜
59 58 a1i φ W a 0 b I × 2 𝑜 Word I × 2 𝑜
60 simprr φ W a 0 b I × 2 𝑜 b I × 2 𝑜
61 5 efgmf M : I × 2 𝑜 I × 2 𝑜
62 61 ffvelrni b I × 2 𝑜 M b I × 2 𝑜
63 60 62 syl φ W a 0 b I × 2 𝑜 M b I × 2 𝑜
64 60 63 s2cld φ W a 0 b I × 2 𝑜 ⟨“ b M b ”⟩ Word I × 2 𝑜
65 ccatidid ++ =
66 65 oveq1i ++ ++ = ++
67 66 65 eqtr2i = ++ ++
68 67 a1i φ W a 0 b I × 2 𝑜 = ++ ++
69 simprl φ W a 0 b I × 2 𝑜 a 0
70 hash0 = 0
71 70 oveq2i 0 = 0 0
72 69 71 eleqtrdi φ W a 0 b I × 2 𝑜 a 0 0
73 elfz1eq a 0 0 a = 0
74 72 73 syl φ W a 0 b I × 2 𝑜 a = 0
75 74 70 eqtr4di φ W a 0 b I × 2 𝑜 a =
76 70 oveq2i a + = a + 0
77 0cn 0
78 74 77 eqeltrdi φ W a 0 b I × 2 𝑜 a
79 78 addid1d φ W a 0 b I × 2 𝑜 a + 0 = a
80 76 79 eqtr2id φ W a 0 b I × 2 𝑜 a = a +
81 59 59 59 64 68 75 80 splval2 φ W a 0 b I × 2 𝑜 splice a a ⟨“ b M b ”⟩ = ++ ⟨“ b M b ”⟩ ++
82 ccatlid ⟨“ b M b ”⟩ Word I × 2 𝑜 ++ ⟨“ b M b ”⟩ = ⟨“ b M b ”⟩
83 82 oveq1d ⟨“ b M b ”⟩ Word I × 2 𝑜 ++ ⟨“ b M b ”⟩ ++ = ⟨“ b M b ”⟩ ++
84 ccatrid ⟨“ b M b ”⟩ Word I × 2 𝑜 ⟨“ b M b ”⟩ ++ = ⟨“ b M b ”⟩
85 83 84 eqtrd ⟨“ b M b ”⟩ Word I × 2 𝑜 ++ ⟨“ b M b ”⟩ ++ = ⟨“ b M b ”⟩
86 64 85 syl φ W a 0 b I × 2 𝑜 ++ ⟨“ b M b ”⟩ ++ = ⟨“ b M b ”⟩
87 81 86 eqtrd φ W a 0 b I × 2 𝑜 splice a a ⟨“ b M b ”⟩ = ⟨“ b M b ”⟩
88 87 eqeq2d φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = splice a a ⟨“ b M b ”⟩ ⟨“ A B ”⟩ = ⟨“ b M b ”⟩
89 10 ad3antrrr φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = ⟨“ b M b ”⟩ A I
90 1on 1 𝑜 On
91 90 a1i φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = ⟨“ b M b ”⟩ 1 𝑜 On
92 simpr φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = ⟨“ b M b ”⟩ ⟨“ A B ”⟩ = ⟨“ b M b ”⟩
93 92 fveq1d φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = ⟨“ b M b ”⟩ ⟨“ A B ”⟩ 1 = ⟨“ b M b ”⟩ 1
94 opex B V
95 s2fv1 B V ⟨“ A B ”⟩ 1 = B
96 94 95 ax-mp ⟨“ A B ”⟩ 1 = B
97 fvex M b V
98 s2fv1 M b V ⟨“ b M b ”⟩ 1 = M b
99 97 98 ax-mp ⟨“ b M b ”⟩ 1 = M b
100 93 96 99 3eqtr3g φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = ⟨“ b M b ”⟩ B = M b
101 92 fveq1d φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = ⟨“ b M b ”⟩ ⟨“ A B ”⟩ 0 = ⟨“ b M b ”⟩ 0
102 opex A V
103 s2fv0 A V ⟨“ A B ”⟩ 0 = A
104 102 103 ax-mp ⟨“ A B ”⟩ 0 = A
105 s2fv0 b V ⟨“ b M b ”⟩ 0 = b
106 105 elv ⟨“ b M b ”⟩ 0 = b
107 101 104 106 3eqtr3g φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = ⟨“ b M b ”⟩ A = b
108 107 fveq2d φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = ⟨“ b M b ”⟩ M A = M b
109 5 efgmval A I 2 𝑜 A M = A 1 𝑜
110 89 15 109 sylancl φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = ⟨“ b M b ”⟩ A M = A 1 𝑜
111 df-ov A M = M A
112 dif0 1 𝑜 = 1 𝑜
113 112 opeq2i A 1 𝑜 = A 1 𝑜
114 110 111 113 3eqtr3g φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = ⟨“ b M b ”⟩ M A = A 1 𝑜
115 100 108 114 3eqtr2rd φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = ⟨“ b M b ”⟩ A 1 𝑜 = B
116 opthg A I 1 𝑜 On A 1 𝑜 = B A = B 1 𝑜 =
117 116 simplbda A I 1 𝑜 On A 1 𝑜 = B 1 𝑜 =
118 89 91 115 117 syl21anc φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = ⟨“ b M b ”⟩ 1 𝑜 =
119 118 ex φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = ⟨“ b M b ”⟩ 1 𝑜 =
120 88 119 sylbid φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = splice a a ⟨“ b M b ”⟩ 1 𝑜 =
121 120 rexlimdvva φ W a 0 b I × 2 𝑜 ⟨“ A B ”⟩ = splice a a ⟨“ b M b ”⟩ 1 𝑜 =
122 57 121 syl5bi φ W ⟨“ A B ”⟩ ran a 0 , b I × 2 𝑜 splice a a ⟨“ b M b ”⟩ 1 𝑜 =
123 54 122 sylbid φ W ⟨“ A B ”⟩ ran T 1 𝑜 =
124 123 expimpd φ W ⟨“ A B ”⟩ ran T 1 𝑜 =
125 hasheq0 x V x = 0 x =
126 125 elv x = 0 x =
127 eleq1 x = x W W
128 fveq2 x = T x = T
129 128 rneqd x = ran T x = ran T
130 129 eleq2d x = ⟨“ A B ”⟩ ran T x ⟨“ A B ”⟩ ran T
131 127 130 anbi12d x = x W ⟨“ A B ”⟩ ran T x W ⟨“ A B ”⟩ ran T
132 126 131 sylbi x = 0 x W ⟨“ A B ”⟩ ran T x W ⟨“ A B ”⟩ ran T
133 132 eqcoms 0 = x x W ⟨“ A B ”⟩ ran T x W ⟨“ A B ”⟩ ran T
134 133 imbi1d 0 = x x W ⟨“ A B ”⟩ ran T x 1 𝑜 = W ⟨“ A B ”⟩ ran T 1 𝑜 =
135 124 134 syl5ibrcom φ 0 = x x W ⟨“ A B ”⟩ ran T x 1 𝑜 =
136 135 com23 φ x W ⟨“ A B ”⟩ ran T x 0 = x 1 𝑜 =
137 136 expdimp φ x W ⟨“ A B ”⟩ ran T x 0 = x 1 𝑜 =
138 49 137 mpdd φ x W ⟨“ A B ”⟩ ran T x 1 𝑜 =
139 138 necon3ad φ x W 1 𝑜 ¬ ⟨“ A B ”⟩ ran T x
140 29 139 mpi φ x W ¬ ⟨“ A B ”⟩ ran T x
141 140 nrexdv φ ¬ x W ⟨“ A B ”⟩ ran T x
142 eliun ⟨“ A B ”⟩ x W ran T x x W ⟨“ A B ”⟩ ran T x
143 141 142 sylnibr φ ¬ ⟨“ A B ”⟩ x W ran T x
144 28 143 eldifd φ ⟨“ A B ”⟩ W x W ran T x
145 144 7 eleqtrrdi φ ⟨“ A B ”⟩ D
146 df-s2 ⟨“ A B ”⟩ = ⟨“ A ”⟩ ++ ⟨“ B ”⟩
147 2 3 efger ˙ Er W
148 147 a1i φ ˙ Er W
149 148 28 erref φ ⟨“ A B ”⟩ ˙ ⟨“ A B ”⟩
150 146 149 eqbrtrrid φ ⟨“ A ”⟩ ++ ⟨“ B ”⟩ ˙ ⟨“ A B ”⟩
151 146 ovexi ⟨“ A B ”⟩ V
152 ovex ⟨“ A ”⟩ ++ ⟨“ B ”⟩ V
153 151 152 elec ⟨“ A B ”⟩ ⟨“ A ”⟩ ++ ⟨“ B ”⟩ ˙ ⟨“ A ”⟩ ++ ⟨“ B ”⟩ ˙ ⟨“ A B ”⟩
154 150 153 sylibr φ ⟨“ A B ”⟩ ⟨“ A ”⟩ ++ ⟨“ B ”⟩ ˙
155 3 8 vrgpval I V A I U A = ⟨“ A ”⟩ ˙
156 9 10 155 syl2anc φ U A = ⟨“ A ”⟩ ˙
157 3 8 vrgpval I V B I U B = ⟨“ B ”⟩ ˙
158 9 11 157 syl2anc φ U B = ⟨“ B ”⟩ ˙
159 156 158 oveq12d φ U A + ˙ U B = ⟨“ A ”⟩ ˙ + ˙ ⟨“ B ”⟩ ˙
160 17 s1cld φ ⟨“ A ”⟩ Word I × 2 𝑜
161 160 27 eleqtrrd φ ⟨“ A ”⟩ W
162 19 s1cld φ ⟨“ B ”⟩ Word I × 2 𝑜
163 162 27 eleqtrrd φ ⟨“ B ”⟩ W
164 2 1 3 4 frgpadd ⟨“ A ”⟩ W ⟨“ B ”⟩ W ⟨“ A ”⟩ ˙ + ˙ ⟨“ B ”⟩ ˙ = ⟨“ A ”⟩ ++ ⟨“ B ”⟩ ˙
165 161 163 164 syl2anc φ ⟨“ A ”⟩ ˙ + ˙ ⟨“ B ”⟩ ˙ = ⟨“ A ”⟩ ++ ⟨“ B ”⟩ ˙
166 159 165 eqtrd φ U A + ˙ U B = ⟨“ A ”⟩ ++ ⟨“ B ”⟩ ˙
167 154 166 eleqtrrd φ ⟨“ A B ”⟩ U A + ˙ U B
168 145 167 elind φ ⟨“ A B ”⟩ D U A + ˙ U B