pub struct EpistemicAssumption {
pub kind: EpistemicAssumptionKind,
pub predicate: String,
pub arity: usize,
pub terms: Vec<EpistemicEvidenceTerm>,
pub value: bool,
}Expand description
One bounded epistemic assumption compiled as evidence.
Fields§
§kind: EpistemicAssumptionKindAssumption kind.
predicate: StringPredicate name.
arity: usizePredicate arity.
terms: Vec<EpistemicEvidenceTerm>Concrete tuple terms for nonzero-arity evidence conditioning.
value: boolAssumed evidence truth value.
Implementations§
Source§impl EpistemicAssumption
impl EpistemicAssumption
Sourcepub fn known(predicate: impl Into<String>, arity: usize, value: bool) -> Self
pub fn known(predicate: impl Into<String>, arity: usize, value: bool) -> Self
Construct a know predicate/arity = value assumption.
Sourcepub fn known_tuple(
predicate: impl Into<String>,
terms: Vec<EpistemicEvidenceTerm>,
value: bool,
) -> Self
pub fn known_tuple( predicate: impl Into<String>, terms: Vec<EpistemicEvidenceTerm>, value: bool, ) -> Self
Construct a know predicate(terms...) = value assumption.
Sourcepub fn possible(predicate: impl Into<String>, arity: usize, value: bool) -> Self
pub fn possible(predicate: impl Into<String>, arity: usize, value: bool) -> Self
Construct a possible predicate/arity = value assumption.
Sourcepub fn possible_tuple(
predicate: impl Into<String>,
terms: Vec<EpistemicEvidenceTerm>,
value: bool,
) -> Self
pub fn possible_tuple( predicate: impl Into<String>, terms: Vec<EpistemicEvidenceTerm>, value: bool, ) -> Self
Construct a possible predicate(terms...) = value assumption.
Sourcepub fn evidence_literal(&self) -> String
pub fn evidence_literal(&self) -> String
Return the compiler-facing evidence literal for this assumption.
Trait Implementations§
Source§impl Clone for EpistemicAssumption
impl Clone for EpistemicAssumption
Source§fn clone(&self) -> EpistemicAssumption
fn clone(&self) -> EpistemicAssumption
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 EpistemicAssumption
impl Debug for EpistemicAssumption
Source§impl Ord for EpistemicAssumption
impl Ord for EpistemicAssumption
Source§fn cmp(&self, other: &EpistemicAssumption) -> Ordering
fn cmp(&self, other: &EpistemicAssumption) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for EpistemicAssumption
impl PartialEq for EpistemicAssumption
Source§impl PartialOrd for EpistemicAssumption
impl PartialOrd for EpistemicAssumption
impl Eq for EpistemicAssumption
impl StructuralPartialEq for EpistemicAssumption
Auto Trait Implementations§
impl Freeze for EpistemicAssumption
impl RefUnwindSafe for EpistemicAssumption
impl Send for EpistemicAssumption
impl Sync for EpistemicAssumption
impl Unpin for EpistemicAssumption
impl UnsafeUnpin for EpistemicAssumption
impl UnwindSafe for EpistemicAssumption
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,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more