abc-master
|
#include "extra.h"
Go to the source code of this file.
Functions | |
unsigned ** | Extra_TruthElementary (int nVars) |
void | Extra_TruthSwapAdjacentVars (unsigned *pOut, unsigned *pIn, int nVars, int iVar) |
void | Extra_TruthSwapAdjacentVars2 (unsigned *pIn, unsigned *pOut, int nVars, int Start) |
void | Extra_TruthStretch (unsigned *pOut, unsigned *pIn, int nVars, int nVarsAll, unsigned Phase) |
void | Extra_TruthShrink (unsigned *pOut, unsigned *pIn, int nVars, int nVarsAll, unsigned Phase) |
int | Extra_TruthVarInSupport (unsigned *pTruth, int nVars, int iVar) |
int | Extra_TruthSupportSize (unsigned *pTruth, int nVars) |
int | Extra_TruthSupport (unsigned *pTruth, int nVars) |
void | Extra_TruthCofactor1 (unsigned *pTruth, int nVars, int iVar) |
void | Extra_TruthCofactor0 (unsigned *pTruth, int nVars, int iVar) |
void | Extra_TruthExist (unsigned *pTruth, int nVars, int iVar) |
void | Extra_TruthForall (unsigned *pTruth, int nVars, int iVar) |
void | Extra_TruthMux (unsigned *pOut, unsigned *pCof0, unsigned *pCof1, int nVars, int iVar) |
int | Extra_TruthVarsSymm (unsigned *pTruth, int nVars, int iVar0, int iVar1) |
int | Extra_TruthVarsAntiSymm (unsigned *pTruth, int nVars, int iVar0, int iVar1) |
void | Extra_TruthChangePhase (unsigned *pTruth, int nVars, int iVar) |
int | Extra_TruthMinCofSuppOverlap (unsigned *pTruth, int nVars, int *pVarMin) |
void | Extra_TruthCountOnesInCofs (unsigned *pTruth, int nVars, short *pStore) |
unsigned | Extra_TruthHash (unsigned *pIn, int nWords) |
unsigned | Extra_TruthSemiCanonicize (unsigned *pInOut, unsigned *pAux, int nVars, char *pCanonPerm, short *pStore) |
Variables | |
static ABC_NAMESPACE_IMPL_START unsigned | s_VarMasks [5][2] |
void Extra_TruthChangePhase | ( | unsigned * | pTruth, |
int | nVars, | ||
int | iVar | ||
) |
Function*************************************************************
Synopsis [Changes phase of the function w.r.t. one variable.]
Description []
SideEffects []
SeeAlso []
Definition at line 719 of file extraUtilTruth.c.
void Extra_TruthCofactor0 | ( | unsigned * | pTruth, |
int | nVars, | ||
int | iVar | ||
) |
Function*************************************************************
Synopsis [Computes negative cofactor of the function.]
Description []
SideEffects []
SeeAlso []
Definition at line 450 of file extraUtilTruth.c.
void Extra_TruthCofactor1 | ( | unsigned * | pTruth, |
int | nVars, | ||
int | iVar | ||
) |
Function*************************************************************
Synopsis [Computes positive cofactor of the function.]
Description []
SideEffects []
SeeAlso []
Definition at line 399 of file extraUtilTruth.c.
void Extra_TruthCountOnesInCofs | ( | unsigned * | pTruth, |
int | nVars, | ||
short * | pStore | ||
) |
Function*************************************************************
Synopsis [Counts the number of 1's in each cofactor.]
Description [The resulting numbers are stored in the array of shorts, whose length is 2*nVars. The number of 1's is counted in a different space than the original function. For example, if the function depends on k variables, the cofactors are assumed to depend on k-1 variables.]
SideEffects []
SeeAlso []
Definition at line 828 of file extraUtilTruth.c.
unsigned** Extra_TruthElementary | ( | int | nVars | ) |
AutomaticStart AutomaticEnd Function*************************************************************
Synopsis [Derive elementary truth tables.]
Description []
SideEffects []
SeeAlso []
Definition at line 77 of file extraUtilTruth.c.
void Extra_TruthExist | ( | unsigned * | pTruth, |
int | nVars, | ||
int | iVar | ||
) |
Function*************************************************************
Synopsis [Existentially quantifies the variable.]
Description []
SideEffects []
SeeAlso []
Definition at line 502 of file extraUtilTruth.c.
void Extra_TruthForall | ( | unsigned * | pTruth, |
int | nVars, | ||
int | iVar | ||
) |
Function*************************************************************
Synopsis [Existentially quantifies the variable.]
Description []
SideEffects []
SeeAlso []
Definition at line 556 of file extraUtilTruth.c.
unsigned Extra_TruthHash | ( | unsigned * | pIn, |
int | nWords | ||
) |
Function*************************************************************
Synopsis [Canonicize the truth table.]
Description []
SideEffects []
SeeAlso []
Definition at line 902 of file extraUtilTruth.c.
int Extra_TruthMinCofSuppOverlap | ( | unsigned * | pTruth, |
int | nVars, | ||
int * | pVarMin | ||
) |
Function*************************************************************
Synopsis [Computes minimum overlap in supports of cofactors.]
Description []
SideEffects []
SeeAlso []
Definition at line 775 of file extraUtilTruth.c.
void Extra_TruthMux | ( | unsigned * | pOut, |
unsigned * | pCof0, | ||
unsigned * | pCof1, | ||
int | nVars, | ||
int | iVar | ||
) |
Function*************************************************************
Synopsis [Computes negative cofactor of the function.]
Description []
SideEffects []
SeeAlso []
Definition at line 611 of file extraUtilTruth.c.
unsigned Extra_TruthSemiCanonicize | ( | unsigned * | pInOut, |
unsigned * | pAux, | ||
int | nVars, | ||
char * | pCanonPerm, | ||
short * | pStore | ||
) |
Function*************************************************************
Synopsis [Canonicize the truth table.]
Description [Returns the phase. ]
SideEffects []
SeeAlso []
Definition at line 999 of file extraUtilTruth.c.
void Extra_TruthShrink | ( | unsigned * | pOut, |
unsigned * | pIn, | ||
int | nVars, | ||
int | nVarsAll, | ||
unsigned | Phase | ||
) |
Function*************************************************************
Synopsis [Shrinks the truth table according to the phase.]
Description [The input and output truth tables are in pIn/pOut. The current number of variables is nVars. The total number of variables in nVarsAll. The last argument (Phase) contains shows what variables should remain.]
SideEffects []
SeeAlso []
Definition at line 268 of file extraUtilTruth.c.
void Extra_TruthStretch | ( | unsigned * | pOut, |
unsigned * | pIn, | ||
int | nVars, | ||
int | nVarsAll, | ||
unsigned | Phase | ||
) |
Function*************************************************************
Synopsis [Expands the truth table according to the phase.]
Description [The input and output truth tables are in pIn/pOut. The current number of variables is nVars. The total number of variables in nVarsAll. The last argument (Phase) contains shows where the variables should go.]
SideEffects []
SeeAlso []
Definition at line 234 of file extraUtilTruth.c.
int Extra_TruthSupport | ( | unsigned * | pTruth, |
int | nVars | ||
) |
Function*************************************************************
Synopsis [Returns support of the function.]
Description []
SideEffects []
SeeAlso []
Definition at line 377 of file extraUtilTruth.c.
int Extra_TruthSupportSize | ( | unsigned * | pTruth, |
int | nVars | ||
) |
Function*************************************************************
Synopsis [Returns the number of support vars.]
Description []
SideEffects []
SeeAlso []
Definition at line 358 of file extraUtilTruth.c.
void Extra_TruthSwapAdjacentVars | ( | unsigned * | pOut, |
unsigned * | pIn, | ||
int | nVars, | ||
int | iVar | ||
) |
Function*************************************************************
Synopsis [Swaps two adjacent variables in the truth table.]
Description [Swaps var number Start and var number Start+1 (0-based numbers). The input truth table is pIn. The output truth table is pOut.]
SideEffects []
SeeAlso []
Definition at line 114 of file extraUtilTruth.c.
void Extra_TruthSwapAdjacentVars2 | ( | unsigned * | pIn, |
unsigned * | pOut, | ||
int | nVars, | ||
int | Start | ||
) |
Function*************************************************************
Synopsis [Swaps two adjacent variables in the truth table.]
Description [Swaps var number Start and var number Start+1 (0-based numbers). The input truth table is pIn. The output truth table is pOut.]
SideEffects []
SeeAlso []
Definition at line 171 of file extraUtilTruth.c.
int Extra_TruthVarInSupport | ( | unsigned * | pTruth, |
int | nVars, | ||
int | iVar | ||
) |
Function*************************************************************
Synopsis [Returns 1 if TT depends on the given variable.]
Description []
SideEffects []
SeeAlso []
Definition at line 301 of file extraUtilTruth.c.
int Extra_TruthVarsAntiSymm | ( | unsigned * | pTruth, |
int | nVars, | ||
int | iVar0, | ||
int | iVar1 | ||
) |
Function*************************************************************
Synopsis [Checks antisymmetry of two variables.]
Description []
SideEffects []
SeeAlso []
Definition at line 692 of file extraUtilTruth.c.
int Extra_TruthVarsSymm | ( | unsigned * | pTruth, |
int | nVars, | ||
int | iVar0, | ||
int | iVar1 | ||
) |
Function*************************************************************
Synopsis [Checks symmetry of two variables.]
Description []
SideEffects []
SeeAlso []
Definition at line 665 of file extraUtilTruth.c.
|
static |
CFile****************************************************************
FileName [extraUtilMisc.c]
SystemName [ABC: Logic synthesis and verification system.]
PackageName [extra]
Synopsis [Various procedures for truth table manipulation.]
Author [Alan Mishchenko]
Affiliation [UC Berkeley]
Date [Ver. 1.0. Started - June 20, 2005.]
Revision [
]
Definition at line 42 of file extraUtilTruth.c.