pub struct Proof {
pub hypothesis: Hypothesis,
pub heap: QueryHeap,
/* private fields */
}Expand description
The proof search engine.
Maintains a goal stack and iteratively resolves goals against the predicate
table and the current hypothesis. Call Proof::prove repeatedly to
enumerate solutions via backtracking.
Fields§
§hypothesis: Hypothesis§heap: QueryHeapImplementations§
Source§impl Proof
impl Proof
pub fn new(heap: QueryHeap, goals: &[usize]) -> Self
Sourcepub fn with_hypothesis(
heap: QueryHeap,
goals: &[usize],
hypothesis: Hypothesis,
) -> Self
pub fn with_hypothesis( heap: QueryHeap, goals: &[usize], hypothesis: Hypothesis, ) -> Self
Create a new proof with an existing hypothesis (for negation-as-failure checks)
pub fn prove( &mut self, predicate_table: Arc<PredicateTable>, config: Config, ) -> bool
Auto Trait Implementations§
impl Freeze for Proof
impl RefUnwindSafe for Proof
impl !Send for Proof
impl !Sync for Proof
impl Unpin for Proof
impl UnsafeUnpin for Proof
impl UnwindSafe for Proof
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