← Latest papers
💻 computer science

Beyond Eager Encodings: A Theory-Agnostic Approach to Theory-Lemma Enumeration in SMT

This paper introduces a theory-agnostic framework for efficiently enumerating complete sets of theory lemmas using scalable techniques like divide-and-conquer and projected enumeration, thereby overcoming the limitations of classic eager encodings and significantly improving performance for complex SMT tasks such as unsat-core extraction and MaxSMT.

Original authors: Emanuele Civini, Gabriele Masina, Giuseppe Spallitta, Roberto Sebastiani

Published 2026-05-25
📖 5 min read🧠 Deep dive

Original authors: Emanuele Civini, Gabriele Masina, Giuseppe Spallitta, Roberto Sebastiani

Original paper licensed under CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer

Imagine you are trying to solve a massive logic puzzle, but the puzzle has two layers: a Boolean layer (simple True/False switches) and a Theory layer (complex rules about math, time, or physics).

In the world of computer science, this is called SMT (Satisfiability Modulo Theories). The computer's job is to find a combination of True/False switches that makes the whole puzzle work.

The Problem: The "Naughty" Combinations

Sometimes, the computer finds a combination of switches that looks perfect on the surface (the Boolean layer), but when you check the complex rules (the Theory layer), it breaks the laws of physics or math.

  • Example: Imagine a rule saying "You can't be in two places at once." The computer might try a switch setting that says "I am in Paris AND I am in Tokyo." The Boolean logic says "True, True," but the Theory says "Impossible!"

To stop the computer from wasting time on these impossible scenarios, we need to generate "Theory Lemmas." Think of these as Warning Signs or Fences that the computer puts up to say, "Do not go down this path; it leads to a contradiction."

The Old Way: "Eager" vs. "Lazy"

  • Lazy Approach (Standard): The computer tries a path, hits a wall, gets a warning sign, and then tries again. It builds fences one by one as it goes. This is fast for simple puzzles but slow for huge ones.
  • Eager Approach (The Goal): For very complex tasks (like extracting the exact reason a puzzle is broken, or compiling a map for future use), we need to build all the warning signs before we start solving. This is called "Eager Encoding."

The Catch: The old "Eager" methods were like trying to build a fence around a whole country by walking every single inch of the border. They were slow, only worked for simple theories, and often built fences where none were needed.

The New Solution: A Smarter Way to Build Fences

This paper presents a new, "theory-agnostic" (works for any type of rule) method to build these fences efficiently. The authors propose three clever tricks to make this process faster and scalable:

1. Divide and Conquer (The "Teamwork" Strategy)

Instead of one giant team trying to map the whole border at once, they split the job.

  • How it works: They first find a few "partial" paths that are safe. Then, they split the remaining dangerous territory into smaller, independent chunks.
  • The Analogy: Imagine you have a massive forest to clear. Instead of one person walking the whole thing, you send a team to clear the North, another to the South, and another to the East. They work in parallel (at the same time), and then you combine their maps. This is much faster than one person doing it all.

2. Projection (The "Focus" Strategy)

Sometimes, the computer wastes time checking details that don't actually matter for the contradiction.

  • How it works: The method ignores the "Boolean switches" and only looks at the "Theory atoms" (the core math/physics rules).
  • The Analogy: Imagine you are looking for a specific type of bird in a forest. The old way checks every tree, every bush, and every rock. The new way says, "We only care about the trees where this bird nests." It ignores the bushes and rocks entirely, drastically reducing the search area.

3. Theory-Driven Partitioning (The "Islands" Strategy)

Sometimes, the puzzle is made of completely separate islands of logic that don't talk to each other.

  • How it works: If the rules about "Time" have nothing to do with the rules about "Color," the computer treats them as two separate puzzles. It builds fences for the Time island and the Color island independently.
  • The Analogy: If you are organizing a party with a "Kids' Zone" and a "Adults' Zone" that have no overlap, you don't need one giant security guard checking everyone. You can have one guard for the kids and one for the adults. They work separately, making the job much easier.

The Results: Speed and Scale

The authors tested these methods on two types of problems:

  1. Synthetic Math Problems: They showed that their new methods could solve problems 100 times faster than the old baseline.
  2. Real-World Planning Problems: They tested this on "temporal planning" (like scheduling complex tasks over time). Here, the "Islands" strategy was a game-changer, allowing them to solve problems that were previously impossible to handle.

Summary

In short, this paper teaches computers how to build "Warning Signs" (Theory Lemmas) much faster. Instead of walking the whole border slowly, they now:

  1. Split the work among many workers (Divide & Conquer).
  2. Ignore irrelevant details (Projection).
  3. Treat separate problems separately (Partitioning).

This allows computers to handle much more complex logic puzzles, which is essential for advanced tasks like verifying software, planning robot movements, or analyzing complex systems.

Drowning in papers in your field?

Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.

Try Digest →