Metamath Proof Explorer


Theorem pfxpfx

Description: A prefix of a prefix is a prefix. (Contributed by Alexander van der Vekens, 7-Apr-2018) (Revised by AV, 8-May-2020)

Ref Expression
Assertion pfxpfx WWordVN0WL0NWprefixNprefixL=WprefixL

Proof

Step Hyp Ref Expression
1 elfznn0 N0WN0
2 1 anim2i WWordVN0WWWordVN0
3 2 3adant3 WWordVN0WL0NWWordVN0
4 pfxval WWordVN0WprefixN=Wsubstr0N
5 3 4 syl WWordVN0WL0NWprefixN=Wsubstr0N
6 5 oveq1d WWordVN0WL0NWprefixNprefixL=Wsubstr0NprefixL
7 simp1 WWordVN0WL0NWWordV
8 simp2 WWordVN0WL0NN0W
9 0elfz N000N
10 1 9 syl N0W00N
11 10 3ad2ant2 WWordVN0WL0N00N
12 7 8 11 3jca WWordVN0WL0NWWordVN0W00N
13 1 nn0cnd N0WN
14 13 subid1d N0WN0=N
15 14 eqcomd N0WN=N0
16 15 adantl WWordVN0WN=N0
17 16 oveq2d WWordVN0W0N=0N0
18 17 eleq2d WWordVN0WL0NL0N0
19 18 biimp3a WWordVN0WL0NL0N0
20 pfxswrd WWordVN0W00NL0N0Wsubstr0NprefixL=Wsubstr00+L
21 12 19 20 sylc WWordVN0WL0NWsubstr0NprefixL=Wsubstr00+L
22 elfznn0 L0NL0
23 22 nn0cnd L0NL
24 23 addlidd L0N0+L=L
25 24 opeq2d L0N00+L=0L
26 25 oveq2d L0NWsubstr00+L=Wsubstr0L
27 26 3ad2ant3 WWordVN0WL0NWsubstr00+L=Wsubstr0L
28 22 anim2i WWordVL0NWWordVL0
29 28 3adant2 WWordVN0WL0NWWordVL0
30 pfxval WWordVL0WprefixL=Wsubstr0L
31 29 30 syl WWordVN0WL0NWprefixL=Wsubstr0L
32 27 31 eqtr4d WWordVN0WL0NWsubstr00+L=WprefixL
33 6 21 32 3eqtrd WWordVN0WL0NWprefixNprefixL=WprefixL