Results 1  10
of
36
Definitional interpreters for higherorder programming languages
 Reprinted from the proceedings of the 25th ACM National Conference
, 1972
"... Abstract. Higherorder programming languages (i.e., languages in which procedures or labels can occur as values) are usually defined by interpreters that are themselves written in a programming language based on the lambda calculus (i.e., an applicative language such as pure LISP). Examples include ..."
Abstract

Cited by 345 (2 self)
 Add to MetaCart
(Show Context)
Abstract. Higherorder programming languages (i.e., languages in which procedures or labels can occur as values) are usually defined by interpreters that are themselves written in a programming language based on the lambda calculus (i.e., an applicative language such as pure LISP). Examples include McCarthy’s definition of LISP, Landin’s SECD machine, the Vienna definition of PL/I, Reynolds ’ definitions of GEDANKEN, and recent unpublished work by L. Morris and C. Wadsworth. Such definitions can be classified according to whether the interpreter contains higherorder functions, and whether the order of application (i.e., call by value versus call by name) in the defined language depends upon the order of application in the defining language. As an example, we consider the definition of a simple applicative programming language by means of an interpreter written in a similar language. Definitions in each of the above classifications are derived from one another by informal but constructive methods. The treatment of imperative features such as jumps and assignment is also discussed.
The Denotational Semantics of Programming Languages
, 1976
"... This paper is a tutorial introduction to the theory of programming language semantics developed by D. Scott and C. Strachey. The application of the theory to formal language specification is demonstrated and other applications are surveyed. The first language considered, LOOP, is very elementary and ..."
Abstract

Cited by 195 (0 self)
 Add to MetaCart
This paper is a tutorial introduction to the theory of programming language semantics developed by D. Scott and C. Strachey. The application of the theory to formal language specification is demonstrated and other applications are surveyed. The first language considered, LOOP, is very elementary and its definition merely introduces the notation and methodology of the approach. Then the semantic concepts of environments, stores, and continuations are introduced to model classes of programming language features and the underlying mathematical theory of computation due to Scott is motivated and outlined. Finally, the paper presents a formal definition of the language GEDANKEN.
PCF extended with real numbers
, 1996
"... We extend the programming language PCF with a type for (total and partial) real numbers. By a partial real number we mean an element of a cpo of intervals, whose subspace of maximal elements (singlepoint intervals) is homeomorphic to the Euclidean real line. We show that partial real numbers can be ..."
Abstract

Cited by 55 (15 self)
 Add to MetaCart
We extend the programming language PCF with a type for (total and partial) real numbers. By a partial real number we mean an element of a cpo of intervals, whose subspace of maximal elements (singlepoint intervals) is homeomorphic to the Euclidean real line. We show that partial real numbers can be considered as “continuous words”. Concatenation of continuous words corresponds to refinement of partial information. The usual basic operations cons, head and tail used to explicitly or recursively define functions on words generalize to partial real numbers. We use this fact to give an operational semantics to the above referred extension of PCF. We prove that the operational semantics is sound and complete with respect to the denotational semantics. A program of real number type evaluates to a headnormal form iff its value is different from ⊥; if its value is different from ⊥ then it successively evaluates to headnormal forms giving better and better partial results converging to its value.
Stochastic processes as concurrent constraint programs
 In Symposium on Principles of Programming Languages
, 1999
"... ) Vineet Gupta Radha Jagadeesan Prakash Panangaden y vgupta@mail.arc.nasa.gov radha@cs.luc.edu prakash@cs.mcgill.ca Caelum Research Corporation Dept. of Math. and Computer Sciences School of Computer Science NASA Ames Research Center Loyola UniversityLake Shore Campus McGill University Moffe ..."
Abstract

Cited by 33 (1 self)
 Add to MetaCart
