2016
DOI: 10.1017/s1471068416000375
|View full text |Cite
|
Sign up to set email alerts
|

Assertion-based analysis via slicing withABETS(system description)

Abstract: We present ABETS, an assertion-based, dynamic analyzer that helps diagnose errors in Maude programs. ABETS uses slicing to automatically create reduced versions of both a run's execution trace and executed program, reduced versions in which any information that is not relevant to the bug currently being diagnosed is removed. In addition, ABETS employs runtime assertion checking to automate the identification of bugs so that whenever an assertion is violated, the system automatically infers accurate slicing cri… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

0
7
0

Year Published

2017
2017
2024
2024

Publication Types

Select...
3
2

Relationship

3
2

Authors

Journals

citations
Cited by 7 publications
(7 citation statements)
references
References 13 publications
0
7
0
Order By: Relevance
“…In column S, we report the total speedups (1 − T R fix /T Chk R ) that we achieve w.r.t. the highly optimized execution with runtime assertion checking of [4]. Finally, we record the overheads of the execution times for the original program R with respect to: 1) the monitorized execution times for R, i.e., the ratio (T Chk R −T R )/T R (in column O Chk , taken from [4]); and 2) the execution times of the repaired program, i.e., the ratio (T R fix − T R )/T R (in column O fix ).…”
Section: #Ops #Eqsmentioning
confidence: 99%
See 3 more Smart Citations
“…In column S, we report the total speedups (1 − T R fix /T Chk R ) that we achieve w.r.t. the highly optimized execution with runtime assertion checking of [4]. Finally, we record the overheads of the execution times for the original program R with respect to: 1) the monitorized execution times for R, i.e., the ratio (T Chk R −T R )/T R (in column O Chk , taken from [4]); and 2) the execution times of the repaired program, i.e., the ratio (T R fix − T R )/T R (in column O fix ).…”
Section: #Ops #Eqsmentioning
confidence: 99%
“…the highly optimized execution with runtime assertion checking of [4]. Finally, we record the overheads of the execution times for the original program R with respect to: 1) the monitorized execution times for R, i.e., the ratio (T Chk R −T R )/T R (in column O Chk , taken from [4]); and 2) the execution times of the repaired program, i.e., the ratio (T R fix − T R )/T R (in column O fix ). These overheads indicate the relative slowdown due to runtime assertion checking (column O Chk ) and to the evaluation of the extra conditions inserted by the correction transformation (column O fix ).…”
Section: #Ops #Eqsmentioning
confidence: 99%
See 2 more Smart Citations
“…However, for the sake of efficiency, other relevant information that is key for variant narrowing debugging and understanding is not disclosed by Maude, either at the meta-level (as returned by the metaGetVariant and metaGetIrredundantVariant operations themselves) or at the source-level (as delivered in raw text format by the standard Maude interactive debugger, which furthermore cannot be manipulated as a meta-level expression by Maude). To provide the user with a deeper and more agile debugging experience, we have enriched the highly efficient developer version of Maude that we implemented in previous work, Mau-Dev 5 (Alpuente et al 2016;Mau-Dev 2016), with two new meta-operations, namely metaGetVariantsExt and metaGetIrredundantVariantExt that have been implemented in C++. By doing this, besides piecing everything together and giving a graphical reconstruction of the variant narrowing tree, GLINTS also distills the equations, axioms, and builtin operators applied in (simplification and) narrowing steps, together with the equational unifier that enables each step.…”
Section: Extending Maude's Variant Meta-operationsmentioning
confidence: 99%