We got Markov at home
Outside my apartment the sidewalks are paved with stone slabs. Some of these slabs are damaged and are marked for replacement with a neon pink X on them. I got curious whether I could use Markov's method to check the damaged and non-damaged slabs for dependence.

How it started
A couple of weeks ago I started studying the work of Andrey Markov, more specifically his 1906 theorem showing that the law of large numbers holds without independence.
In 1913 he found a chain in the wild, hand-counting 20,000 letters of Eugene Onegin to show that vowels and consonants form a dependent sequence. He demonstrated the dependence by doing the following:
- Total number of letters: 20,000
- Vowel rate: 43%
- Vowel-after-vowel rate: 12%
- Vowel-after-consonant rate: 66%
The gap between the rates is the dependence: after a vowel, the next letter is far more likely to be a consonant than a vowel.
This is a nice way to check for dependence in a sequence, and I wanted to try it myself.
Broken stone slabs
First of all, there are some differences between running the experiment on a physical space like a row of stone slabs and Markov's use of a clean sequence of letters.
- I do not know what order the stone slabs were laid in
- I do not know what order the stone slabs got damaged in
- This is basically a grid with two directions: horizontal and vertical
So I need to make some simplifications:
- I will read the grid as sequences in one direction at a time
- I will measure the horizontal and vertical dependency separately
This is basically turning the grid into two strings, one reading left to right and one reading top to bottom.

Foot traffic does not give me the order the slabs were laid in, but it tells me which direction to read. If wear is what damages slabs, then along the street is the axis the damage works along.
That is a hypothesis, not a given. Damage could also come from variation in slab quality, which would produce a pattern of its own that I could not tell apart from a traffic pattern.
The result
Well, just like Markov sorting letters by hand, I needed to get my hands, or rather feet, dirty and do some counting.
- Total number of stone slabs: 2,468
- Total number of damaged slabs: 136
- Damage rate: 136 / 2,468 = 5.5%
- Damaged with a damaged horizontal neighbour: 20 / 136 = 14.7%
- Damaged with a damaged vertical neighbour: 39 / 136 = 28.7%
If damage was scattered independently, both directions would match the base rate of 5.5%. But standing on a damaged slab and stepping one square down or to the right, the chance of landing on another damaged slab is far higher: 28.7% and 14.7%.
Using a similar process to the one Markov used on Eugene Onegin, I was able to show that the damaged slabs are not independent of each other. Clustering is roughly twice as strong along the street as across it.