Goal forall m1 mu (WD: SM_wd mu) vals b, pubBlocksSrc mu b = true ->
REACH m1 (exportedSrc mu vals) b = true.
Definition local_out_of_reach mu (m : mem) (b : block) (ofs : Z): Prop :=
locBlocksTgt mu b = true /\
forall b0 delta, local_of mu b0 = Some (b, delta) ->
(~ Mem.perm m b0 (ofs - delta) Max Nonempty \/
pubBlocksSrc mu b0 = false).
Definition genv2blocksBool {F V : Type} (ge : Genv.t F V):=
(fun b =>
match Genv.invert_symbol ge b with
Some id => true
| None => false
end,
fun b => match Genv.find_var_info ge b with
Some gv => true
| None => false
end).

Lemma genv2blocksBool_char2: forall F V (ge : Genv.t F V) b,
(snd (genv2blocksBool ge)) b = true <-> snd (genv2blocks ge) b.