proposition: Lemma hoare_assign : forall (P Q : assn) x a, (forall s, P s -> Q s[[x := a]]) -> |- {{P}} x <- a {{Q}}.
proof: Proof. sauto use: lem_hoare_strengthen_pre unfold: entails. Qed.
imports: Hammer(Tactics) Arith ZArith List Lia Hammer(Hints) Reals Lra Hammer(Reflect) Nat Psatz String Relations