abc-master
|
#include <stdio.h>
#include "aig/aig/aig.h"
#include "aig/saig/saig.h"
#include "proof/ssw/ssw.h"
#include "misc/extra/extraBdd.h"
#include "llb.h"
Go to the source code of this file.
Data Structures | |
struct | Llb_Man_t_ |
struct | Llb_Mtr_t_ |
struct | Llb_Grp_t_ |
Typedefs | |
typedef typedefABC_NAMESPACE_HEADER_START struct Llb_Man_t_ | Llb_Man_t |
INCLUDES ///. More... | |
typedef struct Llb_Mtr_t_ | Llb_Mtr_t |
typedef struct Llb_Grp_t_ | Llb_Grp_t |
typedef struct Llb_Grp_t_ Llb_Grp_t |
typedef typedefABC_NAMESPACE_HEADER_START struct Llb_Man_t_ Llb_Man_t |
INCLUDES ///.
CFile****************************************************************
FileName [llbInt.h]
SystemName [ABC: Logic synthesis and verification system.]
PackageName [BDD-based reachability.]
Synopsis [External declarations.]
Author [Alan Mishchenko]
Affiliation [UC Berkeley]
Date [Ver. 1.0. Started - May 8, 2010.]
Revision [
]PARAMETERS ///BASIC TYPES ///
typedef struct Llb_Mtr_t_ Llb_Mtr_t |
void Llb4_Nonlin4Sweep | ( | Aig_Man_t * | pAig, |
int | nSweepMax, | ||
int | nClusterMax, | ||
DdManager ** | pdd, | ||
Vec_Int_t ** | pvOrder, | ||
Vec_Ptr_t ** | pvGroups, | ||
int | fVerbose | ||
) |
Function*************************************************************
Synopsis [Performs BDD sweep on the netlist.]
Description [Returns BDD manager, ordering, clusters, and bad states inside dd->bFunc.]
SideEffects []
SeeAlso []
Definition at line 520 of file llb4Sweep.c.
Abc_Cex_t* Llb4_Nonlin4TransformCex | ( | Aig_Man_t * | pAig, |
Vec_Ptr_t * | vStates, | ||
int | iCexPo, | ||
int | fVerbose | ||
) |
DECLARATIONS ///.
CFile****************************************************************
FileName [llb2Cex.c]
SystemName [ABC: Logic synthesis and verification system.]
PackageName [BDD based reachability.]
Synopsis [Non-linear quantification scheduling.]
Author [Alan Mishchenko]
Affiliation [UC Berkeley]
Date [Ver. 1.0. Started - June 20, 2005.]
Revision [
]FUNCTION DEFINITIONS /// Function*************************************************************
Synopsis [Translates a sequence of states into a counter-example.]
Description []
SideEffects []
SeeAlso []
Definition at line 47 of file llb4Cex.c.
DECLARATIONS ///.
CFile****************************************************************
FileName [llb2Bad.c]
SystemName [ABC: Logic synthesis and verification system.]
PackageName [BDD based reachability.]
Synopsis [Computing bad states.]
Author [Alan Mishchenko]
Affiliation [UC Berkeley]
Date [Ver. 1.0. Started - June 20, 2005.]
Revision [
]FUNCTION DEFINITIONS /// Function*************************************************************
Synopsis [Computes bad in working manager.]
Description []
SideEffects []
SeeAlso []
Definition at line 45 of file llb2Bad.c.
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 109 of file llb2Bad.c.
FUNCTION DEFINITIONS ///.
Function*************************************************************
Synopsis [Computes cube composed of given variables with given values.]
Description []
SideEffects []
SeeAlso []
Definition at line 68 of file llb2Core.c.
int Llb_CoreExperiment | ( | Aig_Man_t * | pInit, |
Aig_Man_t * | pAig, | ||
Gia_ParLlb_t * | pPars, | ||
Vec_Ptr_t * | vResult, | ||
abctime | TimeTarget | ||
) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 694 of file llb2Core.c.
Function*************************************************************
Synopsis [Returns array of CS variables.]
Description []
SideEffects []
SeeAlso []
Definition at line 106 of file llb2Driver.c.
Function*************************************************************
Synopsis [Returns array of NS variables.]
Description []
SideEffects []
SeeAlso []
Definition at line 78 of file llb2Driver.c.
DECLARATIONS ///.
CFile****************************************************************
FileName [llb2Driver.c]
SystemName [ABC: Logic synthesis and verification system.]
PackageName [BDD based reachability.]
Synopsis [Procedures working with flop drivers.]
Author [Alan Mishchenko]
Affiliation [UC Berkeley]
Date [Ver. 1.0. Started - June 20, 2005.]
Revision [
]FUNCTION DEFINITIONS /// Function*************************************************************
Synopsis [Returns the array of times each flop driver is referenced.]
Description []
SideEffects []
SeeAlso []
Definition at line 56 of file llb2Driver.c.
Function*************************************************************
Synopsis [Compute the last partition.]
Description []
SideEffects []
SeeAlso []
Definition at line 163 of file llb2Driver.c.
Function*************************************************************
Synopsis [Create cube for phase swapping.]
Description []
SideEffects []
SeeAlso []
Definition at line 128 of file llb2Driver.c.
DdNode* Llb_ImgComputeImage | ( | Aig_Man_t * | pAig, |
Vec_Ptr_t * | vDdMans, | ||
DdManager * | dd, | ||
DdNode * | bInit, | ||
Vec_Ptr_t * | vQuant0, | ||
Vec_Ptr_t * | vQuant1, | ||
Vec_Int_t * | vDriRefs, | ||
abctime | TimeTarget, | ||
int | fBackward, | ||
int | fReorder, | ||
int | fVerbose | ||
) |
Function*************************************************************
Synopsis [Computes image of the initial set of states.]
Description []
SideEffects []
SeeAlso []
Definition at line 364 of file llb2Image.c.
DdManager* Llb_ImgPartition | ( | Aig_Man_t * | p, |
Vec_Ptr_t * | vLower, | ||
Vec_Ptr_t * | vUpper, | ||
abctime | TimeTarget | ||
) |
Function*************************************************************
Synopsis [Computes one partition in a separate BDD manager.]
Description []
SideEffects []
SeeAlso []
Definition at line 183 of file llb2Image.c.
void Llb_ImgQuantifyFirst | ( | Aig_Man_t * | pAig, |
Vec_Ptr_t * | vDdMans, | ||
Vec_Ptr_t * | vQuant0, | ||
int | fVerbose | ||
) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 288 of file llb2Image.c.
void Llb_ImgQuantifyReset | ( | Vec_Ptr_t * | vDdMans | ) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 340 of file llb2Image.c.
void Llb_ImgSchedule | ( | Vec_Ptr_t * | vSupps, |
Vec_Ptr_t ** | pvQuant0, | ||
Vec_Ptr_t ** | pvQuant1, | ||
int | fVerbose | ||
) |
Function*************************************************************
Synopsis [Computes quantification schedule.]
Description [Input array contains supports: 0=starting, ... intermediate... N-1=final. Output arrays contain immediately quantifiable vars (vQuant0) and vars that should be quantified after conjunction (vQuant1).]
SideEffects []
SeeAlso []
Definition at line 122 of file llb2Image.c.
Vec_Ptr_t* Llb_ImgSupports | ( | Aig_Man_t * | p, |
Vec_Ptr_t * | vDdMans, | ||
Vec_Int_t * | vStart, | ||
Vec_Int_t * | vStop, | ||
int | fAddPis, | ||
int | fVerbose | ||
) |
FUNCTION DEFINITIONS ///.
Function*************************************************************
Synopsis [Computes supports of the partitions.]
Description []
SideEffects []
SeeAlso []
Definition at line 48 of file llb2Image.c.
void Llb_ManCluster | ( | Llb_Mtr_t * | p | ) |
Function*************************************************************
Synopsis [Combines one pair of columns.]
Description []
SideEffects []
SeeAlso []
Definition at line 324 of file llb1Cluster.c.
FUNCTION DECLARATIONS ///.
Function*************************************************************
Synopsis [Derives inductive constraints.]
Description []
SideEffects []
SeeAlso []
Definition at line 267 of file llb1Constr.c.
Function*************************************************************
Synopsis [Writes reached state BDD into a BLIF file.]
Description []
SideEffects []
SeeAlso []
Definition at line 63 of file llb2Dump.c.
Function*************************************************************
Synopsis [Implementation of max-flow/min-cut computation.]
Description []
SideEffects []
SeeAlso []
Definition at line 762 of file llb2Flow.c.
DECLARATIONS ///.
CFile****************************************************************
FileName [llb1Group.c]
SystemName [ABC: Logic synthesis and verification system.]
PackageName [BDD based reachability.]
Synopsis [Initial partition computation.]
Author [Alan Mishchenko]
Affiliation [UC Berkeley]
Date [Ver. 1.0. Started - June 20, 2005.]
Revision [
]FUNCTION DEFINITIONS /// Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 45 of file llb1Group.c.
Function*************************************************************
Synopsis [Creates group from two cuts derived by the flow computation.]
Description []
SideEffects []
SeeAlso []
Definition at line 312 of file llb1Group.c.
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 251 of file llb1Group.c.
void Llb_ManGroupStop | ( | Llb_Grp_t * | p | ) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 68 of file llb1Group.c.
Function*************************************************************
Synopsis [Determine starting cut-points.]
Description []
SideEffects []
SeeAlso []
Definition at line 220 of file llb1Pivot.c.
int Llb_ManModelCheckAig | ( | Aig_Man_t * | pAigGlo, |
Gia_ParLlb_t * | pPars, | ||
Vec_Int_t * | vHints, | ||
DdManager ** | pddGlo | ||
) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 112 of file llb1Core.c.
int Llb_ManModelCheckAigWithHints | ( | Aig_Man_t * | pAigGlo, |
Gia_ParLlb_t * | pPars | ||
) |
Function*************************************************************
Synopsis [Derives AIG whose PI is substituted by a constant.]
Description []
SideEffects []
SeeAlso []
Definition at line 162 of file llb1Hint.c.
void Llb_ManPrepareGroups | ( | Llb_Man_t * | pMan | ) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 356 of file llb1Group.c.
void Llb_ManPrepareVarLimits | ( | Llb_Man_t * | p | ) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 88 of file llb1Man.c.
void Llb_ManPrepareVarMap | ( | Llb_Man_t * | p | ) |
DECLARATIONS ///.
CFile****************************************************************
FileName [llb1Man.c]
SystemName [ABC: Logic synthesis and verification system.]
PackageName [BDD based reachability.]
Synopsis [Reachability manager.]
Author [Alan Mishchenko]
Affiliation [UC Berkeley]
Date [Ver. 1.0. Started - June 20, 2005.]
Revision [
]FUNCTION DEFINITIONS /// Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 45 of file llb1Man.c.
Function*************************************************************
Synopsis [Returns the array of constraint candidates.]
Description []
SideEffects []
SeeAlso []
Definition at line 64 of file llb1Constr.c.
Function*************************************************************
Synopsis [Perform reachability with hints and returns reached states in ppGlo.]
Description []
SideEffects []
SeeAlso []
Definition at line 582 of file llb1Reach.c.
int Llb_ManReachabilityWithHints | ( | Llb_Man_t * | p | ) |
Llb_Man_t* Llb_ManStart | ( | Aig_Man_t * | pAigGlo, |
Aig_Man_t * | pAig, | ||
Gia_ParLlb_t * | pPars | ||
) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 193 of file llb1Man.c.
void Llb_ManStop | ( | Llb_Man_t * | p | ) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 130 of file llb1Man.c.
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 81 of file llb1Pivot.c.
Function*************************************************************
Synopsis [Matrix reduce.]
Description []
SideEffects []
SeeAlso []
Definition at line 410 of file llb1Matrix.c.
void Llb_MtrFree | ( | Llb_Mtr_t * | p | ) |
Function*************************************************************
Synopsis [Stops the matrix representation.]
Description []
SideEffects []
SeeAlso []
Definition at line 321 of file llb1Matrix.c.
void Llb_MtrPrint | ( | Llb_Mtr_t * | p, |
int | fOrder | ||
) |
Function*************************************************************
Synopsis [Creates one column with vars in the array.]
Description []
SideEffects []
SeeAlso []
Definition at line 206 of file llb1Matrix.c.
void Llb_MtrPrintMatrixStats | ( | Llb_Mtr_t * | p | ) |
Function*************************************************************
Synopsis [Verify columns.]
Description []
SideEffects []
SeeAlso []
Definition at line 236 of file llb1Matrix.c.
void Llb_MtrSchedule | ( | Llb_Mtr_t * | p | ) |
Function*************************************************************
Synopsis [Matrix reduce.]
Description []
SideEffects []
SeeAlso []
Definition at line 222 of file llb1Sched.c.
void Llb_MtrVerifyMatrix | ( | Llb_Mtr_t * | p | ) |
Function*************************************************************
Synopsis [Verify columns.]
Description []
SideEffects []
SeeAlso []
Definition at line 115 of file llb1Matrix.c.
Vec_Ptr_t* Llb_Nonlin4Group | ( | DdManager * | dd, |
Vec_Ptr_t * | vParts, | ||
Vec_Int_t * | vVars2Q, | ||
int | nSizeMax | ||
) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 806 of file llb4Image.c.
DdNode* Llb_Nonlin4Image | ( | DdManager * | dd, |
Vec_Ptr_t * | vParts, | ||
DdNode * | bCurrent, | ||
Vec_Int_t * | vVars2Q | ||
) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 752 of file llb4Image.c.
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 214 of file llb3Nonlin.c.
DdNode* Llb_NonlinImage | ( | Aig_Man_t * | pAig, |
Vec_Ptr_t * | vLeaves, | ||
Vec_Ptr_t * | vRoots, | ||
int * | pVars2Q, | ||
DdManager * | dd, | ||
DdNode * | bCurrent, | ||
int | fReorder, | ||
int | fVerbose, | ||
int * | pOrder | ||
) |
Function*************************************************************
Synopsis [Performs image computation.]
Description [Computes image of BDDs (vFuncs).]
SideEffects [BDDs in vFuncs are derefed inside. The result is refed.]
SeeAlso []
Definition at line 884 of file llb3Image.c.
DdNode* Llb_NonlinImageCompute | ( | DdNode * | bCurrent, |
int | fReorder, | ||
int | fDrop, | ||
int | fVerbose, | ||
int * | pOrder | ||
) |
Function*************************************************************
Synopsis [Performs image computation.]
Description []
SideEffects []
SeeAlso []
Definition at line 999 of file llb3Image.c.
void Llb_NonlinImageQuit | ( | ) |
Function*************************************************************
Synopsis [Quits image computation manager.]
Description []
SideEffects []
SeeAlso []
Definition at line 1075 of file llb3Image.c.
DdManager* Llb_NonlinImageStart | ( | Aig_Man_t * | pAig, |
Vec_Ptr_t * | vLeaves, | ||
Vec_Ptr_t * | vRoots, | ||
int * | pVars2Q, | ||
int * | pOrder, | ||
int | fFirst, | ||
abctime | TimeTarget | ||
) |
Function*************************************************************
Synopsis [Starts image computation manager.]
Description []
SideEffects []
SeeAlso []
Definition at line 963 of file llb3Image.c.