# Propositions as Types

Save this PDF as:

Size: px
Start display at page:

## Transcription

5 putational aspects of linear logic are discussed by bramsky [1] and Wadler [62], among many others, and applications to quantum computing are surveyed by Gay [18]. Most recently, Session Types, a way of describing communication protocols introduced by Honda [30], have been related to intuitionistic linear logic by Caires and Pfenning [5], and to classical linear logic by Wadler [64]. One key to the correspondence between logic and computation is the study of category theory. oth simply-typed lambda calculus and intuitionistic natural deduction correspond to the notion of a cartesian closed category [52]. Many extensions of this idea arise, including an exciting strand of work linking categories, computation, linear logic, and quantum physics [2]. Vladimir Voevodsky, a winner of the Fields Medal, excited much interest with his recent work on Homotopy Type Theory (HoTT) and Univalent Foundations, which links topology to Propositions as Types. Special Year devoted to the subject and hosted by the Institute for dvanced Studies at Princeton, Church s home, led to the publication last year of The HoTT ook, which indeed was hotly awaited, and authored by over 50 mathematicians and computer scientists ranging from czel to Zeilenberg. Propositions as Types remains a topic of active research. 7. Natural deduction We now turn to a more formal development, presenting a fragment of natural deduction and a fragment of typed lambda calculus in a style that makes clear the connection between the two. We begin with the details of natural deduction as defined by Gentzen [19]. The proof rules are shown in Figure 1. To simplify our discussion, we consider just two of the connectives of natural deduction. We write and as placeholders standing for arbitrary formulas. Conjunction is written & and implication is written. We represent proofs by trees, where each node of the tree is an instance of a proof rule. Each proof rule consists of zero or more formulas written above a line, called the premises, and a single formula written below the line, called the conclusion. The interpretation of a rule is that when all the premises hold, then the conclusion follows. The proof rules come in pairs, with rules to introduce and to eliminate each connective, labelled -I and -E respectively. s we read the rules from top to bottom, introduction and elimination rules do what they say on the tin: the first introduces a formula for the connective, which appears in the conclusion but not in the premises; the second eliminates a formula for the connective, which appears in a premise but not in the conclusion. n introduction rule describes under what conditions we say the connective holds how to define the connective. n elimination rule describes what we may conclude when the connective holds how to use the connective. The introduction rule for conjunction,, states that if formula holds and formula holds, then the formula & must hold as well. There are two elimination rules for conjunction. The first, &-E 1, states that if the formula & holds, then the formula must hold as well. The second, &-E 2, concludes rather than. The introduction rule for implication, -I, states that if from the assumption that formula holds we may derive the formula, then we may conclude that the formula holds and discharge the assumption. To indicate that is used as an assumption zero, once, or many times in the proof of, we write in brackets and tether it to via ellipses. proof is complete only when every assumption in it has been discharged by a corresponding use of -I, which is indicated by writing the same name (here x) as a superscript on each instance of the discharged assumption and on the discharging rule. The elimination rule for implication, -E, states that if formula holds and if formula holds, then & [] x -I x & &-E1 & &-E2 -E Figure 1. Gerhard Gentzen (1935) Natural Deduction [ & ] z [ & ] z &-E 2 &-E 1 & -I z ( & ) ( & ) Figure 2. proof & &-E1 = [] x -I x -E = Figure 3. Simplifying proofs [ & ] z [ & ] z &-E 2 &-E 1 & -I z ( & ) ( & ) & &-E2 & w & w & & &-E1 Figure 4. Simplifying a proof & -E

