Results 1  10
of
30
Isar  a Generic Interpretative Approach to Readable Formal Proof Documents
, 1999
"... We present a generic approach to readable formal proof documents, called Intelligible semiautomated reasoning (Isar). It addresses the major problem of existing interactive theorem proving systems that there is no appropriate notion of proof available that is suitable for human communication, or ..."
Abstract

Cited by 81 (16 self)
 Add to MetaCart
We present a generic approach to readable formal proof documents, called Intelligible semiautomated reasoning (Isar). It addresses the major problem of existing interactive theorem proving systems that there is no appropriate notion of proof available that is suitable for human communication, or even just maintenance. Isar's main aspect is its formal language for natural deduction proofs, which sets out to bridge the semantic gap between internal notions of proof given by stateoftheart interactive theorem proving systems and an appropriate level of abstraction for userlevel work. The Isar language is both human readable and machinecheckable, by virtue of the Isar/VM interpreter. Compared to existing declarative theorem proving systems, Isar avoids several shortcomings: it is based on a few basic principles only, it is quite independent of the underlying logic, and supports a broad range of automated proof methods. Interactive proof development is supported as well...
An extensible proof text editor
 In Logic for Programming and Automated Reasoning, volume 1955 of LNCS
, 2000
"... ..."
An authoring tool for informal and formal requirements specifications
 Fundamental Approaches to Software Engineering (FASE), Part of Joint European Conferences on Theory and Practice of Software, ETAPS, Grenoble, volume 2306 of LNCS
, 2002
"... Abstract We describe foundations and design principles of a tool that supports authoring of informal and formal software requirements specifications simultaneously and from a single source. The tool is an attempt to bridge the gap between completely informal requirements specifications (as found in ..."
Abstract

Cited by 22 (11 self)
 Add to MetaCart
Abstract We describe foundations and design principles of a tool that supports authoring of informal and formal software requirements specifications simultaneously and from a single source. The tool is an attempt to bridge the gap between completely informal requirements specifications (as found in practice) and formal ones (as needed in formal methods). The user is supported by an interactive syntaxdirected editor, parsers and linearizers. As a formal specification language we realize the Object Constraint Language, a substandard of the UML, on the informal side a fragment of English. The implementation is based on the Grammatical Framework, a generic tool that combines linguistic and logical methods. 1
Verbalization of highlevel formal proofs
 In Proceedings of the Sixteenth National Conference on Artificial Intelligence
, 1999
"... We propose a new approach to text generation from formal proofs that exploits the highlevel and interactive features of a tacticstyle theorem prover. The design of our system is based on communication conventions identified in a corpus of texts. We show how to use dialogue with the theorem prover ..."
Abstract

Cited by 18 (4 self)
 Add to MetaCart
We propose a new approach to text generation from formal proofs that exploits the highlevel and interactive features of a tacticstyle theorem prover. The design of our system is based on communication conventions identified in a corpus of texts. We show how to use dialogue with the theorem prover to obtain information that is required for communication but is not explicitly used in reasoning.
Mathematical Vernacular and Conceptual Wellformedness in Mathematical Language
 Proceedings of the 2nd Inter. Conf. on Logical Aspects of Computational Linguistics, LNCS/LNAI 1582
, 1998
"... . This paper investigates the semantics of mathematical concepts in a type theoretic framework with coercive subtyping. The typetheoretic analysis provides a formal semantic basis in the design and implementation of Mathematical Vernacular (MV), a natural language suitable for interactive developmen ..."
Abstract

Cited by 14 (9 self)
 Add to MetaCart
