pub enum ExistingPreprocessors {
DropSelfLoops,
DropUnreachableLocations,
ReplaceTrivialGuardsStatic,
ReplaceTrivialGuardsSMT,
RemoveUnusedVariables,
DropUnsatisfiableRules,
CollapseLocations,
CheckInitCondSatSMT,
}Expand description
Enum representing all available preprocessors
This enum is used to configure what preprocessors can be used in TACO
Variants§
DropSelfLoops
Removes self loops from the threshold automaton if the transition rule has no effect on the shared variables.
DropUnreachableLocations
Removes unreachable locations from the threshold automaton by performing a graph search
ReplaceTrivialGuardsStatic
Replaces some frequently generated guards that are always enabled with true
ReplaceTrivialGuardsSMT
Replaces guards which are always satisfied, uses SMT to determine which guards are always satisfied.
RemoveUnusedVariables
Remove variables that do not appear in any guard
DropUnsatisfiableRules
Remove Rules for which a guard can never be satisfied
CollapseLocations
Collapse locations which have the same incoming rules
CheckInitCondSatSMT
Checks whether the initial location of the threshold automaton can be satisfied at all
Trait Implementations§
Source§impl Clone for ExistingPreprocessors
impl Clone for ExistingPreprocessors
Source§fn clone(&self) -> ExistingPreprocessors
fn clone(&self) -> ExistingPreprocessors
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ExistingPreprocessors
impl Debug for ExistingPreprocessors
Source§impl<'de> Deserialize<'de> for ExistingPreprocessors
impl<'de> Deserialize<'de> for ExistingPreprocessors
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for ExistingPreprocessors
impl Display for ExistingPreprocessors
Source§impl<S, C> From<ExistingPreprocessors> for Box<dyn Preprocessor<GeneralThresholdAutomaton, S, C>>where
S: TargetSpec,
C: ModelCheckerContext + ProvidesSMTSolverBuilder,
impl<S, C> From<ExistingPreprocessors> for Box<dyn Preprocessor<GeneralThresholdAutomaton, S, C>>where
S: TargetSpec,
C: ModelCheckerContext + ProvidesSMTSolverBuilder,
Source§fn from(val: ExistingPreprocessors) -> Self
fn from(val: ExistingPreprocessors) -> Self
Converts to this type from the input type.
Source§impl PartialEq for ExistingPreprocessors
impl PartialEq for ExistingPreprocessors
impl StructuralPartialEq for ExistingPreprocessors
Auto Trait Implementations§
impl Freeze for ExistingPreprocessors
impl RefUnwindSafe for ExistingPreprocessors
impl Send for ExistingPreprocessors
impl Sync for ExistingPreprocessors
impl Unpin for ExistingPreprocessors
impl UnwindSafe for ExistingPreprocessors
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more