"""Create fact_checker
Generated by Phi-Octopus Eden
2025-11-08 08:36:39.252936
"""

```python
from typing import List, Set
from collections import defaultdict

class FactChecker:
    """
    A simple fact checker that verifies if a given statement is supported by a set of facts.
    
    Each fact is represented as a tuple (subject, predicate, object).
    The fact_checker method checks if there's at least one supporting fact in the provided data.
    
    :param facts: List of tuples representing factual statements (subject, predicate, object)
    """
    
    def __init__(self, facts: List[tuple]):
        self.facts = {frozenset((s, p, o)) for s, p, o in facts}
        
    def fact_checker(self, statement: tuple) -> bool:
        """
        Checks if the given statement is supported by any of the stored facts.
        
        :param statement: A tuple (subject, predicate, object)
        :return: True if supported, False otherwise
        """
        return frozenset(statement) in self.facts

# Example usage:

facts = [
    ("John", "is_author_of", "Python"),
    ("John", "writes_books", ""),
    ("Alice", "reads", "Python"),
    ("Bob", "writes_books", "")
]

checker = FactChecker(facts)

print(checker.fact_checker(("John", "is_author_of", "Python")))  # True
print(checker.fact_checker(("Alice", "is_author_of", "Python")))  # False

```