applybddnode(3)

applybddnode3

Applies an operator on two bdd nodes.

Synopsys

#include "bdd101.h"
bddnode ∗applybddnode( BddSystem, Oper, BddNode1, BddNode2 )
  bddsystem ∗BddSystem;
  long       Oper;
  bddnode   ∗BddNode1;
  bddnode   ∗BddNode2;

Parameters

BddSystem

The bdd system.

Oper

The binary operator.

BddNode1

The first bdd node.

BddNode2

The second bdd node.

Overview

applybddnode computes the boolean function BddNode1 Oper BddNode2 in the bdd system BddSystem. If a null pointer is given, the default bdd system is used.

Return value

applybddnode 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.

Examples

#include "bdd101.h"
   bddsystem  ∗BddSystem;
   bddcircuit ∗BddCircuit;
   bddnode    ∗BddNode;
   chain_list ∗Expr;
   BddSystem  = createbddsystem( 100, 1000, 100, 50000 );
   BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
   addbddcircuitin( (bddcircuit ∗)0, "i0", 0, BDD_IN_MODE_FIRST );
   addbddcircuitin( (bddcircuit ∗)0, "i1", 0, BDD_IN_MODE_FIRST );
   BddNode = applybddnode( (bddsystem ∗)0,
                           ABL_AND,
                           searchbddcircuitin( (bddcircuit ∗)0, "i0" ),
                           searchbddcircuitin( (bddcircuit ∗)0, "i1" ) );
   Expr = convertbddcircuitabl( (bddcircuit ∗)0, BddNode );
   /* displays (i0 and i1) */
   viewablexpr( Expr, ABL_VIEW_VHDL );
   freeablexpr( Expr );
   destroybddsystem( (bddsystem ∗)0 );
   destroybddcircuit( (bddcircuit ∗)0 );

Releases

4 releases since Debian 7 (Wheezy); the text changed 1 time.

  1. 7–8
  2. 9–10

From alliance 5.1.1-3 in Debian 10 (Buster). Parsed by carta from the page's man source.