Definition values_beq a b:=
match a, b with
| fVint, fVint
| fVfloat, fVfloat
| fVlong, fVlong
| fVptr, fVptr
| fVundef, fVundef => true
| _, _ => false
end.

Lemma values_beq_sound : forall a b, values_beq a b = true -> a = b.
Hint Resolve values_beq_sound : expr_beq.