fact: Definition try_prog : prog try_pre B := fun i V P y m => exists x h (Ph : h \In prog_of e i V (try_pre_proj P) x), match x with | Val x' => exists (Ph' : h \In pre_of (e1 x')), m \In prog_of (e1 x') _ (dstr_valid Ph) Ph' y | Exn ex => exists (Ph' : h \In pre_of (e2 ex)), m \In prog_of (e2 ex) _ (dstr_valid Ph) Ph' y end.
imports: mathcomp(ssreflect ssrbool ssrfun ssrnat eqtype seq) pcm(options axioms pred prelude) pcm(pcm unionmap heap) htt(domain)