We investigate representations of imperative programs as constrained Horn clauses. Starting from operational semantics transition rules, we proceed by writing interpreters as constrained Horn clause programs directly encoding the rules. We then specialise an interpreter with respect to a given source program to achieve a compilation of the source language to Horn clauses (an instance of the first Futamura projection). The process is described in detail for an interpreter for a subset of C, directly encoding the rules of big-step operational semantics for C. A similar translation based on small-step semantics could be carried out, but we show an approach to obtaining a small-step representation using a linear interpreter for big-step Horn cl...
An interpreter can be viewed as performing two tasks: parsing and execution. Interpreters are specia...
Abstract. Static analyses of object-oriented programs usually rely on intermediate representations t...
. In this paper a method is proposed for carrying out analysis of imperative programs. We achieve th...
We investigate representations of imperative programs as constrained Horn clauses. Starting from ope...
The feasibility of using Horn clauses as a means of describing and transforming imperative pro-grams...
We present a method for automatically generating verification conditions for a class of imperative p...
We present a method for automatically generating verification conditions for a class of imperative p...
© 1989, Springer-Verlag. We describe an application of abstract interpretation within the field of s...
Modular Structural Operational Semantics (MSOS) is a variant of Structural Operational Semantics (SO...
Abstract. Horn ⊃ is a logic programming language, defined on the underlying logic FO ⊃ (an extension...
AbstractWe review links between three logic formalisms and three approaches to specifying operationa...
We present a method for verifying the correctness of an imperative program with respect to a spec-if...
We present a method for verifying the correctness of imperative programs which is based on the autom...
Correctness is a major concern in computer science, especially for programs with complicated semanti...
Program analysis and specialisation for declarative languages have been subjects of active research ...
An interpreter can be viewed as performing two tasks: parsing and execution. Interpreters are specia...
Abstract. Static analyses of object-oriented programs usually rely on intermediate representations t...
. In this paper a method is proposed for carrying out analysis of imperative programs. We achieve th...
We investigate representations of imperative programs as constrained Horn clauses. Starting from ope...
The feasibility of using Horn clauses as a means of describing and transforming imperative pro-grams...
We present a method for automatically generating verification conditions for a class of imperative p...
We present a method for automatically generating verification conditions for a class of imperative p...
© 1989, Springer-Verlag. We describe an application of abstract interpretation within the field of s...
Modular Structural Operational Semantics (MSOS) is a variant of Structural Operational Semantics (SO...
Abstract. Horn ⊃ is a logic programming language, defined on the underlying logic FO ⊃ (an extension...
AbstractWe review links between three logic formalisms and three approaches to specifying operationa...
We present a method for verifying the correctness of an imperative program with respect to a spec-if...
We present a method for verifying the correctness of imperative programs which is based on the autom...
Correctness is a major concern in computer science, especially for programs with complicated semanti...
Program analysis and specialisation for declarative languages have been subjects of active research ...
An interpreter can be viewed as performing two tasks: parsing and execution. Interpreters are specia...
Abstract. Static analyses of object-oriented programs usually rely on intermediate representations t...
. In this paper a method is proposed for carrying out analysis of imperative programs. We achieve th...