(Show Context)
) Vineet Gupta Radha Jagadeesan Prakash Panangaden y vgupta@mail.arc.nasa.gov radha@cs.luc.edu prakash@cs.mcgill.ca Caelum Research Corporation Dept. of Math. and Computer Sciences School of Computer Science NASA Ames Research Center Loyola UniversityLake Shore Campus McGill University Moffett Field CA 94035, USA Chicago IL 60626, USA Montreal, Quebec, Canada Abstract This paper describes a stochastic concurrent constraint language for the description and programming of concurrent probabilistic systems. The language can be viewed both as a calculus for describing and reasoning about stochastic processes and as an executable language for simulating stochastic processes. In this language programs encode probability distributions over (potentially infinite) sets of objects. We illustrate the subtleties that arise from the interaction of constraints, random choice and recursion. We describe operational semantics of these programs (programs are run by sampling random choices), deno...
A Topos for Algebraic Quantum Theory
 COMMUNICATIONS IN MATHEMATICAL PHYSICS
, 2009
"... The aim of this paper is to relate algebraic quantum mechanics to topos theory, so as to construct new foundations for quantum logic and quantum spaces. Motivated by Bohr’s idea that the empirical content of quantum physics is accessible only through classical physics, we show how a noncommutative C ..."
Abstract

Cited by 32 (4 self)
 Add to MetaCart
The aim of this paper is to relate algebraic quantum mechanics to topos theory, so as to construct new foundations for quantum logic and quantum spaces. Motivated by Bohr’s idea that the empirical content of quantum physics is accessible only through classical physics, we show how a noncommutative C*algebra of observables A induces a topos T (A) in which the amalgamation of all of its commutative subalgebras comprises a single commutative C*algebra A. According to the constructive Gelfand duality theorem of Banaschewski and Mulvey, the latter has an internal spectrum �(A) in T (A), which in our approach plays the role of the quantum phase space of the system. Thus we associate a locale (which is the topostheoretical notion of a space and which intrinsically carries the intuitionistic logical structure of a Heyting algebra) to a C*algebra (which is the noncommutative notion of a space). In this setting, states on A become probability measures (more precisely, valuations) on �, and selfadjoint elements of A define continuous functions (more precisely, locale maps) from � to Scott’s interval domain. Noting that open subsets of �(A) correspond to propositions about the system, the pairing map that assigns a (generalized) truth value to a state and a proposition assumes an extremely simple categorical form. Formulated in this way, the quantum theory defined by A is essentially turned into a classical theory, internal to the topos T (A). These results were inspired by the topostheoretic approach to quantum physics proposed by Butterfield and Isham, as recently generalized by Döring and Isham.
PathSensitive ValueFlow Analysis
 In Symposium on Principles of Programming Languages
, 1998
"... When analyzing programs for value recomputation, one faces the problem of naming the value that flows between equivalent computations with different lexical names. This paper presents a dataflow analysis framework that overcomes this problem by synthesizing a name space tailored for tracing the val ..."
Abstract

Cited by 30 (1 self)
 Add to MetaCart
When analyzing programs for value recomputation, one faces the problem of naming the value that flows between equivalent computations with different lexical names. This paper presents a dataflow analysis framework that overcomes this problem by synthesizing a name space tailored for tracing the values whose flow is of interest to a given dataflow problem. Furthermore, to exploit recomputation of a value with multiple, synonymous names, pathsensitive value numbering on the synthetic name space is developed. Optimizations that rely on value flow to detect redundant computations, such as partial redundancy elimination and constant propagation, become more powerful when phrased in our framework. The framework is built on a new program representation called Value Name Graph (VNG) which gains its power from integrating three orthogonal techniques: symbolic backsubstitution, value numbering, and dataflow analysis. Our experiments with the implementation show that analysis on the VNG is p...
A Functional Approach to Computability on Real Numbers
, 1993
"... The aim of this thesis is to contribute to close the gap existing between the theory of computable analysis and actual computation. In order to study computability over real numbers we use several tools peculiar to the theory of programming languages. In particular we introduce a special kind of ty ..."
Abstract

Cited by 26 (0 self)
 Add to MetaCart
