pub struct AxiomValidator { /* private fields */ }Expand description
Axiom validator for checking axiom consistency and tracking dependencies.
Implementations§
Source§impl AxiomValidator
impl AxiomValidator
Sourcepub fn mark_unsafe(&mut self, name: Name)
pub fn mark_unsafe(&mut self, name: Name)
Mark an axiom as unsafe.
Sourcepub fn is_classical(&self, name: &Name) -> bool
pub fn is_classical(&self, name: &Name) -> bool
Check if an axiom is classical.
Sourcepub fn all_axioms(&self) -> Vec<&Name>
pub fn all_axioms(&self) -> Vec<&Name>
Get all registered axioms.
Sourcepub fn unsafe_axioms(&self) -> Vec<&Name>
pub fn unsafe_axioms(&self) -> Vec<&Name>
Get all unsafe axioms.
Sourcepub fn classify(&self, name: &Name) -> AxiomSafety
pub fn classify(&self, name: &Name) -> AxiomSafety
Classify an axiom’s safety.
Sourcepub fn check_dependencies(&self, expr: &Expr) -> HashSet<Name>
pub fn check_dependencies(&self, expr: &Expr) -> HashSet<Name>
Extract all constant dependencies from an expression.
Sourcepub fn axiom_dependencies(&self, expr: &Expr) -> HashSet<Name>
pub fn axiom_dependencies(&self, expr: &Expr) -> HashSet<Name>
Extract only axiom dependencies from an expression.
Sourcepub fn is_constructive(&self, expr: &Expr) -> bool
pub fn is_constructive(&self, expr: &Expr) -> bool
Check if an expression is constructive (uses no classical axioms).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for AxiomValidator
impl RefUnwindSafe for AxiomValidator
impl Send for AxiomValidator
impl Sync for AxiomValidator
impl Unpin for AxiomValidator
impl UnsafeUnpin for AxiomValidator
impl UnwindSafe for AxiomValidator
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