Detail výsledku

Programs with Lists are Counter Automata

VOJNAR, T.; IOSIF, R.; HABERMEHL, P.; BOUAJJANI, A.; BOZGA, M.; MORO, P. Programs with Lists are Counter Automata. FORMAL METHODS IN SYSTEM DESIGN, 2011, vol. 38, no. 2, p. 158-192. ISSN: 0925-9856.
Typ
článek v časopise
Jazyk
anglicky
Autoři
Vojnar Tomáš, prof. Ing., Ph.D., UITS (FIT)
Radu Iosif
Habermehl Peter
Bouajjani Ahmed
Bozga Marius
Moro Pierre
Abstrakt

We address the problem of verifying programs manipulating one-selector linked data structures. We propose and study in detail an application of counter automata as an accurate abstract model for this problem. We let control states of the counter automata correspond to abstract heap graphs where list segments without sharing are collapsed, and use counters to keep track of the number of elements in these segments. As a significant theoretical result, we show that the obtained counter automata are bisimilar to the original programs. Moreover, from a practical point of view, our translation allows one to apply efficient automatic analysis techniques and tools developed for counter automata (integer programs) in order to verify both safety as well as termination of list-manipulating programs. As another theoretical contribution, we prove that if the control of the generated counter automata does not contain nested loops (i.e., these automata are flat), both safety and termination are decidable for the original programs. Subsequently, we generalise our counter-automata-based model to keep track of ordering properties over lists storing ordered data. Finally, we show effectiveness of our approach by verifying automatically safety as well as termination of several sorting programs.

Klíčová slova

formal verification, model checking, programs with linked lists, counter automata, bisimulation

URL
Rok
2011
Strany
158–192
Časopis
FORMAL METHODS IN SYSTEM DESIGN, roč. 38, č. 2, ISSN 0925-9856
BibTeX
@article{BUT76302,
  author="Tomáš {Vojnar} and Iosif {Radu} and Peter {Habermehl} and Ahmed {Bouajjani} and Marius {Bozga} and Pierre {Moro}",
  title="Programs with Lists are Counter Automata",
  journal="FORMAL METHODS IN SYSTEM DESIGN",
  year="2011",
  volume="38",
  number="2",
  pages="158--192",
  issn="0925-9856",
  url="http://www.springerlink.com/content/323xp67u84550134/"
}
Projekty
Bezpečné, spolehlivé a adaptivní počítačové systémy, VUT, Vnitřní projekty VUT, FIT-S-10-1, zahájení: 2010-03-01, ukončení: 2010-12-31, ukončen
Práce se složitými datovými strukturami a paralelismem v prostředí Rich Model Toolkit, MŠMT, COST, OC10009, zahájení: 2010-01-01, ukončení: 2012-12-31, řešení
Statická a dynamická verifikace programů s pokročilými rysy paralelismu a neomezenosti, GAČR, Standardní projekty, GAP103/10/0306, zahájení: 2010-01-01, ukončení: 2013-12-31, řešení
Výzkum informačních technologií z hlediska bezpečnosti, MŠMT, Institucionální prostředky SR ČR (např. VZ, VC), MSM0021630528, zahájení: 2007-01-01, ukončení: 2013-12-31, řešení
Výzkumné skupiny
Pracoviště
Nahoru