Goblint_lib.VectorMatrix
OCaml implementations of vectors and matrices.
module M = Messages
module type RatOps = sig ... end
Abstracts the functions of the Mpqf module for rationals from Apron that implements multi-precision rationals. One could later exchange "Mpqf" with a different module that provides the functions specified by this interface.
module ConvenienceOps (A : RatOps) : sig ... end
It provides more readable infix operators for the functions of RatOps. It is designed to be included by modules that make use of RatOps's functions.
module type Vector = sig ... end
High-level abstraction of a vector.
module type AbstractVector = functor (A : RatOps) -> sig ... end
Some functions inside have the suffix _with, which means that the function has side effects.
module type Matrix = sig ... end
High-level abstraction of a matrix.
module type AbstractMatrix =
functor (A : RatOps) ->
functor (V : AbstractVector) ->
sig ... end
Some functions inside have the suffix _with, which means that the function has side effects.
module ArrayVector : AbstractVector
Array-based vector implementation.
module ArrayMatrix : AbstractMatrix
Array-based matrix implementation. It provides a normalization function to reduce a matrix into reduced row echelon form. Operations exploit that the input matrix/matrices are in reduced row echelon form already.