← Latest papers
💻 computer science

Toward Practical Deductive Verification: Insights from a Qualitative Survey in Industry and Academia

This paper presents a qualitative study based on interviews with 30 industry and academic practitioners to identify both familiar and underexplored barriers to the widespread adoption of deductive verification, ultimately offering concrete recommendations for practitioners, tool builders, and researchers to improve usability, automation, and workflow integration.

Original authors: Lea Salome Brugger, Xavier Denis, Peter Müller

Published 2026-01-26
📖 5 min read🧠 Deep dive

Original authors: Lea Salome Brugger, Xavier Denis, Peter Müller

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 building a skyscraper. You want to be 100% sure it won't collapse, that the elevators will never get stuck, and that the fire alarms will always work. You could hire a team of inspectors to look at the building after it's built (this is like standard testing). Or, you could hire a team of mathematicians to prove, using pure logic, that the building cannot fail before you even lay the first brick. This mathematical proof is called deductive verification.

This paper is a report from a group of researchers who went out and asked 30 experts—people who actually build these "mathematical proofs" for software—what it's really like to do this job. They wanted to know: Why isn't everyone doing this? What makes it work well, and what makes it a nightmare?

Here is what they found, explained in everyday terms.

The Big Picture: Why isn't everyone doing this?

Even though deductive verification is incredibly powerful (it's like having a guarantee that your software is bug-free), it's not used everywhere. It's mostly used for very critical things, like the software that runs a nuclear plant or a secure military system. For a regular video game or a shopping app, it's usually considered too expensive and too hard.

The researchers found that while we knew some of the problems (like "it's hard to learn"), they discovered some new, surprising headaches that nobody talks about enough.

The Good News: When does it actually work?

The experts said verification is a winner when you follow a few golden rules:

  1. Pick your battles: Don't try to prove the entire skyscraper is perfect. Just prove the foundation and the fire escapes are perfect. Focus on the most critical, dangerous parts of the software.
  2. Start early: If you wait until the building is finished to start your math proofs, you're in trouble. You need to design the building with the proofs in mind from day one.
  3. The tools need to be friendly: Imagine trying to build a house with a hammer that weighs 50 pounds and has no handle. That's what some verification tools feel like. The experts said the tools need to be easier to use, like a power drill with a good grip.
  4. Fit it into the workflow: You can't ask a construction crew to stop using their blueprints and start drawing on napkins. Verification needs to fit into the way developers already work, not force them to change their whole lives.

The Bad News: The Hidden Headaches

The paper uncovered several "under-the-hood" problems that make verification difficult:

  • The "Moving Target" Problem (Proof Maintenance): This was a huge surprise. Imagine you prove your bridge is safe. Then, you decide to paint the bridge a different color. Suddenly, your math proof breaks, and you have to re-do the whole thing. In software, code changes all the time. Keeping the mathematical proof in sync with the changing code is a massive, exhausting chore. There isn't a good tool to help you fix the proof when the code changes.
  • The "Black Box" Problem (Automation): Automation is a double-edged sword. On one hand, it does the hard math for you (a blessing). On the other hand, when it fails, it just says "Error" without telling you why (a curse). It's like a car that won't start and the dashboard just flashes a red light with no explanation. Developers feel like they are fighting a machine they can't see inside.
  • The "Translator" Problem (Writing Specifications): Before you can prove anything, you have to write down exactly what the software is supposed to do in a super-strict mathematical language. This is incredibly hard. It's like trying to explain a complex recipe to a robot that has no common sense. If you miss one tiny detail, the whole proof fails.
  • The "Mindset Shift": Regular programmers think in terms of "does this work?" Verification experts think in terms of "can this ever fail?" It requires a totally different way of thinking, which is hard to learn and even harder to teach.

The Recommendations: How do we fix it?

Based on these interviews, the researchers gave advice to three groups:

For the Bosses (Managers):

  • Don't try to verify everything. Just verify the parts that matter most.
  • Start thinking about verification early in the project, not as an afterthought.
  • Invest in training your team; it's a hard skill to learn.

For the Tool Builders (Developers):

  • Stop the Black Box: Make the tools transparent. If the math fails, show the user why. Let them see the gears turning.
  • Help with Maintenance: Build tools that can automatically update the math proof when the code changes slightly.
  • Make it Usable: Add features like autocomplete and better error messages, just like modern coding tools have.

For the Teachers (Researchers & Educators):

  • Stop just teaching the theory. Teach students how to use the actual tools on real-world projects.
  • Create a "library of patterns" so students don't have to reinvent the wheel every time they try to prove something.

The Bottom Line

Deductive verification is a superpower, but right now, it's a superpower that requires a lot of training, expensive tools, and a lot of patience to keep up with changes. The paper argues that if we want this technology to become mainstream, we need to stop focusing only on making the math "smarter" and start focusing on making the tools more human-friendly, easier to maintain, and better at explaining what's going wrong.

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 →