Proof with eauto with val_renamings.
intros; destruct v; unfold Val.maketotal;
inversion Hval_obs; subst; simpl...
Qed.

Lemma val_obs_mul:
forall f v1 v2 v1' v2'
(Hval_obs': val_obs f v1' v2')
(Hval_obs: val_obs f v1 v2),
val_obs f (Val.mul v1 v1') (Val.mul v2 v2').