GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  RESTRICTBDDNODE (3)

NAME

restrictbddnode - substitutes a variable by a zero or one, in a bdd.

[Include document man1/alc_origin.1]

CONTENTS

Synopsys
Parameters
Description
Return Value
Errors
Example
See Also

SYNOPSYS






#include "bdd101.h"
bddnode *restrictbddnode( BddSystem, BddNode, Variable, BddSubst )
  bddsystem *BddSystem;
  bddnode   *BddNode;
  bddvar     Variable;
  bddnode   *BddSubst;


PARAMETERS

BddSystem The bdd system.
BddNode The bdd node.
Variable The variable to find.
BddSubst The bdd to substitute with.

DESCRIPTION

restrictbddnode substitutes all the occurency of the variable Variable in the bdd node BddNode by the bdd node BddSubst, in the bdd system BddSystem. If a null pointer is given, the default bdd system is used. The BddSubst must be a the node BddSystem->ONE or BddSystem->ZERO.

RETURN VALUE

restrictbddnode returns the resulting bdd node.

ERRORS

"variable xxx out of range, error !"
The Variable parameter must be less or equal to the BddSystem->NUMBER_VAR field.
"index xxx out of range, error !"
The BddSubst parameter must have its index less than BDD_INDEX_MIN.

EXAMPLE






#include "bdd101.h"
   bddsystem  *BddSystem;
   bddcircuit *BddCircuit;
   bddnode    *BddVariable;
   bddnode    *BddNode;
   bddnode    *BddSubst;
   chain_list *Expr;
   bddvar         Variable;
   BddSystem  = createbddsystem( 100, 1000, 100, 50000 );
   BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
   Expr = createablbinexpr( ABL_OR,
                            createablatom( "i0" ),
                            createablatom( "i1" ) );
   BddNode = addbddcircuitabl( BddCircuit, Expr );
   freeablexpr( Expr );
   BddSubst = BddSystem->ONE;
   BddVariable = searchbddcircuitin( (bddcircuit *)0, "i0" );
   Variable = getbddvarbyindex( (bddsystem *)0, BddVariable->INDEX );
   BddNode = restrictbddnode( (bddsystem *)0, BddNode, Variable, BddSubst );
   Expr = convertbddcircuitabl( BddCircuit, BddNode );
   /* displays ’1’ */
   viewablexpr( Expr, ABL_VIEW_VHDL );
   freeablexpr( Expr );
   destroybddsystem( (bddsystem *)0 );
   destroybddcircuit( (bddcircuit *)0 );


SEE ALSO

bdd(1)

[Include document man1/alc_bug_report.1]

Search for    or go to Top of page |  Section 3 |  Main Index


ASIM/LIP6 RESTRICTBDDNODE (3) October 1, 1997

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.