6 we may conclude formula holds as well; as mentioned earlier, this rule also goes by the name modus ponens. Critical readers will observe that we use similar language to describe rules ( when-then ) and formulas ( implies ). The same idea applies at two levels, the meta level (rules) and the object level (formulas), and in two notations, using a line with premises above and conclusion below for implication at the meta level, and the symbol with premise to the left and conclusion to the right at the object level. It is almost as if to understand implication one must first understand implication! This Zeno s paradox of logic was wryly observed by Lewis Carroll [6], and the phenomenon was deeply investigated by Martin Löf [43]. We need not let it disturb us; everyone possesses a good informal understanding of implication, which may act as a foundation for its formal description. proof of the formula ( & ) ( & ). is shown in Figure 2. In other words, if and hold then and hold. This may seem so obvious as to be hardly deserving of proof! However, the formulas and have meanings that differ, and we need some formal way to conclude that the formulas & and & have meanings that are the same. This is what our proof shows, and it is reassuring that it can be constructed from the rules we posit. The proof reads as follows. From & we conclude, by &-E 2, and from & we also conclude, by &-E 1. From and we conclude &, by. That is, from the assumption & (used twice) we conclude &. We discharge the assumption and conclude ( & ) ( & ) by -I, linking the discharged assumptions to the discharging rule by writing z as a superscript on each. Some proofs are unnecessarily roundabout. Rules for simplifying proofs appear in Figure 3, and an example of such a proof appears in Figure 4. Let s focus on the example first. The top of Figure 4 shows a larger proof built from the proof in Figure 2. The larger proof assumes as premises two formulas, and, and concludes with the formula &. However, rather than concluding it directly we derive the result in a roundabout way, in order to illustrate an instance of -E, modus ponens. The proof reads as follows. On the left is the proof given previously, concluding in ( & ) ( & ). On the right, from and we conclude & by. Combining these yields & by -E. We may simplify the proof by applying the rewrite rules of Figure 3. These rules specify how to simplify a proof when an introduction rule is immediately followed by the corresponding elimination rule. Each rule shows two proofs connected by an arrow, indicating that the redex (the proof on the left) may be rewritten, or simplified, to yield the reduct (the proof on the right). Rewrites always take a valid proof to another valid proof. For &, the redex consists of a proof of and a proof of, which combine to yield & by, which in turn yields by &-E 1. The reduct consists simply of the proof of, discarding the unneeded proof of. There is a similar rule, not shown, to simplify an occurrence of followed by &-E 2. For, the redex consists of a proof of from assumption, which yields by -I, and a proof of, which combine to yield by -E. The reduct consists of the same proof of, but now with every occurrence of the assumption replaced by the given proof of. The assumption may be used zero, once, or many times in the proof of in the redex, so the proof of may be copied zero, once, or many times in the proof of in the reduct. For this reason, the reduct may be larger than the redex, but it will be simpler in the sense that it has removed an unnecessary detour via the subproof of. We can think of the assumption of in -I as a debt which is discharged by the proof of provided in -E. The proof in the redex accumulates debt and pays it off later; while the proof in the reduct pays directly each time the assumption is used. Proof debt differs from monetary debt in that there is no interest, and the same proof may be duplicated freely as many times as needed to pay off an assumption, the very property which money, by being hard to counterfeit, is designed to avoid! Figure 4 demonstrates use of these rules to simplify a proof. The first proof contains an instance of -I followed by -E, and is simplified by replacing each of the two assumptions of & on the left by a copy of the proof of & on the right. The result is the second proof, which as a result of the replacement now contains an instance of followed by &-E 2, and another instance of followed by &-E 1. Simplifying each of these yields the third proof, which derives & directly from the assumptions and, and can be simplified no further. It is not hard to see that proofs in normal form satisfy the Subformula Property: every formula of such a proof must be a subformula of one of its undischarged assumptions or of its conclusion. The proof in Figure 2 and the final proof of Figure 4 both satisfy this property, while the first proof of Figure 4 does not, since ( & ) ( & ) is not a subformula of &. 8. Lambda calculus We now turn our attention to the simply-typed lambda calculus of Church [10]. The type rules are shown in Figure 5. To simplify our discussion, we take both products and functions as primitive types; Church s original calculus contained only function types, with products as a derived construction. We now write and as placeholders for arbitrary types, and L, M, N as placeholder for arbitrary terms. Product types are written and function types are written. Now instead of formulas, our premises and conclusions are judgments of the form M : indicating that term M has type. Like proofs, we represent type derivations by trees, where each node of the tree is an instance of a type rule. Each type rule consists of zero or more judgments written above a line, called the premises, and a single judgment written below the line, called the conclusion. The interpretation of a rule is that when all the premises hold, then the conclusion follows. Like proof rules, type rules come in pairs. n introduction rule describes how to define or construct a term of the given type, while an elimination rule describes how to use or deconstruct a term of the given type. The introduction rule for products,, states that if term M has type and term N has type, then we may form the pair term M, N of product type. There are two elimination rules for products. The first, -E 1, states that if term L has type, then we may form the term π 1 L of type, which selects the first component of the pair. The second, -E 2 is similar, save that it forms the term π 2 L of type. The introduction rule for functions, -I, states that if given a variable x of type we have formed a term N of type, then we may form the lambda term λx. N of function type. The variable x appears free in N and bound in λx. N. Undischarged assumptions correspond to free variables, while discharged assumptions correspond to bound variables. To indicate that the variable x may appear zero, once, or many times in the term N, we write x : in brackets and tether it to N : via ellipses. term is closed only when every variable in it is bound by a corresponding λ term. The elimination rule for functions, -E, states that given

