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 semi-automated 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 75 (17 self)
- Add to MetaCart
We present a generic approach to readable formal proof documents, called Intelligible semi-automated 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 state-of-the-art interactive theorem proving systems and an appropriate level of abstraction for user-level work. The Isar language is both human readable and machine-checkable, 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 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 syntax-directed 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 high-level 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 high-level and interactive features of a tactic-style 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 high-level and interactive features of a tactic-style 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.
An extensible proof text editor
- In Logic for Programming and Automated Reasoning, volume 1955 of LNCS
, 2000
"... ..."
Mathematical Vernacular and Conceptual Well-formedness 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 well-formedness 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 well-formedness. 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 12 (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 Martin-Löf’s type theory. We show that this grammar-based approach scales well enough to handle a non-trivial case study: translating the Object Constraint Language specifications of the Java Card API into English. 1
Computer-Assisted Mathematics at Work -- The Hahn-Banach Theorem in Isabelle/Isar
- TYPES FOR PROOFS AND PROGRAMS: TYPES’99, LNCS
, 2000
"... We present a complete formalization of the Hahn-Banach theorem in the simply-typed set-theory 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 8 (5 self)
- Add to MetaCart
We present a complete formalization of the Hahn-Banach theorem in the simply-typed set-theory 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 high-level 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.
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 decade-long effort to produce graphical user-interfaces 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 decade-long effort to produce graphical user-interfaces for proof systems. It inherits many characteristics from the previous CTCOQ system...
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 auto-generated 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.

