Exact Cover: Mobile Edition: About
Collection of Exact Cover Solvers, modelled after Donald Knuth's Dancing Links algorithms.
Input Syntax
A problem starts by defining items, either primary or secondary ones. First, define all primary items using < item1 item2 ... >, and afterwards, define secondary items using [ sec1 sec2 ... ]. Then, define all options by listing their involved items, each ending with a semicolon, like this: item1 sec1;.
You find the full syntax description below. Idents can be any string including multi-byte unicode characters, excluding other special symbols ;, [, ], <, >, and :. Colors are like idents, but occuppy a second name-space relevant to algorithms handling them.
problem ::= primary_items [ secondary_items ] { option } primary_items ::= '<' { primary_item } '>' primary_item ::= ident [ ':' u [ ';' v ] ] secondary_items ::= '[' { secondary_item } ']' secondary_item ::= ident option ::= { ident [ ':' color ] } ';'