4.5 KiB
Geolog Q&A Session
Date: 2026-03-17
Q1: Is this project complete?
Answer: Yes, the core functionality is complete and production-ready.
What Geolog Does
Geolog is a reasoning engine for geometric logic. It lets you:
- Define theories with types, functions, relations, and rules
- Build concrete models of those theories
- Automatically derive facts using the chase algorithm
- Check rules using tensor algebra
- Solve models using automated search
Evidence of Completeness
- 30,000+ lines of Rust code
- 168 tests, all passing
- 30 working examples
- Full documentation (README, architecture guide, syntax reference)
What's Done
- Parser and type checker
- Chase algorithm with equality handling
- Tensor algebra for rule checking
- Solver for model search
- Persistent storage with version control
- Interactive REPL
Minor Gaps
- 11 TODO comments for optimizations
- Some edge cases with product types
- Lean4 formalization is in progress
These gaps don't block normal use.
Q2: Are tensor algebra and chase algorithm expressive enough for Geolog?
Answer: Yes for core geometric logic. There are specific gaps around product types and disjunction.
Fully Supported
| Feature | How It Works |
|---|---|
Relations like R(x,y) |
Tensor + Chase |
| Existentials in premises | Tensor system |
Equations like f(x) = y |
Congruence closure |
Nested functions like f(g(x)) |
Tensor contraction |
| Creating new elements | Chase handles ∃x. ... in conclusions |
| Merging elements | Chase handles x = y conclusions |
Gaps
Product types have limited support:
- Functions with product domains in conclusions don't work
- Existentials over product sorts don't work
- Field projections in equations (
x.field = y) don't compile
Disjunction is incomplete:
- When a rule concludes
A or B, the chase fires both A and B - This is correct but may add more facts than needed
- A proper implementation would choose one branch
Errors are silent:
- When tensor compilation fails, the rule is skipped without warning
- This can hide problems in complex axioms
By Design (Not Bugs)
Geolog uses geometric logic, which excludes:
- Negation (no
not R(x)) - Classical implication (no
if A then B) - Arithmetic (no
x + 1 = y)
These are intentional limits, not missing features.
Bottom Line
The mechanisms handle all standard geometric logic axioms:
- Reflexivity, transitivity, composition
- Category laws, Petri net rules, graph reachability
The gaps only matter for axioms with complex record/product operations in conclusions.
Q3: Is Geolog inspired by an existing tool or software?
Answer: Geolog is an AI-generated project that combines ideas from several fields. No single tool is its direct ancestor.
Origin
The README states:
"This README was synthesized automatically by Claude Opus 4.5. As was this entire project, really."
Geolog was created by Claude Opus 4.5, Anthropic's AI model.
Technical Influences
The project draws from several established areas:
Egglog / Egg
- Uses
egglog-union-findandegglog-numeric-idcrates - Equality saturation and e-graph techniques for congruence closure
Database Theory
- Chase algorithm: a classical method for computing fixpoints in databases
- Relational algebra for query compilation
SMT Solvers
- Model enumeration follows SMT solver patterns
- Automated search with forward chaining and equation propagation
Category Theory / Topos Theory
- Geometric logic with semantics in topoi
- Lean4 formalization uses the
model-theory-toposlibrary
Formal Verification
- Petri net reachability (similar to model checking)
- Diagrammatic rewriting
No Single Predecessor
The codebase doesn't name a specific tool as direct inspiration. Geolog is a novel combination of:
| Concept | Source Field |
|---|---|
| Geometric logic | Mathematical logic |
| Chase algorithm | Database theory |
| Tensor algebra | Linear algebra / sparse computation |
| Equality saturation | Program optimization (egg/egglog) |
| Congruence closure | Automated theorem proving |
Related Tools (for context)
While not cited as inspirations, similar tools exist in adjacent spaces:
- Alloy - relational logic model finder
- Datalog - logic programming for databases
- CQL - categorical query language
- Z3 - SMT solver
- Egg - equality saturation toolkit
Geolog occupies a unique niche: geometric logic with topos semantics applied to practical problems like workflow orchestration and Petri nets.