pub struct ConfluenceChecker { /* private fields */ }Expand description
Confluence checker for rewrite systems.
Implementations§
Source§impl ConfluenceChecker
impl ConfluenceChecker
Sourcepub fn with_max_depth(self, depth: usize) -> Self
pub fn with_max_depth(self, depth: usize) -> Self
Set maximum depth for joinability testing.
Sourcepub fn with_max_expr_size(self, size: usize) -> Self
pub fn with_max_expr_size(self, size: usize) -> Self
Set maximum expression size.
Sourcepub fn check(&mut self, system: &RewriteSystem) -> ConfluenceReport
pub fn check(&mut self, system: &RewriteSystem) -> ConfluenceReport
Check confluence of a rewrite system.
Sourcepub fn test_joinability(
&mut self,
expr1: &TLExpr,
expr2: &TLExpr,
system: &RewriteSystem,
) -> bool
pub fn test_joinability( &mut self, expr1: &TLExpr, expr2: &TLExpr, system: &RewriteSystem, ) -> bool
Test if two expressions are joinable (can be rewritten to a common form).
Uses breadth-first search to explore possible rewrites.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ConfluenceChecker
impl RefUnwindSafe for ConfluenceChecker
impl Send for ConfluenceChecker
impl Sync for ConfluenceChecker
impl Unpin for ConfluenceChecker
impl UnwindSafe for ConfluenceChecker
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