SynaLemma is built on these engines.
Our commercial product puts them to work on your business data: answers that cite the rule behind every number, on your servers, with the model you choose.
Book a demoSynalinks for the agent, Synalog for the logic, Semantic Layers for the knowledge: all Apache-2.0 and developed in public. Because the code is public, anyone can check how SynaLemma's engines verify a rule and compute an answer.
This page is technical. For your business, it means that the engines under SynaLemma can be inspected by anyone, and that your rules remain readable outside our product. See SynaLemma
Why neuro-symbolic, why the model does not do the reasoning, and the standards we hold ourselves to.
Read the approach Our researchSix areas of applied research, from neuro-symbolic reasoning to evaluating AI systems, and the experimental protocol we follow.
Read the researchSynalinks is a framework for building, training, and deploying language-model applications (RAG pipelines, autonomous agents, and self-evolving reasoning systems) with a clean, declarative API inherited from Keras. It brings deep-learning discipline to AI systems: compose components, optimize their instructions against real metrics without touching model weights, run agent code in an embedded sandbox, and deploy the result as an API or an MCP server. Developed under the supervision of François Chollet, the author of Keras.
$ uvx synalinks init Why it matters for you: SynaLemma's assistant is built on it, so its outputs are held to a schema and its instructions are optimized against measured results.
Synalog is a logic language of the Datalog family, written in Rust, that compiles to seven SQL dialects. A formal verifier refuses a badly built rule before any SQL is generated, and assertions in first-order logic, written in Lean's notation, search your data for counterexamples. Knowledge graphs over your tables, bounded recursion, reasoning over time: nothing is copied, everything runs in your database.
---
name: Requires
description: An assembly requires a component, directly or inside a sub-assembly, at any level of the bill of materials.
---
import concepts.Contains.Contains;
@Assert(Requires,
no_cycle: "∀ a, ¬ Requires a a",
transitive: "∀ a b c, Requires a b → Requires b c → Requires a c",
includes_direct: "∀ a c q, Contains a c q → Requires a c");
@Recursive(Requires, 20);
@OrderBy(Requires, "assembly_id", "component_id");
Requires(assembly_id:, component_id:) distinct :- Contains(assembly_id:, component_id:);
Requires(assembly_id:, component_id:) distinct :-
Requires(assembly_id:, component_id: middle), Contains(assembly_id: middle, component_id:); Why it matters for you: your business rules become code that is verified before it runs, and every answer traces back to the data that produced it, which is what a customer or a regulator will ask you to show.
Agent Skills gave agents an open format for procedures. Semantic Layers is the same idea for knowledge: a folder of definitions (available stock, a late delivery, a critical supplier) and of the rules that reason over them. The definition is not paraphrased by the agent: it executes on the database, and gives the same result whichever agent runs it.
$ semantic-layers search 'late|delivery' Why it matters for you: a layer of thousands of definitions costs a few lines of context, because the agent searches instead of loading everything. It installs with one command, and nothing unverified lands in it. And because a layer is a git repository, the history of every definition can be reviewed and audited like code.
Synalinks Skills is a library of skills in the open SKILL.md format that
teaches coding agents to write idiomatic Synalinks: scannable
guides, runnable scripts, and deep-dive references covering the framework end to end.
Without that guidance, a model mixes syntaxes and produces plausible-looking but
broken code. With it, coding agents write Synalinks the way our team does.
Why it matters for you: turning know-how into instructions a machine follows is what our engineers do inside SynaLemma with your teams' definitions.
Our commercial product puts them to work on your business data: answers that cite the rule behind every number, on your servers, with the model you choose.
Book a demoOur frameworks are Apache-2.0 and developed in public. Star the repos, open an issue, or join the conversation. To use these engines on your own data, start with SynaLemma and our forward-deployed engineers.