prbnmcn-stats

Basic statistics
Library prbnmcn-stats
Module Stats . Stats_intf
type range = {
min : float;
max : float;
}

The type of (inclusive) ranges.

type 'a iterator = ( 'a -> unit ) -> unit

An 'a iterator abstracts a finite sequence of elements.

Primitive representations of distributions: empirical, generative or finitely supported.

type 'a emp = 'a array

'a emp is the type of empirical measures

type ('s, 'a) gen = 's -> 'a

'a gen is the type of mutable samplers of type 'a with state of type 's

type ('a, 'r) fin_fun = ( 'a iterator, 'a, 'r ) Linalg.vec
type ('a, 'r) fin_mes =
| M of {
total_mass : 'r;
fn : ( 'a, 'r ) fin_fun;
}

fin_mes is the type of finitely supported measures.

type ('a, 'r) fin_prb =
| P of {
fn : ( 'a, 'r ) fin_fun;
}

fin_prb is the type of finitely supported probability measures.

module type Stateful_PRNG = sig ... end

PRNG interface, subset of Random.State and Pringo.

Type classes.

module type Gen = sig ... end

Gen allows to manipulate generative probabilities (ie samplers).

module type Fin_dist = sig ... end
module type Graph = sig ... end

We use an OCamlgraph-compatible module type to describe undirected graphs. We assume that all graphs are undirected and simple.