TEXT ALGORITHMS - partial list of errors
No explanation that * means optional material
page 38 line -17 it is ".. > pat[j].."
should be ".. < pat[j].."
line -13 "sm" into "ms"
it's all inside an algorithm !
page 60 in definition of critical points
should be added (line -3) after "..of k,"
the following text:
"and is at distance at least k from the left
end of the match, "
same page, line -19 instead "s>.." should be "s <.."
page 63 line +2 (below figure) it is:
"memory j:=0; :=m-p" should be
"memory:=m-p; j:=0"
page 66 line +11 "is less the.." -> "is less than"
the definition of delay in KMP algorithm is unclear
The double indices doesn't work, e.g. on page 79
it should be $link_{a_i}$ and it is $link_{ai}$ in the sense of
Latex.
In description of McCreight algorithm the basic invariant
is missed: \alpha \beta is an existing path (maybe implicit)
in the current tree, so fastfind knows that there is a path
and can check only first symbols, it should be explained
why it is true.
A complete example is needed for McCright algorithm
a reasonable example gives
the string x = abaababaabd, and construction of leaf_7,
assuming we start with leaft_6.
The algorithm McCreight (page 85) doesn't consider the
(very easy) case when
head_{i-1} = root or father(head_{i-1}) = root
In the proof of Theorem 5.4 the roles of differences
|father_i - father_{i-1}| and |head_i - head_{i-1}|
should be exchanged
In "algorithm of Ukkonen" page 96, should be $\alpha$ instead of "a" in line 4 and line 6 of the algorithm, also it should be $\epsilon$ instead of "e" as empty string in line 4 of the algorithm The statement "if $\beta$ is empty then .." should be moved to the line -3 in the algorithm, just before the last two "end"s.