The aim of this thesis is to contribute to close the gap existing between the theory of computable analysis and actual computation. In order to study computability over real numbers we use several tools peculiar to the theory of programming languages. In particular we introduce a special kind of typed lambda calculus as an appropriate formalism for describing computations on real numbers. Furthermore we use domain theory, to give semantics to this typed lambda calculus and as a conseguence to give a notion of computability on real numbers. We discuss the adequacy of ScottDomains as domains for representing real numbers. We relate the Scott topology on such domains to the euclidean topology on IR. Domain theory turns out to be useful also in the study of higher order functions. In particular one of the most important results contained in this thesis concerns the characterisation of the topological properties of the computable higher order functions on reals. Our approach allows more...
Complementation of abstract domains made easy
 Logic Programming: Proceedings of the Joint International Conference and Symposium on Logic Programming, MIT Press Series in Logic Programming
, 1996
"... In standard abstract interpretation theory, the inverse of the reduced product of abstract domains was recently defined and called complementation. Given two domains C and D such that D abstracts C, the complement C ∼ D is the most abstract domain whose reduced product with D gives C back. We show t ..."
Abstract

Cited by 18 (6 self)
 Add to MetaCart
(Show Context)
In standard abstract interpretation theory, the inverse of the reduced product of abstract domains was recently defined and called complementation. Given two domains C and D such that D abstracts C, the complement C ∼ D is the most abstract domain whose reduced product with D gives C back. We show that, when C is a continuous complete lattice, there is a particularly simple method for computing C ∼ D. Since most domains for abstract interpretation are (complete and) continuous, this method is widely applicable. In order to demonstrate its relevance, we apply this result and some of its consequences to Cousot and Cousot’s domain for integer interval analysis of imperative programs, and to several wellknown domains for the static analysis of logic languages, viz., Pos, Def and Sharing. In particular, we decompose Sharing in three more abstract domains whose reduced product gives back Sharing, and such that each component corresponds to one of the three properties that coexist in the elements of Sharing: grounddependency, pairsharing (or equivalently variable independence) and setsharing. Using our theory, we minimize each component of this decomposition obtaining in some case domains that are surprisingly simpler than the corresponding original components. 1
The Dedekind reals in abstract Stone duality
 Mathematical Structures in Computer Science
, 2008
"... Abstract Stone Duality (ASD) is a direct axiomatisation of general topology, in contrast to the traditional and all other contemporary approaches, which rely on a prior notion of discrete set, type or object of a topos. ASD reconciles mathematical and computational viewpoints, providing an inherentl ..."
Abstract

Cited by 11 (5 self)
 Add to MetaCart
Abstract Stone Duality (ASD) is a direct axiomatisation of general topology, in contrast to the traditional and all other contemporary approaches, which rely on a prior notion of discrete set, type or object of a topos. ASD reconciles mathematical and computational viewpoints, providing an inherently computable calculus that does not sacrifice key properties of real analysis such as compactness of the closed interval. Previous theories of recursive analysis failed to do this because they were based on points; ASD succeeds because, like locale theory and formal topology, it is founded on the algebra of open subspaces. ASD is presented as a lambdacalculus, of which we provide a selfcontained summary, as the foundational background has been investigated in earlier work. The core of the paper constructs the real line using twosided Dedekind cuts. We show that the closed interval is compact and overt, where these concepts are defined using quantifiers. Further topics, such as the Intermediate Value Theorem, are presented in a separate paper that builds on this one. The interval domain plays an important foundational role. However, we see intervals as generalised Dedekind cuts, which underly the construction of the real line, not as sets or pairs of real numbers. We make a thorough study of arithmetic, in which our operations are more complicated than Moore’s, because we work constructively, and we also consider backtofront (Kaucher) intervals. Finally, we compare ASD with other systems of constructive and computable topology and analysis.
On the nonsequential nature of the intervaldomain model of realnumber computation
 Mathematical Structures in Computer Science
"... of realnumber computation ..."
(Show Context)