g e t s -> g o a t | Давайте двигать курсор только слева направо. g e t s $ | 0 none g e t s $ | 1 change to o g o t s $ | 1 insert a g o a t s $ | 0 none g o a t s $ | 1 erase g o a t $ | Рассмотрим префиксы: get goat Какая была последняя операция? 1. если это было удаление, то f (get, goat) <- f (ge, goat) + 1 2. если это была замена, то f (get, goat) <- f (ge, goa) + [t != t] (эта замена стоимости 0) 3. если это была вставка, то f (get, goat) <- f (get, goa) + 1 get| goat| была замена, значит, до неё ge|t goa|t