The Looker alternative with formal verification and recursive queries
SynaLemma is a semantic layer for AI agents: rules compiled to SQL, verified before they run, with native recursion and assertions on the data.
SynaLemma vs Looker at a glance
| Criterion | SynaLemma | Looker |
|---|---|---|
| Definitions written in | Synalog, a logic language with a compiler | LookML, a modelling language |
| What checks the definitions | A symbolic verifier proves every rule well-formed, safe and terminating | The LookML validator: syntax and references |
| Checks on the data | Assertions in first-order logic over the whole table, with counterexamples | Data tests: a yes/no expression on one query, 5,000 rows at most |
| Hierarchies and multi-hop chains | Native recursion, verified to terminate | No recursive construct: hand-written SQL in a derived table |
| How an agent answers | Writes a verified rule, compiled to SQL by the engine | Gemini picks fields and filters from an Explore, Looker writes the SQL |
| Language model | The one you choose, a small open model is enough | Gemini for Google Cloud |
| Deployment | Your infrastructure | Gemini features need a Looker-hosted instance |
Why teams look for a Looker alternative
-
No recursion in LookML. Hierarchies of unknown depth need hand-written SQL in a derived table (derived tables).
-
The validator checks syntax and references. Google's docs state that validation won't catch every issue (LookML validation).
-
Data tests are limited. One query per test, at most 5,000 rows (test parameter).
-
Gemini picks fields from an Explore. Questions outside the modelled Explores have no answer (Conversational Analytics).
-
Gemini only, Looker-hosted. Gemini in Looker is not available on customer-hosted instances (Gemini in Looker).
SynaLemma vs Looker: key differences
1. Formal verification of every rule
A symbolic verifier proves each Synalog rule is well-formed, safe and terminating before any SQL runs. Invalid rules are rejected.
2. Assertions on the whole table
Keys, references, totals or transitivity are written in first-order logic. The engine searches the whole table for counterexamples and returns them.
3. Recursive queries on SQL
Hierarchies and multi-hop chains are recursive rules, compiled to SQL on PostgreSQL, BigQuery, Databricks, Trino, Presto, DuckDB and SQLite.
4. An analyst that extends the layer
When a question needs a new definition, the analyst writes a rule. It is verified before it is used.
5. Sovereign by construction, not by contract
SynaLemma runs on-premises: data, rules and model stay on your infrastructure. The engine compiles the SQL, so a small open model is enough.
Example: a recursive query with assertions
A bill of materials at any depth, with two assertions. The data contains a cycle; the engine reports it before any answer is returned.
# The bill of materials, read from the database.
Component(assembly:, part:, quantity:) :- bom(assembly:, part:, quantity:);
# A part is inside an assembly directly, or inside one of its parts.
@Recursive(Contains, 20);
@Assert(Contains,
transitive: "∀ a b c, Contains a b → Contains b c → Contains a c",
no_cycle: "∀ a, ¬ Contains a a");
Contains(assembly:, part:) distinct :- Component(assembly:, part:);
Contains(assembly:, part:) distinct :-
Contains(assembly:, part: sub),
Component(assembly: sub, part:); Sources
Checked against each product's public documentation on the review date. To report an error: contact@synalinks.com.
- Google Cloud: What is LookML?
- Google Cloud: Validating LookML
- Google Cloud: the test parameter (LookML data tests)
- Google Cloud: join types in LookML
- Google Cloud: derived tables in Looker
- Google Cloud: Conversational Analytics in Looker
- Google Cloud: Gemini in Looker
- Google Cloud: Looker (Google Cloud core) overview
- Synalog on GitHub (Apache-2.0)
Looker alternative: FAQ
What is the best Looker alternative for AI agents?
SynaLemma. It compiles rules to SQL like Looker, and adds formal verification of every rule, assertions on the data, native recursion and local models.
Can Looker handle recursive hierarchies?
Not in LookML. A hierarchy of unknown depth needs hand-written recursive SQL in a derived table. In Synalog, recursion is native and verified to terminate.
How is a Synalog assertion different from a LookML data test?
A LookML data test checks one query of at most 5,000 rows. A Synalog assertion is a first-order statement checked over the whole table, with counterexamples.
Can SynaLemma run with a local model?
Yes. A small open model on your own hardware is enough, because the engine compiles the SQL.
Bring a question your current stack can't answer.
In 30 minutes, we show SynaLemma answering it, with the rule behind the number and the checks it passed.