Verification of sequential imperative programs in Isabelle-HOL [Elektronische Ressource] / Norbert Schirmer
263 pages
Deutsch

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris

Verification of sequential imperative programs in Isabelle-HOL [Elektronische Ressource] / Norbert Schirmer

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus
263 pages
Deutsch
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus

Sujets

Informations

Publié par
Publié le 01 janvier 2006
Nombre de lectures 18
Langue Deutsch
Poids de l'ouvrage 1 Mo

Extrait

f
f f f
f f f f
f f
f f f
f f f f
f f f
Verification of Sequential Imperative
Programs in Isabelle/HOL
Norbert Schirmer
Lehrstuhl fur¨ Software & Systems Engineering
Institut fur¨ Informatik
Technische Universitat¨ Munchen¨Lehrstuhl fur¨ Software & Systems Engineering
Institut fur¨ Informatik
Technische Universitat¨ Munchen¨
Verification of Sequential Imperative Programs in
Isabelle/HOL
Norbert Schirmer
Vollstandiger¨ Abdruck der von der Fakultat¨ fur¨ Informatik der Technischen
Universitat¨ Munchen¨ zurErlangungdesakademischenGradeseines
DoktorsderNaturwissenschaften(Dr.rer.nat.)
genehmigtenDissertation.
Vorsitzender: Univ. Prof.Dr.HelmutSeidl
Prufer¨ derDissertation: 1.Univ. Prof.TobiasNipkow,Ph.D.
2.Univ. Prof.Dr.WolfgangJ.Paul
UniversitatdesSaarlandes¨
DieDissertationwurdeam31.10.2005beiderTechnischenUniversitatMunchen¨ ¨
eingereichtunddurchdieFakultat¨ fur¨ Informatikam21.04.2006angenommen.i
Kurzfassung
ZielderDissertationistes,eineVerifikationsumgebungfur¨ sequentielleimperative
Programmezuschaffen.Zunachst¨ wirdunabhangig¨ voneinerkonkretenProgram
miersprache ein allgemeines Sprachmodell entwickelt, das ausdrucksstark genug
ist um alle gangigen¨ Programmiersprachkonzepte abzudecken: Gegenseitig rekur-
sive Prozeduren, abrupte Terminierung und Ausnahmebehandlung, Laufzeitfeh
ler, lokale und globale Variablen, Zeiger und Halde, Ausdrucke¨ mit Seiteneffekten,
Zeiger auf Prozeduren, partielle Applikation, dynamischer Methoden Aufruf und
unbeschrankter¨ Indeterminismus.
Fur¨ diesesSprachmodellwirdeineHoareLogiksowohlfur¨ partiellealsauchfur¨
totaleKorrektheitentwickelt.DaraufaufbauendwirdeinVerifikations Bedingungs
Generator implementiert. Die Hoare Logik erlaubt die Integration von statischer
ProgrammanalyseundSoftwareModelCheckernindieVerifikation.
DesweiterenwirdeineTeilsprachevonCindieVerifikationsumgebungeingebet
tet,umdieDurchgangigkeit¨ zueinerrealenProgrammiersprachezudemonstrieren.
Die gesamte Entwicklung wurde im Theorembeweiser Isabelle durchgefuhrt.¨
DadurchwirdzumeinendieKorrektheitmaschinellsichergestelltundzumanderen
stehtnunfur¨ dieVerifikationvonProgrammendiereichhaltigeInfrastruktureiner
vollwertigenunduniversellenBeweisumgebungzurVerfugung.¨iiiii
Abstract
Thepurposeofthisthesisistocreateaverificationenvironmentforsequentialimper-
ativeprograms. Firstagenerallanguagemodelisproposed,whichisindependent
of a concrete programming language but expressive enough to cover all common
language features: mutually recursive procedures, abrupt termination and excep
tions, runtime faults, local and global variables, pointers and heap, expressions
with side effects, pointers to procedures, partial application and closures, dynamic
methodinvocationandalsounboundednondeterminism.
ForthislanguageaHoarelogicforbothpartialandtotalcorrectnessisdeveloped
andontopofitaverificationconditiongeneratorisimplemented. TheHoarelogic
isdesignedtoallowtheintegrationofprogramanalysisorsoftwaremodelchecking
intotheverification.
To demonstrate the continuity to a real programming language a subset of C is
embeddedintotheverificationenvironment.
The whole work is developed in the theorem prover Isabelle. Therefore the
correctnessismachine checkedandinadditiontherichinfrastructureofthegeneral
purposetheoremproverIsabellecanbeemployedfortheverificationofimperative
programs.ivv
Funk is, what you don’t play.
— Maceo Parker
Acknowledgements
I thank Tobias Nipkow for supervising this thesis and giving me the opportunity
to work in his research group. I thank Wolfgang J. Paul for acting as referee and
initiatingtheVerisoftproject.
I am indebted to Amine Chaieb, Gerwin Klein, Martin Strecker and Martin
Wildmoserforreadingandcommentingondraftsofthisthesis.
IalsothankalltheformerandcurrentmembersoftheIsabelleteaminMunich
for the friendly and relaxed working atmosphere, where there is always time for a
coffeebreakanddiscussions: ClemensBallarin(forhiswiseadvise),GertrudBauer,
Stefan Berghofer (for all his support with Isabelle), Amine Chaieb, Florian Haft
mann, Gerwin Klein (for collaboration and friendship even across the continents),
AlexanderKrauss,FarhadMehta,StevenObua(forhispower),DavidvonOheimb,
Leonor Prensa Nieto, Sebastian Skalberg, Martin Strecker (for introducing me to
theorem proving and answering all my questions), Tjark Weber, Markus Wenzel
(forhisidealquestforpropersolutions),andMartinWildmoser.
I thank my parents Anneliese and Jorg, and my girlfriend Sarah Erath for their¨
loveandsupport.vi

  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents