[Haskell-cafe] Ann: Emping 0.3
Hans van Thiel
hthiel.char at zonnet.nl
Tue Jul 17 13:04:51 EDT 2007
Version 0.3 of Emping is available.
Emping is a utility that reads a table in a csv (comma
separated) format that can be generated from
Open Office Calc (spreadsheet), derives all shortest rules
for a selected attribute, and writes them to a .csv file
that can be read by OO Calc. The shortest rules may be
partially ordered by implication (entailment) and equivalence
(equality) and the top level is also shown in .csv format.
Optionally all logical entailments and equalities are listed
as well. If the data set contains ambiguous rules or more
occurrences of the same rule, the user is warned.
The main difference with V0.2 is that v0.3 can now handle intermediate
size files (100 to a few thousand rules) because the transformation of
conjunctive form (ands of ors) to disjunctive (ors of ands), which
seemed to be exponential in the number of rules, has been optimized by
using an intermediate 'maybe tree'. Probably I also used the wrong fold,
without strictness, in the prior version, but it would still have been
exponential. I 'think' it's now closer to linear to the number of rules,
and quadratic to the number of attributes. But tests show the completion
time is highly dependent on how well the data is structured.
Obviously, much has still to be done.
More info, for those who are interested, on
Hans van Thiel
More information about the Haskell-Cafe