# Module Box

    module Box: sig .. end

Intervals abstract domain

    type t

Type of boxes.

Boxes constrains each dimension/variable `x_i` to belong to an interval `I_i`.

Abstract values which are boxes have the type `t Apron.AbstractX.t`.

Managers allocated for boxes have the type `t Apron.manager.t`.

    val manager_alloc : unit -> t Apron.Manager.t

Create a Box manager.

### Type conversions

    val manager_is_box : 'a Apron.Manager.t -> bool

Return `true` iff the argument manager is a box manager

    val manager_of_box : t Apron.Manager.t -> 'a Apron.Manager.t

Make a box manager generic

    val manager_to_box : 'a Apron.Manager.t -> t Apron.Manager.t

Instanciate the type of a box manager. Raises `Failure` if the argument manager is not a box manager

    module Abstract0: sig .. end

    module Abstract1: sig .. end

### Compilation information

See Compiling and linking client programs against APRON for complete explanations. We just show examples with the file `mlexample.ml`.

#### Bytecode compilation

    ocamlc -I $MLGMPIDL_PREFIX/lib -I $APRON_PREFIX/lib -o mlexample.byte \
      bigarray.cma gmp.cma apron.cma boxMPQ.cma mlexample.ml

    ocamlc -I $MLGMPIDL_PREFIX/lib -I $APRON_PREFIX/lib -make-runtime -o myrun \
      bigarray.cma gmp.cma apron.cma boxMPQ.cma

    ocamlc -I $MLGMPIDL_PREFIX/lib -I $APRON_PREFIX/lib -use-runtime myrun -o mlexample.byte \
      bigarray.cma gmp.cma apron.cma boxMPQ.cma mlexample.ml

#### Native-code compilation

    ocamlopt -I $MLGMPIDL_PREFIX/lib -I $APRON_PREFIX/lib -o mlexample.opt \
      bigarray.cmxa gmp.cmxa apron.cmxa boxMPQ.cmxa mlexample.ml

#### Without auto-linking feature

    ocamlopt -I $MLGMPIDL_PREFIX/lib -I $APRON_PREFIX/lib -noautolink -o mlexample.opt \
      bigarray.cmxa gmp.cmxa apron.cmxa boxMPQ.cmxa mlexample.ml \
      -cclib "-L$MLGMPIDL_PREFIX/lib -L$APRON_PREFIX/lib \
    	  -lboxMPQ_caml_debug -lboxMPQ_debug \
    	  -lapron_caml_debug -lapron_debug \
    	  -lgmp_caml -L$MPFR_PREFIX/lib -lmpfr -L$GMP/lib_PREFIX/lib -lgmp \
    	  -L$CAMLIDL_PREFIX/lib/ocaml -lcamlidl \
    	  -lbigarray"