Reducing the Number of Annotations in a Veri cation-oriented Imperative Language

نویسندگان

  • Guido de Caso
  • Diego Garbervetsky
  • Daniel Gorín
چکیده

Automated software veri cation is a very active eld of research which has made enormous progress both in theoretical and practical aspects. Recently, an important amount of research e ort has been put into applying these techniques on top of mainstream programming languages. These languages typically provide powerful features such as re ection, aliasing and polymorphism which are handy for practitioners but, in contrast, make veri cation a real challenge. In this work we present Pest, a simple experimental, while-style, multiprocedural, imperative programming language which was conceived with veri ability as one of its main goals. This language forces developers to concurrently think about both the statements needed to implement an algorithm and the assertions required to prove its correctness. In order to aid programmers, we propose several techniques to reduce the number and complexity of annotations required to successfully verify their programs. In particular, we show that high-level iteration constructs may alleviate the need for providing complex loop annotations.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

University Paris Sud (orsay) Site and Grenoble and France Telecom R& D Subsites Dependent Types for His Master Work Supervised by C. Paulin, M. Sozeau [4] Designed a Language with A

Proving C or Java programs Our main activity is related to program veri cation. We mainly focus on the veri cation of behavioral speci cations for programming languages such as C, Java and ML. We develop a tool Why which is a veri cation conditions generator: from an annotated program written in a small imperative language with Hoare logic-like speci cation, it generates conditions expressing t...

متن کامل

Scalable Certi cation for Typed Assembly Language

A type-based certifying compiler maps source code to machine code and target-level type annotations. The targetlevel annotations make it possible to prove easily that the machine code is type-safe, independent of the source code or compiler. To be useful across a range of source languages and compilers, the target-language type system should provide powerful type constructors for encoding sourc...

متن کامل

Object-oriented modelling and speci$cation using SHE

Industry is facing a crisis in the design of complex hardware=software systems. Due to the increasing complexity, the gap between the generation of a product idea and the realisation of a working system is expanding rapidly. To manage complexity and to shorten design cycles, industry is forced to look at system-level languages towards speci$cation and design. The (formal) system-level modelling...

متن کامل

Reducing the Number of Annotations in a Verification-oriented Imperative Language

Automated software verification is a very active field of research which has made enormous progress both in theoretical and practical aspects. Recently, an important amount of research effort has been put into applying these techniques on top of mainstream programming languages. These languages typically provide powerful features such as reflection, aliasing and polymorphism which are handy for...

متن کامل

Tamper-Proof Annotations, By Construction

Current mobile-code formats require veri cation by the code recipient to guard against potentially malicious actions of an incoming mobile program. Such veri cation is needed even when a mobile program originated in a \safe" language such as Java, because the transmission might have been corrupted by an adversary. We describe an alternative approach based on a family of mobile code formats that...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2009