proposition: Lemma code_link_assertD : ∀ A b k p, code_link (@assertD A b (λ x, k x)) p = #assert b as x ;; code_link (k x) p.
proof: Proof. intros A b k p. destruct b. - simpl. reflexivity. - simpl. reflexivity. Qed.
imports: mathcomp(all_ssreflect all_algebra reals distr fingroup.fingroup realsum ssrnat ssreflect ssrfun ssrbool ssrnum eqtype choice seq) extructures(ord fset fmap) Crypt(Axioms Prelude pkg_core_definition pkg_composition pkg_notation RulesStateProb pkg_advantage pkg_lookup pkg_semantics pkg_heap pkg_invariants pkg_distr pkg_rhl pkg_tactics choice_type) Coq(Utf8 FunctionalExtensionality Setoids.Setoid Classes.Morphisms) Equations(Equations)