StateT - The type of the analyzed states.public class SimpleCpa<StateT extends AbstractState<StateT>> extends java.lang.Object implements ConfigurableProgramAnalysis<StateT>
SimpleCpa is a ConfigurableProgramAnalysis wrapping its components.| Constructor and Description |
|---|
SimpleCpa(TransferRelation<StateT> transferRelation,
MergeOperator<StateT> mergeOperator,
StopOperator<StateT> stopOperator)
Create a simple CPA with a static precision adjustment.
|
SimpleCpa(TransferRelation<StateT> transferRelation,
MergeOperator<StateT> mergeOperator,
StopOperator<StateT> stopOperator,
PrecisionAdjustment precisionAdjustment,
AbortOperator abortOperator)
Create a simple CPA from
ConfigurableProgramAnalysis components. |
| Modifier and Type | Method and Description |
|---|---|
@NotNull AbortOperator |
getAbortOperator() |
@NotNull MergeOperator<StateT> |
getMergeOperator()
Returns the merge operator of this CPA.
|
@NotNull PrecisionAdjustment |
getPrecisionAdjustment()
Returns the precision adjustment of this CPA.
|
@NotNull StopOperator<StateT> |
getStopOperator()
Returns the stop operator of this CPA.
|
@NotNull TransferRelation<StateT> |
getTransferRelation()
Returns the transfer relation of this CPA.
|
public SimpleCpa(TransferRelation<StateT> transferRelation, MergeOperator<StateT> mergeOperator, StopOperator<StateT> stopOperator)
abstractDomain - a join-semilattice of AbstractStates defining the abstraction
level of the analysistransferRelation - a transfer relation specifying how successor states are computedmergeOperator - a merge operator defining how (and whether) the older AbstractState should be updated with the newly discovered AbstractStatestopOperator - a stop operator deciding whether the successor state should be added to the
ReachedSet based on the content of the latterpublic SimpleCpa(TransferRelation<StateT> transferRelation, MergeOperator<StateT> mergeOperator, StopOperator<StateT> stopOperator, PrecisionAdjustment precisionAdjustment, AbortOperator abortOperator)
ConfigurableProgramAnalysis components.abstractDomain - a join-semilattice of AbstractStates defining the abstraction
level of the analysistransferRelation - a transfer relation specifying how successor states are computedmergeOperator - a merge operator defining how (and whether) the older AbstractState should be updated with the newly discovered AbstractStatestopOperator - a stop operator deciding whether the successor state should be added to the
ReachedSet based on the content of the latterprecisionAdjustment - a precision adjustment selecting the Precision for the
currently processed AbstractState considering the ReachedSet contentabortOperator - an operator used to terminate the analysis prematurely.@NotNull public @NotNull TransferRelation<StateT> getTransferRelation()
ConfigurableProgramAnalysisgetTransferRelation in interface ConfigurableProgramAnalysis<StateT extends AbstractState<StateT>>@NotNull public @NotNull MergeOperator<StateT> getMergeOperator()
ConfigurableProgramAnalysisgetMergeOperator in interface ConfigurableProgramAnalysis<StateT extends AbstractState<StateT>>@NotNull public @NotNull StopOperator<StateT> getStopOperator()
ConfigurableProgramAnalysisgetStopOperator in interface ConfigurableProgramAnalysis<StateT extends AbstractState<StateT>>@NotNull public @NotNull PrecisionAdjustment getPrecisionAdjustment()
ConfigurableProgramAnalysisgetPrecisionAdjustment in interface ConfigurableProgramAnalysis<StateT extends AbstractState<StateT>>@NotNull public @NotNull AbortOperator getAbortOperator()
getAbortOperator in interface ConfigurableProgramAnalysis<StateT extends AbstractState<StateT>>