package DAGaml

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type elem =
  1. | S
  2. | P of bool
  3. | C of bool * bool
type sigma_su = (unit, unit) GuaCaml.AB.ab
type sigma_sx = (unit, unit) GuaCaml.AB.ab
type sigma_sux = (unit, (unit, unit) GuaCaml.AB.ab) GuaCaml.AB.ab
type sigma_sc = (unit, bool) GuaCaml.AB.ab
type sigma_suc = (unit, (unit, bool) GuaCaml.AB.ab) GuaCaml.AB.ab
type (!'a, !'b) row = ('a, 'b) GuaCaml.AB.ab list
type rowU = sigma_su list
type rowX = sigma_sx list
type rowUX = sigma_sux list
type rowC = sigma_sc list
type rowUC = sigma_suc list
type rowCX = (rowX, bool * rowC) GuaCaml.AB.ab
type matCX = rowCX list
type matUCX = rowU * matCX
type bmatUCX = bool * matUCX
type sucx_tag = {
  1. hasS : bool;
  2. hasU : bool;
  3. hasX : bool;
  4. hasC : bool;
}
type decomp =
  1. | C0
  2. | Id of int
  3. | UCX of matUCX
type block = {
  1. neg : bool;
  2. noutput : int;
  3. ninput : int option;
  4. decomp : decomp;
}
type leaf = unit
type edge = block
type node = unit
type !'i next' = (leaf, 'i) GuaCaml.Tree.gnext
type !'i edge' = edge * 'i next'
type !'i node' = node * 'i edge' * 'i edge'
type !'a pedge = 'a plink edge'
type !'a pnode = 'a plink node'
type !'a merge = ('a next', 'a node') GuaCaml.Utils.merge
type !'a emerge = block * 'a merge
type !'a merge3 = ('a next', 'a node', 'a node') GuaCaml.Utils.merge3
type !'a emerge3 = block * 'a merge3
type quant = GuaCaml.Utils.quant
type opquant = quant option
type !'a qedge = 'a qlink edge'
type !'a qnode = 'a qlink node'