Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

cuddBdd.h File Reference

#include "var_set.h"

Include dependency graph for cuddBdd.h:

Include dependency graph

Go to the source code of this file.

Compounds

struct  bdd_external_hooks
struct  bdd_cache_stats
struct  bdd_mgr_init
struct  bdd_stats
struct  bdd_t

Defines

#define boolean   int
#define foreach_bdd_cube(fn, gen, cube)
#define foreach_bdd_node(fn, gen, node)
#define BDD_NO_LIMIT   ((1<<30)-2)
#define BDD_DFLT_ITE_ON   TRUE
#define BDD_DFLT_ITE_RESIZE_AT   75
#define BDD_DFLT_ITE_MAX_SIZE   1000000
#define BDD_DFLT_ITE_CONST_ON   TRUE
#define BDD_DFLT_ITE_CONST_RESIZE_AT   75
#define BDD_DFLT_ITE_CONST_MAX_SIZE   1000000
#define BDD_DFLT_ADHOC_ON   TRUE
#define BDD_DFLT_ADHOC_RESIZE_AT   0
#define BDD_DFLT_ADHOC_MAX_SIZE   10000000
#define BDD_DFLT_GARB_COLLECT_ON   TRUE
#define BDD_DFLT_DAEMON   NIL(void)
#define BDD_DFLT_MEMORY_LIMIT   BDD_NO_LIMIT
#define BDD_DFLT_NODE_RATIO   2.0
#define BDD_DFLT_INIT_BLOCKS   10

Typedefs

typedef DdManager bdd_manager
typedef unsigned int bdd_variableId
typedef DdNode bdd_node
typedef int bdd_literal
typedef bdd_t bdd_t
typedef bdd_mgr_init bdd_mgr_init
typedef bdd_cache_stats bdd_cache_stats
typedef bdd_stats bdd_stats
typedef bdd_gen bdd_gen
typedef bdd_external_hooks bdd_external_hooks

Enumerations

enum  bdd_min_match_type_t { BDD_MIN_TSM, BDD_MIN_OSM, BDD_MIN_OSDM }
enum  bdd_reorder_type_t {
  BDD_REORDER_SIFT, BDD_REORDER_WINDOW, BDD_REORDER_NONE, BDD_REORDER_SAME,
  BDD_REORDER_RANDOM, BDD_REORDER_RANDOM_PIVOT, BDD_REORDER_SIFT_CONVERGE, BDD_REORDER_SYMM_SIFT,
  BDD_REORDER_SYMM_SIFT_CONV, BDD_REORDER_WINDOW2, BDD_REORDER_WINDOW3, BDD_REORDER_WINDOW4,
  BDD_REORDER_WINDOW2_CONV, BDD_REORDER_WINDOW3_CONV, BDD_REORDER_WINDOW4_CONV, BDD_REORDER_GROUP_SIFT,
  BDD_REORDER_GROUP_SIFT_CONV, BDD_REORDER_ANNEALING, BDD_REORDER_GENETIC
}

Functions

EXTERN void bdd_end ARGS ((bdd_manager *))
EXTERN void bdd_register_daemon ARGS ((bdd_manager *, void(*daemon)()))
EXTERN void bdd_set_mgr_init_dflts ARGS ((bdd_mgr_init *))
EXTERN bdd_manager *bdd_start ARGS ((int))
EXTERN bdd_manager *bdd_start_with_params ARGS ((int, bdd_mgr_init *))
EXTERN bdd_t *bdd_get_variable ARGS ((bdd_manager *, bdd_variableId))
EXTERN bdd_t *bdd_dup ARGS ((bdd_t *))
EXTERN bdd_t *bdd_and ARGS ((bdd_t *, bdd_t *, boolean, boolean))
EXTERN bdd_t *bdd_and_smooth ARGS ((bdd_t *, bdd_t *, array_t *))
EXTERN bdd_t *bdd_between ARGS ((bdd_t *, bdd_t *))
EXTERN bdd_t *bdd_compose ARGS ((bdd_t *, bdd_t *, bdd_t *))
EXTERN bdd_t *bdd_consensus ARGS ((bdd_t *, array_t *))
EXTERN bdd_t *bdd_ite ARGS ((bdd_t *, bdd_t *, bdd_t *, boolean, boolean, boolean))
EXTERN bdd_t *bdd_minimize_with_params ARGS ((bdd_t *, bdd_t *, bdd_min_match_type_t, boolean, boolean, boolean))
EXTERN bdd_t *bdd_substitute ARGS ((bdd_t *, array_t *, array_t *))
EXTERN boolean bdd_is_tautology ARGS ((bdd_t *, boolean))
EXTERN bdd_node *bdd_get_node ARGS ((bdd_t *, boolean *))
EXTERN void bdd_get_stats ARGS ((bdd_manager *, bdd_stats *))
EXTERN array_t *bdd_get_varids ARGS ((array_t *))
EXTERN void bdd_print_stats ARGS ((bdd_stats, FILE *))
EXTERN bdd_variableId bdd_get_id_from_level ARGS ((bdd_manager *, long))
EXTERN long bdd_top_var_level ARGS ((bdd_manager *, bdd_t *))
EXTERN int bdd_gen_free ARGS ((bdd_gen *))
EXTERN bdd_gen *bdd_first_cube ARGS ((bdd_t *, array_t **))
EXTERN boolean bdd_next_cube ARGS ((bdd_gen *, array_t **))
EXTERN bdd_gen *bdd_first_node ARGS ((bdd_t *, bdd_node **))
EXTERN boolean bdd_next_node ARGS ((bdd_gen *, bdd_node **))
EXTERN void bdd_set_gc_mode ARGS ((bdd_manager *, boolean))
EXTERN void bdd_dynamic_reordering ARGS ((bdd_manager *, bdd_reorder_type_t))


