spot
0.8.3
|
Generate an irredundant sum-of-products (ISOP) form of a BDD function.This algorithm implements a derecursived version the Minato-Morreale algorithm presented in the following paper. More...
#include <misc/minato.hh>
Classes | |
struct | local_vars |
Internal variables for minato_isop. More... | |
Public Member Functions | |
minato_isop (bdd input) | |
Conctructor. | |
minato_isop (bdd input, bdd vars) | |
Conctructor. | |
bdd | next () |
Compute the next sum term of the ISOP form. Return bddfalse when all terms have been output. | |
Private Attributes | |
std::stack< local_vars > | todo_ |
std::stack< bdd > | cube_ |
bdd | ret_ |
Generate an irredundant sum-of-products (ISOP) form of a BDD function.
This algorithm implements a derecursived version the Minato-Morreale algorithm presented in the following paper.
/// @InProceedings{ minato.92.sasimi, /// author = {Shin-ichi Minato}, /// title = {Fast Generation of Irredundant Sum-of-Products Forms /// from Binary Decision Diagrams}, /// booktitle = {Proceedings of the third Synthesis and Simulation /// and Meeting International Interchange workshop /// (SASIMI'92)}, /// pages = {64--73}, /// year = {1992}, /// address = {Kobe, Japan}, /// month = {April} /// } ///
spot::minato_isop::minato_isop | ( | bdd | input | ) |
Conctructor.
spot::minato_isop::minato_isop | ( | bdd | input, |
bdd | vars | ||
) |
Conctructor.
bdd spot::minato_isop::next | ( | ) |
Compute the next sum term of the ISOP form. Return bddfalse
when all terms have been output.
std::stack<bdd> spot::minato_isop::cube_ [private] |
bdd spot::minato_isop::ret_ [private] |
std::stack<local_vars> spot::minato_isop::todo_ [private] |