7 M : N : M, N : [x : ] x N : -I x λx. N : L : -E1 π 1 L : L : L M : L : -E2 π 2 L : M : -E Figure 5. lonzo Church (1935) Lambda Calculus [z : ] z [z : ] z -E 2 -E 1 π 2 z : π 1 z : π 2 z, π 1 z : -I z λz. π 2 z, π 1 z : ( ) ( ) M : [x : ] x N : -I x λx. N : Figure 6. program N : M, N : -E1 = π 1 M, N : (λx. N) M : M : -E = Figure 7. Evaluating programs [z : ] z [z : ] z -E 2 -E 1 π 2 z : π 1 z : π 2 z, π 1 z : -I z λz. π 2 z, π 1 z : ( ) ( ) y : (λz. π 2 z, π 1 z ) y, x : w x : y, x : -E2 π 2 y, x : y : π 2 y, x, π 1 y, x : w x : y : x, y : M : y : M : N[M/x] : x : y, x : -E x : y, x : -E1 π 1 y, x : Figure 8. Evaluating a program term L of type and term M of type we may form the application term L M of type. For natural deduction, we noted that there might be confusion between implication at the meta level and the object level. For lambda calculus the distinction is clearer, as we have implication at the meta level (if terms above the line are well typed so are terms below) but functions at the object level (a function has type because if it is passed a value of type then it returns a value of type ). What previously had been discharge of assumptions (perhaps a slightly diffuse concept) becomes binding of variables (a concept understood by most computer scientists). The reader will by now have observed a striking similarity between Gentzen s rules from the preceding section and Church s rules from this section: ignoring the terms in Church s rules then they are identical, if one replaces & by and by. The colouring of the rules is chosen to highlight the similarity. program of type ( ) ( ) is shown in Figure 6. Whereas the difference between & and & appears a mere formality, the difference between and is easier to appreciate: converting the latter to the former requires swapping the elements of the pair, which is precisely the task performed by the program corresponding to our former proof. The program reads as follows. From variable z of type we form term π 2 z of type by -E 2 and also term π 1 z of type by -E 1. From these two we form the pair π 2 z, π 1 z of type by. Finally, we bind the free variable z to form the lambda term λz. π 2 z, π 1 z of type ( ) ( ) by -I, connecting the bound typings to the binding rule by writing z as a superscript on each. The function accepts a pair and swaps its elements, exactly as described by its type. program may be evaluated by rewriting. Rules for evaluating programs appear in Figure 7, and an example appears in Figure 8. Let s focus on the example first. The top of Figure 8 shows a larger program built from the program in Figure 6. The larger program has two free variables, y of type and x of type, and constructs a value of type. However, rather than constructing it directly we reach the result in a roundabout way, in order to illustrate an instance of -E, function application. The program reads as follows. On the left is the program given previously, forming a function of type ( ) ( ). On the right, from and we form the pair y, x of type by. pplying the function to the pair forms a term of type by -E. We may evaluate this program by applying the rewrite rules of Figure 7. These rules specify how to rewrite a term when an introduction rule is immediately followed by the corresponding elimination rule. Each rule shows two derivations connected by an arrow, indicating that the redex (the term on the left) may be rewritten, or evaluated, to yield the reduct (the term on the right). Rewrites always take a valid type derivation to another valid type derivation, ensuring that rewrites preserve types, a property known as subject reduction or type soundness. For, the redex consists of term M of type and term N of type, which combine to yield term M, N of type by, which in turn yields term π 1 M, N of type by -E 1. The reduct consists simply of term M of type, discarding the unneeded term N of type. There is a similar rule, not shown, to rewrite an occurrence of followed by -E 2. For, the redex consists of a derivation of term N of type from variable x of type, which yields the lambda term λx. N of type by -I, and a derivation of term M of type, which combine to yield the application (λx. N) M of type by -E. The reduct consists of the term N[M/x] that replaces each free

