Zur Hauptnavigation wechseln Zur Suche wechseln Zum Hauptinhalt wechseln

Computer-Assisted Program Reasoning Based on a Relational Semantics of Programs (Extended Abstract)

Publikation: Beitrag in Buch/Bericht/KonferenzbandKonferenzbeitragBegutachtung

Abstract

We present an approach to program reasoning which inserts between a program and its verification conditions an additional layer, the denotation of the program expressed in a declarative form. The program is first translated into its denotation from which subsequently the verification conditions are generated. However, even before (and independently of) any verification attempt, one may investigate the denotation itself to get insight into the “semantic essence” of the program, in particular to see whether the denotation indeed gives reason to believe that the program has the expected behavior. Errors in the program and in the meta-information may thus be detected and fixed prior to actually performing the formal verification. More concretely, following the relational approach to program semantics, we model the effect of a program as a binary relation on program states. A formal calculus is devised to derive from a program a a logic formula that describes this relation and is subject for inspection and manipulation. We have implemented this idea in a comprehensive form in the RISC ProgramExplorer, a new program reasoning environment for educational purposes which encompasses the previously developed RISC ProofNavigator as an interactive proving assistant.
OriginalspracheEnglisch
TitelTHedu'11, CTP Components for Educational Software, Workshop associated to CADE-23
Herausgeber*innen Pedro Quaresma and Ralph-Johan Back
ErscheinungsortWroclaw, Poland, July 31
Seiten55-59
Seitenumfang5
PublikationsstatusVeröffentlicht - 2011

Publikationsreihe

NameCISUC Technical Report

Wissenschaftszweige

  • 101001 Algebra
  • 101002 Analysis
  • 101 Mathematik
  • 102 Informatik
  • 102011 Formale Sprachen
  • 101009 Geometrie
  • 101013 Mathematische Logik
  • 101020 Technische Mathematik
  • 101025 Zahlentheorie
  • 101012 Kombinatorik
  • 101005 Computeralgebra
  • 101006 Differentialgeometrie
  • 101003 Angewandte Geometrie
  • 102025 Verteilte Systeme

JKU-Schwerpunkte

  • Computation in Informatics and Mathematics

Dieses zitieren