Section CMCONSTR.
Variable cunit: Cminor.program.
Variable hf: helper_functions.
Hypothesis LINK: linkorder cunit prog.
Hypothesis HF: helper_functions_declared cunit hf.
Let HF': helper_functions_declared tprog hf.
Variable sp: val.
Variable e: env.
Variable m: mem.

Lemma eval_condition_of_expr:
forall a le v b,
eval_expr tge sp e m le a v ->
Val.bool_of_val v b ->
exists vl,
eval_exprlist tge sp e m le (snd (condition_of_expr a)) vl
/\ eval_condition (fst (condition_of_expr a)) vl m = Some b.