. This paper investigates the semantics of mathematical concepts in a type theoretic framework with coercive subtyping. The typetheoretic analysis provides a formal semantic basis in the design and implementation of Mathematical Vernacular (MV), a natural language suitable for interactive development of mathematics with the support of the current theorem proving technology. The idea of semantic wellformedness in mathematical language is motivated with examples. A formal system based on a notion of conceptual category is then presented, showing how type checking supports our notion of wellformedness. The power of this system is then extended by incorporating a notion of subcategory, using ideas from a more general theory of coercive subtyping, which provides the mechanisms for modelling conventional abbreviations in mathematics. Finally, we outline how this formal work can be used in an implementation of MV. 1 Introduction By mathematical vernacular (MV), we mean a mathematical and n...
Translating formal software specifications to natural language/a grammar based approach
 In Proceedings of Logical Aspects of Computational Linguistics (LACL’05
, 2005
"... Abstract. We describe a system for automatically translating formal software specifications to natural language. The system produces natural language which is acceptable to a human reader, and it supports byhand optimization by users who are not experts of our system. The translation system is imple ..."
Abstract

Cited by 14 (1 self)
 Add to MetaCart
Abstract. We describe a system for automatically translating formal software specifications to natural language. The system produces natural language which is acceptable to a human reader, and it supports byhand optimization by users who are not experts of our system. The translation system is implemented using the Grammatical Framework, a grammar formalism based on MartinLöf’s type theory. We show that this grammarbased approach scales well enough to handle a nontrivial case study: translating the Object Constraint Language specifications of the Java Card API into English. 1
Mathematics and Proof Presentation in Pcoq
 IN: PROCEEDINGS OF PROOF TRANSFORMATION AND PRESENTATION AND PROOF COMPLEXITIES (PTP’01
, 2001
"... PCOQ is the latest product in a decadelong effort to produce graphical userinterfaces for proof systems. It inherits many characteristics from the previous CTCOQ system... ..."
Abstract

Cited by 7 (1 self)
 Add to MetaCart
PCOQ is the latest product in a decadelong effort to produce graphical userinterfaces for proof systems. It inherits many characteristics from the previous CTCOQ system...
ComputerAssisted Mathematics at Work  The HahnBanach Theorem in Isabelle/Isar
 TYPES FOR PROOFS AND PROGRAMS: TYPES’99, LNCS
, 2000
"... We present a complete formalization of the HahnBanach theorem in the simplytyped settheory of Isabelle/HOL, such that both the modeling of the underlying mathematical notions and the full proofs are intelligible to human readers. This is achieved by means of the Isar environment, which provides ..."
Abstract

Cited by 7 (4 self)
 Add to MetaCart
We present a complete formalization of the HahnBanach theorem in the simplytyped settheory of Isabelle/HOL, such that both the modeling of the underlying mathematical notions and the full proofs are intelligible to human readers. This is achieved by means of the Isar environment, which provides a framework for highlevel reasoning based on natural deduction. The final result is presented as a readable formal proof document, following usual presentations in mathematical textbooks quite closely. Our case study demonstrates that Isabelle/Isar is capable to support this kind of application of formal logic very well, while being open for an even larger scope.
A generic software safety document generator
 In Proc. 10th AMAST
, 2004
"... Abstract. Formal certification is based on the idea that a mathematical proof of some property of a piece of software can be regarded as a certificate of correctness which, in principle, can be subjected to external scrutiny. In practice, however, proofs themselves are unlikely to be of much interes ..."
Abstract

Cited by 6 (5 self)
 Add to MetaCart
Abstract. Formal certification is based on the idea that a mathematical proof of some property of a piece of software can be regarded as a certificate of correctness which, in principle, can be subjected to external scrutiny. In practice, however, proofs themselves are unlikely to be of much interest to engineers. Nevertheless, it is possible to use the information obtained from a mathematical analysis of software to produce a detailed textual justification of correctness. In this paper, we describe an approach to generating textual explanations from automatically generated proofs of program safety, where the proofs are of compliance with an explicit safety policy that can be varied. Key to this is tracing proof obligations back to the program, and we describe a tool which implements this to certify code autogenerated by AutoBayes and AutoFilter, program synthesis systems under development at the NASA Ames Research Center. Our approach is a step towards combining formal certification with traditional certification methods. 1
Interactive Programming Environment for ML
, 1997
"... This paper presents our experiment in building a programming environment for ML. The approach is based on reusability. From existing compilers we derive some tools that assist users in developing ML programs. ML being a strongly typed language, its typechecking algorithm plays a central role. So we ..."
Abstract

Cited by 6 (0 self)
 Add to MetaCart
This paper presents our experiment in building a programming environment for ML. The approach is based on reusability. From existing compilers we derive some tools that assist users in developing ML programs. ML being a strongly typed language, its typechecking algorithm plays a central role. So we present some tools that show how to make use of type information in a programming environment.