Results 1 
6 of
6
A Tool for Developing Correct Programs By Refinement
 PROC. BCS 7TH REFINEMENT WORKSHOP
, 1996
"... The refinement calculus for the development of programs from specifications is well suited to mechanised support. We review the requirements for tool support of refinement as gleaned from our experience with a number of existing refinement tools, and report on the design and implementation of a ..."
Abstract

Cited by 13 (4 self)
 Add to MetaCart
The refinement calculus for the development of programs from specifications is well suited to mechanised support. We review the requirements for tool support of refinement as gleaned from our experience with a number of existing refinement tools, and report on the design and implementation of a new tool to support refinement based on these requirements. The main features of the new tool are close integration of refinement and proof in a single tool (the same mechanism is used for both), good management of the refinement context, an extensible theory base that allows the tool to be adapted to new application domains, and a flexible user interface.
Computer Aided Serendipity: The Role of Autonomous Assistants in Problem Solving
, 1999
"... Pencil and paper are perhaps the most effective problemsolving tools ever invented. Why is this so, and what does this portend for computerassisted problem solving? In this paper we investigate why the computer has not made more significant in roads into many aspects of problem solving, even in do ..."
Abstract

Cited by 6 (5 self)
 Add to MetaCart
Pencil and paper are perhaps the most effective problemsolving tools ever invented. Why is this so, and what does this portend for computerassisted problem solving? In this paper we investigate why the computer has not made more significant in roads into many aspects of problem solving, even in domains ostensibly concerned with purely formal methods. We observe that for many problemsolving activities computers are currently more constraining than enabling, particularly during problem formulation. We identify some of the obstacles that mustbe overcome in making the computer a more attractive medium for problem solving, and explore some of thetools that will likely play a part in bringing this about.
On the Desirability of Mechanizing Calculational Proofs
"... Dijkstra argues that calculational proofs are preferable to traditional pictorial and/or verbal proofs. First, due to the calculational proof format, incorrect proofs are less likely. Second, syntactic considerations (letting the "symbols do the work") have led to an impressive array of te ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
Dijkstra argues that calculational proofs are preferable to traditional pictorial and/or verbal proofs. First, due to the calculational proof format, incorrect proofs are less likely. Second, syntactic considerations (letting the "symbols do the work") have led to an impressive array of techniques for elegant proof construction. However, calculational proofs are not formal and are not awless. Why not make them formal and check them mechanically?
Under consideration for publication in Formal Aspects of Computing The Variety of Variables in Automated RealTime Refinement
, 2002
"... Keywords: Computeraided programming; Program refinement theory; Realtime programming ..."
Abstract
 Add to MetaCart
(Show Context)
Keywords: Computeraided programming; Program refinement theory; Realtime programming
APROOF EDITOR FOR PROPOSITIONAL AND PREDICATE CALCULUS
, 1995
"... In many universities, lowerlevel math courses on propositional and predicate calculus usually avoid using formalism in de nitions and proofs, at least in the beginning. When formalization is later introduced, the students are left with the impression that formalism is not essential or worth the e o ..."
Abstract
 Add to MetaCart
(Show Context)
In many universities, lowerlevel math courses on propositional and predicate calculus usually avoid using formalism in de nitions and proofs, at least in the beginning. When formalization is later introduced, the students are left with the impression that formalism is not essential or worth the e ort. On the contrary, the Department of Computer Science of Cornell University adopts formalism in these courses from the very beginning. Students learn not to fear formalism and develop their reasoning abilities by constructing rigorous proofs. However, the construction of formal proofs is not always easy. When the magnitude of the problem increases, it is easy to forget or neglect something and it is equally easy to loosen the formalism, either by carelessness or on purpose. A computerbased proof editor that checks each step of a proof can help solve these problems. The subject of this thesis is the design and implementation of a computer program that facilitates the construction of formal proofs. The proof editor that has been developed can be used to familiarize students with formalism and help them construct rigorous and sound proofs. Special attention has been given to make this tool userfriendly and easily extendable to calculi other than propositional or predicate. The program has been developed for the Apple Macintosh. It is written in C++ and is completely portable, except for the part implementing the user interface.
Computer Aided Serendipity: The Role of Autonomous Assistants in Problem Solving
"... Pencil and paper are perhaps the most effective problemsolving tools ever invented. Why is this so, and what does this portend for computerassisted problem solving? In this paper we investigate why the computer has not made more significant inroads into many aspects of problem solving, even in doma ..."
Abstract
 Add to MetaCart
(Show Context)
Pencil and paper are perhaps the most effective problemsolving tools ever invented. Why is this so, and what does this portend for computerassisted problem solving? In this paper we investigate why the computer has not made more significant inroads into many aspects of problem solving, even in domains ostensibly concerned with purely formal methods. We observe that for many problemsolving activities computers are currently more constraining than enabling, particularly during problem formulation. We identify some of the obstacles that must be overcome in making the computer a more attractive medium for problem solving, and explore some of the tools that will likely play a part in bringing this about. Key words: artificial intelligence, autonomous assistants, belief revision, humancomputer interaction, numerical experiments, symbolic computation. 1