Define Documentation

#define BDD_DFLT_ADHOC_MAX_SIZE   10000000
 

Definition at line 105 of file cuddBdd.h.

#define BDD_DFLT_ADHOC_ON   TRUE
 

Definition at line 103 of file cuddBdd.h.

#define BDD_DFLT_ADHOC_RESIZE_AT   0
 

Definition at line 104 of file cuddBdd.h.

#define BDD_DFLT_DAEMON   NIL(void)
 

Definition at line 107 of file cuddBdd.h.

#define BDD_DFLT_GARB_COLLECT_ON   TRUE
 

Definition at line 106 of file cuddBdd.h.

#define BDD_DFLT_INIT_BLOCKS   10
 

Definition at line 110 of file cuddBdd.h.

#define BDD_DFLT_ITE_CONST_MAX_SIZE   1000000
 

Definition at line 102 of file cuddBdd.h.

#define BDD_DFLT_ITE_CONST_ON   TRUE
 

Definition at line 100 of file cuddBdd.h.

#define BDD_DFLT_ITE_CONST_RESIZE_AT   75
 

Definition at line 101 of file cuddBdd.h.

#define BDD_DFLT_ITE_MAX_SIZE   1000000
 

Definition at line 99 of file cuddBdd.h.

#define BDD_DFLT_ITE_ON   TRUE
 

Definition at line 97 of file cuddBdd.h.

#define BDD_DFLT_ITE_RESIZE_AT   75
 

Definition at line 98 of file cuddBdd.h.

#define BDD_DFLT_MEMORY_LIMIT   BDD_NO_LIMIT
 

Definition at line 108 of file cuddBdd.h.

#define BDD_DFLT_NODE_RATIO   2.0
 

Definition at line 109 of file cuddBdd.h.

#define BDD_NO_LIMIT   ((1<<30)-2)
 

Definition at line 96 of file cuddBdd.h.

#define boolean   int
 

CHeaderFile*****************************************************************

FileName [cuddBdd.h]

PackageName [cudd]

Synopsis [Defines interface for the CU package to work with the ucb interface.]

Description []

Author [Abelardo Pardo]

Copyright [Copyright (c) 1994-1996 The Univ. of Colorado. All rights reserved.

Permission is hereby granted, without written agreement and without license or royalty fees, to use, copy, modify, and distribute this software and its documentation for any purpose, provided that the above copyright notice and the following two paragraphs appear in all copies of this software.

IN NO EVENT SHALL THE UNIVERSITY OF COLORADO BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF COLORADO HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

THE UNIVERSITY OF COLORADO SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF COLORADO HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.]

Revision [

Id:
cuddBdd.h,v 1.1 2002/09/17 21:59:11 dlm Exp
]

Definition at line 55 of file cuddBdd.h.

#define foreach_bdd_cube fn,
gen,
cube   
 

Value:

for((gen) = bdd_first_cube(fn, &cube);\
      bdd_is_gen_empty(gen) ? bdd_gen_free(gen) : TRUE;\
      (void) bdd_next_cube(gen, &cube))

Definition at line 77 of file cuddBdd.h.

#define foreach_bdd_node fn,
gen,
node   
 

Value:

for((gen) = bdd_first_node(fn, &node);\
      bdd_is_gen_empty(gen) ? bdd_gen_free(gen) : TRUE;\
      (void) bdd_next_node(gen, &node))

Definition at line 88 of file cuddBdd.h.


Typedef Documentation

typedef struct bdd_cache_stats bdd_cache_stats
 

typedef struct bdd_external_hooks bdd_external_hooks
 

typedef struct bdd_gen bdd_gen
 

Definition at line 233 of file cuddBdd.h.

typedef int bdd_literal
 

Definition at line 120 of file cuddBdd.h.

typedef struct DdManager bdd_manager
 

Definition at line 117 of file cuddBdd.h.

