Results 1  10
of
13
Locales and locale expressions in Isabelle/Isar
 TYPES FOR PROOFS AND PROGRAMS (TYPES 2003), LNCS 3085
, 2004
"... Locales provide a module system for the Isabelle proof assistant. Recently, locales have been ported to the new Isar format for structured proofs. At the same time, they have been extended by locale expressions, a language for composing locale specifications, and by structures, which provide syntax ..."
Abstract

Cited by 37 (6 self)
 Add to MetaCart
Locales provide a module system for the Isabelle proof assistant. Recently, locales have been ported to the new Isar format for structured proofs. At the same time, they have been extended by locale expressions, a language for composing locale specifications, and by structures, which provide syntax for algebraic structures. The present paper presents both and is suitable as a tutorial to locales in Isar, because it covers both basics and recent extensions, and contains many examples.
Locales: A sectioning concept for Isabelle
 IN BERTOT ET AL
, 1999
"... Locales are a means to define local scopes for the interactive proving process of the theorem prover Isabelle. They delimit a range in which fixed assumption are made, and theorems are proved that depend on these assumptions. A locale may also contain constants defined locally and associated with pr ..."
Abstract

Cited by 35 (10 self)
 Add to MetaCart
Locales are a means to define local scopes for the interactive proving process of the theorem prover Isabelle. They delimit a range in which fixed assumption are made, and theorems are proved that depend on these assumptions. A locale may also contain constants defined locally and associated with pretty printing syntax. Locales can be seen as a simple form of modules. They are similar to reasoning and similar applications of theorem provers. This paper motivates the concept of locales by examples from abstract algebraic reasoning. It also discusses some implementation issues.
A module calculus for Pure Type Systems
, 1996
"... Several proofassistants rely on the very formal basis of Pure Type Systems. However, some practical issues raised by the development of large proofs lead to add other features to actual implementations for handling namespace management, for developing reusable proof libraries and for separate verif ..."
Abstract

Cited by 24 (3 self)
 Add to MetaCart
Several proofassistants rely on the very formal basis of Pure Type Systems. However, some practical issues raised by the development of large proofs lead to add other features to actual implementations for handling namespace management, for developing reusable proof libraries and for separate verification of distincts parts of large proofs. Unfortunately, few theoretical basis are given for these features. In this paper we propose an extension of Pure Type Systems with a module calculus adapted from SMLlike module systems for programming languages. Our module calculus gives a theoretical framework addressing the need for these features. We show that our module extension is conservative, and that type inference in the module extension of a given PTS is decidable under some hypotheses over the considered PTS.
Interpretation of locales in Isabelle: Theories and proof contexts
 MATHEMATICAL KNOWLEDGE MANAGEMENT (MKM 2006), LNAI 4108
, 2006
"... The generic proof assistant Isabelle provides a landscape of specification contexts that is considerably richer than that of most other provers. Theories are the level of specification where objectlogics are axiomatised. Isabelle’s proof language Isar enables local exploration in contexts generated ..."
Abstract

Cited by 21 (3 self)
 Add to MetaCart
The generic proof assistant Isabelle provides a landscape of specification contexts that is considerably richer than that of most other provers. Theories are the level of specification where objectlogics are axiomatised. Isabelle’s proof language Isar enables local exploration in contexts generated in the course of natural deduction proofs. Finally, locales, which may be seen as detached proof contexts, offer an intermediate level of specification geared towards reuse. All three kinds of contexts are structured, to different extents. We analyse the “topology ” of Isabelle’s landscape of specification contexts, by means of development graphs, in order to establish what kinds of reuse are possible.
Encoding ObjectZ in Isabelle/HOL
 International Conference of Z and B Users (ZB 2002), volume 2272 of LNCS
, 2002
"... In this paper, we present a formalisation of the reference semantics of ObjectZ in the higherorder logic (HOL) instantiation of the generic theorem prover Isabelle, Isabelle/HOL. This formalisation has the e#ect of both clarifying the semantics and providing the basis for a theorem prover for ..."
Abstract

Cited by 12 (4 self)
 Add to MetaCart
In this paper, we present a formalisation of the reference semantics of ObjectZ in the higherorder logic (HOL) instantiation of the generic theorem prover Isabelle, Isabelle/HOL. This formalisation has the e#ect of both clarifying the semantics and providing the basis for a theorem prover for ObjectZ. The work builds on an earlier encoding of a value semantics for objectoriented Z in Isabelle/HOL and a denotational semantics of ObjectZ based on separating the internal and external e#ects of class methods.
A proofcentric approach to mathematical assistants
 Journal of Applied Logic: Special Issue on Mathematics Assistance Systems
