The current truth table implementation is inadequate. Here is a partial list of grievances:
The constructor is terrible (issue #86).
Only supports 0, 1, X. Multi-valued logic (MVL) has some neat applications.
Too much conversion is necessary to run the Espresso algorithm.
No support for the more exotic cube/cover ops such as "sharp", "disjoint sharp", etc. (See Micheli 7.3).
Doesn't scale well for large covers (many inputs) with lots of don't-cares.
At least one problem here is that the natural cover representation is a multi-output implicant. Need some clever way to reconcile this to the boolfunc.Function class.
The current truth table implementation is inadequate. Here is a partial list of grievances:
At least one problem here is that the natural cover representation is a multi-output implicant. Need some clever way to reconcile this to the
boolfunc.Function
class.