Recursion
Consider unbounded H-tone spread to penult.
\[ \begin{array}[t]{lcl} \acute{\sigma}\sigma\sigma & \mapsto & \acute{\sigma}\acute{\sigma}\sigma \\ \sigma\acute{\sigma}\sigma\sigma\sigma\sigma & \mapsto & \sigma\acute{\sigma}\acute{\sigma}\acute{\sigma}\acute{\sigma}\sigma \\ \sigma\sigma\acute{\sigma}\sigma\sigma\sigma & \mapsto & \sigma\sigma\acute{\sigma}\acute{\sigma}\acute{\sigma}\sigma \\ \sigma\acute{\sigma}\sigma\sigma\sigma\sigma\sigma & \mapsto & \sigma\acute{\sigma}\acute{\sigma}\acute{\sigma}\acute{\sigma}\acute{\sigma}\acute{\sigma}\sigma \\ \mathrm{etc.} \end{array} \]
This is an output-oriented process. That is, whether a syllable is H-toned depends on the output tonal value of the preceding syllable.
Let \(\acute{\sigma}_i(x)\) represent the input contrast between H and non-H syllables, and \(\acute{\sigma}_o(x)\) representing the same in the output, we can do this explicitly in BMRS using a recursive definition of \(\acute{\sigma}_o(x)\).
The below is a first approximation, although it is a bit wrong.
\[ \acute{\sigma}_o(x):= \mathtt{if}~\acute{\sigma}_o(p(x))~\mathtt{then}~\top~\mathtt{else}~\acute{\sigma}_i(x) \]
This works as shown below:
\[ \begin{array}[t]{rccccccc} \mathrm{in:} & \sigma & \acute{\sigma} & \sigma & \sigma & \sigma & \sigma \\ \acute{\sigma}_i(x) & \bot & \top & \bot & \bot & \bot & \bot \\ \acute{\sigma}_o(x) & \bot & \top & \top & \top & \top & ^*\top \\ \mathrm{out:} & \sigma & \acute{\sigma} & \acute{\sigma} & \acute{\sigma} & \acute{\sigma} & \acute{\sigma} \\ \end{array} \]
The H tone spreads leftward all the way to the final syllable, as indicated by \(^*\top\). So we preempt this in the case that \(x\) is the final syllable:
\[ \acute{\sigma}_o(x):= \begin{array}[t]{l} \mathtt{if}~\mathrm{final}(x)~\mathtt{then}~\bot~\mathtt{else}\\ \mathtt{if}~\acute{\sigma}_o(p(x))~\mathtt{then}~\top~\mathtt{else}\\ \acute{\sigma}_i(x) \end{array} \]
In this way, \(\mathrm{final}(x)\) acts like a higher-ranking constraint, blocking the spread of the H tone only in the final syllable:
\[ \begin{array}[t]{rccccccc} \mathrm{in:} & \sigma & \acute{\sigma} & \sigma & \sigma & \sigma & \sigma \\ \acute{\sigma}_i(x) & \bot & \top & \bot & \bot & \bot & \bot \\ \acute{\sigma}_o(x) & \bot & \top & \top & \top & \top & \bot \\ \mathrm{out:} & \sigma & \acute{\sigma} & \acute{\sigma} & \acute{\sigma} & \acute{\sigma} & \sigma \\ \end{array} \]