2010
DOI: 10.1007/978-3-642-12029-9_24
|View full text |Cite
|
Sign up to set email alerts
|

Efficient Runtime Assertion Checking of Assignable Clauses with Datagroups

Abstract: Abstract. Runtime assertion checking is useful for debugging programs and specifications. Existing tools check invariants as well as method preand postconditions, but mostly ignore assignable (or modifies) clauses, which specify the heap locations a method is allowed to assign to. A way to abstract from implementation details is to specify assignable clauses using datagroups, which represent sets of concrete memory locations.Efficient runtime checking of assignable clauses with datagroups is difficult because … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

0
4
0

Year Published

2012
2012
2022
2022

Publication Types

Select...
3
2
1

Relationship

0
6

Authors

Journals

citations
Cited by 6 publications
(4 citation statements)
references
References 9 publications
0
4
0
Order By: Relevance
“…Previous work have also explored other optimizations for runtime assertion checkers, for instance providing efficient representation of integers [8] or improving the verification of modifies clauses [9]. Regarding the former, Ortac benefits from zarith, which only switches to arbitrary-precision integers when machine integers are not large enough.…”
Section: Related Workmentioning
confidence: 99%
“…Previous work have also explored other optimizations for runtime assertion checkers, for instance providing efficient representation of integers [8] or improving the verification of modifies clauses [9]. Regarding the former, Ortac benefits from zarith, which only switches to arbitrary-precision integers when machine integers are not large enough.…”
Section: Related Workmentioning
confidence: 99%
“…There are systems that support static verification as well as monitoring of assignable clauses [23]. Data groups extend assignable clauses similar to an effect system [24].…”
Section: Comparison To Jml's Assignable Clausementioning
confidence: 99%
“…However, assignable is rarely used because its semantics has not been formally and unanimously defined until recently [22]. Furthermore, only a few tools implement run-time monitoring for JML with support for assignable clauses [23] and often not in full generality [4]. Lastly, the assignable mechanism is less flexible as access permission contracts, because it is bound to fixed classes.…”
Section: Introductionmentioning
confidence: 99%
“…Also, specification languages like JML [11,33] include a mechanism for specifying side effects, the assignable clause. While the JML toolchain supports verification as well as run-time monitoring [12,34,35], assignable clauses are not widely used, partly because their semantics has not been formally and unanimously defined until recently [35], and partly because support for assignable clauses is present in only a few tools that perform run-time monitoring for JML [36] and then not always in full generality [12].…”
Section: Related Workmentioning
confidence: 99%