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

Axiom shiftr_spec : forall a n m, 0<=m -> (a >> n).[m] = a.[m+n].
Axiom shiftl_spec_high : forall a n m, 0<=m -> n<=m -> (a << n).[m] = a.[m-n].
Axiom shiftl_spec_low : forall a n m, m<n -> (a << n).[m] = false.