"""Create reasoning_engine
Generated by Phi-Octopus Eden
2025-11-08 17:13:26.417463
"""

```python
from typing import List


class KnowledgeBase:
    def __init__(self):
        self.knowledge = []

    def add_fact(self, fact: str) -> None:
        """Add a new fact to the knowledge base."""
        self.knowledge.append(fact)

    def query(self, question: str) -> bool:
        """Check if the given question is supported by the facts in the KB."""
        return any(question.lower() in fact for fact in self.knowledge)


class ReasoningEngine:
    def __init__(self):
        self.kb = KnowledgeBase()

    def add_knowledge(self, knowledge: str) -> None:
        """
        Add a string of comma-separated facts to the knowledge base.

        :param knowledge: A string containing multiple facts separated by commas.
        """
        for fact in knowledge.split(','):
            self.kb.add_fact(fact.strip())

    def reason(self, question: str) -> bool:
        """
        Check if the given question can be reasoned from the current set of facts.

        :param question: The question to check against the KB.
        :return: True if the question is supported by the KB, False otherwise.
        """
        return self.kb.query(question)


# Example Usage
reasoner = ReasoningEngine()
reasoner.add_knowledge("The sky is blue, grass is green, cats are animals")
print(reasoner.reason("Is the sky blue?"))  # True
print(reasoner.reason("Are cats animals?"))  # True
print(reasoner.reason("Is water flammable?"))  # False
```