Compositional Verification in Concurrent Separation Logic with Permissions Regions

📅 2025-08-25
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
Concurrent Separation Logic (CSL) and its permission-region extension (CSLPerm) enable fine-grained reasoning about concurrent programs but lack automation and compositional verification support. This paper introduces CoSl, the first automated system supporting compositional verification of both function calls and concurrent threads. CoSl models memory disjointness using strong and weak separation conjunctions, fractional permissions, and explicit arithmetic constraints; it introduces a novel entailment mechanism for deriving heap residuals under arithmetic constraints; and it tightly integrates the frame rule with region-based permission management to achieve permission-aware modular verification. The CoSl prototype successfully verifies 10 challenging concurrent programs—including benchmarks beyond the capabilities of existing approaches—demonstrating superior precision and automation compared to state-of-the-art tools.

Technology Category

Application Category

📝 Abstract
Concurrent separation logic with fractional permissions (CSLPerm) provides a promising reasoning system to verify most complex sequential and concurrent fine-grained programs. The logic with strong and weak separating conjunctions offers a solid foundation for producing concise and precise proofs. However, it lacks automation and compositionality support. This paper addresses this limitation by introducing a compositional verification system for concurrent programs that manipulate regions of shared memory. The centre of our system is novel logical principles and an entailment procedure that can infer the residual heaps in the frame rule for a fragment of CSL-Perm with explicit arithmetical constraints for memory heaps' disjointness. This procedure enables the compositional reasoning for concurrent threads and function calls. We have implemented the proposal in a prototype tool called CoSl, tested it with 10 challenging concurrent programs, including those beyond the state-of-the-art, and confirmed the advantage of our approach.
Problem

Research questions and friction points this paper is trying to address.

Automating compositional verification in concurrent separation logic
Enabling compositional reasoning for concurrent threads and functions
Handling shared memory regions with explicit disjointness constraints
Innovation

Methods, ideas, or system contributions that make the work stand out.

Compositional verification system for concurrent programs
Novel logical principles and entailment procedure
Explicit arithmetical constraints for heap disjointness
🔎 Similar Papers
No similar papers found.