Step | Hyp | Ref
| Expression |
1 | | fznn0sub2 13604 |
. . . . . 6
β’ (πΉ β (0...πΏ) β (πΏ β πΉ) β (0...πΏ)) |
2 | | pfxcl 14623 |
. . . . . . . . 9
β’ (π β Word π β (π prefix πΏ) β Word π) |
3 | | revcl 14707 |
. . . . . . . . 9
β’ ((π prefix πΏ) β Word π β (reverseβ(π prefix πΏ)) β Word π) |
4 | 2, 3 | syl 17 |
. . . . . . . 8
β’ (π β Word π β (reverseβ(π prefix πΏ)) β Word π) |
5 | 4 | 3ad2ant1 1133 |
. . . . . . 7
β’ ((π β Word π β§ πΏ β (0...(β―βπ)) β§ (πΏ β πΉ) β (0...πΏ)) β (reverseβ(π prefix πΏ)) β Word π) |
6 | | simp3 1138 |
. . . . . . . 8
β’ ((π β Word π β§ πΏ β (0...(β―βπ)) β§ (πΏ β πΉ) β (0...πΏ)) β (πΏ β πΉ) β (0...πΏ)) |
7 | | revlen 14708 |
. . . . . . . . . . . . 13
β’ ((π prefix πΏ) β Word π β (β―β(reverseβ(π prefix πΏ))) = (β―β(π prefix πΏ))) |
8 | 2, 7 | syl 17 |
. . . . . . . . . . . 12
β’ (π β Word π β (β―β(reverseβ(π prefix πΏ))) = (β―β(π prefix πΏ))) |
9 | 8 | adantr 481 |
. . . . . . . . . . 11
β’ ((π β Word π β§ πΏ β (0...(β―βπ))) β
(β―β(reverseβ(π prefix πΏ))) = (β―β(π prefix πΏ))) |
10 | | pfxlen 14629 |
. . . . . . . . . . 11
β’ ((π β Word π β§ πΏ β (0...(β―βπ))) β (β―β(π prefix πΏ)) = πΏ) |
11 | 9, 10 | eqtrd 2772 |
. . . . . . . . . 10
β’ ((π β Word π β§ πΏ β (0...(β―βπ))) β
(β―β(reverseβ(π prefix πΏ))) = πΏ) |
12 | 11 | 3adant3 1132 |
. . . . . . . . 9
β’ ((π β Word π β§ πΏ β (0...(β―βπ)) β§ (πΏ β πΉ) β (0...πΏ)) β
(β―β(reverseβ(π prefix πΏ))) = πΏ) |
13 | 12 | oveq2d 7421 |
. . . . . . . 8
β’ ((π β Word π β§ πΏ β (0...(β―βπ)) β§ (πΏ β πΉ) β (0...πΏ)) β
(0...(β―β(reverseβ(π prefix πΏ)))) = (0...πΏ)) |
14 | 6, 13 | eleqtrrd 2836 |
. . . . . . 7
β’ ((π β Word π β§ πΏ β (0...(β―βπ)) β§ (πΏ β πΉ) β (0...πΏ)) β (πΏ β πΉ) β
(0...(β―β(reverseβ(π prefix πΏ))))) |
15 | 5, 14 | jca 512 |
. . . . . 6
β’ ((π β Word π β§ πΏ β (0...(β―βπ)) β§ (πΏ β πΉ) β (0...πΏ)) β ((reverseβ(π prefix πΏ)) β Word π β§ (πΏ β πΉ) β
(0...(β―β(reverseβ(π prefix πΏ)))))) |
16 | 1, 15 | syl3an3 1165 |
. . . . 5
β’ ((π β Word π β§ πΏ β (0...(β―βπ)) β§ πΉ β (0...πΏ)) β ((reverseβ(π prefix πΏ)) β Word π β§ (πΏ β πΉ) β
(0...(β―β(reverseβ(π prefix πΏ)))))) |
17 | 16 | 3com23 1126 |
. . . 4
β’ ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β
((reverseβ(π prefix
πΏ)) β Word π β§ (πΏ β πΉ) β
(0...(β―β(reverseβ(π prefix πΏ)))))) |
18 | | revpfxsfxrev 34094 |
. . . 4
β’
(((reverseβ(π
prefix πΏ)) β Word
π β§ (πΏ β πΉ) β
(0...(β―β(reverseβ(π prefix πΏ))))) β
(reverseβ((reverseβ(π prefix πΏ)) prefix (πΏ β πΉ))) = ((reverseβ(reverseβ(π prefix πΏ))) substr
β¨((β―β(reverseβ(π prefix πΏ))) β (πΏ β πΉ)), (β―β(reverseβ(π prefix πΏ)))β©)) |
19 | 17, 18 | syl 17 |
. . 3
β’ ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β
(reverseβ((reverseβ(π prefix πΏ)) prefix (πΏ β πΉ))) = ((reverseβ(reverseβ(π prefix πΏ))) substr
β¨((β―β(reverseβ(π prefix πΏ))) β (πΏ β πΉ)), (β―β(reverseβ(π prefix πΏ)))β©)) |
20 | | revrev 14713 |
. . . . . 6
β’ ((π prefix πΏ) β Word π β (reverseβ(reverseβ(π prefix πΏ))) = (π prefix πΏ)) |
21 | 2, 20 | syl 17 |
. . . . 5
β’ (π β Word π β (reverseβ(reverseβ(π prefix πΏ))) = (π prefix πΏ)) |
22 | 21 | oveq1d 7420 |
. . . 4
β’ (π β Word π β
((reverseβ(reverseβ(π prefix πΏ))) substr
β¨((β―β(reverseβ(π prefix πΏ))) β (πΏ β πΉ)), (β―β(reverseβ(π prefix πΏ)))β©) = ((π prefix πΏ) substr
β¨((β―β(reverseβ(π prefix πΏ))) β (πΏ β πΉ)), (β―β(reverseβ(π prefix πΏ)))β©)) |
23 | 22 | 3ad2ant1 1133 |
. . 3
β’ ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β
((reverseβ(reverseβ(π prefix πΏ))) substr
β¨((β―β(reverseβ(π prefix πΏ))) β (πΏ β πΉ)), (β―β(reverseβ(π prefix πΏ)))β©) = ((π prefix πΏ) substr
β¨((β―β(reverseβ(π prefix πΏ))) β (πΏ β πΉ)), (β―β(reverseβ(π prefix πΏ)))β©)) |
24 | 11 | oveq1d 7420 |
. . . . . . 7
β’ ((π β Word π β§ πΏ β (0...(β―βπ))) β
((β―β(reverseβ(π prefix πΏ))) β (πΏ β πΉ)) = (πΏ β (πΏ β πΉ))) |
25 | 24 | 3adant2 1131 |
. . . . . 6
β’ ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β
((β―β(reverseβ(π prefix πΏ))) β (πΏ β πΉ)) = (πΏ β (πΏ β πΉ))) |
26 | | elfzel2 13495 |
. . . . . . . . 9
β’ (πΉ β (0...πΏ) β πΏ β β€) |
27 | 26 | zcnd 12663 |
. . . . . . . 8
β’ (πΉ β (0...πΏ) β πΏ β β) |
28 | | elfzelz 13497 |
. . . . . . . . 9
β’ (πΉ β (0...πΏ) β πΉ β β€) |
29 | 28 | zcnd 12663 |
. . . . . . . 8
β’ (πΉ β (0...πΏ) β πΉ β β) |
30 | 27, 29 | nncand 11572 |
. . . . . . 7
β’ (πΉ β (0...πΏ) β (πΏ β (πΏ β πΉ)) = πΉ) |
31 | 30 | 3ad2ant2 1134 |
. . . . . 6
β’ ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β (πΏ β (πΏ β πΉ)) = πΉ) |
32 | 25, 31 | eqtrd 2772 |
. . . . 5
β’ ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β
((β―β(reverseβ(π prefix πΏ))) β (πΏ β πΉ)) = πΉ) |
33 | 11 | 3adant2 1131 |
. . . . 5
β’ ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β
(β―β(reverseβ(π prefix πΏ))) = πΏ) |
34 | 32, 33 | opeq12d 4880 |
. . . 4
β’ ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β
β¨((β―β(reverseβ(π prefix πΏ))) β (πΏ β πΉ)), (β―β(reverseβ(π prefix πΏ)))β© = β¨πΉ, πΏβ©) |
35 | 34 | oveq2d 7421 |
. . 3
β’ ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β ((π prefix πΏ) substr
β¨((β―β(reverseβ(π prefix πΏ))) β (πΏ β πΉ)), (β―β(reverseβ(π prefix πΏ)))β©) = ((π prefix πΏ) substr β¨πΉ, πΏβ©)) |
36 | 19, 23, 35 | 3eqtrd 2776 |
. 2
β’ ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β
(reverseβ((reverseβ(π prefix πΏ)) prefix (πΏ β πΉ))) = ((π prefix πΏ) substr β¨πΉ, πΏβ©)) |
37 | | elfzuz3 13494 |
. . . . . . . 8
β’ (πΉ β (0...πΏ) β πΏ β (β€β₯βπΉ)) |
38 | | eluzfz2 13505 |
. . . . . . . 8
β’ (πΏ β
(β€β₯βπΉ) β πΏ β (πΉ...πΏ)) |
39 | 37, 38 | syl 17 |
. . . . . . 7
β’ (πΉ β (0...πΏ) β πΏ β (πΉ...πΏ)) |
40 | 39 | ancli 549 |
. . . . . 6
β’ (πΉ β (0...πΏ) β (πΉ β (0...πΏ) β§ πΏ β (πΉ...πΏ))) |
41 | 40 | 3ad2ant2 1134 |
. . . . 5
β’ ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β (πΉ β (0...πΏ) β§ πΏ β (πΉ...πΏ))) |
42 | | swrdpfx 14653 |
. . . . 5
β’ ((π β Word π β§ πΏ β (0...(β―βπ))) β ((πΉ β (0...πΏ) β§ πΏ β (πΉ...πΏ)) β ((π prefix πΏ) substr β¨πΉ, πΏβ©) = (π substr β¨πΉ, πΏβ©))) |
43 | 41, 42 | syl5 34 |
. . . 4
β’ ((π β Word π β§ πΏ β (0...(β―βπ))) β ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β ((π prefix πΏ) substr β¨πΉ, πΏβ©) = (π substr β¨πΉ, πΏβ©))) |
44 | 43 | 3adant2 1131 |
. . 3
β’ ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β ((π prefix πΏ) substr β¨πΉ, πΏβ©) = (π substr β¨πΉ, πΏβ©))) |
45 | 44 | pm2.43i 52 |
. 2
β’ ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β ((π prefix πΏ) substr β¨πΉ, πΏβ©) = (π substr β¨πΉ, πΏβ©)) |
46 | 36, 45 | eqtr2d 2773 |
1
β’ ((π β Word π β§ πΉ β (0...πΏ) β§ πΏ β (0...(β―βπ))) β (π substr β¨πΉ, πΏβ©) =
(reverseβ((reverseβ(π prefix πΏ)) prefix (πΏ β πΉ)))) |