- Compute transition function
- m = length(P);
- for q = 0 through m do
- for each character x in Σ
- k = min(m+1, q+2); // +1 for x, +2 for subsequent repeat loop to decrement
- repeat k = k-1 // work backwards from q+1
- until Pk 'is-suffix-of' Pqx;
- d(q, x) = k; // assign transition table
- end for; end for;
- return d;
- End algorithm.