NAME¶
cofactorbddnode - computes the generalized cofactor.
ORIGIN¶
This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at
LIP6 laboratory of Université 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 ∗cofactorbddnode( 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¶
cofactorbddnode computes the generalized cofactor of
BddNode1 by
BddNode2, in the
bdd system
BddSystem. If a null pointer
is given, the default
bdd system is used.
RETURN VALUE¶
cofactorbddnode returns the resulting
bdd node.
ERRORS¶
"index xxx out of range"
The BddNode2 parameter must be different to the
zero bdd node.
EXAMPLE¶
#include "bdd101.h"
bddsystem ∗BddSystem;
bddcircuit ∗BddCircuit;
bddnode ∗BddNode1;
bddnode ∗BddNode2;
bddnode ∗BddNode;
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" ) );
BddNode2 = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddNode = cofactorbddnode( (bddsystem ∗)0, BddNode1, BddNode2 );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays '1' */
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.