Results 1  10
of
26
Dependently Typed Functional Programs and their Proofs
, 1999
"... Research in dependent type theories [ML71a] has, in the past, concentrated on its use in the presentation of theorems and theoremproving. This thesis is concerned mainly with the exploitation of the computational aspects of type theory for programming, in a context where the properties of programs ..."
Abstract

Cited by 70 (13 self)
 Add to MetaCart
Research in dependent type theories [ML71a] has, in the past, concentrated on its use in the presentation of theorems and theoremproving. This thesis is concerned mainly with the exploitation of the computational aspects of type theory for programming, in a context where the properties of programs may readily be specified and established. In particular, it develops technology for programming with dependent inductive families of datatypes and proving those programs correct. It demonstrates the considerable advantage to be gained by indexing data structures with pertinent characteristic information whose soundness is ensured by typechecking, rather than human effort. Type theory traditionally presents safe and terminating computation on inductive datatypes by means of elimination rules which serve as induction principles and, via their associated reduction behaviour, recursion operators [Dyb91]. In the programming language arena, these appear somewhat cumbersome and give rise to unappealing code, complicated by the inevitable interaction between case analysis on dependent types and equational reasoning on their indices which must appear explicitly in the terms. Thierry Coquand’s proposal [Coq92] to equip type theory directly with the kind of
Fundamentals Of Deductive Program Synthesis
 IEEE Transactions on Software Engineering
, 1992
"... An informal tutorial is presented for program synthesis, with an emphasis on deductive methods. According to this approach, to construct a program meeting a given specification, we prove the existence of an object meeting the specified conditions. The proof is restricted to be sufficiently construct ..."
Abstract

Cited by 65 (1 self)
 Add to MetaCart
An informal tutorial is presented for program synthesis, with an emphasis on deductive methods. According to this approach, to construct a program meeting a given specification, we prove the existence of an object meeting the specified conditions. The proof is restricted to be sufficiently constructive, in the sense that, in establishing the existence of the desired output, the proof is forced to indicate a computational method for finding it. That method becomes the basis for a program that can be extracted from the proof. The exposition is based on the deductivetableau system, a theoremproving framework particularly suitable for program synthesis. The system includes a nonclausal resolution rule, facilities for reasoning about equality, and a wellfounded induction rule. INTRODUCTION This is an introduction to program synthesis, the derivation of a program to meet a given specification. It focuses on the deductive approach, in which the derivation task is regarded as a problem of ...
A Survey and Classification of some Program Transformation Approaches and Techniques
 In TC2 IFIP Working Conference on Program Specification and Transformation
, 1987
"... Program transformation is a means to formally develop efficient programs from lucid specifications. A representative sample of the diverse range of program transformation research is classified into several different approaches based upon the motivations for and styles of constructing such formal de ..."
Abstract

Cited by 44 (0 self)
 Add to MetaCart
Program transformation is a means to formally develop efficient programs from lucid specifications. A representative sample of the diverse range of program transformation research is classified into several different approaches based upon the motivations for and styles of constructing such formal developments. Individual techniques for supporting construction of developments are also surveyed, and are related to the various approaches.
Set Theory for Verification: II  Induction and Recursion
 Journal of Automated Reasoning
, 2000
"... A theory of recursive definitions has been mechanized in Isabelle's ZermeloFraenkel (ZF) set theory. The objective is to support the formalization of particular recursive definitions for use in verification, semantics proofs and other computational reasoning. ..."
Abstract

Cited by 41 (19 self)
 Add to MetaCart
A theory of recursive definitions has been mechanized in Isabelle's ZermeloFraenkel (ZF) set theory. The objective is to support the formalization of particular recursive definitions for use in verification, semantics proofs and other computational reasoning.
Constructing Recursion Operators in Intuitionistic Type Theory
 Journal of Symbolic Computation
, 1984
"... MartinLöf's Intuitionistic Theory of Types is becoming popular for formal reasoning about computer programs. To handle recursion schemes other than primitive recursion, a theory of wellfounded relations is presented. Using primitive recursion over higher types, induction and recursion are formally ..."
Abstract

Cited by 22 (5 self)
 Add to MetaCart
MartinLöf's Intuitionistic Theory of Types is becoming popular for formal reasoning about computer programs. To handle recursion schemes other than primitive recursion, a theory of wellfounded relations is presented. Using primitive recursion over higher types, induction and recursion are formally derived for a large class of wellfounded relations. Included are < on natural numbers, and relations formed by inverse images, addition, multiplication, and exponentiation of other relations. The constructions are given in full detail to allow their use in theorem provers for Type Theory, such as Nuprl. The theory is compared with work in the field of ordinal recursion over higher types.
Automatic Synthesis of Recursive Programs: The ProofPlanning Paradigm
, 1997
"... We describe a proof plan that characterises a family of proofs corresponding to the synthesis of recursive functional programs. This plan provides a significant degree of automation in the construction of recursive programs from specifications, together with correctness proofs. This plan makes use o ..."
Abstract

Cited by 21 (2 self)
 Add to MetaCart
We describe a proof plan that characterises a family of proofs corresponding to the synthesis of recursive functional programs. This plan provides a significant degree of automation in the construction of recursive programs from specifications, together with correctness proofs. This plan makes use of metavariables to allow successive refinement of the identity of unknowns, and so allows the program and the proof to be developed hand in hand. We illustrate the plan with parts of a substantial example  the synthesis of a unification algorithm.
Proving Termination of Normalization Functions for Conditional Expressions
 JOURNAL OF AUTOMATED REASONING
, 1986
"... ..."
Therapy Plan Generation as Program Synthesis
 In Setsuo Arikawa and K.P. Jantke, editors, Algorithmic Learning Theory, AII'94 & ALT'94, volume 872 of LNAI
, 1994
"... . There has been developed and implemented an algorithm for the automatic synthesis of therapy plans for complex dynamic systems. This algorithm is the core of some control synthesis module which is embedded in a larger knowledgebased system for control, diagnosis and therapy. There are several app ..."
Abstract

Cited by 12 (10 self)
 Add to MetaCart
. There has been developed and implemented an algorithm for the automatic synthesis of therapy plans for complex dynamic systems. This algorithm is the core of some control synthesis module which is embedded in a larger knowledgebased system for control, diagnosis and therapy. There are several applications. The planning algorithm may be understood as an inductive program synthesis procedure. Its fundamentals are introduced and its key ideas are sketched. The dichotomy between executability and consistency is investigated. 1 Motivation and Introduction The main intention of the present paper is to establish a new link between two areas of research: Program Synthesis and Therapy Planning. Thus, the authors wish to advance both areas of research they are active in. For program synthesis, the intended integration may result in new and exciting problems characterized by particular constraints not investigated in the classical approaches, so far. Our approach may widen the view at automat...