pub struct InductionCase {
pub constructor: String,
pub args: Vec<InductionArg>,
}Expand description
The “Lever” - The specific logical move made at each proof step.
This enum captures HOW we moved from premises to conclusion. Each variant corresponds to a different proof strategy or logical rule.
§See Also
DerivationTree- Each node contains anInferenceRulecertifier::certify- Maps inference rules to kernel termshints::suggest_hint- Suggests applicable rules when stuckBackwardChainer- The engine that selects and applies rules
One constructor’s case in a generic induction scheme
(InferenceRule::InductionScheme). The derivation’s premises align 1:1 with
the cases, in the inductive’s constructor-registration order.
Fields§
§constructor: StringThe constructor this case eliminates (e.g. "Succ", "Node").
args: Vec<InductionArg>The constructor’s arguments, in order — each bound in the case body.
Trait Implementations§
Source§impl Clone for InductionCase
impl Clone for InductionCase
Source§fn clone(&self) -> InductionCase
fn clone(&self) -> InductionCase
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 InductionCase
impl Debug for InductionCase
Source§impl PartialEq for InductionCase
impl PartialEq for InductionCase
impl StructuralPartialEq for InductionCase
Auto Trait Implementations§
impl Freeze for InductionCase
impl RefUnwindSafe for InductionCase
impl Send for InductionCase
impl Sync for InductionCase
impl Unpin for InductionCase
impl UnsafeUnpin for InductionCase
impl UnwindSafe for InductionCase
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