Cargando…

Empirical software metrics for benchmarking of verification tools

We study empirical metrics for software source code, which can predict the performance of verification tools on specific types of software. Our metrics comprise variable usage patterns, loop patterns, as well as indicators of control-flow complexity and are extracted by simple data-flow analyses. We...

Descripción completa

Detalles Bibliográficos
Autores principales: Demyanova, Yulia, Pani, Thomas, Veith, Helmut, Zuleger, Florian
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Springer US 2017
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7010381/
https://www.ncbi.nlm.nih.gov/pubmed/32103858
http://dx.doi.org/10.1007/s10703-016-0264-5
_version_ 1783495867553021952
author Demyanova, Yulia
Pani, Thomas
Veith, Helmut
Zuleger, Florian
author_facet Demyanova, Yulia
Pani, Thomas
Veith, Helmut
Zuleger, Florian
author_sort Demyanova, Yulia
collection PubMed
description We study empirical metrics for software source code, which can predict the performance of verification tools on specific types of software. Our metrics comprise variable usage patterns, loop patterns, as well as indicators of control-flow complexity and are extracted by simple data-flow analyses. We demonstrate that our metrics are powerful enough to devise a machine-learning based portfolio solver for software verification. We show that this portfolio solver would be the (hypothetical) overall winner of the international competition on software verification (SV-COMP) in three consecutive years (2014–2016). This gives strong empirical evidence for the predictive power of our metrics and demonstrates the viability of portfolio solvers for software verification. Moreover, we demonstrate the flexibility of our algorithm for portfolio construction in novel settings: originally conceived for SV-COMP’14, the construction works just as well for SV-COMP’15 (considerably more verification tasks) and for SV-COMP’16 (considerably more candidate verification tools).
format Online
Article
Text
id pubmed-7010381
institution National Center for Biotechnology Information
language English
publishDate 2017
publisher Springer US
record_format MEDLINE/PubMed
spelling pubmed-70103812020-02-24 Empirical software metrics for benchmarking of verification tools Demyanova, Yulia Pani, Thomas Veith, Helmut Zuleger, Florian Form Methods Syst Des Article We study empirical metrics for software source code, which can predict the performance of verification tools on specific types of software. Our metrics comprise variable usage patterns, loop patterns, as well as indicators of control-flow complexity and are extracted by simple data-flow analyses. We demonstrate that our metrics are powerful enough to devise a machine-learning based portfolio solver for software verification. We show that this portfolio solver would be the (hypothetical) overall winner of the international competition on software verification (SV-COMP) in three consecutive years (2014–2016). This gives strong empirical evidence for the predictive power of our metrics and demonstrates the viability of portfolio solvers for software verification. Moreover, we demonstrate the flexibility of our algorithm for portfolio construction in novel settings: originally conceived for SV-COMP’14, the construction works just as well for SV-COMP’15 (considerably more verification tasks) and for SV-COMP’16 (considerably more candidate verification tools). Springer US 2017-01-10 2017 /pmc/articles/PMC7010381/ /pubmed/32103858 http://dx.doi.org/10.1007/s10703-016-0264-5 Text en © The Author(s) 2017 Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
spellingShingle Article
Demyanova, Yulia
Pani, Thomas
Veith, Helmut
Zuleger, Florian
Empirical software metrics for benchmarking of verification tools
title Empirical software metrics for benchmarking of verification tools
title_full Empirical software metrics for benchmarking of verification tools
title_fullStr Empirical software metrics for benchmarking of verification tools
title_full_unstemmed Empirical software metrics for benchmarking of verification tools
title_short Empirical software metrics for benchmarking of verification tools
title_sort empirical software metrics for benchmarking of verification tools
topic Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7010381/
https://www.ncbi.nlm.nih.gov/pubmed/32103858
http://dx.doi.org/10.1007/s10703-016-0264-5
work_keys_str_mv AT demyanovayulia empiricalsoftwaremetricsforbenchmarkingofverificationtools
AT panithomas empiricalsoftwaremetricsforbenchmarkingofverificationtools
AT veithhelmut empiricalsoftwaremetricsforbenchmarkingofverificationtools
AT zulegerflorian empiricalsoftwaremetricsforbenchmarkingofverificationtools