Metamath Proof Explorer


Theorem swrdspsleq

Description: Two words have a common subword (starting at the same position with the same length) iff they have the same symbols at each position. (Contributed by Alexander van der Vekens, 7-Aug-2018) (Proof shortened by AV, 7-May-2020)

Ref Expression
Assertion swrdspsleq WWordVUWordVM0N0NWNUWsubstrMN=UsubstrMNiM..^NWi=Ui

Proof

Step Hyp Ref Expression
1 swrdsb0eq WWordVUWordVM0N0NMWsubstrMN=UsubstrMN
2 1 3expa WWordVUWordVM0N0NMWsubstrMN=UsubstrMN
3 2 ancoms NMWWordVUWordVM0N0WsubstrMN=UsubstrMN
4 3 3adantr3 NMWWordVUWordVM0N0NWNUWsubstrMN=UsubstrMN
5 ral0 iWi=Ui
6 nn0z M0M
7 nn0z N0N
8 fzon MNNMM..^N=
9 6 7 8 syl2an M0N0NMM..^N=
10 9 biimpa M0N0NMM..^N=
11 10 raleqdv M0N0NMiM..^NWi=UiiWi=Ui
12 5 11 mpbiri M0N0NMiM..^NWi=Ui
13 12 ex M0N0NMiM..^NWi=Ui
14 13 3ad2ant2 WWordVUWordVM0N0NWNUNMiM..^NWi=Ui
15 14 impcom NMWWordVUWordVM0N0NWNUiM..^NWi=Ui
16 4 15 2thd NMWWordVUWordVM0N0NWNUWsubstrMN=UsubstrMNiM..^NWi=Ui
17 swrdcl WWordVWsubstrMNWordV
18 swrdcl UWordVUsubstrMNWordV
19 eqwrd WsubstrMNWordVUsubstrMNWordVWsubstrMN=UsubstrMNWsubstrMN=UsubstrMNj0..^WsubstrMNWsubstrMNj=UsubstrMNj
20 17 18 19 syl2an WWordVUWordVWsubstrMN=UsubstrMNWsubstrMN=UsubstrMNj0..^WsubstrMNWsubstrMNj=UsubstrMNj
21 20 3ad2ant1 WWordVUWordVM0N0NWNUWsubstrMN=UsubstrMNWsubstrMN=UsubstrMNj0..^WsubstrMNWsubstrMNj=UsubstrMNj
22 21 adantl ¬NMWWordVUWordVM0N0NWNUWsubstrMN=UsubstrMNWsubstrMN=UsubstrMNj0..^WsubstrMNWsubstrMNj=UsubstrMNj
23 swrdsbslen WWordVUWordVM0N0NWNUWsubstrMN=UsubstrMN
24 23 adantl ¬NMWWordVUWordVM0N0NWNUWsubstrMN=UsubstrMN
25 24 biantrurd ¬NMWWordVUWordVM0N0NWNUj0..^WsubstrMNWsubstrMNj=UsubstrMNjWsubstrMN=UsubstrMNj0..^WsubstrMNWsubstrMNj=UsubstrMNj
26 nn0re M0M
27 nn0re N0N
28 ltnle MNM<N¬NM
29 ltle MNM<NMN
30 28 29 sylbird MN¬NMMN
31 26 27 30 syl2an M0N0¬NMMN
32 31 3ad2ant2 WWordVUWordVM0N0NWNU¬NMMN
33 simpl1l WWordVUWordVM0N0NWNUMNWWordV
34 simpl2l WWordVUWordVM0N0NWNUMNM0
35 6 7 anim12i M0N0MN
36 35 3ad2ant2 WWordVUWordVM0N0NWNUMN
37 36 anim1i WWordVUWordVM0N0NWNUMNMNMN
38 df-3an MNMNMNMN
39 37 38 sylibr WWordVUWordVM0N0NWNUMNMNMN
40 eluz2 NMMNMN
41 39 40 sylibr WWordVUWordVM0N0NWNUMNNM
42 34 41 jca WWordVUWordVM0N0NWNUMNM0NM
43 simpl3l WWordVUWordVM0N0NWNUMNNW
44 swrdlen2 WWordVM0NMNWWsubstrMN=NM
45 33 42 43 44 syl3anc WWordVUWordVM0N0NWNUMNWsubstrMN=NM
46 45 oveq2d WWordVUWordVM0N0NWNUMN0..^WsubstrMN=0..^NM
47 46 raleqdv WWordVUWordVM0N0NWNUMNj0..^WsubstrMNWsubstrMNj=UsubstrMNjj0..^NMWsubstrMNj=UsubstrMNj
48 0zd WWordVUWordVM0N0NWNU0
49 zsubcl NMNM
50 7 6 49 syl2anr M0N0NM
51 50 3ad2ant2 WWordVUWordVM0N0NWNUNM
52 6 adantr M0N0M
53 52 3ad2ant2 WWordVUWordVM0N0NWNUM
54 fzoshftral 0NMMj0..^NMWsubstrMNj=UsubstrMNji0+M..^N-M+M[˙iM/j]˙WsubstrMNj=UsubstrMNj
55 48 51 53 54 syl3anc WWordVUWordVM0N0NWNUj0..^NMWsubstrMNj=UsubstrMNji0+M..^N-M+M[˙iM/j]˙WsubstrMNj=UsubstrMNj
56 55 adantr WWordVUWordVM0N0NWNUMNj0..^NMWsubstrMNj=UsubstrMNji0+M..^N-M+M[˙iM/j]˙WsubstrMNj=UsubstrMNj
57 nn0cn N0N
58 nn0cn M0M
59 addlid M0+M=M
60 59 adantl NM0+M=M
61 npcan NMN-M+M=N
62 60 61 oveq12d NM0+M..^N-M+M=M..^N
63 57 58 62 syl2anr M0N00+M..^N-M+M=M..^N
64 63 3ad2ant2 WWordVUWordVM0N0NWNU0+M..^N-M+M=M..^N
65 64 adantr WWordVUWordVM0N0NWNUMN0+M..^N-M+M=M..^N
66 65 raleqdv WWordVUWordVM0N0NWNUMNi0+M..^N-M+M[˙iM/j]˙WsubstrMNj=UsubstrMNjiM..^N[˙iM/j]˙WsubstrMNj=UsubstrMNj
67 ovex iMV
68 sbceqg iMV[˙iM/j]˙WsubstrMNj=UsubstrMNjiM/jWsubstrMNj=iM/jUsubstrMNj
69 csbfv2g iMViM/jWsubstrMNj=WsubstrMNiM/jj
70 csbvarg iMViM/jj=iM
71 70 fveq2d iMVWsubstrMNiM/jj=WsubstrMNiM
72 69 71 eqtrd iMViM/jWsubstrMNj=WsubstrMNiM
73 csbfv2g iMViM/jUsubstrMNj=UsubstrMNiM/jj
74 70 fveq2d iMVUsubstrMNiM/jj=UsubstrMNiM
75 73 74 eqtrd iMViM/jUsubstrMNj=UsubstrMNiM
76 72 75 eqeq12d iMViM/jWsubstrMNj=iM/jUsubstrMNjWsubstrMNiM=UsubstrMNiM
77 68 76 bitrd iMV[˙iM/j]˙WsubstrMNj=UsubstrMNjWsubstrMNiM=UsubstrMNiM
78 67 77 mp1i WWordVUWordVM0N0NWNUMNiM..^N[˙iM/j]˙WsubstrMNj=UsubstrMNjWsubstrMNiM=UsubstrMNiM
79 33 42 43 3jca WWordVUWordVM0N0NWNUMNWWordVM0NMNW
80 swrdfv2 WWordVM0NMNWiM..^NWsubstrMNiM=Wi
81 79 80 sylan WWordVUWordVM0N0NWNUMNiM..^NWsubstrMNiM=Wi
82 simpl1r WWordVUWordVM0N0NWNUMNUWordV
83 simpl3r WWordVUWordVM0N0NWNUMNNU
84 82 42 83 3jca WWordVUWordVM0N0NWNUMNUWordVM0NMNU
85 swrdfv2 UWordVM0NMNUiM..^NUsubstrMNiM=Ui
86 84 85 sylan WWordVUWordVM0N0NWNUMNiM..^NUsubstrMNiM=Ui
87 81 86 eqeq12d WWordVUWordVM0N0NWNUMNiM..^NWsubstrMNiM=UsubstrMNiMWi=Ui
88 78 87 bitrd WWordVUWordVM0N0NWNUMNiM..^N[˙iM/j]˙WsubstrMNj=UsubstrMNjWi=Ui
89 88 ralbidva WWordVUWordVM0N0NWNUMNiM..^N[˙iM/j]˙WsubstrMNj=UsubstrMNjiM..^NWi=Ui
90 66 89 bitrd WWordVUWordVM0N0NWNUMNi0+M..^N-M+M[˙iM/j]˙WsubstrMNj=UsubstrMNjiM..^NWi=Ui
91 47 56 90 3bitrd WWordVUWordVM0N0NWNUMNj0..^WsubstrMNWsubstrMNj=UsubstrMNjiM..^NWi=Ui
92 91 ex WWordVUWordVM0N0NWNUMNj0..^WsubstrMNWsubstrMNj=UsubstrMNjiM..^NWi=Ui
93 32 92 syld WWordVUWordVM0N0NWNU¬NMj0..^WsubstrMNWsubstrMNj=UsubstrMNjiM..^NWi=Ui
94 93 impcom ¬NMWWordVUWordVM0N0NWNUj0..^WsubstrMNWsubstrMNj=UsubstrMNjiM..^NWi=Ui
95 22 25 94 3bitr2d ¬NMWWordVUWordVM0N0NWNUWsubstrMN=UsubstrMNiM..^NWi=Ui
96 16 95 pm2.61ian WWordVUWordVM0N0NWNUWsubstrMN=UsubstrMNiM..^NWi=Ui