12 [15] R. Davies and F. Pfenning. modal analysis of staged computation. In Principles of Programming Languages (POPL), pages , [16] N. G. de ruijn. The mathematical language utomath, its usage, and some of its extensions. In Symposium on utomatic Demonstration, volume 125 of Lecture Notes in Computer Science, pages Springer-Verlag, [17] R. Gandy. The confluence of ideas in In R. Herken, editor, The Universal Turing Machine: a Half-Century Survey, pages Springer, [18] S. Gay. Quantum programming languages: survey and bibliography. Mathematical Structures in Computer Science, 16(4): , [19] G. Gentzen. Untersuchungen über das logische Schließen. Mathematische Zeitschrift, 39(2 3): , , Reprinted in [56]. [20] J.-Y. Girard. Interprétation functionelle et élimination des coupures dans l arithmétique d ordre supérieure, Université Paris VII, These D Etat. [21] J.-Y. Girard. Linear logic. Theoretical Computer Science, 50:1 102, [22] J.-Y. Girard, P. Taylor, and Y. Lafont. Proof and Types. Cambridge University Press, [23] K. Gödel. Über formal unterscheidbare Sätze der Principia Mathematica und verwandter Systeme I. Monatshefte für Mathematik und Physik, 38: , Reprinted in [59]. [24] G. Gonthier. Formal proof the four-color theorem. Notices of the MS, 55(11): , [25] T. Griffin. formulae-as-types notion of control. In Principles of Programming Languages (POPL), pages CM, Jan [26] M. Hayden and R. van Renesse. Optimizing layered communication protocols. In Proceedings of the 6th International Symposium on High Performance Distributed Computing, HPDC, pages IEEE Computer Society, [27] D. E. Hesseling. Gnomes in the fog: the reception of rouwer s intuitionism in the 1920s. irkhäuser, [28]. Heyting. Mathematische Grundlagenforschung Intuitionismus ewiestheorie. Ergebnisse der Mathematik und ihren Grenagebiete. Springer Verlag, erlin, [29] R. Hindley. The principal type scheme of an object in combinatory logic. Transactions of the merican Mathematical Society, 146:29 60, Dec [30] K. Honda. Types for dyadic interaction. In CONCUR, pages , [31] W.. Howard. The formulae-as-types notion of construction. In To H.. Curry: Essays on Combinatory Logic, Lambda Calculus, and Formalism, pages cademic Press, The original version was circulated privately in [32]. Jeffrey. Causality for free!: parametricity implies causality for functional reactive programs. In Programming Languages meets Program Verification (PLPV), pages 57 68, [33] S. Kleene. Origins of recursive function theory. nnals of the History of Computing, 3(1):52 67, [34] S. C. Kleene. General recursive functions of natural numbers (abstract). ulletin of the merican Mathematical Society, July [35] S. C. Kleene. λ-definability and recursiveness. Duke Mathematical Journal, 2: , [36] S. C. Kleene. On the interpretation of intuitionistic number theory. Journal of Symbolic Logic, 10: , [37] S. C. Kleene and J.. Rosser. The inconsistency of certain formal logics. nnals of Mathematics, 36: , [38]. N. Kolmogorov. Zur deutung der intuitionistischen logik. Mathematische Zeitschrift, 35:58 65, [39] C. Kreitz. uilding reliable, high-performance networks with the nuprl proof development system. Journal of Functional Programming, 14(1):21 68, [40] X. Leroy. Formal verification of a realistic compiler. Commun. CM, 52(7): , [41] C. Lewis and C. Langford. Symbolic Logic reprinted by Dover, [42] P. Martin-Löf. Intuitionistic type theory. ibliopolis Naples, Italy, [43] P. Martin-Löf. On the meaning of the logical constants and the justification of the logical laws (Siena Lectures 1983). Nordic Journal of Philosophical Logic, 1(1):11 60, [44] R. Milner. theory of type polymorphism in programming. J. Comput. Syst. Sci., 17(3): , [45] J. C. Mitchell and G. D. Plotkin. bstract types have existential type. Transactions on Programming Languages and Systems, 10(3): , July [46] E. Moggi. Notions of computation and monads. Information and Computation, 93(1):55 92, [47] C. Murthy. n evaluation semantics for classical proofs. In Logic in Computer Science (LICS), pages , [48] M. Parigot. λµ-calculus: an algorithmic interpretation of classical natural deduction. In Logic programming and automated reasoning, volume 624 of Lecture Notes in Computer Science, pages Springer-Verlag, [49]. Pnueli. The temporal logic of programs. In FOCS, pages 46 57, [50]. Prior. Time and Modality [51] J. C. Reynolds. Towards a theory of type structure. In Symposium on Programming, volume 19 of Lecture Notes in Computer Science, pages , [52] D. Scott. Relating theories of the λ-calculus. In To H.. Curry: Essays on Combinatory Logic, Lambda Calculus, and Formalism, pages cademic Press, [53]. E. Shell-Gellasch. Reflections of my advisor: Stories of mathematics and mathematicians. The Mathematical Intelligencer, 25(1):35 41, [54] M. H. Sørensen and P. Urzyczyn. Lectures on the Curry-Howard isomorphism. Elsevier, [55] N. Swamy, J. Chen, C. Fournet, P. Strub, K. hargavan, and J. Yang. Secure distributed programming with value-dependent types. In M. M. T. Chakravarty, Z. Hu, and O. Danvy, editors, International Conference on Functional Programming (ICFP), pages CM, [56] M. E. Szabo, editor. The collected papers of Gerhard Gentzen. North Holland, [57] S. Thompson. Type Theory and Functional Programming. ddison- Wesley, [58]. M. Turing. On computable numbers, with an application to the Entscheidungsproblem. Proceedings of the London Mathematical Society, May [59] J. van Heijenoort. From Frege to Gödel: a sourcebook in mathematical logic, Harvard University Press, [60] M. Y. Vardi. From church and prior to PSL. In O. Grumberg and H. Veith, editors, 25 Years of Model Checking History, chievements, Perspectives, volume 5000 of Lecture Notes in Computer Science, pages Springer, [61] T. M. VII, K. Crary, R. Harper, and F. Pfenning. symmetric modal lambda calculus for distributed computing. In Logic in Computer Science (LICS), pages , [62] P. Wadler. taste of linear logic. In Mathematical Foundations of

