End NZDomainProp.
(** We now focus on the translation from [nat] into [NZ]. First, relationship with [0], [succ], [pred]. *)
Module NZOfNat (Import NZ:NZDomainSig').
Definition ofnat (n : nat) : t := (S^n) 0.
Declare Scope ofnat.
Local Open Scope ofnat.
Notation "[ n ]" := (ofnat n) (at level 7) : ofnat.

Lemma ofnat_succ : forall n, [Datatypes.S n] == succ [n].