Module unification

Module unification 

Source
Expand description

Unification module for backward chaining

This module provides variable binding and unification capabilities for pattern matching in backward chaining queries.

§Example

use rust_rule_engine::backward::unification::{Bindings, Unifier};
use rust_rule_engine::backward::expression::Expression;

let mut bindings = Bindings::new();

// Unify variable with value
let var = Expression::Variable("X".to_string());
let val = Expression::Literal(Value::Number(42.0));

Unifier::unify(&var, &val, &mut bindings)?;
assert_eq!(bindings.get("X"), Some(&Value::Number(42.0)));

Structs§

Bindings
Variable bindings during proof
Unifier
Unification algorithm for pattern matching