TACO: efficient SAT-based bounded verification using symmetry breaking and tight bounds
- Autores
- Galeotti, Juan Pablo; Rosner, Nicolas Leandro; Lopez Pombo, Carlos Gustavo; Frias, Marcelo Fabian
- Año de publicación
- 2013
- Idioma
- inglés
- Tipo de recurso
- artículo
- Estado
- versión publicada
- Descripción
- SAT-based bounded verification of annotated code consists of translating the code together with the annotations to a propositional formula, and analyzing the formula for specification violations using a SAT-solver. If a violation is found, an execution trace exposing the failure is exhibited. Code involving linked data structures with intricate invariants is particularly hard to analyze using these techniques. In this paper, we present Translation of Annotated COde (TACO), a prototype tool which implements a novel, general, and fully automated technique for the SAT-based analysis of JML-annotated Java sequential programs dealing with complex linked data structures. We instrument code analysis with a symmetry-breaking predicate which, on one hand, reduces the size of the search space by ignoring certain classes of isomorphic models and, on the other hand, allows for the parallel, automated computation of tight bounds for Java fields. Experiments show that the translations to propositional formulas require significantly less propositional variables, leading to an improvement of the efficiency of the analysis of orders of magnitude, compared to the noninstrumented SAT--based analysis. We show that in some cases our tool can uncover bugs that cannot be detected by state-of-the-art tools based on SAT-solving, model checking, or SMT-solving.
Fil: Galeotti, Juan Pablo. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina
Fil: Rosner, Nicolas Leandro. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina
Fil: Lopez Pombo, Carlos Gustavo. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina
Fil: Frias, Marcelo Fabian. Instituto Tecnológico de Buenos Aires; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina - Materia
-
Software Engineering
Software Verification
Java Program Analysis
Alloy - Nivel de accesibilidad
- acceso abierto
- Condiciones de uso
- https://creativecommons.org/licenses/by-nc-sa/2.5/ar/
- Repositorio
- Institución
- Consejo Nacional de Investigaciones Científicas y Técnicas
- OAI Identificador
- oai:ri.conicet.gov.ar:11336/15644
Ver los metadatos del registro completo
id |
CONICETDig_0a5a987caba0af5eabfca8c9bda67290 |
---|---|
oai_identifier_str |
oai:ri.conicet.gov.ar:11336/15644 |
network_acronym_str |
CONICETDig |
repository_id_str |
3498 |
network_name_str |
CONICET Digital (CONICET) |
spelling |
TACO: efficient SAT-based bounded verification using symmetry breaking and tight boundsGaleotti, Juan PabloRosner, Nicolas LeandroLopez Pombo, Carlos GustavoFrias, Marcelo FabianSoftware EngineeringSoftware VerificationJava Program AnalysisAlloyhttps://purl.org/becyt/ford/1.2https://purl.org/becyt/ford/1SAT-based bounded verification of annotated code consists of translating the code together with the annotations to a propositional formula, and analyzing the formula for specification violations using a SAT-solver. If a violation is found, an execution trace exposing the failure is exhibited. Code involving linked data structures with intricate invariants is particularly hard to analyze using these techniques. In this paper, we present Translation of Annotated COde (TACO), a prototype tool which implements a novel, general, and fully automated technique for the SAT-based analysis of JML-annotated Java sequential programs dealing with complex linked data structures. We instrument code analysis with a symmetry-breaking predicate which, on one hand, reduces the size of the search space by ignoring certain classes of isomorphic models and, on the other hand, allows for the parallel, automated computation of tight bounds for Java fields. Experiments show that the translations to propositional formulas require significantly less propositional variables, leading to an improvement of the efficiency of the analysis of orders of magnitude, compared to the noninstrumented SAT--based analysis. We show that in some cases our tool can uncover bugs that cannot be detected by state-of-the-art tools based on SAT-solving, model checking, or SMT-solving.Fil: Galeotti, Juan Pablo. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; ArgentinaFil: Rosner, Nicolas Leandro. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; ArgentinaFil: Lopez Pombo, Carlos Gustavo. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; ArgentinaFil: Frias, Marcelo Fabian. Instituto Tecnológico de Buenos Aires; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; ArgentinaIEEE Computer Society2013-03info:eu-repo/semantics/articleinfo:eu-repo/semantics/publishedVersionhttp://purl.org/coar/resource_type/c_6501info:ar-repo/semantics/articuloapplication/pdfapplication/pdfhttp://hdl.handle.net/11336/15644Galeotti, Juan Pablo; Rosner, Nicolas Leandro; Lopez Pombo, Carlos Gustavo; Frias, Marcelo Fabian; TACO: efficient SAT-based bounded verification using symmetry breaking and tight bounds; IEEE Computer Society; IEEE Transactions On Software Engineering; 39; 9; 3-2013; 1283-13070098-55891939-3520enginfo:eu-repo/semantics/altIdentifier/doi/10.1109/TSE.2013.15info:eu-repo/semantics/altIdentifier/url/http://ieeexplore.ieee.org/document/6482141/info:eu-repo/semantics/openAccesshttps://creativecommons.org/licenses/by-nc-sa/2.5/ar/reponame:CONICET Digital (CONICET)instname:Consejo Nacional de Investigaciones Científicas y Técnicas2025-09-29T09:46:23Zoai:ri.conicet.gov.ar:11336/15644instacron:CONICETInstitucionalhttp://ri.conicet.gov.ar/Organismo científico-tecnológicoNo correspondehttp://ri.conicet.gov.ar/oai/requestdasensio@conicet.gov.ar; lcarlino@conicet.gov.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:34982025-09-29 09:46:24.275CONICET Digital (CONICET) - Consejo Nacional de Investigaciones Científicas y Técnicasfalse |
dc.title.none.fl_str_mv |
TACO: efficient SAT-based bounded verification using symmetry breaking and tight bounds |
title |
TACO: efficient SAT-based bounded verification using symmetry breaking and tight bounds |
spellingShingle |
TACO: efficient SAT-based bounded verification using symmetry breaking and tight bounds Galeotti, Juan Pablo Software Engineering Software Verification Java Program Analysis Alloy |
title_short |
TACO: efficient SAT-based bounded verification using symmetry breaking and tight bounds |
title_full |
TACO: efficient SAT-based bounded verification using symmetry breaking and tight bounds |
title_fullStr |
TACO: efficient SAT-based bounded verification using symmetry breaking and tight bounds |
title_full_unstemmed |
TACO: efficient SAT-based bounded verification using symmetry breaking and tight bounds |
title_sort |
TACO: efficient SAT-based bounded verification using symmetry breaking and tight bounds |
dc.creator.none.fl_str_mv |
Galeotti, Juan Pablo Rosner, Nicolas Leandro Lopez Pombo, Carlos Gustavo Frias, Marcelo Fabian |
author |
Galeotti, Juan Pablo |
author_facet |
Galeotti, Juan Pablo Rosner, Nicolas Leandro Lopez Pombo, Carlos Gustavo Frias, Marcelo Fabian |
author_role |
author |
author2 |
Rosner, Nicolas Leandro Lopez Pombo, Carlos Gustavo Frias, Marcelo Fabian |
author2_role |
author author author |
dc.subject.none.fl_str_mv |
Software Engineering Software Verification Java Program Analysis Alloy |
topic |
Software Engineering Software Verification Java Program Analysis Alloy |
purl_subject.fl_str_mv |
https://purl.org/becyt/ford/1.2 https://purl.org/becyt/ford/1 |
dc.description.none.fl_txt_mv |
SAT-based bounded verification of annotated code consists of translating the code together with the annotations to a propositional formula, and analyzing the formula for specification violations using a SAT-solver. If a violation is found, an execution trace exposing the failure is exhibited. Code involving linked data structures with intricate invariants is particularly hard to analyze using these techniques. In this paper, we present Translation of Annotated COde (TACO), a prototype tool which implements a novel, general, and fully automated technique for the SAT-based analysis of JML-annotated Java sequential programs dealing with complex linked data structures. We instrument code analysis with a symmetry-breaking predicate which, on one hand, reduces the size of the search space by ignoring certain classes of isomorphic models and, on the other hand, allows for the parallel, automated computation of tight bounds for Java fields. Experiments show that the translations to propositional formulas require significantly less propositional variables, leading to an improvement of the efficiency of the analysis of orders of magnitude, compared to the noninstrumented SAT--based analysis. We show that in some cases our tool can uncover bugs that cannot be detected by state-of-the-art tools based on SAT-solving, model checking, or SMT-solving. Fil: Galeotti, Juan Pablo. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina Fil: Rosner, Nicolas Leandro. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina Fil: Lopez Pombo, Carlos Gustavo. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina Fil: Frias, Marcelo Fabian. Instituto Tecnológico de Buenos Aires; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina |
description |
SAT-based bounded verification of annotated code consists of translating the code together with the annotations to a propositional formula, and analyzing the formula for specification violations using a SAT-solver. If a violation is found, an execution trace exposing the failure is exhibited. Code involving linked data structures with intricate invariants is particularly hard to analyze using these techniques. In this paper, we present Translation of Annotated COde (TACO), a prototype tool which implements a novel, general, and fully automated technique for the SAT-based analysis of JML-annotated Java sequential programs dealing with complex linked data structures. We instrument code analysis with a symmetry-breaking predicate which, on one hand, reduces the size of the search space by ignoring certain classes of isomorphic models and, on the other hand, allows for the parallel, automated computation of tight bounds for Java fields. Experiments show that the translations to propositional formulas require significantly less propositional variables, leading to an improvement of the efficiency of the analysis of orders of magnitude, compared to the noninstrumented SAT--based analysis. We show that in some cases our tool can uncover bugs that cannot be detected by state-of-the-art tools based on SAT-solving, model checking, or SMT-solving. |
publishDate |
2013 |
dc.date.none.fl_str_mv |
2013-03 |
dc.type.none.fl_str_mv |
info:eu-repo/semantics/article info:eu-repo/semantics/publishedVersion http://purl.org/coar/resource_type/c_6501 info:ar-repo/semantics/articulo |
format |
article |
status_str |
publishedVersion |
dc.identifier.none.fl_str_mv |
http://hdl.handle.net/11336/15644 Galeotti, Juan Pablo; Rosner, Nicolas Leandro; Lopez Pombo, Carlos Gustavo; Frias, Marcelo Fabian; TACO: efficient SAT-based bounded verification using symmetry breaking and tight bounds; IEEE Computer Society; IEEE Transactions On Software Engineering; 39; 9; 3-2013; 1283-1307 0098-5589 1939-3520 |
url |
http://hdl.handle.net/11336/15644 |
identifier_str_mv |
Galeotti, Juan Pablo; Rosner, Nicolas Leandro; Lopez Pombo, Carlos Gustavo; Frias, Marcelo Fabian; TACO: efficient SAT-based bounded verification using symmetry breaking and tight bounds; IEEE Computer Society; IEEE Transactions On Software Engineering; 39; 9; 3-2013; 1283-1307 0098-5589 1939-3520 |
dc.language.none.fl_str_mv |
eng |
language |
eng |
dc.relation.none.fl_str_mv |
info:eu-repo/semantics/altIdentifier/doi/10.1109/TSE.2013.15 info:eu-repo/semantics/altIdentifier/url/http://ieeexplore.ieee.org/document/6482141/ |
dc.rights.none.fl_str_mv |
info:eu-repo/semantics/openAccess https://creativecommons.org/licenses/by-nc-sa/2.5/ar/ |
eu_rights_str_mv |
openAccess |
rights_invalid_str_mv |
https://creativecommons.org/licenses/by-nc-sa/2.5/ar/ |
dc.format.none.fl_str_mv |
application/pdf application/pdf |
dc.publisher.none.fl_str_mv |
IEEE Computer Society |
publisher.none.fl_str_mv |
IEEE Computer Society |
dc.source.none.fl_str_mv |
reponame:CONICET Digital (CONICET) instname:Consejo Nacional de Investigaciones Científicas y Técnicas |
reponame_str |
CONICET Digital (CONICET) |
collection |
CONICET Digital (CONICET) |
instname_str |
Consejo Nacional de Investigaciones Científicas y Técnicas |
repository.name.fl_str_mv |
CONICET Digital (CONICET) - Consejo Nacional de Investigaciones Científicas y Técnicas |
repository.mail.fl_str_mv |
dasensio@conicet.gov.ar; lcarlino@conicet.gov.ar |
_version_ |
1844613449333604352 |
score |
13.070432 |