typedef struct bdd_mgr_init bdd_mgr_init
 

typedef struct DdNode bdd_node
 

Definition at line 119 of file cuddBdd.h.

typedef struct bdd_stats bdd_stats
 

typedef struct bdd_t bdd_t
 

typedef unsigned int bdd_variableId
 

Definition at line 118 of file cuddBdd.h.


Enumeration Type Documentation

enum bdd_min_match_type_t
 

Enumeration values:
BDD_MIN_TSM 
BDD_MIN_OSM 
BDD_MIN_OSDM 

Definition at line 162 of file cuddBdd.h.

enum bdd_reorder_type_t
 

Enumeration values:
BDD_REORDER_SIFT 
BDD_REORDER_WINDOW 
BDD_REORDER_NONE 
BDD_REORDER_SAME 
BDD_REORDER_RANDOM 
BDD_REORDER_RANDOM_PIVOT 
BDD_REORDER_SIFT_CONVERGE 
BDD_REORDER_SYMM_SIFT 
BDD_REORDER_SYMM_SIFT_CONV 
BDD_REORDER_WINDOW2 
BDD_REORDER_WINDOW3 
BDD_REORDER_WINDOW4 
BDD_REORDER_WINDOW2_CONV 
BDD_REORDER_WINDOW3_CONV 
BDD_REORDER_WINDOW4_CONV 
BDD_REORDER_GROUP_SIFT 
BDD_REORDER_GROUP_SIFT_CONV 
BDD_REORDER_ANNEALING 
BDD_REORDER_GENETIC 

Definition at line 251 of file cuddBdd.h.


Function Documentation

EXTERN void bdd_dynamic_reordering ARGS (bdd_manager *, bdd_reorder_type_t  
 

EXTERN void bdd_set_gc_mode ARGS (bdd_manager *, boolean)   
 

EXTERN boolean bdd_next_node ARGS (bdd_gen *, bdd_node **)   
 

EXTERN bdd_gen* bdd_first_node ARGS (bdd_t *, bdd_node **)   
 

EXTERN boolean bdd_next_cube ARGS (bdd_gen *, array_t **)   
 

EXTERN bdd_gen* bdd_first_cube ARGS (bdd_t *, array_t **)   
 

EXTERN boolean bdd_is_gen_empty ARGS (bdd_gen *)   
 

EXTERN long bdd_top_var_level ARGS (bdd_manager *, bdd_t *)   
 

EXTERN bdd_variableId bdd_get_id_from_level ARGS (bdd_manager *, long)   
 

EXTERN void bdd_print_stats ARGS (bdd_stats, FILE *)   
 

EXTERN array_t* bdd_get_varids ARGS (array_t *)   
 

EXTERN void bdd_get_stats ARGS (bdd_manager *, bdd_stats *)   
 

EXTERN bdd_node* bdd_get_node ARGS (bdd_t *, boolean *)   
 

EXTERN boolean bdd_is_tautology ARGS (bdd_t *, boolean)   
 

EXTERN bdd_t* bdd_substitute ARGS (bdd_t *, array_t *, array_t *)   
 

EXTERN bdd_t* bdd_minimize_with_params ARGS (bdd_t *, bdd_t *, bdd_min_match_type_t, boolean, boolean, boolean)   
 

EXTERN bdd_t* bdd_ite ARGS (bdd_t *, bdd_t *, bdd_t *, boolean, boolean, boolean)   
 

EXTERN double bdd_count_onset ARGS (bdd_t *, array_t *)   
 

EXTERN bdd_t* bdd_compose ARGS (bdd_t *, bdd_t *, bdd_t *)   
 

EXTERN boolean bdd_equal ARGS (bdd_t *, bdd_t *)   
 

EXTERN bdd_t* bdd_and_smooth ARGS (bdd_t *, bdd_t *, array_t *)   
 

EXTERN boolean bdd_leq ARGS (bdd_t *, bdd_t *, boolean, boolean)   
 

EXTERN bdd_variableId bdd_top_var_id ARGS (bdd_t *)   
 

EXTERN bdd_t *bdd_create_variable_after ARGS (bdd_manager *, bdd_variableId  
 

EXTERN bdd_manager* bdd_start_with_params ARGS (int, bdd_mgr_init *)   
 

EXTERN bdd_manager* bdd_start ARGS (int)   
 

EXTERN void bdd_set_mgr_init_dflts ARGS (bdd_mgr_init *)   
 

EXTERN void bdd_register_daemon ARGS (bdd_manager *, void(*daemon   )())
 

EXTERN int bdd_read_reordering_flag ARGS (bdd_manager *)   
 


Generated on Fri Jan 14 08:29:19 2005 for SystemC2.1beta11(excludingMSLib)(IncludingSCV)\nProvidedby:www.openverificationfoundation.org by doxygen1.2.18