"""Create reasoning_engine
Generated by Phi-Octopus Eden
2025-11-07 19:45:27.104014
"""

```python
from typing import List, Dict


class ReasoningEngine:
    """
    A simple reasoning engine that can handle basic if-else logic and perform decision making.
    """

    def __init__(self):
        self.rules: Dict[str, List[List[bool]]] = {}
        self.outcomes: Dict[str, bool] = {}

    def add_rule(self, rule_name: str, conditions: List[bool], outcome: bool) -> None:
        """
        Adds a new rule to the reasoning engine.

        :param rule_name: A name for the rule.
        :param conditions: A list of boolean conditions that must be evaluated.
        :param outcome: The boolean outcome if all conditions are met.
        """
        self.rules[rule_name] = conditions
        self.outcomes[rule_name] = outcome

    def evaluate(self, facts: Dict[str, bool]) -> Dict[str, bool]:
        """
        Evaluates the rules based on provided facts and returns a dictionary of rule outcomes.

        :param facts: A dictionary where keys are variables that can be used in rules.
        :return: A dictionary mapping rule names to their evaluated outcomes.
        """
        results = {}
        for name, conditions in self.rules.items():
            result = all(facts.get(condition_var) == condition_value for condition_var, condition_value in zip(self.rules[name], conditions))
            results[name] = result and self.outcomes[name]
        return results


# Example usage
if __name__ == "__main__":
    engine = ReasoningEngine()
    # Define some rules
    engine.add_rule("rule1", [True, False, True], True)
    engine.add_rule("rule2", [False, True, False], False)

    # Provide facts to evaluate the rules against
    facts = {"var1": True, "var2": False}

    # Evaluate and print results
    results = engine.evaluate(facts)
    print(results)  # Output: {'rule1': False, 'rule2': False}
```