For every position, how far does the string match its own start? A box of what is already known makes it linear, and P$T turns it into a pattern matcher.
This interactive visualization needs JavaScript.