← Latest papers
💻 computer science

Automated Repair of Requirements for Cyber-Physical Systems in Simulink Requirements Tables

This paper proposes a framework that leverages system execution data to automatically repair misaligned declarative requirements in Simulink Requirements Tables for cyber-physical systems, effectively restoring compliance between outdated requirements and updated system implementations.

Original authors: Aren A. Babikian, Alessio Di Sandro, Federico Formica, Claudio Menghi, Marsha Chechik

Published 2026-06-03
📖 4 min read☕ Coffee break read

Original authors: Aren A. Babikian, Alessio Di Sandro, Federico Formica, Claudio Menghi, Marsha Chechik

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 very complex machine, like a self-driving car or a smart thermostat. This machine is a Cyber-Physical System (CPS), meaning it mixes computer code with real-world physics. To make sure this machine works safely, engineers write a "rulebook" called Requirements. These rules say things like, "If the brake is pressed, the engine speed must stay under 4,650 RPM."

The Problem: The Rulebook Gets Outdated

In the real world, things change.

  • The Machine Evolves: Engineers might tweak the engine to make it faster or swap out a part for a better one.
  • The Rulebook Stays the Same: The original rulebook doesn't automatically update.

Suddenly, the machine is working perfectly, but it's breaking the old rules. This is a misalignment.

Traditionally, when this happens, engineers try to fix the machine to make it obey the old rules again. But sometimes, the machine is actually right, and the rulebook is just wrong, outdated, or too strict. Imagine a rule saying "The car must never go faster than 10 mph," but the car was designed to go 60 mph. Fixing the car to go 10 mph is silly; you should fix the rule.

However, finding the exact way to rewrite the rule is hard. You can't just guess; you need to look at the data the machine is producing to see what the new, correct rule should be.

The Solution: An Automated "Rulebook Doctor"

This paper introduces a new framework that acts like an automated editor for these rulebooks. Instead of trying to fix the machine, it looks at the machine's performance data (its "traces") and automatically rewrites the requirements so they match the machine's actual behavior.

Think of it like a tailor who doesn't just patch a torn shirt, but completely re-drafts the pattern based on how the person actually moves, ensuring the new pattern fits perfectly without restricting them.

How It Works (The Analogy)

The system uses a language called Simulink Requirements Tables (a way of writing rules for these machines). Here is the process:

  1. The Input: The system takes the old, broken rule and a dataset showing how the machine actually behaves.
  2. The Search: It tries thousands of variations of the rule. It's like a chef tasting a soup that's too salty and trying different amounts of water, sugar, or spices to fix the flavor without ruining the dish.
  3. The "Desirability" Filter: Just making the rule "correct" (so the machine passes it) isn't enough. The system has to make sure the new rule is good. It checks for four things:
    • Is it informative? (Don't just say "The engine speed must be less than 1,000,000." That's true but useless.)
    • Is it too strict? (Don't say "The engine must never run." That's also true but useless.)
    • Is it simple? (Don't make the math complicated if a simple number works.)
    • Does it make sense? (Don't compare "engine speed" to "brake pressure" if they are different units, like comparing apples to miles.)

The Results

The researchers tested this "Rulebook Doctor" on six real-world models (like an automatic transmission for a car and a neural network). They looked at 12 different rules that had become misaligned.

  • Success Rate: The system successfully found new, correct rules for the machines.
  • Quality: The new rules weren't just "correct"; they were also useful. They were simple, made sense, and weren't overly broad or strict.
  • Comparison: They tried different versions of their tool (some that checked for "nonsense" rules using a math solver, others that guessed). They found that using a precise math checker and generating many "candidate" rules worked best.

The Bottom Line

This paper proves that we can build tools to automatically fix broken requirements by looking at how a system actually behaves. Instead of forcing a machine to fit an old, broken rule, we can update the rule to fit the machine, ensuring safety and efficiency without needing a human to manually rewrite complex math equations.

Key Takeaway: When the system changes, the rulebook should change too. This tool does the heavy lifting of rewriting the rulebook so it stays in sync with reality.

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 →