Metamath Proof Explorer


Theorem ccatlid

Description: Concatenation of a word by the empty word on the left. (Contributed by Stefan O'Rear, 15-Aug-2015) (Proof shortened by AV, 1-May-2020)

Ref Expression
Assertion ccatlid SWordB++S=S

Proof

Step Hyp Ref Expression
1 wrd0 WordB
2 ccatvalfn WordBSWordB++SFn0..^+S
3 1 2 mpan SWordB++SFn0..^+S
4 hash0 =0
5 4 oveq1i +S=0+S
6 lencl SWordBS0
7 6 nn0cnd SWordBS
8 7 addlidd SWordB0+S=S
9 5 8 eqtrid SWordB+S=S
10 9 eqcomd SWordBS=+S
11 10 oveq2d SWordB0..^S=0..^+S
12 11 fneq2d SWordB++SFn0..^S++SFn0..^+S
13 3 12 mpbird SWordB++SFn0..^S
14 wrdfn SWordBSFn0..^S
15 4 a1i SWordB=0
16 15 9 oveq12d SWordB..^+S=0..^S
17 16 eleq2d SWordBx..^+Sx0..^S
18 17 biimpar SWordBx0..^Sx..^+S
19 ccatval2 WordBSWordBx..^+S++Sx=Sx
20 1 19 mp3an1 SWordBx..^+S++Sx=Sx
21 18 20 syldan SWordBx0..^S++Sx=Sx
22 4 oveq2i x=x0
23 elfzoelz x0..^Sx
24 23 adantl SWordBx0..^Sx
25 24 zcnd SWordBx0..^Sx
26 25 subid1d SWordBx0..^Sx0=x
27 22 26 eqtrid SWordBx0..^Sx=x
28 27 fveq2d SWordBx0..^SSx=Sx
29 21 28 eqtrd SWordBx0..^S++Sx=Sx
30 13 14 29 eqfnfvd SWordB++S=S