|
|
from backend.core.cross_universe_analysis import CrossUniverseAnalyzer
|
|
|
from backend.core.universe_generator import UniverseGenerator
|
|
|
from backend.db.session import SessionLocal
|
|
|
|
|
|
def test_shared_axioms_and_theorems():
|
|
|
db = SessionLocal()
|
|
|
generator = UniverseGenerator(db)
|
|
|
|
|
|
u1 = generator.create_universe("U1", "Universe 1", "generic", ["A1", "A2", "A3"])
|
|
|
u2 = generator.create_universe("U2", "Universe 2", "generic", ["A2", "A3", "A4"])
|
|
|
u3 = generator.create_universe("U3", "Universe 3", "generic", ["A3", "A4", "A5"])
|
|
|
|
|
|
generator.create_theorem(u1.id, "T1", "Proof1")
|
|
|
generator.create_theorem(u2.id, "T1", "Proof2")
|
|
|
generator.create_theorem(u3.id, "T2", "Proof3")
|
|
|
analyzer = CrossUniverseAnalyzer(db)
|
|
|
result = analyzer.analyze([u1.id, u2.id, u3.id])
|
|
|
assert "A3" in result["shared_axioms"]
|
|
|
assert "T1" in result["shared_theorems"]
|
|
|
db.close()
|
|
|
|