Hint Resolve corable_funassert.
Definition allp_fun_id (Delta : tycontext) (rho : environ): pred rmap :=
(ALL id : ident ,
(ALL fs : funspec ,
!! ((glob_specs Delta) ! id = Some fs) -->
(EX b : block, !! (Map.get (ge_of rho) id = Some b) && func_at fs (b, 0)))).

(* Lemma corable_jam: forall {B} {S': B -> Prop} (S: forall l, {S' l}+{~ S' l}) (P Q: B -> pred rmap), (forall loc, corable (P loc)) -> (forall loc, corable (Q loc)) -> forall b, corable (jam S P Q b). *)
Lemma prop_derives {A}{H: ageable A}:
forall (P Q: Prop), (P -> Q) -> prop P |-- prop Q.