Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
INTERSECTBDDNODE(3)		  BDD FUNCTIONS 	     INTERSECTBDDNODE(3)

NAME
     intersectbddnode - tests for an intersection between two bdd nodes.

SYNOPSIS
     #include "bdd101.h"
     bddnode *intersectbddnode( 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
     intersectbddnode tests if the intersection of BddNode1 and BddNode2 exists,
     in  the  bdd system BddSystem.  If a null pointer is given, the default bdd
     system is used.

RETURN VALUE
     intersectbddnode 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_AND,
				 createablatom( "i0" ),
				 createablatom( "i1" ) );
	BddNode1 = addbddcircuitabl( BddCircuit, Expr );
	freeablexpr( Expr );
	Expr = createablbinexpr( ABL_OR,
				 createablatom( "i0" ),
				 createablatom( "i1" ) );
	BddNode1 = addbddcircuitabl( BddCircuit, Expr );
	freeablexpr( Expr );
	BddImply = intersectbddnode( (bddsystem *)0, BddNode1, BddNode2 );
	Expr = convertbddcircuitabl( BddCircuit, BddNode );
	/* displays (i0 and i1)) */
	viewablexpr( Expr, ABL_VIEW_VHDL );
	freeablexpr( Expr );
	destroybddsystem( (bddsystem *)0 );
	destroybddcircuit( (bddcircuit *)0 );

SEE ALSO
     bdd(1)

ASIM/LIP6			 October 1, 1997	     INTERSECTBDDNODE(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=intersectbddnode&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help