13 Computer Science (MFCS), volume 711 of LNCS, pages Springer-Verlag, [63] P. Wadler. Call-by-value is dual to call-by-name. In International Conference on Functional Programming (ICFP), pages CM, [64] P. Wadler. Propositions as sessions. In International Conference on Functional Programming (ICFP), pages CM, [65]. N. Whitehead and. Russell. Principia mathematica. Cambridge University Press, 1912.

### Proofs are Programs: 19th Century Logic and 21st Century Computing

Proofs are Programs: 19th Century Logic and 21st Century Computing Philip Wadler Avaya Labs June 2000, updated November 2000 As the 19th century drew to a close, logicians formalized an ideal notion of

### Hypercomputation: computing more than the Turing machine

Hypercomputation: computing more than the Turing machine Abstract: Toby Ord Department of Philosophy * The University of Melbourne t.ord@pgrad.unimelb.edu.au In this report I provide an introduction to

### HILBERT S PROGRAM THEN AND NOW

HILBERT S PROGRAM THEN AND NOW Richard Zach 1 INTRODUCTION Hilbert s program is, in the first instance, a proposal and a research program in the philosophy and foundations of mathematics. It was formulated

### Dependent Types at Work

Dependent Types at Work Ana Bove and Peter Dybjer Chalmers University of Technology, Göteborg, Sweden {bove,peterd}@chalmers.se Abstract. In these lecture notes we give an introduction to functional programming

