equal
deleted
inserted
replaced
1232 from $v$ is not so straightforward. The point of this is that we might |
1232 from $v$ is not so straightforward. The point of this is that we might |
1233 be able to finally bridge the gap by proving |
1233 be able to finally bridge the gap by proving |
1234 |
1234 |
1235 \begin{center} |
1235 \begin{center} |
1236 $\textit{retrieve} \; (r^\uparrow \backslash s) \; v = \;\textit{retrieve} \; |
1236 $\textit{retrieve} \; (r^\uparrow \backslash s) \; v = \;\textit{retrieve} \; |
1237 \textit{simp}(r^\uparrow) \backslash s \; v'$ |
1237 (\textit{simp}(r^\uparrow) \backslash s) \; v'$ |
1238 \end{center} |
1238 \end{center} |
1239 |
1239 |
1240 \noindent |
1240 \noindent |
1241 and subsequently |
1241 and subsequently |
1242 |
1242 |
1277 deal more efficiently with back-references, which are one of the |
1277 deal more efficiently with back-references, which are one of the |
1278 reasons why regular expression engines in JavaScript, Python and Java |
1278 reasons why regular expression engines in JavaScript, Python and Java |
1279 choose to not implement the classic automata approach of transforming |
1279 choose to not implement the classic automata approach of transforming |
1280 regular expressions into NFAs and then DFAs---because we simply do not |
1280 regular expressions into NFAs and then DFAs---because we simply do not |
1281 know how such back-references can be represented by DFAs. |
1281 know how such back-references can be represented by DFAs. |
1282 |
1282 We also plan to implement the bitcoded algorithm |
|
1283 in some imperative language like C to see if the inefficiency of the |
|
1284 Scala implementation |
|
1285 is language specific. To make this research more comprehensive we also plan |
|
1286 to contrast our (faster) version of bitcoded algorithm with the |
|
1287 Symbolic Regex Matcher, the RE2, the Rust Regex Engine, and the static |
|
1288 analysis approach by implementing them in the same language and then compare |
|
1289 their performance. |
1283 |
1290 |
1284 \bibliographystyle{plain} |
1291 \bibliographystyle{plain} |
1285 \bibliography{root} |
1292 \bibliography{root} |
1286 |
1293 |
1287 |
1294 |