pub struct QuantifiedFormula {
pub term: TermId,
pub bound_vars: SmallVec<[(Spur, SortId); 2]>,
pub body: TermId,
pub universal: bool,
pub instantiation_count: usize,
pub max_instantiations: usize,
}Expand description
A quantified formula tracked by MBQI
Fields§
§term: TermIdThe original quantified term
bound_vars: SmallVec<[(Spur, SortId); 2]>Bound variables (name, sort)
body: TermIdThe body of the quantifier
universal: boolWhether this is universal (true) or existential (false)
instantiation_count: usizeNumber of times this quantifier has been instantiated
max_instantiations: usizeMaximum allowed instantiations
Implementations§
Trait Implementations§
Source§impl Clone for QuantifiedFormula
impl Clone for QuantifiedFormula
Source§fn clone(&self) -> QuantifiedFormula
fn clone(&self) -> QuantifiedFormula
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 moreAuto Trait Implementations§
impl Freeze for QuantifiedFormula
impl RefUnwindSafe for QuantifiedFormula
impl Send for QuantifiedFormula
impl Sync for QuantifiedFormula
impl Unpin for QuantifiedFormula
impl UnwindSafe for QuantifiedFormula
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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