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=freeGrpI
frgpnabl.w W=IWordI×2𝑜
frgpnabl.r ˙=~FGI
frgpnabl.p +˙=+G
frgpnabl.m M=yI,z2𝑜y1𝑜z
frgpnabl.t T=vWn0v,wI×2𝑜vsplicenn⟨“wMw”⟩
frgpnabl.d D=WxWranTx
frgpnabl.u U=varFGrpI
frgpnabl.i φIV
frgpnabl.a φAI
frgpnabl.b φBI
Assertion frgpnabllem1 φ⟨“AB”⟩DUA+˙UB

Proof

Step Hyp Ref Expression
1 frgpnabl.g G=freeGrpI
2 frgpnabl.w W=IWordI×2𝑜
3 frgpnabl.r ˙=~FGI
4 frgpnabl.p +˙=+G
5 frgpnabl.m M=yI,z2𝑜y1𝑜z
6 frgpnabl.t T=vWn0v,wI×2𝑜vsplicenn⟨“wMw”⟩
7 frgpnabl.d D=WxWranTx
8 frgpnabl.u U=varFGrpI
9 frgpnabl.i φIV
10 frgpnabl.a φAI
11 frgpnabl.b φBI
12 0ex V
13 12 prid1 1𝑜
14 df2o3 2𝑜=1𝑜
15 13 14 eleqtrri 2𝑜
16 opelxpi AI2𝑜AI×2𝑜
17 10 15 16 sylancl φAI×2𝑜
18 opelxpi BI2𝑜BI×2𝑜
19 11 15 18 sylancl φBI×2𝑜
20 17 19 s2cld φ⟨“AB”⟩WordI×2𝑜
21 2on 2𝑜On
22 xpexg IV2𝑜OnI×2𝑜V
23 9 21 22 sylancl φI×2𝑜V
24 wrdexg I×2𝑜VWordI×2𝑜V
25 fvi WordI×2𝑜VIWordI×2𝑜=WordI×2𝑜
26 23 24 25 3syl φIWordI×2𝑜=WordI×2𝑜
27 2 26 eqtrid φW=WordI×2𝑜
28 20 27 eleqtrrd φ⟨“AB”⟩W
29 1n0 1𝑜
30 2cn 2
31 30 addlidi 0+2=2
32 s2len ⟨“AB”⟩=2
33 31 32 eqtr4i 0+2=⟨“AB”⟩
34 2 3 5 6 efgtlen xW⟨“AB”⟩ranTx⟨“AB”⟩=x+2
35 34 adantll φxW⟨“AB”⟩ranTx⟨“AB”⟩=x+2
36 33 35 eqtrid φxW⟨“AB”⟩ranTx0+2=x+2
37 36 ex φxW⟨“AB”⟩ranTx0+2=x+2
38 0cnd φxW0
39 simpr φxWxW
40 2 efgrcl xWIVW=WordI×2𝑜
41 40 simprd xWW=WordI×2𝑜
42 41 adantl φxWW=WordI×2𝑜
43 39 42 eleqtrd φxWxWordI×2𝑜
44 lencl xWordI×2𝑜x0
45 43 44 syl φxWx0
46 45 nn0cnd φxWx
47 2cnd φxW2
48 38 46 47 addcan2d φxW0+2=x+20=x
49 37 48 sylibd φxW⟨“AB”⟩ranTx0=x
50 2 3 5 6 efgtf WT=a0,bI×2𝑜spliceaa⟨“bMb”⟩T:0×I×2𝑜W
51 50 adantl φWT=a0,bI×2𝑜spliceaa⟨“bMb”⟩T:0×I×2𝑜W
52 51 simpld φWT=a0,bI×2𝑜spliceaa⟨“bMb”⟩
53 52 rneqd φWranT=rana0,bI×2𝑜spliceaa⟨“bMb”⟩
54 53 eleq2d φW⟨“AB”⟩ranT⟨“AB”⟩rana0,bI×2𝑜spliceaa⟨“bMb”⟩
55 eqid a0,bI×2𝑜spliceaa⟨“bMb”⟩=a0,bI×2𝑜spliceaa⟨“bMb”⟩
56 ovex spliceaa⟨“bMb”⟩V
57 55 56 elrnmpo ⟨“AB”⟩rana0,bI×2𝑜spliceaa⟨“bMb”⟩a0bI×2𝑜⟨“AB”⟩=spliceaa⟨“bMb”⟩
58 wrd0 WordI×2𝑜
59 58 a1i φWa0bI×2𝑜WordI×2𝑜
60 simprr φWa0bI×2𝑜bI×2𝑜
61 5 efgmf M:I×2𝑜I×2𝑜
62 61 ffvelcdmi bI×2𝑜MbI×2𝑜
63 60 62 syl φWa0bI×2𝑜MbI×2𝑜
64 60 63 s2cld φWa0bI×2𝑜⟨“bMb”⟩WordI×2𝑜
65 ccatidid ++=
66 65 oveq1i ++++=++
67 66 65 eqtr2i =++++
68 67 a1i φWa0bI×2𝑜=++++
69 simprl φWa0bI×2𝑜a0
70 hash0 =0
71 70 oveq2i 0=00
72 69 71 eleqtrdi φWa0bI×2𝑜a00
73 elfz1eq a00a=0
74 72 73 syl φWa0bI×2𝑜a=0
75 74 70 eqtr4di φWa0bI×2𝑜a=
76 70 oveq2i a+=a+0
77 0cn 0
78 74 77 eqeltrdi φWa0bI×2𝑜a
79 78 addridd φWa0bI×2𝑜a+0=a
80 76 79 eqtr2id φWa0bI×2𝑜a=a+
81 59 59 59 64 68 75 80 splval2 φWa0bI×2𝑜spliceaa⟨“bMb”⟩=++⟨“bMb”⟩++
82 ccatlid ⟨“bMb”⟩WordI×2𝑜++⟨“bMb”⟩=⟨“bMb”⟩
83 82 oveq1d ⟨“bMb”⟩WordI×2𝑜++⟨“bMb”⟩++=⟨“bMb”⟩++
84 ccatrid ⟨“bMb”⟩WordI×2𝑜⟨“bMb”⟩++=⟨“bMb”⟩
85 83 84 eqtrd ⟨“bMb”⟩WordI×2𝑜++⟨“bMb”⟩++=⟨“bMb”⟩
86 64 85 syl φWa0bI×2𝑜++⟨“bMb”⟩++=⟨“bMb”⟩
87 81 86 eqtrd φWa0bI×2𝑜spliceaa⟨“bMb”⟩=⟨“bMb”⟩
88 87 eqeq2d φWa0bI×2𝑜⟨“AB”⟩=spliceaa⟨“bMb”⟩⟨“AB”⟩=⟨“bMb”⟩
89 10 ad3antrrr φWa0bI×2𝑜⟨“AB”⟩=⟨“bMb”⟩AI
90 1on 1𝑜On
91 90 a1i φWa0bI×2𝑜⟨“AB”⟩=⟨“bMb”⟩1𝑜On
92 simpr φWa0bI×2𝑜⟨“AB”⟩=⟨“bMb”⟩⟨“AB”⟩=⟨“bMb”⟩
93 92 fveq1d φWa0bI×2𝑜⟨“AB”⟩=⟨“bMb”⟩⟨“AB”⟩1=⟨“bMb”⟩1
94 opex BV
95 s2fv1 BV⟨“AB”⟩1=B
96 94 95 ax-mp ⟨“AB”⟩1=B
97 fvex MbV
98 s2fv1 MbV⟨“bMb”⟩1=Mb
99 97 98 ax-mp ⟨“bMb”⟩1=Mb
100 93 96 99 3eqtr3g φWa0bI×2𝑜⟨“AB”⟩=⟨“bMb”⟩B=Mb
101 92 fveq1d φWa0bI×2𝑜⟨“AB”⟩=⟨“bMb”⟩⟨“AB”⟩0=⟨“bMb”⟩0
102 opex AV
103 s2fv0 AV⟨“AB”⟩0=A
104 102 103 ax-mp ⟨“AB”⟩0=A
105 s2fv0 bV⟨“bMb”⟩0=b
106 105 elv ⟨“bMb”⟩0=b
107 101 104 106 3eqtr3g φWa0bI×2𝑜⟨“AB”⟩=⟨“bMb”⟩A=b
108 107 fveq2d φWa0bI×2𝑜⟨“AB”⟩=⟨“bMb”⟩MA=Mb
109 5 efgmval AI2𝑜AM=A1𝑜
110 89 15 109 sylancl φWa0bI×2𝑜⟨“AB”⟩=⟨“bMb”⟩AM=A1𝑜
111 df-ov AM=MA
112 dif0 1𝑜=1𝑜
113 112 opeq2i A1𝑜=A1𝑜
114 110 111 113 3eqtr3g φWa0bI×2𝑜⟨“AB”⟩=⟨“bMb”⟩MA=A1𝑜
115 100 108 114 3eqtr2rd φWa0bI×2𝑜⟨“AB”⟩=⟨“bMb”⟩A1𝑜=B
116 opthg AI1𝑜OnA1𝑜=BA=B1𝑜=
117 116 simplbda AI1𝑜OnA1𝑜=B1𝑜=
118 89 91 115 117 syl21anc φWa0bI×2𝑜⟨“AB”⟩=⟨“bMb”⟩1𝑜=
119 118 ex φWa0bI×2𝑜⟨“AB”⟩=⟨“bMb”⟩1𝑜=
120 88 119 sylbid φWa0bI×2𝑜⟨“AB”⟩=spliceaa⟨“bMb”⟩1𝑜=
121 120 rexlimdvva φWa0bI×2𝑜⟨“AB”⟩=spliceaa⟨“bMb”⟩1𝑜=
122 57 121 biimtrid φW⟨“AB”⟩rana0,bI×2𝑜spliceaa⟨“bMb”⟩1𝑜=
123 54 122 sylbid φW⟨“AB”⟩ranT1𝑜=
124 123 expimpd φW⟨“AB”⟩ranT1𝑜=
125 hasheq0 xVx=0x=
126 125 elv x=0x=
127 eleq1 x=xWW
128 fveq2 x=Tx=T
129 128 rneqd x=ranTx=ranT
130 129 eleq2d x=⟨“AB”⟩ranTx⟨“AB”⟩ranT
131 127 130 anbi12d x=xW⟨“AB”⟩ranTxW⟨“AB”⟩ranT
132 126 131 sylbi x=0xW⟨“AB”⟩ranTxW⟨“AB”⟩ranT
133 132 eqcoms 0=xxW⟨“AB”⟩ranTxW⟨“AB”⟩ranT
134 133 imbi1d 0=xxW⟨“AB”⟩ranTx1𝑜=W⟨“AB”⟩ranT1𝑜=
135 124 134 syl5ibrcom φ0=xxW⟨“AB”⟩ranTx1𝑜=
136 135 com23 φxW⟨“AB”⟩ranTx0=x1𝑜=
137 136 expdimp φxW⟨“AB”⟩ranTx0=x1𝑜=
138 49 137 mpdd φxW⟨“AB”⟩ranTx1𝑜=
139 138 necon3ad φxW1𝑜¬⟨“AB”⟩ranTx
140 29 139 mpi φxW¬⟨“AB”⟩ranTx
141 140 nrexdv φ¬xW⟨“AB”⟩ranTx
142 eliun ⟨“AB”⟩xWranTxxW⟨“AB”⟩ranTx
143 141 142 sylnibr φ¬⟨“AB”⟩xWranTx
144 28 143 eldifd φ⟨“AB”⟩WxWranTx
145 144 7 eleqtrrdi φ⟨“AB”⟩D
146 df-s2 ⟨“AB”⟩=⟨“A”⟩++⟨“B”⟩
147 2 3 efger ˙ErW
148 147 a1i φ˙ErW
149 148 28 erref φ⟨“AB”⟩˙⟨“AB”⟩
150 146 149 eqbrtrrid φ⟨“A”⟩++⟨“B”⟩˙⟨“AB”⟩
151 146 ovexi ⟨“AB”⟩V
152 ovex ⟨“A”⟩++⟨“B”⟩V
153 151 152 elec ⟨“AB”⟩⟨“A”⟩++⟨“B”⟩˙⟨“A”⟩++⟨“B”⟩˙⟨“AB”⟩
154 150 153 sylibr φ⟨“AB”⟩⟨“A”⟩++⟨“B”⟩˙
155 3 8 vrgpval IVAIUA=⟨“A”⟩˙
156 9 10 155 syl2anc φUA=⟨“A”⟩˙
157 3 8 vrgpval IVBIUB=⟨“B”⟩˙
158 9 11 157 syl2anc φUB=⟨“B”⟩˙
159 156 158 oveq12d φUA+˙UB=⟨“A”⟩˙+˙⟨“B”⟩˙
160 17 s1cld φ⟨“A”⟩WordI×2𝑜
161 160 27 eleqtrrd φ⟨“A”⟩W
162 19 s1cld φ⟨“B”⟩WordI×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 φUA+˙UB=⟨“A”⟩++⟨“B”⟩˙
167 154 166 eleqtrrd φ⟨“AB”⟩UA+˙UB
168 145 167 elind φ⟨“AB”⟩DUA+˙UB