21 #ifndef ABC__aig__cnf__cnf_h
22 #define ABC__aig__cnf__cnf_h
117 #define Cnf_CnfForClause( p, pBeg, pEnd, i ) \
118 for ( i = 0; i < p->nClauses && (pBeg = p->pClauses[i]) && (pEnd = p->pClauses[i+1]); i++ )
121 #define Cnf_CutForEachLeaf( p, pCut, pLeaf, i ) \
122 for ( i = 0; (i < (int)(pCut)->nFanins) && ((pLeaf) = Aig_ManObj(p, (pCut)->pFanins[i])); i++ )
144 extern void Cnf_ReadMsops(
char ** ppSopSizes,
char *** ppSops );
Cnf_Man_t * Cnf_ManRead()
static int * Cnf_CutLeaves(Cnf_Cut_t *pCut)
void Cnf_DeriveFastMark(Aig_Man_t *p)
static Cnf_Cut_t * Cnf_ObjBestCut(Aig_Obj_t *pObj)
typedefABC_NAMESPACE_HEADER_START struct Vec_Ptr_t_ Vec_Ptr_t
INCLUDES ///.
Cnf_Dat_t * Cnf_Derive(Aig_Man_t *pAig, int nOutputs)
typedefABC_NAMESPACE_HEADER_START struct Aig_Man_t_ Aig_Man_t
INCLUDES ///.
static int Cnf_CutSopCost(Cnf_Man_t *p, Dar_Cut_t *pCut)
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///.
void Cnf_ManPostprocess(Cnf_Man_t *p)
void Cnf_DataWriteIntoFile(Cnf_Dat_t *p, char *pFileName, int fReadable, Vec_Int_t *vForAlls, Vec_Int_t *vExists)
int Cnf_DataWriteOrClause(void *pSat, Cnf_Dat_t *pCnf)
Vec_Ptr_t * Cnf_ManScanMapping(Cnf_Man_t *p, int fCollect, int fPreorder)
Cnf_Dat_t * Cnf_DeriveWithMan(Cnf_Man_t *p, Aig_Man_t *pAig, int nOutputs)
void Cnf_ManStop(Cnf_Man_t *p)
Cnf_Dat_t * Cnf_DeriveOtherWithMan(Cnf_Man_t *p, Aig_Man_t *pAig, int fSkipTtMin)
Cnf_Dat_t * Cnf_ManWriteCnfOther(Cnf_Man_t *p, Vec_Ptr_t *vMapped)
void Cnf_DataTranformPolarity(Cnf_Dat_t *pCnf, int fTransformPos)
void Cnf_ComputeClauses(Aig_Man_t *p, Aig_Obj_t *pRoot, Vec_Ptr_t *vLeaves, Vec_Ptr_t *vNodes, Vec_Int_t *vMap, Vec_Int_t *vCover, Vec_Int_t *vClauses)
void Cnf_CutPrint(Cnf_Cut_t *pCut)
Cnf_Dat_t * Cnf_DeriveSimpleForRetiming(Aig_Man_t *p)
static void Cnf_ObjSetBestCut(Aig_Obj_t *pObj, Cnf_Cut_t *pCut)
Cnf_Dat_t * Cnf_DataDup(Cnf_Dat_t *p)
Cnf_Dat_t * Cnf_ManWriteCnf(Cnf_Man_t *p, Vec_Ptr_t *vMapped, int nOutputs)
static unsigned * Cnf_CutTruth(Cnf_Cut_t *pCut)
#define Dar_ObjForEachCut(pObj, pCut, i)
Vec_Int_t * Cnf_DeriveMappingArray(Aig_Man_t *pAig)
FUNCTION DECLARATIONS ///.
Cnf_Cut_t * Cnf_CutCompose(Cnf_Man_t *p, Cnf_Cut_t *pCut, Cnf_Cut_t *pCutFan, int iFan)
void Cnf_DataFlipLastLiteral(Cnf_Dat_t *p)
void Cnf_DeriveMapping(Cnf_Man_t *p)
void Cnf_ReadMsops(char **ppSopSizes, char ***ppSops)
FUNCTION DEFINITIONS ///.
Cnf_Dat_t * Cnf_DataAlloc(Aig_Man_t *pAig, int nVars, int nClauses, int nLiterals)
void Cnf_ManFreeCuts(Cnf_Man_t *p)
Vec_Int_t * Cnf_DataCollectPiSatNums(Cnf_Dat_t *pCnf, Aig_Man_t *p)
void Cnf_SopConvertToVector(char *pSop, int nCubes, Vec_Int_t *vCover)
Cnf_Dat_t * Cnf_DeriveFast(Aig_Man_t *p, int nOutputs)
void * Cnf_DataWriteIntoSolverInt(void *pSat, Cnf_Dat_t *p, int nFrames, int fInit)
int Cnf_DataAddXorClause(void *pSat, int iVarA, int iVarB, int iVarC)
int Cnf_ManMapForCnf(Cnf_Man_t *p)
void Cnf_CollectLeaves(Aig_Obj_t *pRoot, Vec_Ptr_t *vSuper, int fStopCompl)
void Cnf_CutUpdateRefs(Cnf_Man_t *p, Cnf_Cut_t *pCut, Cnf_Cut_t *pCutFan, Cnf_Cut_t *pCutRes)
Cnf_Dat_t * Cnf_DeriveOther(Aig_Man_t *pAig, int fSkipTtMin)
#define ABC_NAMESPACE_HEADER_START
NAMESPACES ///.
unsigned char * Cnf_DataDeriveLitPolarities(Cnf_Dat_t *p)
static Dar_Cut_t * Dar_ObjBestCut(Aig_Obj_t *pObj)
#define ABC_NAMESPACE_HEADER_END
void Cnf_DataLift(Cnf_Dat_t *p, int nVarsPlus)
int Cnf_DataWriteAndClauses(void *p, Cnf_Dat_t *pCnf)
void Cnf_ManTransferCuts(Cnf_Man_t *p)
void Cnf_CutFree(Cnf_Cut_t *pCut)
Cnf_Cut_t * Cnf_CutCreate(Cnf_Man_t *p, Aig_Obj_t *pObj)
Vec_Int_t * Cnf_ManWriteCnfMapping(Cnf_Man_t *p, Vec_Ptr_t *vMapped)
DECLARATIONS ///.
Cnf_Man_t * Cnf_ManStart()
FUNCTION DEFINITIONS ///.
void * Cnf_DataWriteIntoSolver(Cnf_Dat_t *p, int nFrames, int fInit)
Cnf_Dat_t * Cnf_DeriveSimple(Aig_Man_t *p, int nOutputs)
void Cnf_DataPrint(Cnf_Dat_t *p, int fReadable)
void Cnf_DataFree(Cnf_Dat_t *p)
Vec_Int_t * Cnf_DataCollectCiSatNums(Cnf_Dat_t *pCnf, Aig_Man_t *p)
Cnf_Dat_t * Cnf_DataReadFromFile(char *pFileName)
Vec_Ptr_t * Aig_ManScanMapping(Cnf_Man_t *p, int fCollect)
static int Cnf_CutLeaveNum(Cnf_Cut_t *pCut)
typedefABC_NAMESPACE_HEADER_START struct Cnf_Man_t_ Cnf_Man_t
INCLUDES ///.
Vec_Int_t * Cnf_DataCollectCoSatNums(Cnf_Dat_t *pCnf, Aig_Man_t *p)
void Cnf_ManPrepare()
FUNCTION DEFINITIONS ///.