pub struct ZCSStates {
set_of_states: BDD,
}Expand description
Type to represent a set of states in the 01-CS (ZCS)
Fields§
§set_of_states: BDDbdd to represent a set of states
Implementations§
Source§impl ZCSStates
impl ZCSStates
Sourcepub fn set_of_states(&self) -> &BDD
pub fn set_of_states(&self) -> &BDD
returns the underlying set_of_states
Sourcepub fn intersection(&self, states: &ZCSStates) -> ZCSStates
pub fn intersection(&self, states: &ZCSStates) -> ZCSStates
performs the intersection operation
Sourcepub fn contains_sym_assignment(
&self,
sym_assignment: &SymbolicVariableAssignment,
) -> bool
pub fn contains_sym_assignment( &self, sym_assignment: &SymbolicVariableAssignment, ) -> bool
checks if the symbolic state contains a given symbolic variable assignment
Sourcepub fn intersect_assignment(
&self,
sym_assignment: &SymbolicVariableAssignment,
) -> ZCSStates
pub fn intersect_assignment( &self, sym_assignment: &SymbolicVariableAssignment, ) -> ZCSStates
performs the intersection of a symbolic_states and a symbolic variable assignment
Sourcepub fn remove_assignment(
&self,
sym_assignment: &SymbolicVariableAssignment,
) -> ZCSStates
pub fn remove_assignment( &self, sym_assignment: &SymbolicVariableAssignment, ) -> ZCSStates
performs the restriction of a symbolic_states and a symbolic variable assignment
i.e., removes all states that satisfy the variable assignment
Sourcepub fn complement(&self) -> ZCSStates
pub fn complement(&self) -> ZCSStates
returns the complement
Trait Implementations§
impl StructuralPartialEq for ZCSStates
Auto Trait Implementations§
impl Freeze for ZCSStates
impl !RefUnwindSafe for ZCSStates
impl !Send for ZCSStates
impl !Sync for ZCSStates
impl Unpin for ZCSStates
impl !UnwindSafe for ZCSStates
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