Proving or Disproving likely Invariants with Constraint Reasoning
Tristan Denmat, Arnaud Gotlieb, Mireille Ducasse
Abstract
A program invariant is a property that holds for every execution of the program. Recent work suggest to infer likely-only invariants, via dynamic analysis. A likely invariant is a property that holds for some executions but is not guaranteed to hold for all executions. In this paper, we present work in progress addressing the challenging problem of automatically verifying that likely invariants are actual invariants. We propose a constraint-based reasoning approach that is able, unlike other approaches, to both prove or disprove likely invariants. In the latter case, our approach provides counter-examples. We illustrate the approach on a motivating example where automatically generated likely invariants are verified.
Create a lesson
Related papers
MCP-Eco: A Linked Dataset of MCP Servers, Consumers, and Development Activity
Khalid Tounoussi, Mohammed Sayagh, Ali Ouni et al.
GH-AWTrace: A Large-Scale Dataset of GitHub Agentic Workflow Execution Logs
Jasem Khelifi, Hao Li, Ali Ouni et al.
Rethinking Access Control for AI Agents: Recent Advances and Open Challenges
Chijin Zhou, Quan Zhang
AgentTrustCI: Build-Time Policy, Grounding, and Trajectory Tests for Java LLM Agents
Sachin Gupta
PatchCon: Patch-aware Weighted Supervised Contrastive Learning for Vulnerability Detection
Chaomeng Lu, Pooya Rostami Mazrae, Bert Lagaisse
EPISTEME: Trustworthy Coding Agents Through Tool Call Intent
Sofia Bobadilla, Carmine Cesarano, Raphina Liu et al.