Module type Sig.INTEGER_FORWARD

include INTEGER_FORWARD_MIN
include INTEGER_BACKWARD
type integer
type boolean
module Arity : ARITY
val itimes : Z.t -> (integer, integer) Arity.ar1

Multiply an integer by a constant

This is truncated (C99-like) integer division

Bitwise and, where negative integers are seen as prefixed by infinite ones

Bitwise or, where negative integers are seen as prefixed by infinite ones

val iconst : Z.t -> integer Arity.ar0

Integer constant

val zero : integer Arity.ar0

These can be defined from the others, but it may be more efficient to implement them directly (no need to build temporary values...). They are also often convenient to use directly.

val one : integer Arity.ar0