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)));