Definition. Precond. Strengthening & Postcond. Weakening [0048]

As a reminder in hoare logic we denote the consequence rule as follows:

On a high level this is quite evidently just transitivity, which is to say that if some assertion \(P'\) holds and by implication \(P\) holds, and upon successful termination of \(s\) we have that \(Q\) holds and by implication \(Q'\) holds, then we can transitively reason that \(\{P'\}\ s\ \{Q'\}\) would also hold for our program \(s\).

What we can do here is decompose this rule into two separate rules: