# Geolog Summary *Date: 2026-03-19* ## What Is Geolog? Geolog is a **Geometric Logic REPL** — a reasoning engine written in Rust that implements type theory with semantics in topoi. It was AI-generated by Claude Opus 4.5. ## Core Concepts ### Axioms An axiom is an "if-then" rule: "If premises are true, then conclusion must be true." ``` forall x, y, z. friends(x,y), friends(y,z) |- knows(x,z) ``` Similar to Datalog rules, but extended with: - Existentials in conclusions (`|- exists x. R(x)`) - Disjunctions (`|- A \/ B`) - Equality conclusions (`|- x = y`) ### Chase Algorithm Repeatedly applies axioms until no new facts can be derived (fixpoint). Basic blocks: 1. **Axioms** — the rules to apply 2. **Structure** — carriers (element sets), functions, relations 3. **Bindings** — variable-to-element mappings 4. **Tensor system** — finds violations (premises true, conclusion false) 5. **Fire conclusion** — adds relations, defines functions, creates elements, adds equations 6. **Congruence closure** — union-find for tracking element equality ### Union-Find Data structure for tracking equivalence classes. Used for congruence closure when axioms conclude `x = y`. More efficient than naive dictionary + sets approach: - Naive: O(n) per union - Union-find: O(1) amortized per union ### Language Syntax Geolog's syntax is not based on any single existing language. Influences: - **Postfix application** (`x f` not `f(x)`) — category theory - **Sequent notation** (`premises |- conclusion`) — proof theory - **Path separators** (`/` not `.`) — unique to Geolog ## Skeptical Assessment of Applications ### Claimed Use Cases - Business process workflow orchestration - Formal verification - Database query design - Petri net reachability ### Reality | Claim | Assessment | |-------|------------| | Workflow orchestration | No APIs, no integrations, no distributed execution — just a REPL | | Formal verification | Lean4 proofs "in progress"; not comparable to Coq/Lean/TLA+ | | Database query design | Not a database — no persistence at scale, no SQL, no transactions | | Petri net reachability | Toy examples only, not industrial-scale | ### What It Actually Is A **research/educational tool** for: - Learning geometric logic and chase algorithms - Experimenting with category-theoretic ideas - Prototyping constraint systems - Academic exploration **Not suitable for:** Production systems, real workflow orchestration, industrial formal verification, or database replacement. ## Project Status - Version: 0.1.0 - 30,000+ lines of Rust - 168 tests (all passing) - 30 example files - Well-documented but unproven in real-world use