Analyzing Conflict Freedom For Multi-threaded Programs With Time Annotations
Jingshu Chen (INRIA Nancy - Grand Est / LORIA), Marie Duflot (INRIA, Nancy - Grand Est / LORIA), Stephan Merz (INRIA Nancy - Grand Est / LORIA)

TL;DR
This paper presents a method to verify conflict freedom in multi-threaded programs with time annotations by generating constraints and using SMT solvers to ensure no conflicting accesses occur during execution.
Contribution
It introduces a novel approach combining time annotations and SMT solving to verify conflict freedom in real-time multi-threaded programs.
Findings
Successfully verifies conflict freedom using SMT solvers.
Can produce execution traces demonstrating conflicts if they exist.
Applicable to real-time systems with time-annotated code.
Abstract
Avoiding access conflicts is a major challenge in the design of multi-threaded programs. In the context of real-time systems, the absence of conflicts can be guaranteed by ensuring that no two potentially conflicting accesses are ever scheduled concurrently.In this paper, we analyze programs that carry time annotations specifying the time for executing each statement. We propose a technique for verifying that a multi-threaded program with time annotations is free of access conflicts. In particular, we generate constraints that reflect the possible schedules for executing the program and the required properties. We then invoke an SMT solver in order to verify that no execution gives rise to concurrent conflicting accesses. Otherwise, we obtain a trace that exhibits the access conflict.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsReal-Time Systems Scheduling · Formal Methods in Verification · Embedded Systems Design Techniques
