[proofplan]
The [BV Embedding](/theorems/594) gives an $L^{n/(n-1)}$ bound, and the $BV$ translation estimate $\|u(\cdot + h) - u\|_{L^1} \leq |h|\,|Du|(U)$ provides equicontinuity in $L^1$.
The Kolmogorov--Riesz (Fr\'echet--Kolmogorov) compactness theorem extracts a convergent subsequence in $L^1$.
[/proofplan]
[step:Establish a uniform $L^1$ translation estimate for $BV$ functions]
[claim:For $u \in BV(U)$ and $|h|$ small: $\|u(\cdot + h) - u\|_{L^1(V)} \leq |h|\,|Du|(U)$]
[/claim]
[proof]
For smooth $u$: $u(x+h) - u(x) = \int_0^1 \nabla u(x + th) \cdot h \, d\mathcal{L}^1(t)$, so:
\begin{align*}
\|u(\cdot+h) - u\|_{L^1(V)} \leq |h|\int_0^1 \|\nabla u\|_{L^1(V + B(0,|h|))} \, d\mathcal{L}^1(t) \leq |h|\,\|\nabla u\|_{L^1(U)}.
\end{align*}
For $u \in BV$, mollify: $u_\varepsilon = u * \rho_\varepsilon$ satisfies $\|u_\varepsilon(\cdot+h) - u_\varepsilon\|_{L^1} \leq |h|\,\|\nabla u_\varepsilon\|_{L^1} \leq |h|\,|Du|(U)$ (by the [Dual Characterisation](/theorems/591)).
Letting $\varepsilon \to 0$ and using $u_\varepsilon \to u$ in $L^1$ gives the result.
[/proof]
[/step]
[step:Apply the Kolmogorov--Riesz compactness criterion]
The uniform $L^1$ bound $\sup_k \|u_k\|_{L^1} < \infty$ gives tightness.
The translation estimate with $\sup_k |Du_k|(U) < \infty$ gives equicontinuity in $L^1$:
\begin{align*}
\sup_k \|u_k(\cdot + h) - u_k\|_{L^1(V)} \leq |h|\,\sup_k |Du_k|(U) \to 0 \quad \text{as } |h| \to 0.
\end{align*}
By the Kolmogorov--Riesz (Fr\'echet--Kolmogorov) compactness theorem, $(u_k)$ is relatively compact in $L^1(V)$ for every $V \Subset U$.
A diagonal argument (using the Lipschitz boundary to control the boundary layer) extracts a subsequence $u_{k_j} \to u$ strongly in $L^1(U)$.
The limit $u$ belongs to $BV(U)$ by the [Lower Semicontinuity of Total Variation](/theorems/597).
[/step]