IMPLYBDDNODE(3) BDD FUNCTIONS IMPLYBDDNODE(3)
NAME
implybddnode - computes a bdd that implies a conjonction of two bdd nodes.
ORIGIN
This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at LIP6 laboratory of Universite Pierre et Marie CURIE, in
Paris, France.
Web : http://asim.lip6.fr/recherche/alliance/
E-mail : alliance-users@asim.lip6.fr
SYNOPSYS
#include "bdd101.h"
bddnode *implybddnode( BddSystem, BddNode1, BddNode2 )
bddsystem *BddSystem;
bddnode *BddNode1;
bddnode *BddNode2;
PARAMETERS
BddSystem The bdd system.
BddNode1 The first bdd node.
BddNode2 The second bdd node.
DESCRIPTION
implybddnode tests if the intersection of BddNode1 and not BddNode2, exists, in the bdd system BddSystem. If a null pointer is given, the
default bdd system is used.
RETURN VALUE
implybddnode returns the bdd node zero if there is no intersection, and a computed bdd node otherwise.
EXAMPLE
#include "bdd101.h"
bddsystem *BddSystem;
bddcircuit *BddCircuit;
bddnode *BddNode1;
bddnode *BddNode2;
bddnode *BddImply;
chain_list *Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_OR,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode1 = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode1 = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddImply = implybddnode( (bddsystem *)0, BddNode1, BddNode2 );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays (i0 and (not i1)) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem *)0 );
destroybddcircuit( (bddcircuit *)0 );
SEE ALSO
bdd(1)
BUG REPORT
This tool is under development at the ASIM department of the LIP6 laboratory.
We need your feedback to improve documentation and tools.
ASIM
/LIP6 October 1, 1997 IMPLYBDDNODE(3)