Function entails_always_lift_state_and_elim
Source pub broadcast proof fn entails_always_lift_state_and_elim<T>(
spec: TempPred<T>,
p: StatePred<T>,
q: StatePred<T>,
)
Expand description
requires#[trigger] spec.entails(always(lift_state(p.and(q)))),
ensuresspec.entails(always(lift_state(p))),
spec.entails(always(lift_state(q))),
Eliminate and split two state predicates under □.
§Preconditions
spec ⊧ □lift_state(p ∧ q)
§Postconditions
spec ⊧ □lift_state(p)
spec ⊧ □lift_state(q)