/**CFile*********************************************************************** FileName [restrDebug.c] PackageName [restr] Synopsis [Utility functions to aid in debugging.] Description [Utility functions to aid in debugging.] SeeAlso [restrUtil.c] Author [Balakrishna Kumthekar ] Copyright [This file was created at the University of Colorado at Boulder. The University of Colorado at Boulder makes no warranty about the suitability of this software for any purpose. It is presented on an AS IS basis.] ******************************************************************************/ #include "restrInt.h" /*---------------------------------------------------------------------------*/ /* Constant declarations */ /*---------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------*/ /* Type declarations */ /*---------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------*/ /* Structure declarations */ /*---------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------*/ /* Variable declarations */ /*---------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------*/ /* Macro declarations */ /*---------------------------------------------------------------------------*/ /**AutomaticStart*************************************************************/ /*---------------------------------------------------------------------------*/ /* Static function prototypes */ /*---------------------------------------------------------------------------*/ /**AutomaticEnd***************************************************************/ /*---------------------------------------------------------------------------*/ /* Definition of exported functions */ /*---------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------*/ /* Definition of internal functions */ /*---------------------------------------------------------------------------*/ /**Function******************************************************************** Synopsis [Print names of network nodes given their id.] SideEffects [Print names of network nodes given their id.] SeeAlso [] ******************************************************************************/ void RestrNamePrintByMddId( Ntk_Network_t *network, array_t *array) { char *name; int i,id; arrayForEachItem(int, array, i, id) { name = Ntk_NodeReadName(Ntk_NetworkFindNodeByMddId(network,id)); fprintf(vis_stdout, "%s\n",name); } } /**Function******************************************************************** Synopsis [Interface function to bdd_print_minterm given an mvf array.] SideEffects [Interface function to bdd_print_minterm given an mvf array.] SeeAlso [] ******************************************************************************/ void RestrPrintMvfArray( mdd_manager *ddManager, Mvf_Function_t *mvfArray, array_t *nodeArray, array_t *idArray) { int i; mdd_t *tempMdd; Mvf_Function_t *mvf; Ntk_Node_t *node; for(i=0;i R(x,y) */ bdd_ref(uCube = bdd_bdd_compute_cube(ddManager,uVars,NIL(int),nVars)); bdd_ref(left = bdd_bdd_and_abstract(ddManager,rel,Ruy,uCube)); bdd_recursive_deref(ddManager,Ruy); bdd_recursive_deref(ddManager,uCube); bdd_ref(result = bdd_bdd_ite(ddManager,left,Rxy,one)); bdd_recursive_deref(ddManager,Rxy); bdd_recursive_deref(ddManager,left); if (result != one) { (void) fprintf(vis_stdout,"Relation is not transitive.\n"); } else { (void) fprintf(vis_stdout,"Relation IS transitive.\n"); } bdd_recursive_deref(ddManager,result); } /**Function******************************************************************** Synopsis [Print the names of an array of BDD variables.] SideEffects [None] SeeAlso [] ******************************************************************************/ void RestrPrintVarArrayNames( bdd_manager *ddManager, bdd_node **xVars, int nVars) { int index, i; mvar_type var; for(i=0;i