Definition unop_float (sem: float -> float) (x: aval) :=
  match x with F n => F (sem n) | _ => ntop1 x end.

Lemma unop_float_sound: forall sem v x, vmatch v x -> vmatch (match v with Vfloat i => Vfloat(sem i) | _ => Vundef end) (unop_float sem x).