Metamath Proof Explorer


Theorem sseqval

Description: Value of the strong sequence builder function. The set W represents here the words of length greater than or equal to the lenght of the initial sequence M . (Contributed by Thierry Arnoux, 21-Apr-2019)

Ref Expression
Hypotheses sseqval.1 φSV
sseqval.2 φMWordS
sseqval.3 W=WordS.-1M
sseqval.4 φF:WS
Assertion sseqval φMseqstrF=MlastSseqMxV,yVx++⟨“Fx”⟩0×M++⟨“FM”⟩

Proof

Step Hyp Ref Expression
1 sseqval.1 φSV
2 sseqval.2 φMWordS
3 sseqval.3 W=WordS.-1M
4 sseqval.4 φF:WS
5 df-sseq seqstr=mV,fVmlastSseqmxV,yVx++⟨“fx”⟩0×m++⟨“fm”⟩
6 5 a1i φseqstr=mV,fVmlastSseqmxV,yVx++⟨“fx”⟩0×m++⟨“fm”⟩
7 simprl φm=Mf=Fm=M
8 7 fveq2d φm=Mf=Fm=M
9 simp1rr φm=Mf=FxVyVf=F
10 9 fveq1d φm=Mf=FxVyVfx=Fx
11 10 s1eqd φm=Mf=FxVyV⟨“fx”⟩=⟨“Fx”⟩
12 11 oveq2d φm=Mf=FxVyVx++⟨“fx”⟩=x++⟨“Fx”⟩
13 12 mpoeq3dva φm=Mf=FxV,yVx++⟨“fx”⟩=xV,yVx++⟨“Fx”⟩
14 simprr φm=Mf=Ff=F
15 14 7 fveq12d φm=Mf=Ffm=FM
16 15 s1eqd φm=Mf=F⟨“fm”⟩=⟨“FM”⟩
17 7 16 oveq12d φm=Mf=Fm++⟨“fm”⟩=M++⟨“FM”⟩
18 17 sneqd φm=Mf=Fm++⟨“fm”⟩=M++⟨“FM”⟩
19 18 xpeq2d φm=Mf=F0×m++⟨“fm”⟩=0×M++⟨“FM”⟩
20 8 13 19 seqeq123d φm=Mf=FseqmxV,yVx++⟨“fx”⟩0×m++⟨“fm”⟩=seqMxV,yVx++⟨“Fx”⟩0×M++⟨“FM”⟩
21 20 coeq2d φm=Mf=FlastSseqmxV,yVx++⟨“fx”⟩0×m++⟨“fm”⟩=lastSseqMxV,yVx++⟨“Fx”⟩0×M++⟨“FM”⟩
22 7 21 uneq12d φm=Mf=FmlastSseqmxV,yVx++⟨“fx”⟩0×m++⟨“fm”⟩=MlastSseqMxV,yVx++⟨“Fx”⟩0×M++⟨“FM”⟩
23 elex MWordSMV
24 2 23 syl φMV
25 wrdexg SVWordSV
26 inex1g WordSVWordS.-1MV
27 1 25 26 3syl φWordS.-1MV
28 3 27 eqeltrid φWV
29 4 28 fexd φFV
30 df-lsw lastS=xVxx1
31 30 funmpt2 FunlastS
32 31 a1i φFunlastS
33 seqex seqMxV,yVx++⟨“Fx”⟩0×M++⟨“FM”⟩V
34 33 a1i φseqMxV,yVx++⟨“Fx”⟩0×M++⟨“FM”⟩V
35 cofunexg FunlastSseqMxV,yVx++⟨“Fx”⟩0×M++⟨“FM”⟩VlastSseqMxV,yVx++⟨“Fx”⟩0×M++⟨“FM”⟩V
36 32 34 35 syl2anc φlastSseqMxV,yVx++⟨“Fx”⟩0×M++⟨“FM”⟩V
37 unexg MVlastSseqMxV,yVx++⟨“Fx”⟩0×M++⟨“FM”⟩VMlastSseqMxV,yVx++⟨“Fx”⟩0×M++⟨“FM”⟩V
38 24 36 37 syl2anc φMlastSseqMxV,yVx++⟨“Fx”⟩0×M++⟨“FM”⟩V
39 6 22 24 29 38 ovmpod φMseqstrF=MlastSseqMxV,yVx++⟨“Fx”⟩0×M++⟨“FM”⟩