### Intellectual Need and Problem-Free Activity in the Mathematics Classroom

Intellectual Need 1 Intellectual Need and Problem-Free Activity in the Mathematics Classroom Evan Fuller, Jeffrey M. Rabin, Guershon Harel University of California, San Diego Correspondence concerning

### The Gödel Phenomena in Mathematics: A Modern View

Chapter 1 The Gödel Phenomena in Mathematics: A Modern View Avi Wigderson Herbert Maass Professor School of Mathematics Institute for Advanced Study Princeton, New Jersey, USA 1.1 Introduction What are

### How many numbers there are?

How many numbers there are? RADEK HONZIK Radek Honzik: Charles University, Department of Logic, Celetná 20, Praha 1, 116 42, Czech Republic radek.honzik@ff.cuni.cz Contents 1 What are numbers 2 1.1 Natural

### The Conception, Evolution, and Application of Functional Programming Languages

The Conception, Evolution, and Application of Functional Programming Languages Paul Hudak Yale University Department of Computer Science March 1989 Final Draft Abstract The foundations of functional programming

### Why Philosophers Should Care About Computational Complexity

Why Philosophers Should Care About Computational Complexity Scott Aaronson Abstract One might think that, once we know something is computable, how efficiently it can be computed is a practical question

### THE FIRST COMPUTATIONAL THEORY OF MIND AND BRAIN: A CLOSE LOOK AT MCCULLOCH AND PITTS S LOGICAL CALCULUS OF IDEAS IMMANENT IN NERVOUS ACTIVITY

GUALTIERO PICCININI THE FIRST COMPUTATIONAL THEORY OF MIND AND BRAIN: A CLOSE LOOK AT MCCULLOCH AND PITTS S LOGICAL CALCULUS OF IDEAS IMMANENT IN NERVOUS ACTIVITY ABSTRACT. Despite its significance in

### Switching Algebra and Logic Gates

Chapter 2 Switching Algebra and Logic Gates The word algebra in the title of this chapter should alert you that more mathematics is coming. No doubt, some of you are itching to get on with digital design

### SESSION 1 PAPER 1 SOME METHODS OF ARTIFICIAL INTELLIGENCE AND HEURISTIC PROGRAMMING. Dr. MARVIN L. MINSKY (94009)

SESSION 1 PAPER 1 SOME METHODS OF ARTIFICIAL INTELLIGENCE AND HEURISTIC PROGRAMMING by Dr. MARVIN L. MINSKY (94009) 3 BIOGRAPHICAL NOTE Marvin Lee Minsky was born in New York on 9th August, 1927. He received

### 1. DIALECTIC EXPLAINED