, 2005
"... We present an approach to mathematical assistants which uses readable, executable proof scripts as the central language for interaction. We examine an implementation that combines the Isar language, the Isabelle theorem prover and the IsaPlanner proof planner. We argue that this synergy provides a f ..."
Abstract

Cited by 5 (1 self)
 Add to MetaCart
We present an approach to mathematical assistants which uses readable, executable proof scripts as the central language for interaction. We examine an implementation that combines the Isar language, the Isabelle theorem prover and the IsaPlanner proof planner. We argue that this synergy provides a flexible environment for the exploration, certification, and presentation of mathematical proof.
OpenTheory: Package Management for Higher Order Logic Theories
"... Interactive theorem proving has grown from toy examples to major projects formalizing mathematics and verifying software, and there is now a critical need for theory engineering techniques to support these efforts. This paper introduces the OpenTheory project, which aims to provide an effective pack ..."
Abstract

Cited by 5 (3 self)
 Add to MetaCart
Interactive theorem proving has grown from toy examples to major projects formalizing mathematics and verifying software, and there is now a critical need for theory engineering techniques to support these efforts. This paper introduces the OpenTheory project, which aims to provide an effective package management system for logical theories. The OpenTheory article format allows higher order logic theories to be exported from one theorem prover, compressed by a standalone tool, and imported into a different theorem prover. Articles naturally support theory interpretations, which is the mechanism by which theories can be cleanly transferred from one theorem prover context to another, and which also leads to more efficient developments of standard theories.
Interpretation of locales in Isabelle: Managing dependencies between locales
, 2006
"... Locales are the theory development modules of the Isabelle proof assistant. Interpretation is a powerful technique of theorem reuse which facilitates their automatic transport to other contexts. This paper is concerned with the interpretation of locales in the context of other locales. Our main conc ..."
Abstract

Cited by 3 (3 self)
 Add to MetaCart
Locales are the theory development modules of the Isabelle proof assistant. Interpretation is a powerful technique of theorem reuse which facilitates their automatic transport to other contexts. This paper is concerned with the interpretation of locales in the context of other locales. Our main concern is to make interpretation an effective tool in an interactive proof environment. Interpretation dependencies between locales are maintained explicitly, by means of a development graph, so that theorems proved in one locale can be propagated to other locales that interpret it. Proof tools in Isabelle are controlled by sets of default theorems they use. These sets are required to be finite, but can become infinite in the presence of arbitrary interpretations. We show that finiteness can be maintained.
A ProofTheoretic Approach to Hierarchical Math Library Organization
, 2005
"... The relationship between theorems and lemmas in mathematical reasoning is often vague. No system exists that formalizes the structure of theorems in a mathematical library. Nevertheless, the decisions we make in creating lemmas provide an inherent hierarchical structure to the statements we prove. I ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
The relationship between theorems and lemmas in mathematical reasoning is often vague. No system exists that formalizes the structure of theorems in a mathematical library. Nevertheless, the decisions we make in creating lemmas provide an inherent hierarchical structure to the statements we prove. In this paper, we develop a formal system that organizes theorems based on scope. Lemmas are simply theorems with a local scope. We develop a representation of proofs that captures scope and present a set of proof rules to create and reorganize the scopes of theorems and lemmas. The representation and rules allow systems for formalized mathematics to more accurately reflect the natural structure of mathematical knowledge.
Locales: a Module System for Mathematical Theories
"... Locales are a module system for managing theory hierarchies in a theorem prover through theory interpretation. They are available for the theorem prover Isabelle. In this paper, their semantics is defined in terms of local theories and morphisms. Locales aim at providing flexible means of extension ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
Locales are a module system for managing theory hierarchies in a theorem prover through theory interpretation. They are available for the theorem prover Isabelle. In this paper, their semantics is defined in terms of local theories and morphisms. Locales aim at providing flexible means of extension and reuse. Theory modules (which are called locales) may be extended by definitions and theorems. Interpretation to Isabelle’s global theories and proof contexts is possible via morphisms. Even the locale hierarchy may be changed if declared relations between locales do not adequately reflect logical relations, which are implied by the locales’ specifications. By discussing their design and relating it to more commonly known structuring mechanisms of programming languages and provers, locales are made accessible to a wider audience beyond the users of Isabelle. The discussed mechanisms include MLstyle functors, type classes and mixins (the latter are found in modern objectoriented languages). 1