Results 1  10
of
78
A New Approach to Abstract Syntax Involving Binders
 In 14th Annual Symposium on Logic in Computer Science
, 1999
"... Syntax Involving Binders Murdoch Gabbay Cambridge University DPMMS Cambridge CB2 1SB, UK M.J.Gabbay@cantab.com Andrew Pitts Cambridge University Computer Laboratory Cambridge CB2 3QG, UK ap@cl.cam.ac.uk Abstract The FraenkelMostowski permutation model of set theory with atoms (FMsets) ..."
Abstract

Cited by 145 (14 self)
 Add to MetaCart
Syntax Involving Binders Murdoch Gabbay Cambridge University DPMMS Cambridge CB2 1SB, UK M.J.Gabbay@cantab.com Andrew Pitts Cambridge University Computer Laboratory Cambridge CB2 3QG, UK ap@cl.cam.ac.uk Abstract The FraenkelMostowski permutation model of set theory with atoms (FMsets) can serve as the semantic basis of metalogics for specifying and reasoning about formal systems involving name binding, ffconversion, capture avoiding substitution, and so on. We show that in FMset theory one can express statements quantifying over `fresh' names and we use this to give a novel settheoretic interpretation of name abstraction. Inductively defined FMsets involving this nameabstraction set former (together with cartesian product and disjoint union) can correctly encode objectlevel syntax modulo ffconversion. In this way, the standard theory of algebraic data types can be extended to encompass signatures involving binding operators. In particular, there is an associated n...
A Metalanguage for Programming with Bound Names Modulo Renaming
 Mathematics of Program Construction, volume 1837 of Lecture Notes in Computer Science
, 2000
"... This paper describes work in progress on the design of an MLstyle metalanguage FreshML for programming with recursively defined functions on userdefined, concrete data types whose constructors may involve variable binding. Up to operational equivalence, values of such FreshML data types can faithf ..."
Abstract

Cited by 88 (15 self)
 Add to MetaCart
This paper describes work in progress on the design of an MLstyle metalanguage FreshML for programming with recursively defined functions on userdefined, concrete data types whose constructors may involve variable binding. Up to operational equivalence, values of such FreshML data types can faithfully encode terms modulo alphaconversion for a wide range of object languages in a straightforward fashion. The design of FreshML is `semantically driven', in that it arises from the model of variable binding in set theory with atoms given by the authors in [7]. The language has a type constructor for abstractions over names ( = atoms) and facilities for declaring locally fresh names. Moreover, recursive definitions can use a form of patternmatching on bound names in abstractions. The crucial point is that the FreshML type system ensures that these features can only be used in welltyped programs in ways that are insensitive to renaming of bound names.
Using Reflection to Build Efficient and Certified Decision Procedures
 TACS'97. SpringerVerlag LNCS 1281
, 1997
"... In this paper we explain how computational reflection can help build efficient certified decision procedure in reduction systems. We have developped a decision procedure on abelian rings in the Coq system but the approach we describe applies to all reduction systems that allow the definition of c ..."
Abstract

Cited by 46 (0 self)
 Add to MetaCart
In this paper we explain how computational reflection can help build efficient certified decision procedure in reduction systems. We have developped a decision procedure on abelian rings in the Coq system but the approach we describe applies to all reduction systems that allow the definition of concrete types (or datatypes). We show that computational reflection is more efficient than an LCFlike approach to implement decision procedures in a reduction system. We discuss the concept of total reflection, which we have investigated in Coq using two facts: the extraction process available in Coq and the fact that the implementation language of the Coq system can be considered as a sublanguage of Coq. Total reflection is not yet implemented in Coq but we can test its performance as the extraction process is effective. Both reflection and total reflection are conservative extensions of the reduction system in which they are used. We also discuss performance and related approaches....
Formal Specification: a Roadmap
, 2000
"... Formal specifications have been a focus of software engineering research for many years and have been applied in a wide variety of settings. Their industrial use is still limited but has been steadily growing. After recalling the essence, role, usage, and pitfalls of formal specification, the pa ..."
Abstract

Cited by 34 (0 self)
 Add to MetaCart
Formal specifications have been a focus of software engineering research for many years and have been applied in a wide variety of settings. Their industrial use is still limited but has been steadily growing. After recalling the essence, role, usage, and pitfalls of formal specification, the paper reviews the main specification paradigms to date and discuss their evaluation criteria. It then provides a brief assessment of the current strengths and weaknesses of today's formal specification technology. This provides a basis for formulating a number of requirements for formal specification to become a core software engineering activity in the future.
ΩANTS  An open approach at combining Interactive and Automated Theorem Proving
 IN PROC. OF CALCULEMUS2000. AK PETERS
, 2000
"... We present the ΩAnts theorem prover that is built on top of an agentbased command suggestion mechanism. The theorem prover inherits beneficial properties from the underlying suggestion mechanism such as runtime extendibility and resource adaptability. Moreover, it supports the distributed integ ..."
Abstract

Cited by 34 (23 self)
 Add to MetaCart
