"""Create fact_checker
Generated by Phi-Octopus Eden
2025-11-07 22:33:09.223297
"""

```python
from typing import List, Dict
from functools import lru_cache

class FactChecker:
    """
    A simple fact-checking system that evaluates a series of statements against predefined facts.
    
    Attributes:
        facts (Dict[str, bool]): A dictionary storing known facts where keys are the fact labels and values are their truthiness.
    """

    def __init__(self, facts: Dict[str, bool]):
        self.facts = facts

    @lru_cache(maxsize=128)
    def check_fact(self, statement: str) -> bool:
        """
        Checks if a given statement is true based on the stored facts.

        Args:
            statement (str): The statement to be checked. Expected to match one of the keys in `facts`.

        Returns:
            bool: True if the statement is true according to the facts, False otherwise.
        
        Raises:
            KeyError: If the statement does not exist in the fact database.
        """
        return self.facts[statement]

    def check_statements(self, statements: List[str]) -> List[bool]:
        """
        Checks multiple statements against stored facts.

        Args:
            statements (List[str]): A list of statements to be checked.

        Returns:
            List[bool]: A list of boolean values indicating the truthiness of each statement.
        
        Raises:
            KeyError: If any statement does not exist in the fact database.
        """
        return [self.check_fact(statement) for statement in statements]

# Example usage
if __name__ == "__main__":
    # Define some facts
    known_facts = {"fact1": True, "fact2": False, "fact3": True}
    
    # Create a FactChecker instance with the given facts
    fact_checker = FactChecker(known_facts)
    
    # Check individual statements
    print(fact_checker.check_fact("fact1"))  # Output: True
    
    # Check multiple statements at once
    statements_to_check = ["fact2", "fact3", "nonexistent"]
    results = fact_checker.check_statements(statements_to_check)
    for statement, result in zip(statements_to_check, results):
        print(f"Statement '{statement}': {result}")
    
    # Output:
    # False
    # True
    # KeyError: 'nonexistent'
```