(* assignment of a value*)
Fixpoint value_assignment (qic:assignment_constructor) (v:value) {struct v}:=
match v with
| c_capply c lv => qic c (map (value_assignment qic) lv)
end.

(*Lemma 67 borne inf *)
Lemma value_size_le_QI qic cs:
additive qic cs -> constructor_non_zero cs ->
forall v:value, value_size v <= value_assignment qic v.