Function layer

Source
pub fn layer<K: ArrayKind, O, A>(
    f: &OpenHypergraph<K, O, A>,
) -> (FiniteFunction<K>, K::Type<K::I>)
where K::Type<A>: Array<K, A>, K::Type<K::I>: NaturalArray<K>,
Expand description

Compute a layering of an OpenHypergraph: a mapping layer : X โ†’ K from operations to integers compatible with the partial ordering on X induced by hypergraph structure.

See also: the Coffman-Graham Algorithm

ยงReturns

  • A finite function layer : X โ†’ L assigning a layer to each operation in the set X
  • An array of flags for each operation determining if it was visited in the layering. If any operation was unvisited, the hypergraph was not monogamous acyclic.