pub struct EpistemicTupleMembershipBinding {
pub literal_index: usize,
pub reduction_index: usize,
pub predicate: String,
pub arity: usize,
pub key_columns: Vec<usize>,
pub key_terms: Vec<EirTerm>,
pub bound_output_columns: Vec<Option<usize>>,
pub op: EirEpistemicOp,
pub negated: bool,
}Expand description
Binding from an epistemic literal to reduced stable-model tuple evidence.
Fields§
§literal_index: usizeIndex of the epistemic literal in EpistemicGpuPlan::epistemic_literals.
reduction_index: usizeIndex of the reduced rule in EpistemicGpuPlan::reductions.
predicate: StringPredicate whose stable-model tuples must be checked.
arity: usizePredicate arity whose stable-model tuples must be checked.
key_columns: Vec<usize>Source relation columns that form the tuple key for this epistemic atom.
key_terms: Vec<EirTerm>Source atom terms that must be matched against the stable-model tuple key.
bound_output_columns: Vec<Option<usize>>Reduced output column for each variable tuple-key term.
Ground terms use None; variable terms use Some(column_index).
op: EirEpistemicOpEpistemic operator whose membership semantics are being checked.
negated: boolWhether the epistemic literal is explicitly negated.
Trait Implementations§
Source§impl Clone for EpistemicTupleMembershipBinding
impl Clone for EpistemicTupleMembershipBinding
Source§fn clone(&self) -> EpistemicTupleMembershipBinding
fn clone(&self) -> EpistemicTupleMembershipBinding
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 PartialEq for EpistemicTupleMembershipBinding
impl PartialEq for EpistemicTupleMembershipBinding
Source§fn eq(&self, other: &EpistemicTupleMembershipBinding) -> bool
fn eq(&self, other: &EpistemicTupleMembershipBinding) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Eq for EpistemicTupleMembershipBinding
impl StructuralPartialEq for EpistemicTupleMembershipBinding
Auto Trait Implementations§
impl Freeze for EpistemicTupleMembershipBinding
impl RefUnwindSafe for EpistemicTupleMembershipBinding
impl Send for EpistemicTupleMembershipBinding
impl Sync for EpistemicTupleMembershipBinding
impl Unpin for EpistemicTupleMembershipBinding
impl UnsafeUnpin for EpistemicTupleMembershipBinding
impl UnwindSafe for EpistemicTupleMembershipBinding
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