public interface ConfigurableProgramAnalysis
ConfigurableProgramAnalysis consists of AbstractDomain, TransferRelation, MergeOperator, StopOperator, and PrecisionAdjustment.
The AbstractDomain is a join-semilattice of AbstractStates. It defines the abstraction level of the analysis.
The TransferRelation specifies how successor states are computed in the CpaAlgorithm.
The MergeOperator defines how (and whether) the older AbstractState should be updated with the newly discovered AbstractState.
The StopOperator decides whether the successor state should be added to the ReachedSet based on the content of the latter.
The PrecisionAdjustment selects the Precision for the currently processed AbstractState considering the ReachedSet content.
All CPA components should be side effect free, i.e., not modify their arguments.
| Modifier and Type | Method and Description |
|---|---|
AbstractDomain |
getAbstractDomain()
Returns the abstract domain of this CPA.
|
MergeOperator |
getMergeOperator()
Returns the merge operator of this CPA.
|
PrecisionAdjustment |
getPrecisionAdjustment()
Returns the precision adjustment of this CPA.
|
StopOperator |
getStopOperator()
Returns the stop operator of this CPA.
|
TransferRelation |
getTransferRelation()
Returns the transfer relation of this CPA.
|
AbstractDomain getAbstractDomain()
TransferRelation getTransferRelation()
MergeOperator getMergeOperator()
StopOperator getStopOperator()
PrecisionAdjustment getPrecisionAdjustment()