Results 11  20
of
27
Curry's Anticipation of the Types Used in Programming Languages
, 2003
"... This paper shows that H. B. Curry anticipated both the kind of data types used in computer programming languages and also the dependent function type. ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
This paper shows that H. B. Curry anticipated both the kind of data types used in computer programming languages and also the dependent function type.
On the Role of Implication in Formal Logic
, 1998
"... Evidence is given that implication (and its special case, negation) carry the logical strength of a system of formal logic. This is done by proving normalization and cut elimination for a system based on combinatory logic or #calculus with logical constants for and, or, all, and exists, but with no ..."
Abstract
 Add to MetaCart
Evidence is given that implication (and its special case, negation) carry the logical strength of a system of formal logic. This is done by proving normalization and cut elimination for a system based on combinatory logic or #calculus with logical constants for and, or, all, and exists, but with none for either implication or negation. The proof is strictly finitary, showing that this system is very weak. The results can be extended to a "classical" version of the system. They can also be extended to a system with a restricted set of rules for implication: the result is a system of intuitionistic higherorder BCK logic with unrestricted comprehension and without restriction on the rules for disjunction elimination and existential elimination. The result does not extend to the classical version of the BCK logic. 1991 AMS (MOS) Classification: 03B40, 03F05, 03B20 Key words: Implication, negation, combinatory logic, lambda calculus, comprehension principle, normalization, cutelimination...
Combinators
, 1995
"... ion takes a term t and a variable x and forms the function l x.t or Function[x, t] . In a combinatory algebra, there is just one operation: application. Because there is no way to define functions by abstraction, some basic operations need to be built in. These are the constants or basic combinator ..."
Abstract
 Add to MetaCart
ion takes a term t and a variable x and forms the function l x.t or Function[x, t] . In a combinatory algebra, there is just one operation: application. Because there is no way to define functions by abstraction, some basic operations need to be built in. These are the constants or basic combinators. Combinatory terms are built up from the constants and variables by repeated application. In the literature, the application of term t 1 to term t 2 is written t 1 t 2 , omitting the operator (similar to the way multiplication is often written without the dot). Application is taken to be left associative; that is, xyz is interpreted as (xy)z, not as x (yz). Remarkably, two basic combinators suffice to express all possible functions. Let us see how this works. With abstraction we can turn any term t (involving the variable x) into a function Function[x, t] . If we want to define the same function as a combinatory term we must find a term T (not containing x) such that Tx = t. In this cas...
LambdaCalculus and Functional Programming
"... This paper deals with the problem of a program that is essentially the same over any of several types but which, in the older imperative languages must be rewritten for each separate type. For example, a sort routine may be written with essentially the same code except for the types for integers, bo ..."
Abstract
 Add to MetaCart
This paper deals with the problem of a program that is essentially the same over any of several types but which, in the older imperative languages must be rewritten for each separate type. For example, a sort routine may be written with essentially the same code except for the types for integers, booleans, and strings. It is clearly desirable to have a method of writing a piece of code that can accept the specific type as an argument. Milner developed his ideas in terms of type assignment to lambdaterms. It is based on a result due originally to Curry (Curry 1969) and Hindley (Hindley 1969) known as the principal typescheme theorem, which says that (assuming that the typing assumptions are sufficiently wellbehaved) every term has a principal typescheme, which is a typescheme such that every other typescheme which can be proved for the given term is obtained by a substitution of types for type variables. This use of type schemes allows a kind of generality over all types, which is known as polymorphism.
On the Role of Implication in Formal Logic
"... Evidence is given that implication (and its special case, negation) carry the logical strength of a system of formal logic. This is done by proving normalization and cut elimination for a system based on combinatory logic or #calculus with logical constants for and, or, all, and exists, but with no ..."
Abstract
 Add to MetaCart
