The *** combinator implements the algebra cross product. It can be
used to derive the optimal score together with the candidates that
produce it.
The standard algebras:
- enum:The enumeration algebra implements the enumeration of all candidates of a particular problem instance.
- prettyprint:The pretty printing algebra enumerates the candidates in a user friendly form.
- count:The counting algebra computes the size of the search space, in a way much more efficient than by enumeration. Note the invariance [length(grammar enum z)] = grammar count z.
See the source code for other algebras.