New in Version 0.8.311

Released 18 Jun 2012

  • Improved documentation generation (automatically updates library version number).
  • Added complete technical documentation under a new docs-devel directory.
  • Reorganized forest class hierarchy, in directory src/forests.
  • More thorough library cleanup in MEDDLY::cleanup().
  • New version of MULTIPLY identifies more terminal cases.

Interface Changes

  • Policy settings for a forest are now specified when the forest is constructed. The old code segment
    forest *f = d->createForest(false, forest::BOOLEAN, forest::MULTI_TERMINAL);
    f->setReductionRule(forest::FULLY_REDUCED);
    f->setNodeStorage(forest::FULL_OR_SPARSE_STORAGE);
    f->setNodeDeletion(forest::PESSIMISTIC_DELETION);
    

    can be replaced by

    forest::policies fp(false); // false: not a relation
    fp.setFullyReduced();
    fp.setCompactStorage();
    fp.setPessimistic();
    forest *f = d->createForest(false, forest::BOOLEAN, forest::MULTI_TERMINAL, fp);
    

    The default settings for the forest::policies struct may be found by examining the header file meddly.h, and of course it is only necessary to specify a desired policy that differs from its default. Alternatively, a forest may be created using

    forest *f = d->createForest(false, forest::BOOLEAN, forest::MULTI_TERMINAL);
    

    which will use the library-wide default policies, based on whether the new forest is a relation or not. The library-wide defaults, if not specified, will be equal to the default forest::policies initialization; otherwise, they may be changed by adjusting mddDefaults and mxdDefaults in MEDDLY::settings (in the expert interface) before the library is initialized.

  • In class domain, old methods getVar and readVar are changed to useVar and getVar, for consistency.

  • Added a better statistics mechanism for forests. The old interface is stil present, for compatability. More information may be obtained using forest::getStats().

Updated: