Results 1  10
of
81
A Variable Typed Logic of Effects
 Information and Computation
, 1993
"... In this paper we introduce a variable typed logic of effects inspired by the variable type systems of Feferman for purely functional languages. VTLoE (Variable Typed Logic of Effects) is introduced in two stages. The first stage is the firstorder theory of individuals built on assertions of equalit ..."
Abstract

Cited by 48 (12 self)
 Add to MetaCart
In this paper we introduce a variable typed logic of effects inspired by the variable type systems of Feferman for purely functional languages. VTLoE (Variable Typed Logic of Effects) is introduced in two stages. The first stage is the firstorder theory of individuals built on assertions of equality (operational equivalence `a la Plotkin), and contextual assertions. The second stage extends the logic to include classes and class membership. The logic we present provides an expressive language for defining and studying properties of programs including program equivalences, in a uniform framework. The logic combines the features and benefits of equational calculi as well as program and specification logics. In addition to the usual firstorder formula constructions, we add contextual assertions. Contextual assertions generalize Hoare's triples in that they can be nested, used as assumptions, and their free variables may be quantified. They are similar in spirit to program modalities in ...
References, Local Variables and Operational Reasoning
 In Seventh Annual Symposium on Logic in Computer Science
, 1992
"... this paper we regard the following as synonyms: references, program variables, pointers, locations, and unary cells) to a programming language complicates life. Adding them to the simply typed lambda calculus causes the failure of most of the nice mathematical properties and some of the more basic r ..."
Abstract

Cited by 30 (4 self)
 Add to MetaCart
this paper we regard the following as synonyms: references, program variables, pointers, locations, and unary cells) to a programming language complicates life. Adding them to the simply typed lambda calculus causes the failure of most of the nice mathematical properties and some of the more basic rules (such as j). For example strong normalization fails since it is possible, for each provably nonempty function type, to construct a Y combinator for that type. References also interact unpleasantly with polymorphism [34, 35]. They are also troublesome from a denotational point of view as illustrated by the lack of fully abstract models. For example, in [22] Meyer and Sieber give a series of examples of programs that are operationally equivalent (according to the intended semantics of blockstructured Algollike programs) but which are not given equivalent denotations in traditional denotational semantics. They propose various modifications to the denotational semantics which solve some of these discrepancies, but not all. In [27, 26] a denotational semantics that overcomes some of these problems is presented. However variations on the seventh example remain problematic. Since numerous proof systems for Algol are sound for the denotational models in question, [8, 7, 32, 28, 16, 27, 26], these equivalences, if expressible, must be independent of these systems. The problem which motivated Meyer and Sieber's paper, [22], was to provide mathematical justification for the informal but convincing proofs of the operational equivalence of their examples. In this paper we approach the same problem, but from an operational rather than denotational perspective. This paper accomplishes two goals. Firstly, we present the firstorder part of a new logic for reasoning about programs....
Totality in Applicative Theories
 ANNALS OF PURE AND APPLIED LOGIC
, 1995
"... In this paper we study applicative theories of operations and numbers with (and without) the nonconstructive minimum operator in the context of a total application operation. We determine the prooftheoretic strength of such theories by relating them to wellknown systems like Peano Arithmetic ..."
Abstract

Cited by 21 (12 self)
 Add to MetaCart
In this paper we study applicative theories of operations and numbers with (and without) the nonconstructive minimum operator in the context of a total application operation. We determine the prooftheoretic strength of such theories by relating them to wellknown systems like Peano Arithmetic PA and the system (\Pi 0 1 CA) !"0 of second order arithmetic. Essential use will be made of socalled fixedpoint theories with ordinals, certain infinitary term models and Church Rosser properties.
Wellordering proofs for MartinLöf Type Theory
 Annals of Pure and Applied Logic
, 1998
"... We present wellordering proofs for MartinLof's type theory with Wtype and one universe. These proofs, together with an embedding of the type theory in a set theoretical system as carried out in [Set93] show that the proof theoretical strength of the type theory is precisely ## 1# I+# , which is ..."
Abstract

Cited by 18 (11 self)
 Add to MetaCart
We present wellordering proofs for MartinLof's type theory with Wtype and one universe. These proofs, together with an embedding of the type theory in a set theoretical system as carried out in [Set93] show that the proof theoretical strength of the type theory is precisely ## 1# I+# , which is slightly more than the strength of Feferman's theory T 0 , classical set theory KPI and the subsystem of analysis (# 1 2 CA)+(BI). The strength of intensional and extensional version, of the version a la Tarski and a la Russell are shown to be the same. 0 Introduction 0.1 Proof theory and Type Theory Proof theory and type theory have been two answers of mathematical logic to the crisis of the foundations of mathematics at the beginning of the century. Proof theory was originally established by Hilbert in order to prove the consistency of theories by using finitary methods. When Godel showed that Hilbert's program cannot be carried out as originally intended, the focus of proof theory ch...
Extending the System T_0 of explicit mathematics: the limit and Mahlo axioms
"... In this paper we discuss extensions of Feferman's theory T_0 for explicit mathematics by the socalled limit and Mahlo axioms and present a novel approach to constructing natural recusiontheoretic models for (fairly strong) systems of explicit mathematics which is based on nonmonotone inductive def ..."
Abstract

Cited by 13 (8 self)
 Add to MetaCart
In this paper we discuss extensions of Feferman's theory T_0 for explicit mathematics by the socalled limit and Mahlo axioms and present a novel approach to constructing natural recusiontheoretic models for (fairly strong) systems of explicit mathematics which is based on nonmonotone inductive definitions.
Reasoning About Functional Programs in Nuprl
 In Functional Programming, Concurrency, Simulation and Automated Reasoning
, 1993
"... . There are two ways of reasoning about functional programs in the constructive type theory of the Nuprl proof development system. Nuprl can be used in a conventional programverification mode, in which functional programs are written in a familiar style and then proven to be correct. It can als ..."
Abstract

Cited by 12 (0 self)
 Add to MetaCart
. There are two ways of reasoning about functional programs in the constructive type theory of the Nuprl proof development system. Nuprl can be used in a conventional programverification mode, in which functional programs are written in a familiar style and then proven to be correct. It can also be used in an extraction mode, where programs are not written explicitly, but instead are extracted from mathematical proofs. Nuprl is the only constructive type theory to support both of these approaches. These approaches are illustrated by applying Nuprl to Boyer and Moore's "majority" algorithm. 1 Introduction A type system for a functional programming language can be syntactic or semantic. In a syntactically typed language, such as SML 1 [25], typing is a property of the syntax of expressions. Only certain combinations of language constructs are designated "welltyped", and only welltyped expressions are given a meaning. Each welltyped expression has a type which can be derive...
Theories With SelfApplication and Computational Complexity
 Information and Computation
, 2002
"... Applicative theories form the basis of Feferman's systems of explicit mathematics, which have been introduced in the early seventies. In an applicative universe, all individuals may be thought of as operations, which can freely be applied to each other: selfapplication is meaningful, but not ne ..."
Abstract

Cited by 12 (9 self)
 Add to MetaCart
Applicative theories form the basis of Feferman's systems of explicit mathematics, which have been introduced in the early seventies. In an applicative universe, all individuals may be thought of as operations, which can freely be applied to each other: selfapplication is meaningful, but not necessarily total. It has turned out that theories with selfapplication provide a natural setting for studying notions of abstract computability, especially from a prooftheoretic perspective.
Reasoning about Object Systems in VTLoE
, 1994
"... VTLoE (Variable Type Logic of Effects) is a logic for reasoning about imperative functional programs inspired by the variable type systems of Feferman. The underlying programming language, mk , extends the callbyvalue lambda calculus with primitives for arithmetic, pairing, branching, and refere ..."
Abstract

Cited by 11 (3 self)
 Add to MetaCart
VTLoE (Variable Type Logic of Effects) is a logic for reasoning about imperative functional programs inspired by the variable type systems of Feferman. The underlying programming language, mk , extends the callbyvalue lambda calculus with primitives for arithmetic, pairing, branching, and reference cells (mutable data). In VTLoE one can reason about program equivalence and termination, input/output relations, program contexts, and inductively (and coinductively) define data structures. In this paper we present a refinement of VTLoE. We then introduce a notion of object specification and establish formal principles for reasoning about object systems within VTLoE. Objects are selfcontained entities with local state. The local state of an object can only be changed by action of that object in response to a message. In mk objects are represented as closures with mutable data bound to local variables. A semantic principle called simulation induction was introduced in our earlier wor...
Foundational and mathematical uses of higher types
 REFLECTIONS ON THE FOUNDATIONS OF MATHEMATICS: ESSAY IN HONOR OF SOLOMON FEFERMAN
, 1999
"... In this paper we develop mathematically strong systems of analysis in higher types which, nevertheless, are prooftheoretically weak, i.e. conservative over elementary resp. primitive recursive arithmetic. These systems are based on noncollapsing hierarchies ( n WKL+ ; n WKL+ ) of principles ..."
Abstract

Cited by 11 (4 self)
 Add to MetaCart
In this paper we develop mathematically strong systems of analysis in higher types which, nevertheless, are prooftheoretically weak, i.e. conservative over elementary resp. primitive recursive arithmetic. These systems are based on noncollapsing hierarchies ( n WKL+ ; n WKL+ ) of principles which generalize (and for n = 0 coincide with) the socalled `weak' König's lemma WKL (which has been studied extensively in the context of second order arithmetic) to logically more complex tree predicates. Whereas the second order context used in the program of reverse mathematics requires an encoding of higher analytical concepts like continuous functions F : X ! Y between Polish spaces X;Y , the more exible language of our systems allows to treat such objects directly. This is of relevance as the encoding of F used in reverse mathematics tacitly yields a constructively enriched notion of continuous functions which e.g. for F : IN ! IN can be seen (in our higher order context)