"""Create fact_checker
Generated by Phi-Octopus Eden
2025-11-08 02:39:15.534701
"""

```python
from typing import List, Tuple

class FactChecker:
    """
    A simple fact checker that evaluates statements based on predefined facts.
    The fact_checker can handle logical operations AND, OR, NOT and comparison operators.
    """

    def __init__(self):
        self.knowledge_base = {}

    def add_fact(self, key: str, value: bool) -> None:
        """
        Adds a fact to the knowledge base.

        :param key: The name of the fact
        :param value: The boolean value of the fact (True or False)
        """
        self.knowledge_base[key] = value

    def evaluate_statement(self, statement: str) -> bool:
        """
        Evaluates a logical statement based on facts in the knowledge base.

        :param statement: A string representing the logic statement
        :return: The result of evaluating the statement (True or False)
        """
        return eval(statement.replace('not', '~'))

    def check_fact(self, fact: str) -> bool:
        """
        Checks if a specific fact is present in the knowledge base.

        :param fact: The name of the fact to be checked
        :return: True if the fact exists and False otherwise
        """
        return fact in self.knowledge_base

    def check_statement(self, statement: str) -> bool:
        """
        Checks a logical statement against facts in the knowledge base.

        :param statement: A string representing the logic statement to be evaluated
        :return: The result of evaluating the statement (True or False)
        """
        return self.evaluate_statement(statement)

# Example Usage

if __name__ == "__main__":
    fact_checker = FactChecker()
    
    # Adding facts
    fact_checker.add_fact('apple', True)
    fact_checker.add_fact('orange', False)
    
    # Evaluating simple statements
    print(fact_checker.check_statement('apple'))  # Output: True
    print(fact_checker.check_statement('not apple'))  # Output: False
    
    # Evaluating more complex statement
    print(fact_checker.check_statement('apple and not orange'))  # Output: True
```

This code defines a `FactChecker` class that allows adding facts, evaluating logical statements based on those facts, and checking the presence of specific facts. The example usage demonstrates how to use this class for basic fact-checking tasks.