AbstractWe introduce proof rules for inverting a program. We derive an algorithm to compute the preorder and inorder traversals of a binary tree. Subsequently, we invert this algorithm to arrive at an algorithm to construct a tree from its preorder and inorder traversals. We prove this program correct using the proof rules for inversion rather than directly. Since a proper formulation of a provable invariant of this program appears to be quite awkward, this example reinforces the view that program inversion is a useful technique and more than fun
We present a formal derivation of program schemes that are usually called Backtracking programs and ...
AbstractSince PROLOG programs are regarded not only as declarative predicates but also as procedural...
AbstractThis paper is devoted to the proof, applications, and generalisation of a theorem, due to Bi...
Abstract. Given the inorder and preorder traversal of a binary tree whose labels are all distinct, o...
Many problems in computation can be specified in terms of computing the inverse of an easily constru...
Different languages provide control structures with different kinds of flexibility. For example, CLU...
Abstract. Program inversion has many applications such as in the im-plementation of serialization/de...
Abstract. Program inversion has many applications such as in the im-plementation of serialization/de...
In this paper, we continue the work on the formal approach to program inversion by presenting progra...
Many problems in computation can be specified in terms of computing the inverse of an easily constru...
Abstract. We present a method for automatic program inversion in a first-order functional programmin...
. In this paper we derive a linear-time, constant-space algorithm to construct a binary heap whose i...
AbstractThis paper introduces a new concept of computation trees of logic programs that will be used...
A recent paper by Graham Hutton and Diana Fulger (\"Reasoning about Effects: Seeing the Wood through...
Program inversion is a fundamental problem that has been addressed in many different programming set...
We present a formal derivation of program schemes that are usually called Backtracking programs and ...
AbstractSince PROLOG programs are regarded not only as declarative predicates but also as procedural...
AbstractThis paper is devoted to the proof, applications, and generalisation of a theorem, due to Bi...
Abstract. Given the inorder and preorder traversal of a binary tree whose labels are all distinct, o...
Many problems in computation can be specified in terms of computing the inverse of an easily constru...
Different languages provide control structures with different kinds of flexibility. For example, CLU...
Abstract. Program inversion has many applications such as in the im-plementation of serialization/de...
Abstract. Program inversion has many applications such as in the im-plementation of serialization/de...
In this paper, we continue the work on the formal approach to program inversion by presenting progra...
Many problems in computation can be specified in terms of computing the inverse of an easily constru...
Abstract. We present a method for automatic program inversion in a first-order functional programmin...
. In this paper we derive a linear-time, constant-space algorithm to construct a binary heap whose i...
AbstractThis paper introduces a new concept of computation trees of logic programs that will be used...
A recent paper by Graham Hutton and Diana Fulger (\"Reasoning about Effects: Seeing the Wood through...
Program inversion is a fundamental problem that has been addressed in many different programming set...
We present a formal derivation of program schemes that are usually called Backtracking programs and ...
AbstractSince PROLOG programs are regarded not only as declarative predicates but also as procedural...
AbstractThis paper is devoted to the proof, applications, and generalisation of a theorem, due to Bi...