diff options
Diffstat (limited to 'edit-lens/src/Control/Edit')
-rw-r--r-- | edit-lens/src/Control/Edit/String.lhs | 4 | ||||
-rw-r--r-- | edit-lens/src/Control/Edit/String/Affected.lhs | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/edit-lens/src/Control/Edit/String.lhs b/edit-lens/src/Control/Edit/String.lhs index c1411cf..f0ca588 100644 --- a/edit-lens/src/Control/Edit/String.lhs +++ b/edit-lens/src/Control/Edit/String.lhs | |||
@@ -24,7 +24,7 @@ import Data.Monoid | |||
24 | \end{comment} | 24 | \end{comment} |
25 | 25 | ||
26 | \begin{defn}[Atomare edits of strings] | 26 | \begin{defn}[Atomare edits of strings] |
27 | Wir betrachten, zur Einfachheit, ein minimiales Set von Edits auf Strings\footnote{Wie in der Konstruktion zum Longest Common Subsequence Problem}, bestehend nur aus Einfügung eines einzelnen Zeichens $\sigma$ an einer bestimmten Position $\iota_n(\sigma)$ und löschen des Zeichens an einer einzelnen Position $\rho_n$: | 27 | Wir betrachten zur Einfachheit ein minimiales Set von Edits auf Strings\footnote{Wie in der Konstruktion zum Longest Common Subsequence Problem} bestehend nur aus Einfügung eines einzelnen Zeichens $\sigma$ an einer bestimmten Position $\iota_n(\sigma)$ und löschen des Zeichens an einer einzelnen Position $\rho_n$: |
28 | 28 | ||
29 | \begin{code} | 29 | \begin{code} |
30 | data StringEdit pos char = Insert { _sePos :: pos, _seInsertion :: char } | 30 | data StringEdit pos char = Insert { _sePos :: pos, _seInsertion :: char } |
@@ -38,7 +38,7 @@ data StringEdit pos char = Insert { _sePos :: pos, _seInsertion :: char } | |||
38 | makeLenses ''StringEdit | 38 | makeLenses ''StringEdit |
39 | \end{code} | 39 | \end{code} |
40 | 40 | ||
41 | Atomare edits werden, als Liste, zu edits komponiert. | 41 | Atomare edits werden als Liste zu edits komponiert. |
42 | Wir führen einen speziellen edit ein, der nicht-Anwendbarkeit der edits repräsentiert: | 42 | Wir führen einen speziellen edit ein, der nicht-Anwendbarkeit der edits repräsentiert: |
43 | \begin{code} | 43 | \begin{code} |
44 | data StringEdits pos char = StringEdits (Seq (StringEdit pos char)) | 44 | data StringEdits pos char = StringEdits (Seq (StringEdit pos char)) |
diff --git a/edit-lens/src/Control/Edit/String/Affected.lhs b/edit-lens/src/Control/Edit/String/Affected.lhs index 851267b..15f73af 100644 --- a/edit-lens/src/Control/Edit/String/Affected.lhs +++ b/edit-lens/src/Control/Edit/String/Affected.lhs | |||
@@ -29,7 +29,7 @@ import Data.Maybe (fromMaybe, maybeToList, listToMaybe, catMaybes, isNothing, is | |||
29 | \end{comment} | 29 | \end{comment} |
30 | 30 | ||
31 | Um eine obere Schranke an das von einer Serie von edits betroffene Intervall zu bestimmen ordnen wir zunächst jeder von mindestens einem atomaren edit betroffenen Position $n$ im Eingabe-Wort einen $\text{offset}_n = \text{\# deletions} - \text{\# inserts}$ zu. | 31 | Um eine obere Schranke an das von einer Serie von edits betroffene Intervall zu bestimmen ordnen wir zunächst jeder von mindestens einem atomaren edit betroffenen Position $n$ im Eingabe-Wort einen $\text{offset}_n = \text{\# deletions} - \text{\# inserts}$ zu. |
32 | Das gesuchte Intervall ist nun $(\text{minK}, \text{maxK})$, mit $\text{minK}$ der Position im Eingabe-Wort mit niedrigstem $\text{offset}$ und $\text{maxK}$ die Position im Eingabe-Wort mit höchstem $\text{offset}$, $\text{maxK}^\prime$, modifiziert um das Maximum aus $\{ 0 \} \cup \{ \text{maxK}_n \colon n \in \{ 0 \ldots \text{maxK}^\prime \} \}$ wobei $\text{maxK}_n = -1 \cdot (n + \text{offset}_n)$ an Position $n$ ist. | 32 | Das gesuchte Intervall ist nun $(\text{minK}, \text{maxK})$, mit $\text{minK}$ der Position im Eingabe-Wort mit niedrigstem $\text{offset}$ und $\text{maxK}$ die Position im Eingabe-Wort mit höchstem $\text{offset}$ $\text{maxK}^\prime$ modifiziert um das Maximum aus $\{ 0 \} \cup \{ \text{maxK}_n \colon n \in \{ 0 \ldots \text{maxK}^\prime \} \}$ wobei $\text{maxK}_n = -1 \cdot (n + \text{offset}_n)$ an Position $n$ ist. |
33 | 33 | ||
34 | \begin{code} | 34 | \begin{code} |
35 | affected :: forall char. StringEdits Natural char -> Maybe (Interval Natural) | 35 | affected :: forall char. StringEdits Natural char -> Maybe (Interval Natural) |