Go to the source code of this file.
|
ABC_NAMESPACE_IMPL_START void | Fra_AddClausesMux (Fra_Man_t *p, Aig_Obj_t *pNode) |
| DECLARATIONS ///. More...
|
|
void | Fra_AddClausesSuper (Fra_Man_t *p, Aig_Obj_t *pNode, Vec_Ptr_t *vSuper) |
|
void | Fra_CollectSuper_rec (Aig_Obj_t *pObj, Vec_Ptr_t *vSuper, int fFirst, int fUseMuxes) |
|
Vec_Ptr_t * | Fra_CollectSuper (Aig_Obj_t *pObj, int fUseMuxes) |
|
void | Fra_ObjAddToFrontier (Fra_Man_t *p, Aig_Obj_t *pObj, Vec_Ptr_t *vFrontier) |
|
void | Fra_CnfNodeAddToSolver (Fra_Man_t *p, Aig_Obj_t *pOld, Aig_Obj_t *pNew) |
|
DECLARATIONS ///.
CFile****************************************************************
FileName [fraCnf.c]
SystemName [ABC: Logic synthesis and verification system.]
PackageName [New FRAIG package.]
Synopsis []
Author [Alan Mishchenko]
Affiliation [UC Berkeley]
Date [Ver. 1.0. Started - June 30, 2007.]
Revision [
- Id:
- fraCnf.c,v 1.00 2007/06/30 00:00:00 alanmi Exp
]FUNCTION DEFINITIONS /// Function*************************************************************
Synopsis [Addes clauses to the solver.]
Description []
SideEffects []
SeeAlso []
Definition at line 46 of file fraCnf.c.
49 int pLits[4], RetValue, VarF, VarI, VarT, VarE, fCompT, fCompE;
int sat_solver_addclause(sat_solver *s, lit *begin, lit *end)
static int Aig_IsComplement(Aig_Obj_t *p)
static Aig_Obj_t * Aig_Regular(Aig_Obj_t *p)
Aig_Obj_t * Aig_ObjRecognizeMux(Aig_Obj_t *pObj, Aig_Obj_t **ppObjT, Aig_Obj_t **ppObjE)
static lit toLitCond(int v, int c)
int Aig_ObjIsMuxType(Aig_Obj_t *pObj)
static int Fra_ObjSatNum(Aig_Obj_t *pObj)
Function*************************************************************
Synopsis [Addes clauses to the solver.]
Description []
SideEffects []
SeeAlso []
Definition at line 129 of file fraCnf.c.
132 int * pLits, nLits, RetValue, i;
int sat_solver_addclause(sat_solver *s, lit *begin, lit *end)
static int Aig_IsComplement(Aig_Obj_t *p)
static Aig_Obj_t * Aig_Regular(Aig_Obj_t *p)
#define ABC_ALLOC(type, num)
static int Vec_PtrSize(Vec_Ptr_t *p)
static int Aig_ObjIsNode(Aig_Obj_t *pObj)
static lit toLitCond(int v, int c)
static int Fra_ObjSatNum(Aig_Obj_t *pObj)
#define Vec_PtrForEachEntry(Type, vVec, pEntry, i)
MACRO DEFINITIONS ///.
Function*************************************************************
Synopsis [Updates the solver clause database.]
Description []
SideEffects []
SeeAlso []
Definition at line 238 of file fraCnf.c.
242 int i, k, fUseMuxes = 1;
typedefABC_NAMESPACE_HEADER_START struct Vec_Ptr_t_ Vec_Ptr_t
INCLUDES ///.
static int Vec_PtrPushUnique(Vec_Ptr_t *p, void *Entry)
static Aig_Obj_t * Aig_ObjFanin0(Aig_Obj_t *pObj)
static void Fra_ObjSetFaninVec(Aig_Obj_t *pObj, Vec_Ptr_t *vFanins)
static Aig_Obj_t * Aig_Regular(Aig_Obj_t *p)
static Aig_Obj_t * Aig_ObjFanin1(Aig_Obj_t *pObj)
static int Vec_PtrSize(Vec_Ptr_t *p)
void Fra_ObjAddToFrontier(Fra_Man_t *p, Aig_Obj_t *pObj, Vec_Ptr_t *vFrontier)
void Fra_AddClausesSuper(Fra_Man_t *p, Aig_Obj_t *pNode, Vec_Ptr_t *vSuper)
static Vec_Ptr_t * Vec_PtrAlloc(int nCap)
FUNCTION DEFINITIONS ///.
int Aig_ObjIsMuxType(Aig_Obj_t *pObj)
static int Fra_ObjSatNum(Aig_Obj_t *pObj)
#define Vec_PtrForEachEntry(Type, vVec, pEntry, i)
MACRO DEFINITIONS ///.
Vec_Ptr_t * Fra_CollectSuper(Aig_Obj_t *pObj, int fUseMuxes)
ABC_NAMESPACE_IMPL_START void Fra_AddClausesMux(Fra_Man_t *p, Aig_Obj_t *pNode)
DECLARATIONS ///.
static Vec_Ptr_t * Fra_ObjFaninVec(Aig_Obj_t *pObj)
static void Vec_PtrFree(Vec_Ptr_t *p)
Function*************************************************************
Synopsis [Collects the supergate.]
Description []
SideEffects []
SeeAlso []
Definition at line 192 of file fraCnf.c.
typedefABC_NAMESPACE_HEADER_START struct Vec_Ptr_t_ Vec_Ptr_t
INCLUDES ///.
static int Aig_IsComplement(Aig_Obj_t *p)
void Fra_CollectSuper_rec(Aig_Obj_t *pObj, Vec_Ptr_t *vSuper, int fFirst, int fUseMuxes)
static Vec_Ptr_t * Vec_PtrAlloc(int nCap)
FUNCTION DEFINITIONS ///.
static int Aig_ObjIsCi(Aig_Obj_t *pObj)
void Fra_CollectSuper_rec |
( |
Aig_Obj_t * |
pObj, |
|
|
Vec_Ptr_t * |
vSuper, |
|
|
int |
fFirst, |
|
|
int |
fUseMuxes |
|
) |
| |
Function*************************************************************
Synopsis [Collects the supergate.]
Description []
SideEffects []
SeeAlso []
Definition at line 167 of file fraCnf.c.
static Aig_Obj_t * Aig_ObjChild0(Aig_Obj_t *pObj)
static int Vec_PtrPushUnique(Vec_Ptr_t *p, void *Entry)
static int Aig_IsComplement(Aig_Obj_t *p)
static Aig_Obj_t * Aig_ObjChild1(Aig_Obj_t *pObj)
void Fra_CollectSuper_rec(Aig_Obj_t *pObj, Vec_Ptr_t *vSuper, int fFirst, int fUseMuxes)
int Aig_ObjIsMuxType(Aig_Obj_t *pObj)
static int Aig_ObjRefs(Aig_Obj_t *pObj)
static int Aig_ObjIsCi(Aig_Obj_t *pObj)
Function*************************************************************
Synopsis [Updates the solver clause database.]
Description []
SideEffects []
SeeAlso []
Definition at line 213 of file fraCnf.c.
static int Aig_IsComplement(Aig_Obj_t *p)
static void Vec_PtrPush(Vec_Ptr_t *p, void *Entry)
static int Aig_ObjIsNode(Aig_Obj_t *pObj)
static void Fra_ObjSetSatNum(Aig_Obj_t *pObj, int Num)
static int Aig_ObjIsConst1(Aig_Obj_t *pObj)
static int Fra_ObjSatNum(Aig_Obj_t *pObj)
static Vec_Ptr_t * Fra_ObjFaninVec(Aig_Obj_t *pObj)