Module Module.FreeLeft.Presentation.Complex

module Complex: sig .. end

Chain complexes between free modules.


type t = {
   modules : Module.FreeLeft.Presentation.pres array;
   d : Module.FreeLeft.Presentation.Map.t array;
}

A chain complex.

val modules : t ->
Module.FreeLeft.Presentation.pres array
val maps : t ->
Module.FreeLeft.Presentation.Map.t array
val length : t -> int

Length of a chain complex.

val make : Module.FreeLeft.Presentation.pres array ->
Module.FreeLeft.Presentation.Map.t array ->
t

Create a chain complex.

val valid : t -> bool

Ensure that a chain complex satsifies d^2=0.

val to_string : t -> string

String representation.

val homology : t -> int array

Compute the homology of the complex.