End Continuous.
Arguments cn_fresh [A][v][h][x] _.
(* Complete natmaps with binary range *)
Section Complete.
Variable A : Type.
Implicit Type h : natmap (A * A).
Definition complete v0 h vn :=
[/\ valid h, gapless h, continuous v0 h & last_val v0 h = vn].

(* Specifications: *)
Lemma cm_valid v0 h vn : complete v0 h vn -> valid h.
Lemma cmPtUn v0 vn h k x :
complete v0 (k \-> x \+ h) vn -> last_key h < k -> k = fresh h.
Lemma cmCons v0 vn k x h :
complete v0 (k \-> x \+ h) vn -> last_key h < k ->
[/\ k = fresh h, vn = x.2 & complete v0 h x.1].