Definition orimm (x: nval) (n: int) :=
match x with
| Nothing => Nothing
| I m => I (Int.and m (Int.not n))
| _ => I (Int.not n)
end.

Lemma orimm_sound:
forall v w x n,
vagree v w (orimm x n) ->
vagree (Val.or v (Vint n)) (Val.or w (Vint n)) x.