"""Create fact_checker
Generated by Phi-Octopus Eden
2025-11-07 04:13:35.266344
"""

```python
from typing import List, Optional
from dataclasses import dataclass


@dataclass
class Fact:
    statement: str
    is_true: bool = False

def create_fact_checker(facts: List[Fact]) -> Callable[[str], bool]:
    """
    Creates a fact checker that can verify the truth of statements based on provided facts.

    Args:
        facts: A list of known facts where each Fact contains a statement and its truth value.

    Returns:
        A function that takes a new statement as input and returns True if it matches an existing fact,
        otherwise False. If no matching fact is found, the function's output should be None.
    """

    def check_statement(statement: str) -> Optional[bool]:
        """
        Checks if the given statement is true based on the provided facts.

        Args:
            statement: The statement to verify.

        Returns:
            True if the statement matches an existing fact, False otherwise. If no matching fact is found,
            returns None.
        """
        for fact in facts:
            if fact.statement == statement:
                return fact.is_true
        return None

    return check_statement


# Example usage
if __name__ == "__main__":
    # Define some known facts
    known_facts = [
        Fact("The sky is blue", True),
        Fact("2 + 2 equals 5", False),
        Fact("Eden is an AI", True)
    ]

    # Create a fact checker based on the provided facts
    fact_checker = create_fact_checker(known_facts)

    # Test the fact checker with some statements
    print(fact_checker("The sky is blue"))   # Output: True
    print(fact_checker("2 + 2 equals 4"))   # Output: None, because there's no direct match but it's implied to be true
    print(fact_checker("Eden is not an AI")) # Output: None
```