typedef struct ProbAssign_TAG*  ProbAssign_ptr;
typedef struct ParserAp_TAG* ParserAp_ptr;
typedef struct ParserProb_TAG* ParserProb_ptr;
typedef struct Be_Manager_TAG* Be_Manager_ptr; /* generic be manger */
typedef struct Be_Cnf_TAG* Be_Cnf_ptr; /* cnf representation */
typedef void* be_ptr;
typedef struct nodeStack *Bmc_Stack_ptr;
typedef CmdLineOpt* CmdLineOpt_ptr;
typedef  CoreData* CoreData_ptr;
typedef struct cmp_struct* cmp_struct_ptr;
typedef struct FlatHierarchy* FlatHierarchy_ptr;
typedef struct PredicateExtractor_TAG* PredicateExtractor_ptr;
typedef struct PredicateNormaliser_TAG* PredicateNormaliser_ptr;
typedef struct NFunction_TAG*  NFunction_ptr;
typedef struct ResolveSymbol_TAG*  ResolveSymbol_ptr;
typedef struct SymbCache_TAG*  SymbCache_ptr;
typedef struct SymbLayer_TAG* SymbLayer_ptr;
typedef struct SymbTable_TAG* SymbTable_ptr;
typedef SymbTypePrinterInfo* SymbTypePrinterInfo_ptr;
typedef struct SymbType_TAG* SymbType_ptr;
typedef struct CheckerBase_TAG*  CheckerBase_ptr;
typedef struct CheckerCore_TAG*  CheckerCore_ptr;
typedef struct CheckerPsl_TAG*  CheckerPsl_ptr;
typedef struct CheckerStatement_TAG*  CheckerStatement_ptr;
typedef struct TypeChecker_TAG*  TypeChecker_ptr;
typedef struct DdNode * add_ptr;
typedef struct DdNode * bdd_ptr;
typedef struct DdNode * dd_ptr; /* represents both add_ptr and bdd_ptr */
typedef struct VarsHandler_TAG*  VarsHandler_ptr;
typedef struct GroupInfo_TAG* GroupInfo_ptr;
typedef struct BaseEnc_TAG*  BaseEnc_ptr;
typedef struct BoolEncClient_TAG*  BoolEncClient_ptr;
typedef bdd_ptr BddVarSet_ptr;
typedef struct BddEnc_TAG*  BddEnc_ptr;
typedef struct BddEncCache_TAG*  BddEncCache_ptr;
typedef struct BeEnc_TAG*  BeEnc_ptr;
typedef struct BitValues_TAG*  BitValues_ptr;
typedef struct BoolEnc_TAG*  BoolEnc_ptr;
typedef struct AddArray_TAG* AddArray_ptr;
typedef struct OrdGroups_TAG*  OrdGroups_ptr;
typedef struct BddELFwdSavedOptions_TAG* BddELFwdSavedOptions_ptr;
typedef struct BddFsm_TAG*  BddFsm_ptr;
typedef struct BddFsmCache_TAG* BddFsmCache_ptr;
typedef struct FairnessList_TAG* FairnessList_ptr;
typedef node_ptr FairnessListIterator_ptr; 
typedef struct JusticeList_TAG* JusticeList_ptr;
typedef struct CompassionList_TAG* CompassionList_ptr;
typedef struct BeFsm_TAG* BeFsm_ptr;
typedef struct FsmBuilder_TAG* FsmBuilder_ptr;
typedef struct BoolSexpFsm_TAG*  BoolSexpFsm_ptr;
typedef node_ptr Expr_ptr;
typedef node_ptr VarFsm_ptr;
typedef struct SexpFsm_TAG* SexpFsm_ptr;
typedef struct HrcDumper_TAG*  HrcDumper_ptr;
typedef struct HrcDumperDebug_TAG*  HrcDumperDebug_ptr;
typedef struct HrcDumperSmv_TAG*  HrcDumperSmv_ptr;
typedef struct HrcDumperXml_TAG*  HrcDumperXml_ptr;
typedef struct HrcFlattener_TAG*  HrcFlattener_ptr;
typedef struct HrcNode_TAG*  HrcNode_ptr;
typedef struct HrcVarDependencies_TAG*  HrcVarDependencies_ptr;
typedef struct Ltl_StructCheckLtlSpec_TAG* Ltl_StructCheckLtlSpec_ptr;
typedef struct MasterNodeWalker_TAG*  MasterNodeWalker_ptr;
typedef struct node * node_ptr;
typedef struct node_profile_info_TAG* node_profile_info_ptr;
typedef struct NodeWalker_TAG*  NodeWalker_ptr;
typedef struct MasterNormalizer_TAG*  MasterNormalizer_ptr;
typedef struct NormalizerBase_TAG*  NormalizerBase_ptr;
typedef struct NormalizerCore_TAG*  NormalizerCore_ptr;
typedef struct NormalizerPsl_TAG*  NormalizerPsl_ptr;
typedef struct MasterPrinter_TAG*  MasterPrinter_ptr;
typedef struct PrinterBase_TAG*  PrinterBase_ptr;
typedef struct PrinterIWffCore_TAG*  PrinterIWffCore_ptr;
typedef struct PrinterPsl_TAG*  PrinterPsl_ptr;
typedef struct PrinterSexpCore_TAG*  PrinterSexpCore_ptr;
typedef struct PrinterWffCore_TAG*  PrinterWffCore_ptr;
typedef struct options_TAG*  options_ptr;
typedef struct _option_structure* opt_ptr;
typedef struct _option_value_list* ovl_ptr;
typedef struct _OptsHandler_Rec * OptsHandler_ptr;
typedef struct ParserIdList_TAG* ParserIdList_ptr;
typedef struct ParserOrd_TAG* ParserOrd_ptr;
typedef node_ptr PslNode_ptr;
typedef struct Prop_TAG*  Prop_ptr;
typedef struct PropDb_TAG*  PropDb_ptr;
typedef struct ConjElem_TAG*  ConjElem_ptr;
typedef struct ConjSet_TAG*  ConjSet_ptr;
typedef struct InlineResult_TAG*  InlineResult_ptr;
typedef struct SatIncSolver_TAG* SatIncSolver_ptr;
typedef struct SatSolver_TAG* SatSolver_ptr;
typedef TermFactoryCallbacks* TermFactoryCallbacks_ptr;
typedef struct SatMinisat_TAG* SatMinisat_ptr;
typedef struct SatZchaff_TAG* SatZchaff_ptr;
typedef struct SexpInliner_TAG* SexpInliner_ptr;
typedef struct InlineRes_TAG* InlineRes_ptr;
typedef struct SimulateTransSet_TAG* SimulateTransSet_ptr;
typedef struct BaseEvaluator_TAG*  BaseEvaluator_ptr;
typedef struct BaseTraceExecutor_TAG*  BaseTraceExecutor_ptr;
typedef struct BDDCompleteTraceExecutor_TAG*  BDDCompleteTraceExecutor_ptr;
typedef struct BDDPartialTraceExecutor_TAG*  BDDPartialTraceExecutor_ptr;
typedef struct CompleteTraceExecutor_TAG*  CompleteTraceExecutor_ptr;
typedef struct PartialTraceExecutor_TAG*  PartialTraceExecutor_ptr;
typedef struct SATCompleteTraceExecutor_TAG*  SATCompleteTraceExecutor_ptr;
typedef struct SATPartialTraceExecutor_TAG*  SATPartialTraceExecutor_ptr;
typedef struct TraceLoader_TAG* TraceLoader_ptr;
typedef struct TraceXmlLoader_TAG* TraceXmlLoader_ptr;
typedef struct TraceCompact_TAG* TraceCompact_ptr;
typedef struct TraceExplainer_TAG* TraceExplainer_ptr;
typedef struct TracePlugin_TAG* TracePlugin_ptr;
typedef struct TraceTable_TAG* TraceTable_ptr;
typedef struct TraceXmlDumper_TAG* TraceXmlDumper_ptr;
typedef struct XmlNodes_TAG* XmlNodes_ptr;
typedef struct Trace_TAG* Trace_ptr;
typedef struct TraceFrozenFrame_TAG* TraceFrozenFrame_ptr;
typedef struct TraceVarFrame_TAG* TraceVarFrame_ptr;
typedef struct TraceDefineFrame_TAG* TraceDefineFrame_ptr;
typedef struct TraceManager_TAG* TraceManager_ptr;
typedef struct TraceOpt_TAG*  TraceOpt_ptr;
typedef ClusterBasedTrans* ClusterBasedTrans_ptr;
typedef struct BddTrans_TAG* BddTrans_ptr;
typedef struct Cluster_TAG*  Cluster_ptr;
typedef struct ClusterIwls95_TAG*  ClusterIwls95_ptr;
typedef struct ClusterList_TAG* ClusterList_ptr;
typedef node_ptr ClusterListIterator_ptr; 
typedef struct ClusterOptions_TAG* ClusterOptions_ptr;
typedef struct GenericTrans_TAG* GenericTrans_ptr;
typedef struct st_table * hash_ptr;
typedef struct NodeGraph_TAG*  NodeGraph_ptr;
typedef struct NodeList_TAG* NodeList_ptr;
typedef struct Link_TAG* ListIter_ptr;
typedef struct Object_TAG*  Object_ptr;
typedef struct Olist_TAG* Olist_ptr;
typedef struct Onode_TAG* Onode_ptr;
typedef struct Pair_TAG*  Pair_ptr;
typedef struct Slist_TAG* Slist_ptr;
typedef struct Snode_TAG* Snode_ptr;
typedef struct Sset_TAG* Sset_ptr;
typedef struct Ssnode_TAG* Ssnode_ptr;
typedef struct Stack_TAG* Stack_ptr;
typedef struct TimerBench_TAG* TimerBench_ptr;
typedef struct Triple_TAG*  Triple_ptr;
typedef struct string_ *string_ptr;
typedef struct WordNumber_TAG* WordNumber_ptr;

typedef enum TransType_TAG TransType;

typedef struct Set_TAG* Set_t;
typedef node_ptr Set_Element_t;
typedef ListIter_ptr Set_Iterator_t;

typedef bdd_ptr BddStates;
typedef bdd_ptr BddInputs;
typedef bdd_ptr BddStatesInputs;
typedef bdd_ptr BddStatesInputsNexts;
typedef bdd_ptr BddInvarStates;
typedef bdd_ptr BddInvarInputs;

typedef enum SymbFilterType_TAG SymbFilterType;