Evidence is given that implication (and its special case, negation) carry the logical strength of a system of formal logic. This is done by proving normalization and cut elimination for a system based on combinatory logic or #calculus with logical constants for and, or, all, and exists, but with none for either implication or negation. The proof is strictly finitary, showing that this system is very weak. The results can be extended to a "classical" version of the system. They can also be extended to a system with a restricted set of rules for implication: the result is a system of intuitionistic higherorder BCK logic with unrestricted comprehension and without restriction on the rules for disjunction elimination and existential elimination. The result does not extend to the classical version of the BCK logic. 1991 AMS (MOS) Classification: 03B40, 03F05, 03B20 Key words: Implication, negation, combinatory logic, lambda calculus, comprehension principle, normalization, cutelimination...
Type Systems for Programming Languages
, 2001
"... These notes belong to the course Type Systems for Programming Languages, given to fourth year students in Computing and Joint Mathematics and Computing with some experience in reasoning and logic, and students in the Advanced Masters programme at the Department of Computing, Imperial College, London ..."
Abstract
 Add to MetaCart
These notes belong to the course Type Systems for Programming Languages, given to fourth year students in Computing and Joint Mathematics and Computing with some experience in reasoning and logic, and students in the Advanced Masters programme at the Department of Computing, Imperial College, London. The course is intended for students interested in theoretical computer science, who possess some knowledge of logic. No prior knowledge on type systems or proof techniques is assumed, other than being familiar with the principle of induction. Aims • To lay out in detail the design of type assignment systems for programming languages. • To focus on the importance of a sound theoretical framework, in order to be able to reason about properties of a typed program. • To understand the concepts of: type checking, type reconstruction, polymorphism, type derivation, typeability, typing of recursive functions, termination in the context of typeability, and undecidable systems. • To study various systems and various languages, and to compare those and to select.
Neural Algebra and Consciousness: A Theory of Structural Functionality in Neural Nets
"... Abstract. Thoughts are spatiotemporal patterns of coalitions of firing neurons and their interconnections. Neural algebras represent these patterns as formal algebraic objects, and a suitable composition operation reflects their interaction. Thus, a neural algebra is associated with any neural net. ..."
Abstract
 Add to MetaCart
Abstract. Thoughts are spatiotemporal patterns of coalitions of firing neurons and their interconnections. Neural algebras represent these patterns as formal algebraic objects, and a suitable composition operation reflects their interaction. Thus, a neural algebra is associated with any neural net. The present paper presents this formalization and develops the basic algebraic tools for formulating and solving the problem of finding the neural correlates of concepts such as reflection, association, coordination, etc. The main application is to the notion of consciousness, whose structural and functional basis is made explicit as the emergence of a set of solutions to a fixpoint equation. Key words: neural nets, combinatory algebra, functional structures, emergent properties, models of consciousness
Handbook of the History of Logic. Volume 6
"... ABSTRACT: Here is a crude list, possibly summarizing the role of paradoxes within the framework of mathematical logic: 1. directly motivating important theories (e.g. type theory, axiomatic set theory, combinatory logic); 2. suggesting methods of proving fundamental metamathematical results (fixed p ..."
Abstract
 Add to MetaCart
ABSTRACT: Here is a crude list, possibly summarizing the role of paradoxes within the framework of mathematical logic: 1. directly motivating important theories (e.g. type theory, axiomatic set theory, combinatory logic); 2. suggesting methods of proving fundamental metamathematical results (fixed point theorems, incompleteness, undecidability, undefinability); 3. applying inductive definability and generalized recursion; 4. introducing new semantical methods (e. g. revision theory, semiinductive definitions, which require nontrivial set theoretic results); 5. (partly) enhancing new axioms in set theory: the case of antifoundation AFA and the mathematics of circular phenomena; 6. suggesting the investigation of nonclassical logical systems, from contractionfree and manyvalued logics to systems with generalized quantifiers; 7. suggesting frameworks with flexible typing for the foundations of Mathematics and Computer Science; 8. applying forms of selfreferential truth and in Artificial Intelligence, Theoretical Linguistics, etc. Below we attempt to shed some light on the genesis of the issues 1–8 through the history of the paradoxes in the twentieth century, with a special emphasis on semantical aspects.