I'm looking to understand how to approximate certain countable alphabet subshifts by Markov shifts, and realised that I don't know how to do it even in the finite alphabet case. My guess is that the answer to the following question is well known, but I couldn't work it out this morning.

Let $X\subset\{0,1\}^{\mathbb Z}$ be closed and shift invariant. It is a classical result that there exist Markov shifts $X^n\supset X$ such that $$\lim_{n\to\infty} h_{top}(X^n)= h_{top}(X),$$ where

$$h_{top}(X):=\lim_{n\to\infty}\frac{1}{n}\log(\text{ no. of words of length $n$ in $X$}). $$

This is easy to see, one just lets $X^n$ be the space made by freely concatenating all words of length $n$ in $X$, which is $n$-step Markov.

Question: Can we do such an approximation from below? i.e. Can we find Markov shifts $X_n\subset X$ with $\lim_{n\to\infty} h_{top} X_n= h_{top}(X)?$