Module Type NZBitsSpec
(Import A : NZOrdAxiomsSig')(Import B : Bits' A).
Declare Instance testbit_wd : Proper (eq==>eq==>Logic.eq) testbit.

Axiom testbit_odd_0 : forall a, (2*a+1).[0] = true.
Axiom testbit_even_0 : forall a, (2*a).[0] = false.
Axiom testbit_odd_succ : forall a n, 0<=n -> (2*a+1).[S n] = a.[n].
Axiom testbit_even_succ : forall a n, 0<=n -> (2*a).[S n] = a.[n].
Axiom testbit_neg_r : forall a n, n<0 -> a.[n] = false.