(*s Extending D with an element None representing infinity *)

Definition Ddmin (dd dd' : option D) :=
  match dd, dd' with
  | None, _ => dd'
  | _, None => dd
  | Some d, Some d' => Some (Dmin d d')
  end.

Lemma Ddmin_idempotent : forall dd : option D, Ddmin dd dd = dd.