Repositorio Institucional
Repositorio Institucional
CONICET Digital
  • Inicio
  • EXPLORAR
    • AUTORES
    • DISCIPLINAS
    • COMUNIDADES
  • Estadísticas
  • Novedades
    • Noticias
    • Boletines
  • Ayuda
    • General
    • Datos de investigación
  • Acerca de
    • CONICET Digital
    • Equipo
    • Red Federal
  • Contacto
JavaScript is disabled for your browser. Some features of this site may not work without it.
  • INFORMACIÓN GENERAL
  • RESUMEN
  • ESTADISTICAS
 
Artículo

Inferring loop invariants by mutation, dynamic analysis, and static checking

Galeotti, Juan PabloIcon ; Furia, Carlo A.; May, Eva; Fraser, Gordon; Zeller, Andreas
Fecha de publicación: 10/2015
Editorial: IEEE Computer Society
Revista: IEEE Transactions On Software Engineering
ISSN: 0098-5589
Idioma: Inglés
Tipo de recurso: Artículo publicado
Clasificación temática:
Otras Ingeniería Eléctrica, Ingeniería Electrónica e Ingeniería de la Información

Resumen

Verifiers that can prove programs correct against their full functional specification require, for programs with loops, additional annotations in the form of loop invariants - properties that hold for every iteration of a loop. We show that significant loop invariant candidates can be generated by systematically mutating postconditions; then, dynamic checking (based on automatically generated tests) weeds out invalid candidates, and static checking selects provably valid ones. We present a framework that automatically applies these techniques to support a program prover, paving the way for fully automatic verification without manually written loop invariants: Applied to 28 methods (including 39 different loops) from various Java.util classes (occasionally modified to avoid using Java features not fully supported by the static checker), our DYNAMATE prototype automatically discharged 97 percent of all proof obligations, resulting in automatic complete correctness proofs of 25 out of the 28 methods - outperforming several state-of-the-art tools for fully automatic verification.
Palabras clave: AUTOMATIC VERIFICATION , DYNAMIC ANALYSIS , FUNCTIONAL PROPERTIES , INFERENCE , LOOP INVARIANTS
Ver el registro completo
 
Archivos asociados
Thumbnail
 
Tamaño: 513.8Kb
Formato: PDF
.
Descargar
Licencia
info:eu-repo/semantics/openAccess Excepto donde se diga explícitamente, este item se publica bajo la siguiente descripción: Creative Commons Attribution-NonCommercial-ShareAlike 2.5 Unported (CC BY-NC-SA 2.5)
Identificadores
URI: http://hdl.handle.net/11336/84726
URL: http://arxiv.org/abs/1407.5286
URL: https://ieeexplore.ieee.org/document/7105412
DOI: http://dx.doi.org/10.1109/TSE.2015.2431688
Colecciones
Articulos(OCA CIUDAD UNIVERSITARIA)
Articulos de OFICINA DE COORDINACION ADMINISTRATIVA CIUDAD UNIVERSITARIA
Citación
Galeotti, Juan Pablo; Furia, Carlo A.; May, Eva; Fraser, Gordon; Zeller, Andreas; Inferring loop invariants by mutation, dynamic analysis, and static checking; IEEE Computer Society; IEEE Transactions On Software Engineering; 41; 10; 10-2015; 1019-1037
Compartir
Altmétricas
 

Enviar por e-mail
Separar cada destinatario (hasta 5) con punto y coma.
  • Facebook
  • X Conicet Digital
  • Instagram
  • YouTube
  • Sound Cloud
  • LinkedIn

Los contenidos del CONICET están licenciados bajo Creative Commons Reconocimiento 2.5 Argentina License

https://www.conicet.gov.ar/ - CONICET

Inicio

Explorar

  • Autores
  • Disciplinas
  • Comunidades

Estadísticas

Novedades

  • Noticias
  • Boletines

Ayuda

Acerca de

  • CONICET Digital
  • Equipo
  • Red Federal

Contacto

Godoy Cruz 2290 (C1425FQB) CABA – República Argentina – Tel: +5411 4899-5400 repositorio@conicet.gov.ar
TÉRMINOS Y CONDICIONES