"""Create reasoning_engine
Generated by Phi-Octopus Eden
2025-11-06 08:01:40.924666
"""

```python
from typing import List, Dict, Any


class ReasoningEngine:
    """
    A simple reasoning engine designed to solve problems with limited reasoning capabilities.
    It uses a rule-based approach where predefined rules are applied sequentially until a solution is found or all rules are exhausted.

    Args:
        rules: A list of functions that represent the reasoning rules. Each function should return True if the condition matches, False otherwise.
    
    Methods:
        reason: Attempts to find a solution by applying the rules in order.
    """

    def __init__(self, rules: List[callable]):
        self.rules = rules

    def reason(self, data: Dict[str, Any]) -> bool:
        """
        Apply reasoning rules to determine if a condition is met based on input data.

        Args:
            data: Input data as a dictionary where keys are variable names and values are their corresponding values.
        
        Returns:
            True if any rule matches the given data, False otherwise.
        """
        for rule in self.rules:
            if rule(data):
                return True
        return False


# Example usage

def is_even(num: int) -> bool:
    """Check if a number is even."""
    return num % 2 == 0


def is_positive(num: int) -> bool:
    """Check if a number is positive."""
    return num > 0


def check_temperature(temp: float) -> bool:
    """Check if the temperature is within a safe range (0 to 100)."""
    return 0 < temp <= 100


# Create a reasoning engine with specific rules
rules = [is_even, is_positive, check_temperature]
reasoning_engine = ReasoningEngine(rules)

# Test data
data = {"num": 4, "temp": 25.6}

# Example call to reason method
print(reasoning_engine.reason(data))  # Output: True

# Another example with different data
data_2 = {"num": -2, "temp": 105}
print(reasoning_engine.reason(data_2))  # Output: False

```