Scroll to navigation

APPLYBDDNODELIST(3) BDD FUNCTIONS APPLYBDDNODELIST(3)

NAME

applybddnodelist - applies an opertor to a bdd nodes list.

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 ∗applybddnodelist( BddSystem, Oper, BddList )

bddsystem ∗BddSystem;
long Oper;
chain_list ∗BddList;

PARAMETERS

The bdd system.
The operator.
The bdd nodes list.

DESCRIPTION

applybddnodelist applies the boolean operator Oper to the bdd nodes list BddList in the bdd system BddSystem. If a null pointer is given, the default bdd system is used.

RETURN VALUE

applybddnodelist returns a pointer to the resulting bdd node with its number of external reference incremented.

ERRORS

"bad operator xxx error !"

The Oper parameter must be a valid binary operator.
"bad list !"
The BddList parameter must be a valid list.

EXAMPLE

#include "bdd101.h"

bddsystem ∗BddSystem;
bddcircuit ∗BddCircuit;
bddnode ∗BddNode;
chain_list ∗BddList;
chain_list ∗Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
BddList = (chain_list ∗)0;
BddList = addbddnodelist( (bddsystem ∗)0, BddList,
addbddcircuitin( (bddcircuit ∗)0,
"i0", 0, BDD_IN_MODE_FIRST ) );
BddList = addbddnodelist( (bddsystem ∗)0, BddList,
addbddcircuitin( (bddcircuit ∗)0,
"i1", 0, BDD_IN_MODE_FIRST );
BddList = addbddnodelist( (bddsystem ∗)0, BddList,
addbddcircuitin( (bddcircuit ∗)0,
"i2", 0, BDD_IN_MODE_FIRST );
BddNode = applybddnodelist( (bddsystem ∗)0, ABL_AND, BddList );
Expr = convertbddcircuitabl( (bddcircuit ∗)0, BddNode );
/* displays (i0 and i1 and i2) */
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.

October 1, 1997 ASIM/LIP6