2020
DOI: 10.1007/978-3-030-44914-8_25
|View full text |Cite
|
Sign up to set email alerts
|

ConSORT: Context- and Flow-Sensitive Ownership Refinement Types for Imperative Programs

Abstract: We present ConSORT, a type system for safety verification in the presence of mutability and aliasing. Mutability requires strong updates to model changing invariants during program execution, but aliasing between pointers makes it difficult to determine which invariants must be updated in response to mutation. Our type system addresses this difficulty with a novel combination of refinement types and fractional ownership types. Fractional ownership types provide flow-sensitive and precise aliasing information f… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
2

Citation Types

0
7
0

Year Published

2020
2020
2023
2023

Publication Types

Select...
5
2
2

Relationship

1
8

Authors

Journals

citations
Cited by 16 publications
(7 citation statements)
references
References 72 publications
0
7
0
Order By: Relevance
“…Specifically, Liquid type inference [Rondon et al 2008;Vazou et al 2015Vazou et al , 2013Vazou et al , 2014] performs a context-insensitive analysis over a monomial predicate abstraction domain of type refinements. Similarly, Zhu and Jagannathan [2013] propose a 1-context sensitive analysis with predicate abstraction, augmented with an additional counterexample-guided refinement loop, an idea that has also inspired recent techniques for analyzing pointer programs [Toman et al 2020]. Our work generalizes these algorithms to arbitrary abstract domains of type refinements (including domains of infinite height) and provides parametric and constructive soundness and completeness results for the obtained type systems.…”
Section: Related Workmentioning
confidence: 98%
“…Specifically, Liquid type inference [Rondon et al 2008;Vazou et al 2015Vazou et al , 2013Vazou et al , 2014] performs a context-insensitive analysis over a monomial predicate abstraction domain of type refinements. Similarly, Zhu and Jagannathan [2013] propose a 1-context sensitive analysis with predicate abstraction, augmented with an additional counterexample-guided refinement loop, an idea that has also inspired recent techniques for analyzing pointer programs [Toman et al 2020]. Our work generalizes these algorithms to arbitrary abstract domains of type refinements (including domains of infinite height) and provides parametric and constructive soundness and completeness results for the obtained type systems.…”
Section: Related Workmentioning
confidence: 98%
“…Specifically, Liquid type inference [Rondon et al 2008;Vazou et al 2015Vazou et al , 2013Vazou et al , 2014] performs a context-insensitive analysis over a monomial predicate abstraction domain of type refinements. Similarly, Zhu and Jagannathan [2013] propose a 1-context sensitive analysis with predicate abstraction, augmented with an additional counterexample-guided refinement loop, an idea that has also inspired recent techniques for analyzing pointer programs [Toman et al 2020]. Our work generalizes these algorithms to arbitrary abstract domains of type refinements (including domains of infinite height) and provides parametric and constructive soundness and completeness proofs for the obtained type systems.…”
Section: Related Workmentioning
confidence: 99%
“…Our approach is able to prove the correctness of both the untrusted and the trusted code within the same pipeline. Toman et al [2020] introduce the ConSORT system, which shows how ownership types can be used to allow refinement types to work with mutable objects. Like our work, this is an application of refinement types to imperative languages which reduces the number of false positives reported by type checkers.…”
Section: Related Workmentioning
confidence: 99%