Results 1 
5 of
5
Program Development Schemata as Derived Rules
, 2000
"... This paper makes several contributions towards a clarified view of schemabased program development. First, we propose that schemata can be understood, formalized, and used in a simple way: program development schemata are derived rules. We mean this in the standard sense of a derived rule of infere ..."
Abstract

Cited by 9 (2 self)
 Add to MetaCart
This paper makes several contributions towards a clarified view of schemabased program development. First, we propose that schemata can be understood, formalized, and used in a simple way: program development schemata are derived rules. We mean this in the standard sense of a derived rule of inference in logic. A schema like Figure i can be formulated as a rule stating that the conclusion follows from the premises defining F, G, and the applicability conditions. By deriving the rule in an axiomatic theory, we validate a semantic statement about it: the conclusion of the rule holds in every model where both the axioms of the theory and the premises of the rule are true. Hence, by selecting a language to work in we control which development schemata are formalizable, and by selecting a theory we determine which schemata are derivable
Synthesis of programs in computational logic
 PROGRAM DEVELOPMENT IN COMPUTATIONAL LOGIC
, 2004
"... Since the early days of programming and automated reasoning, researchers have developed methods for systematically constructing programs from their specifications. Especially the last decade has seen a flurry of activities including the advent of specialized conferences, such as LOPSTR, covering the ..."
Abstract

Cited by 7 (0 self)
 Add to MetaCart
Since the early days of programming and automated reasoning, researchers have developed methods for systematically constructing programs from their specifications. Especially the last decade has seen a flurry of activities including the advent of specialized conferences, such as LOPSTR, covering the synthesis of programs in computational logic. In this paper we analyze and compare three stateoftheart methods for synthesizing recursive programs in computational logic. The three approaches are constructive/deductive synthesis, schemaguided synthesis, and inductive synthesis. Our comparison is carried out in a systematic way where, for each approach, we describe the key ideas and synthesize a common running example. In doing so, we explore the synergies between the approaches, which we believe are necessary in order to achieve progress over the next decade in this field.
A HigherOrder Interpretation of Deductive Tableau
 Journal of Symbolic Computation
, 2001
"... Introduction Program synthesis is the task of formally deriving programs from specications. Unlike in traditional program development, where a program is rst written and later (if ever) validated, program synthesis builds programs that meet their specication by design: a program is developed from i ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
Introduction Program synthesis is the task of formally deriving programs from specications. Unlike in traditional program development, where a program is rst written and later (if ever) validated, program synthesis builds programs that meet their specication by design: a program is developed from its specication in a stepwise manner and each step guarantees the correctness of the nal design. Over the last few decades, a variety of methodologies have been proposed for building programs from specications, for example the use of constructive logics (Bates and Constable, 1985; Coquand and Huet, 1988) and the many approaches to deductive based synthesis and transformation, e.g., (Bibel, 1980; Bird, 1989; Burstall and Darlington, 1977), to name but a few. In this paper we consider a particular formal system, with an associated methodology for deductive synthesis, proposed by Manna and Waldinger (1992). The formal system, called the Deductive Tableau, is a nove
An efficient representation for formal synthesis
 IN 10TH INTERNATIONAL SYMPOSIUM ON SYSTEM SYNTHESIS
, 1997
"... In the last years, performing synthesis by logical refinement has become an interesting alternative towards postsynthesis verification. This paper gives a case study about the complexity of formal synthesis programs within a given calculus. For a simple synthesis step, it is discussed, how one can e ..."
Abstract

Cited by 2 (2 self)
 Add to MetaCart
In the last years, performing synthesis by logical refinement has become an interesting alternative towards postsynthesis verification. This paper gives a case study about the complexity of formal synthesis programs within a given calculus. For a simple synthesis step, it is discussed, how one can efficiently implement circuit transformations with respect to the complexity of the logical transformations of the underlying calculus.
Specifications of the ATM Switch Fabric in Coq
, 1997
"... this report, we consider digital circuits. Describing circuits as mathematical objects corresponds to construct accurate formal specifications of these circuits on which it becomes possible to prove correctness properties. From this point of view, formal verification of circuits amounts to develop a ..."
Abstract
 Add to MetaCart
this report, we consider digital circuits. Describing circuits as mathematical objects corresponds to construct accurate formal specifications of these circuits on which it becomes possible to prove correctness properties. From this point of view, formal verification of circuits amounts to develop a proof which states that the representation of the circuit under consideration (structural specification) satisfies the representation of its intended behaviour (behavioural specification) that is to say what one expects from the circuit to be correct. In other words, establishing the correctness of a circuit is proving that its implementation is equivalent (or at least implies) its specification.