Sommer-Edition 2004 WHAT IS DIALECTIC? von Karl R. Popper [ * ] There is nothing so absurd or incredible that it has not been asserted by one philosopher or another. Descartes 1. DIALECTIC EXPLAINED THE

### THE UNREASONABLE EFFECTIVENSS OF MATHEMATICS IN THE NATURAL SCIENCES

Reprinted from Communications in Pure and Applied Mathematics, Vol. 13, No. I (February 1960). New York: John Wiley & Sons, Inc. Copyright 1960 by John Wiley & Sons, Inc. THE UNREASONABLE EFFECTIVENSS

### TYPES, SETS AND CATEGORIES

TYPES, SETS AND CATEGORIES John L. Bell This essay is an attempt to sketch the evolution of type theory from its beginnings early in the last century to the present day. Central to the development of the

### Is there a problem about nonconceptual content?

Is there a problem about nonconceptual content? Jeff Speaks (forthcoming in the Philosophical Review) 1 Two understandings of nonconceptual content.................. 1 2 The case for nonconceptual content..........................

NO ^US 39:2 (2005) 256 283 A Puzzle about Ontology THOMAS HOFWEBER University of North Carolina at Chapel Hill 1 Ontology Ontology is the philosophical discipline that tries to find out what there is:

### WHAT ARE MATHEMATICAL PROOFS AND WHY THEY ARE IMPORTANT?

WHAT ARE MATHEMATICAL PROOFS AND WHY THEY ARE IMPORTANT? introduction Many students seem to have trouble with the notion of a mathematical proof. People that come to a course like Math 216, who certainly

### OTHER BOOKS BY DEWEY B. LARSON. Physical Science. Economic Science

NOTHING BUT MOTION OTHER BOOKS BY DEWEY B. LARSON Physical Science The Structure of the Physical Universe The Case Against the Nuclear Atom Beyond Newton New Light on Space and Time Quasars and Pulsars

### Physics, Topology, Logic and Computation: A Rosetta Stone

Physics, Topology, Logic and Computation: A Rosetta Stone John C. Baez Department of Mathematics, University of California Riverside, California 92521, USA Mike Stay Computer Science Department, University

### REVERSING 30 YEARS OF DISCUSSION: WHY CAUSAL DECISION THEORISTS SHOULD ONE-BOX *

REVERSING 30 YEARS OF DISCUSSION: WHY CAUSAL DECISION THEORISTS SHOULD ONE-BOX * Wolfgang Spohn Department of Philosophy University of Konstanz 78457 Konstanz Germany Abstract: The paper will show how

### Guide to Ground. A number of philosophers have recently become receptive to the idea that, in addition to

1 Guide to Ground A number of philosophers have recently become receptive to the idea that, in addition to scientific or causal explanation, there may be a distinctive kind of metaphysical explanation,

### COMPUTING MACHINERY AND INTELLIGENCE

A. M. Turing (1950) Computing Machinery and Intelligence. Mind 49: 433-460. COMPUTING MACHINERY AND INTELLIGENCE 1. The Imitation Game By A. M. Turing I propose to consider the question, "Can machines

### Computing Machinery and Intelligence

Computing Machinery and Intelligence A. M. Turing 1950 1 The Imitation Game I propose to consider the question, Can machines think? This should begin with definitions of the meaning of the terms machine

### THE FORMAL SCIENCES DISCOVER THE PHILOSOPHERS STONE

18 THE FORMAL SCIENCES DISCOVER THE PHILOSOPHERS STONE Studies in History and Philosophy of Science Vol. 25, No. 4, pp. 513 533, 1994 Copyright 1994 Elsevier Science Ltd 1. Introduction IT USED to be that

This page intentionally left blank A First Course in General Relativity Second Edition Clarity, readability, and rigor combine in the second edition of this widely used textbook to provide the first step

### On System Design. Jim Waldo

On System Design Jim Waldo On System Design Jim Waldo Perspectives 2006-6 In an Essay Series Published by Sun Labs December 2006 This work first appeared as part of the OOPSLA 2006 Essays track, October