Results 1 - 10
of
22
Categorical Logic of Names and Abstraction in Action Calculi
, 1993
"... ion elimination Definition 3.1. A monoidal category where every object has a commutative comonoid structure is said to be semi-cartesian. An action category is a K\Omega -category with a distinguished admissible commutative comonoid structure on every object. A semi-cartesian category is cartesi ..."
Abstract
-
Cited by 19 (8 self)
- Add to MetaCart
ion elimination Definition 3.1. A monoidal category where every object has a commutative comonoid structure is said to be semi-cartesian. An action category is a K\Omega -category with a distinguished admissible commutative comonoid structure on every object. A semi-cartesian category is cartesian if and only if each object carries a unique comonoid structure, and such structures form two natural families, \Delta and !. The naturality means that all morphisms of the category must be comonoid homomorphisms. In action categories, the property of semi-cartesianness is fixed as structure: on each object, a particular comonoid structure is chosen. This choice may be constrained by some given graphic operations, with respect to which the structures must be admissible. The proof of proposition 2.6 shows that such structures determine the abstraction operators, and are determined by them. This is the essence of the equivalence of action categories and action calculi. As the embodiment of 2...
The Impact of the Lambda Calculus in Logic and Computer Science
- Bulletin of Symbolic Logic
, 1997
"... One of the most important contributions of A. Church to logic is his invention of the lambda calculus. We present the genesis of this theory and its two major areas of application: the representation of computations and the resulting functional programming languages on the one hand and the represent ..."
Abstract
-
Cited by 17 (0 self)
- Add to MetaCart
One of the most important contributions of A. Church to logic is his invention of the lambda calculus. We present the genesis of this theory and its two major areas of application: the representation of computations and the resulting functional programming languages on the one hand and the representation of reasoning and the resulting systems of computer mathematics on the other hand. Acknowledgement. The following persons provided help in various ways. Erik Barendsen, Jon Barwise, Johan van Benthem, Andreas Blass, Olivier Danvy, Wil Dekkers, Marko van Eekelen, Sol Feferman, Andrzej Filinski, Twan Laan, Jan Kuper, Pierre Lescanne, Hans Mooij, Robert Maron, Rinus Plasmeijer, Randy Pollack, Kristoffer Rose, Richard Shore, Rick Statman and Simon Thompson. Partial support came from the European HCM project Typed lambda calculus (CHRXCT-92-0046), the Esprit Working Group Types (21900) and the Dutch NWO project WINST (612-316-607). 1. Introduction This paper is written to honor Church's gr...
Finite Family Developments
, 1997
"... Consider Adam and Eve. Count generations starting from them. Supposing that there will always be people, then it's true that for any generation X, eventually there will be people belonging to the next generation X + 1. In this paper the same result is established for the class of higher order pat ..."
Abstract
-
Cited by 12 (6 self)
- Add to MetaCart
Consider Adam and Eve. Count generations starting from them. Supposing that there will always be people, then it's true that for any generation X, eventually there will be people belonging to the next generation X + 1. In this paper the same result is established for the class of higher order pattern rewriting systems. 1 Introduction Consider a set of structures and a set of transformations on them specifying how a structure may be transformed into another one. Suppose the transformations are of the following form: first a structure is decomposed into substructures, next some substructure is replaced by another one, and finally the substructures are composed into a structure again. (destroy) The parts of the initial structure eliminated in the course of the transformation (i.e. the parts of the replaced substructure as well as the parts eliminated in the initial decomposition) can be thought of as being destroyed . (create) The parts of the final structure introduced in the cou...
Normalisation, Approximation, and Semantics for Combinator Systems
- Theoretical Computer Science
, 2003
"... This paper studies normalization of typeable terms and the relation between approximation semantics and filter models for Combinator Systems. It presents notions of approximants for terms, intersection type assignment, and reduction on type derivations; the last will be proved to be strongly normali ..."
Abstract
-
Cited by 8 (8 self)
- Add to MetaCart
This paper studies normalization of typeable terms and the relation between approximation semantics and filter models for Combinator Systems. It presents notions of approximants for terms, intersection type assignment, and reduction on type derivations; the last will be proved to be strongly normalizable. With this result, it is shown that, for every typeable term, there exists an approximant with the same type, and a characterization of the normalization behaviour of terms using their assignable types is given. Then the two semantics are defined and compared, and it is shown that the approximants semantics is fully abstract but the filter semantics is not.
Universally programmable intelligent matter summary
- in IEEE Nano 2002. IEEE Press
, 2002
"... Abstract — We explain how a small set of molecular building blocks will allow the implementation of “universally programmable intelligent matter, ” that is, matter whose structure, properties, and behavior can be programmed, quite literally, at the molecular level. I. DEFINITIONS Intelligent matter ..."
Abstract
-
Cited by 5 (3 self)
- Add to MetaCart
Abstract — We explain how a small set of molecular building blocks will allow the implementation of “universally programmable intelligent matter, ” that is, matter whose structure, properties, and behavior can be programmed, quite literally, at the molecular level. I. DEFINITIONS Intelligent matter is any material in which individual molecules or supra-molecular clusters function as agents to accomplish some purpose. Intelligent matter may be solid, liquid, or gaseous, although liquids and membranes are perhaps most typical. Universally programmable intelligent matter (UPIM) is made from a small set of molecular building blocks that are universal in the sense that they can be rearranged to accomplish any purpose that can be described by a computer program. In effect, a computer program controls the behavior of the material at the molecular level. In some applications the molecules self-assemble a desired nanostructure by “computing ” the structure and then becoming inactive. In other applications the material remains active so that it can respond, at the molecular level, to its environment or to other external conditions. An extreme case is when programmable supra-molecular clusters act as autonomous agents to achieve some end. Although materials may be engineered for specific purposes, we will get much greater technological leverage by designing a “universal material ” which, like a generalpurpose computer, can be “programmed ” for a wide range of applications. To accomplish this, we must identify a set of molecular primitives that can be combined for widely varying purposes. The existence of such universal molecular operations might seem highly unlikely, but there is suggestive evidence that it may be possible to discover or synthesize them. II. APPROACH Accomplishing the goals of UPIM will require the identification of a small set of molecular building blocks that is
Approximation Semantics and Expressive Predicate Assignment for Object-Oriented Programming (Extended Abstract)
"... Abstract. We consider a semantics for a class-based object-oriented calculus based upon approximation; since in the context of LC such a semantics enjoys a strong correspondence with intersection type assignment systems, we also define such a system for our calculus and show that it is sound and com ..."
Abstract
-
Cited by 3 (3 self)
- Add to MetaCart
Abstract. We consider a semantics for a class-based object-oriented calculus based upon approximation; since in the context of LC such a semantics enjoys a strong correspondence with intersection type assignment systems, we also define such a system for our calculus and show that it is sound and complete. We establish the link with between type (we use the terminology predicate here) assignment and the approximation semantics by showing an approximation result, which leads to a sufficient condition for head-normalisation and termination. We show the expressivity of our predicate system by defining an encoding of Combinatory Logic (and so also LC) into our calculus. We show that this encoding preserves predicate-ability and also that our system characterises the normalising and strongly normalising terms for this encoding, demonstrating that the great analytic capabilities of these predicates can be applied to OO. 1
Notions of computability at higher types II
- In preparation
, 2001
"... ntroduce some simple general theory to allow us to talk about notions of higher-type computable functional. The following definitions (with minor variations) appear frequently in the literature. Definition 1.1 (Weak partial type structures) A weak partial type structure, or weak PTS A [over a set X ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
ntroduce some simple general theory to allow us to talk about notions of higher-type computable functional. The following definitions (with minor variations) appear frequently in the literature. Definition 1.1 (Weak partial type structures) A weak partial type structure, or weak PTS A [over a set X], consists of the following data: . for each type #, a set A # of elements of type # [equipped with a canonical bijection A 0 # = X], . for each #, # , a partial application function ## : A ### A # # A # . We usually omit type subscripts from application operations, and often write x y simply as xy. By convention, w
Why sets?
- PILLARS OF COMPUTER SCIENCE: ESSAYS DEDICATED TO BORIS (BOAZ) TRAKHTENBROT ON THE OCCASION OF HIS 85TH BIRTHDAY, VOLUME 4800 OF LECTURE NOTES IN COMPUTER SCIENCE
, 2008
"... Sets play a key role in foundations of mathematics. Why? To what extent is it an accident of history? Imagine that you have a chance to talk to mathematicians from a far-away planet. Would their mathematics be set-based? What are the alternatives to the set-theoretic foundation of mathematics? Besi ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
Sets play a key role in foundations of mathematics. Why? To what extent is it an accident of history? Imagine that you have a chance to talk to mathematicians from a far-away planet. Would their mathematics be set-based? What are the alternatives to the set-theoretic foundation of mathematics? Besides, set theory seems to play a significant role in computer science; is there a good justification for that? We discuss these and some related issues.
A Physical Example For Teaching Curried Functions
- Chapter 8 of Parallel and Distributed Computing Handbook (A.Y. Zomaya,Editor), McGraw-Hill
, 1996
"... Curried functions are an important topic in Computing courses that teach functional programming, including courses that study programming languages. Good motivating examples for teaching curried functions and their utility can be taken from Physics. BACKGROUND Curried functions and currying are an ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
Curried functions are an important topic in Computing courses that teach functional programming, including courses that study programming languages. Good motivating examples for teaching curried functions and their utility can be taken from Physics. BACKGROUND Curried functions and currying are an important topic in computer science courses that teach functional programming [14, section 7.3]. Such courses include undergraduate courses in programming paradigms (unit PL11 in the ACM's Computing Curricula 1991 [15]), with titles such as "Principles of Programming Languages" [11, p. 388] [10, p. 100]. Also included are undergraduate and graduate courses in programming language semantics (unit PL10 in [15]), with titles such as "Essentials of Programming Languages" [7, p.27]. Curried functions are also directly supported by some modern functional programming languages, such as Haskell [4]. Curry [2,3] and others [13] [5, pages 153-156] studying the concept of a function asked the question...

