Section ALLOC.
Variable m1: mem.
Variables lo hi: Z.
Variable m2: mem.
Variable b: Values.block.
Hypothesis ALLOC: Mem.alloc m1 lo hi = (m2, b).
Transparent Mem.alloc.
Opaque Mem.alloc.

Lemma REACH_closed_free: forall m1 b lo hi m2
(F: Mem.free m1 b lo hi = Some m2) X
(RC: REACH_closed m1 X),
REACH_closed m2 X.