cudd  3.0.0
The University of Colorado Decision Diagram Package
Functions
cuddZddCount.c File Reference

Procedures to count the number of minterms of a ZDD. More...

#include "util.h"
#include "cuddInt.h"
Include dependency graph for cuddZddCount.c:

Functions

int Cudd_zddCount (DdManager *zdd, DdNode *P)
 Counts the number of minterms in a ZDD. More...
 
double Cudd_zddCountDouble (DdManager *zdd, DdNode *P)
 Counts the number of minterms of a ZDD. More...
 
static int cuddZddCountStep (DdNode *P, st_table *table, DdNode *base, DdNode *empty)
 Performs the recursive step of Cudd_zddCount. More...
 
static double cuddZddCountDoubleStep (DdNode *P, st_table *table, DdNode *base, DdNode *empty)
 Performs the recursive step of Cudd_zddCountDouble. More...
 
static enum st_retval st_zdd_countfree (void *key, void *value, void *arg)
 Frees the memory associated with the computed table of Cudd_zddCount. More...
 
static enum st_retval st_zdd_count_dbl_free (void *key, void *value, void *arg)
 Frees the memory associated with the computed table of Cudd_zddCountDouble. More...
 

Detailed Description

Procedures to count the number of minterms of a ZDD.

Author
Hyong-Kyoon Shin, In-Ho Moon

Function Documentation

◆ Cudd_zddCount()

int Cudd_zddCount ( DdManager zdd,
DdNode P 
)

Counts the number of minterms in a ZDD.

Returns an integer representing the number of minterms in a ZDD.

Side effects None
See also
Cudd_zddCountDouble

◆ Cudd_zddCountDouble()

double Cudd_zddCountDouble ( DdManager zdd,
DdNode P 
)

Counts the number of minterms of a ZDD.

This procedure is used in Cudd_zddCountMinterm.

Returns
the count. If the procedure runs out of memory, it returns (double) CUDD_OUT_OF_MEM.
Side effects None
See also
Cudd_zddCountMinterm Cudd_zddCount

◆ cuddZddCountDoubleStep()

static double cuddZddCountDoubleStep ( DdNode P,
st_table table,
DdNode base,
DdNode empty 
)
static

Performs the recursive step of Cudd_zddCountDouble.

Side effects None

◆ cuddZddCountStep()

static int cuddZddCountStep ( DdNode P,
st_table table,
DdNode base,
DdNode empty 
)
static

Performs the recursive step of Cudd_zddCount.

Side effects None

◆ st_zdd_count_dbl_free()

static enum st_retval st_zdd_count_dbl_free ( void *  key,
void *  value,
void *  arg 
)
static

Frees the memory associated with the computed table of Cudd_zddCountDouble.

Side effects None

◆ st_zdd_countfree()

static enum st_retval st_zdd_countfree ( void *  key,
void *  value,
void *  arg 
)
static

Frees the memory associated with the computed table of Cudd_zddCount.

Side effects None