We present the ΩAnts theorem prover that is built on top of an agentbased command suggestion mechanism. The theorem prover inherits beneficial properties from the underlying suggestion mechanism such as runtime extendibility and resource adaptability. Moreover, it supports the distributed integration of external reasoning systems. We also introduce some notions that need to be considered to check completeness and soundness of such a system with respect to an underlying calculus.
A Highperformance Garbage Collector for Standard ML
, 1994
"... ... This paper describes the design of the collector, and presents comparative performance data that demonstrates the above performance claims. ..."
Abstract

Cited by 28 (0 self)
 Add to MetaCart
... This paper describes the design of the collector, and presents comparative performance data that demonstrates the above performance claims.
Verifying Invariants Using Theorem Proving
 IN ALUR AND HENZINGER [AH96
, 1996
"... Our goal is to use a theorem prover in order to verify invariance properties of distributed systems in a "model checking like" manner. A system S is described by a set of sequential components, each one given by a transition relation and a predicate Init defining the set of initial states. In order ..."
Abstract

Cited by 27 (5 self)
 Add to MetaCart
Our goal is to use a theorem prover in order to verify invariance properties of distributed systems in a "model checking like" manner. A system S is described by a set of sequential components, each one given by a transition relation and a predicate Init defining the set of initial states. In order to verify that P is an invariant of S, we try to compute, in a model checking like manner, the weakest predicate P 0 stronger than P and weaker than Init which is an inductive invariant, that is, whenever P 0 is true in some state, then P 0 remains true after the execution of any possible transition. The fact that P is an invariant can be expressed by a set of predicates (having no more quantifiers than P ) on the set of program variables, one for every possible transition of the system. In order to prove these predicates, we use either automatic or assisted theorem proving depending on their nature. We show in this paper how this can be done in an efficient way using the Prototype V...
Simplification  A general constraint propagation technique for propositional and modal tableaux
, 1998
"... . Tableau and sequent calculi are the basis for most popular interactive theorem provers for formal verification. Yet, when it comes to automatic proof search, tableaux are often slower than DavisPutnam, SAT procedures or other techniques. This is partly due to the absence of a bivalence principle ..."
Abstract

Cited by 24 (2 self)
 Add to MetaCart
. Tableau and sequent calculi are the basis for most popular interactive theorem provers for formal verification. Yet, when it comes to automatic proof search, tableaux are often slower than DavisPutnam, SAT procedures or other techniques. This is partly due to the absence of a bivalence principle (viz. the cutrule) but there is another source of inefficiency: the lack of constraint propagation mechanisms. This paper proposes an innovation in this direction: the rule of simplification, which plays for tableaux the role of subsumption for resolution and of unit for the DavisPutnam procedure. The simplicity and generality of simplification make possible its extension in a uniform way from propositional logic to a wide range of modal logics. This technique gives an unifying view of a number of tableauxlike calculi such as DPLL, KE, HARP, hypertableaux, BCP, KSAT. We show its practical impact with experimental results for random 3SAT and the industrial IFIP benchmarks for hardware ve...
A blackboard architecture for guiding interactive proofs
 Artificial Intelligence: Methodology, Systems and Applications
, 1998
"... Abstract. The acceptance and usability of current interactive theorem proving environments is, among other things, strongly influenced by the availability of an intelligent default suggestion mechanism for commands. Such mechanisms support the user by decreasing the necessary interactions during the ..."
Abstract

Cited by 24 (19 self)
 Add to MetaCart
Abstract. The acceptance and usability of current interactive theorem proving environments is, among other things, strongly influenced by the availability of an intelligent default suggestion mechanism for commands. Such mechanisms support the user by decreasing the necessary interactions during the proof construction. Although many systems offer such facilities, they are often limited in their functionality. In this paper we present a new agentbased mechanism that independently observes the proof state, steadily computes suggestions on how to further construct the proof, and communicates these suggestions to the user via a graphical user interface. We furthermore introduce a focus technique in order to restrict the search space when deriving default suggestions. Although the agents we discuss in this paper are rather simple from a computational viewpoint, we indicate how the presented approach can be extended in order to increase its deductive power. 1
Combining WS1S and HOL
 Frontiers of Combining Systems 2, volume 7 of Studies in Logic and Computation
, 1998
"... We investigate the combination of the weak secondorder monadic logic of one successor (WS1S) with higherorder logic (HOL). We show how these two logics can be combined, how theorem provers based on them can be safely integrated, and how the result can be used. In particular, we present an embeddin ..."
Abstract

Cited by 23 (4 self)
 Add to MetaCart
We investigate the combination of the weak secondorder monadic logic of one successor (WS1S) with higherorder logic (HOL). We show how these two logics can be combined, how theorem provers based on them can be safely integrated, and how the result can be used. In particular, we present an embedding of the semantics of WS1S in HOL that provides a basis for coupling the MONA system, a decision procedure for WS1S, with an implementation of HOL in the Isabelle system. Afterwards, we describe methods that reduce problems formalized in HOL to problems in the language of WS1S. We present applications to arithmetic reasoning and proving properties of parameterized sequential systems.