[−][src]Trait contest_algorithms::arq_tree::ArqSpec
Associated Types
Loading content...Required methods
fn compose(f: &Self::F, g: &Self::F) -> Self::F
For eager updates, compose() ho be unimplemented!(). For lazy updates: Require for all f,g,a: apply(compose(f, g), a) = apply(f, apply(g, a))
fn apply(f: &Self::F, a: &Self::M) -> Self::M
For eager updates, apply() can assume to act on a leaf. For lazy updates: Require for all f,a,b: apply(f, op(a, b)) = op(apply(f, a), apply(f, b))
fn op(a: &Self::M, b: &Self::M) -> Self::M
Require for all a,b,c: op(a, op(b, c)) = op(op(a, b), c)
fn identity() -> Self::M
Require for all a: op(a, identity()) = op(identity(), a) = a