## On the unity of duality (2008)

### Cached

### Download Links

- [www.cs.cmu.edu]
- [www.cs.cmu.edu]
- [www.cs.cmu.edu]
- DBLP

### Other Repositories/Bibliography

Venue: | Special issue on “Classical Logic and Computation |

Citations: | 12 - 2 self |

### BibTeX

@INPROCEEDINGS{Zeilberger08onthe,

author = {Noam Zeilberger},

title = {On the unity of duality},

booktitle = {Special issue on “Classical Logic and Computation},

year = {2008}

}

### OpenURL

### Abstract

Most type systems are agnostic regarding the evaluation strategy for the underlying languages, with the value restriction for ML which is absent in Haskell as a notable exception. As type systems become more precise, however, detailed properties of the operational semantics may become visible because properties captured by the types may be sound under one strategy but not the other. For example, intersection types distinguish between call-by-name and call-by-value functions, because the subtyping law (A → B) ∩ (A → C) ≤ A → (B ∩ C) is unsound for the latter in the presence of effects. In this paper we develop a proof-theoretic framework for analyzing the interaction of types with evaluation order, based on the notion of polarity. Polarity was discovered through linear logic, but we propose a fresh origin in Dummett’s program of justifying the logical laws through alternative verificationist or pragmatist “meaning-theories”, which include a bias towards either introduction or elimination rules. We revisit Dummett’s analysis using the tools of Martin-Löf’s judgmental method, and then show how to extend it to a unified polarized logic, with Girard’s “shift ” connectives acting as intermediaries. This logic safely combines intuitionistic and dual intuitionistic reasoning principles, while simultaneously admitting a focusing interpretation for the classical sequent calculus. Then, by applying the Curry-Howard isomorphism to polarized logic, we obtain a single programming language in which evaluation order is reflected at the level of types. Different logical notions correspond directly to natural programming constructs, such as pattern-matching, explicit substitutions, values and call-by-value continuations. We give examples demonstrating the expressiveness of the language and type system, and prove a basic but modular type safety result. We conclude with a brief discussion of extensions to the language with additional effects and types, and sketch the sort of explanation this can provide for operationally-sensitive typing phenomena. 1

### Citations

733 | Notions of Computation and Monads
- Moggi
- 1991
(Show Context)
Citation Context ...Q) where (E1, E2) is syntactic sugar for the left-to-right evaluation: (E1, E2) = µu.E1 (λp1.E2 (λp2.u (p1, p2))) One may wonder how this analysis compares with Moggi’s notion of computational monad (=-=Moggi, 1991-=-). Categorically, the relationship may be understood as that between a monad and an adjunction. 14 In other words, the shift operators decompose the monad as ○ = ↓↑. Operationally, we can think of the... |

692 |
Introduction to metamathematics
- Kleene
- 1952
(Show Context)
Citation Context ...te the completeness proof’s computational content, we will annotate derivations with terms of CU. As an axiomatization of the sequent calculus we will use Kleene’s G3 presentation, given in Figure 9 (=-=Kleene, 1952-=-; Troelstra and Schwichtenberg, 1996). We omit the units, since they do not reveal anything not already illustrated by conjunction and disjunction. 3.5.1 Preliminaries To state the focusing completene... |

619 | Light linear logic
- Girard
- 1998
(Show Context)
Citation Context ...with pattern-matching constructs—essentially for their inversion properties—arguing that this is necessary to obtain the right type isomorphisms. Polarity and focusing. The discovery of linear logic (=-=Girard, 1987-=-) and its crisp symmetries led to some early attempts at explaining strict vs. lazy evaluation within linear logic, for example by Abramsky (1993). Focusing (Andreoli, 1992) greatly improved the under... |

567 |
Untersuchungen über das logische Schließen
- Gentzen
- 1935
(Show Context)
Citation Context ...ore familiar, going back to an offhand remark by Gentzen (while speaking about his system of natural deduction) that “an introduction rule gives, so to say, a definition of the constant in question” (=-=Gentzen, 1935-=-, p. 80). Gentzen’s remark was first developed mathematically by Prawitz (1974), by treating the meaning of a proposition as given by its canonical proofs, or verifications. 2 Under what Dummett calls... |

333 | Logic programming with focusing proofs in linear logic
- Andreoli
- 1992
(Show Context)
Citation Context ...of “focusing” strategies for sequent calculi. 2.5 Focusing the classical sequent calculus The technique of focusing was originally invented as a way of guiding bottom-up proof search in linear logic (=-=Andreoli, 1992-=-). In general, bottom-up search works by reading each rule as a suggestion, “To prove the conclusion, try proving the premises.” Starting from a goal sequent, one looks for a proof by provisionally in... |

321 |
calculus: an algorithmic interpretation of classical natural deduction
- Parigot
- 1992
(Show Context)
Citation Context ...ial maps from copatterns to statements, we write the expression typing rule as: ∀(∆ ⇒ p cov : N) : Γ, ∆ ⊢ ψ(p) stm : # Γ ⊢ (µψ) exp : N This µ can be seen as a generalization of µ in the λµ-calculus (=-=Parigot, 1992-=-), as we explain in Section 3.3 below. The negative fragment introduces an additional form of statement, which passes a covalue to an expression variable: u exp : N ∈ Γ Γ ⊢ C cov : N Γ ⊢ u C stm : # F... |

302 | Definitional interpreters for higher-order programming languages
- Reynolds
- 1972
(Show Context)
Citation Context ...ssay by John Reynolds centers on the dangers of specifying the semantics of a language by means of a definitional interpreter, when the meaning of the defining language is itself potentially unclear (=-=Reynolds, 1972-=-). In a functional programming language, the result of function application can depend on whether evaluation order is call-by-value or call-by-name (due to the presence of non-termination and other si... |

281 | Computational interpretation of linear logic - Abramsky - 1990 |

235 | A formulae-as-types notion of control
- Griffin
- 1990
(Show Context)
Citation Context ...ontinuation K cnt : P can be captured and treated as a covalue K cov : ↑P. Example 17. Control operators such as callcc have long been associated with Curry-Howard interpretations of classical logic (=-=Griffin, 1990-=-). In polarized logic, we can distinguish between values of type P, which do not have control effects, and expressions of type ↑P, which can. For example, ordinarily callcc is typed using Pierce’s Law... |

216 |
A filter lambda model and the completeness of type assignment. J.Symbolic Logic, 48:931--940
- Barendregt, Coppo, et al.
- 1983
(Show Context)
Citation Context ...ounterexample to type safety analogous to the original bug in the implementation of ML polymorphism. They also discovered that the standard subtyping distributivity rule (A → B)∩(A → C) ≤ A → (B ∩C) (=-=Barendregt et al., 1983-=-) was unsound in that setting. Although union and intersection types are beyond the scope of this paper, our preliminary studies suggest that operationally-sensitive typing phenomena do indeed have a ... |

199 |
Call-by-name, call-by-value and the λ-calculus
- Plotkin
- 1975
(Show Context)
Citation Context ...(P ⊗ ¬ v Q)), and the call-by-name function space N → n M by expressions of type ¬ n N�M. These typings of Plotkin’s CPS transformations are analogous to several others that appear in the literature (=-=Plotkin, 1975-=-; Streicher and Reus, 1998; Selinger, 2001; Wadler, 2003; Laurent, 2005). However, they are only a starting point for the analysis of real call-byvalue and call-by-name languages. If we want to model ... |

172 | Refinement types for ML
- Freeman, Pfenning
- 1991
(Show Context)
Citation Context .... We present a brief survey below. Refinement types and effects. Refinement types are practically-motivated extensions to type systems for existing languages, used to capture more program invariants (=-=Freeman and Pfenning, 1991-=-). Although this research drew from very old theoretical foundations on intersection types (Barendregt et al., 1983), those foundations were found to be shaky in this more operational setting: Davies ... |

161 | The duality of computation
- Curien, Herbelin
- 2000
(Show Context)
Citation Context ...his paper is a pun on Girard’s “unity of logic” (Girard, 1993), and a series of papers by different authors, all suggesting a duality between call-by-value and call-by-name languages (Filinski, 1989; =-=Curien and Herbelin, 2000-=-; Selinger, 2001; Wadler, 2003). By giving this polarized logic a Curry-Howard interpretation, we construct a single programming language in which evaluation order is explicitly reflected at the level... |

161 |
A new constructive logic: classical logic
- Girard
- 1991
(Show Context)
Citation Context ...c, for example by Abramsky (1993). Focusing (Andreoli, 1992) greatly improved the understanding of these symmetries, and sparked interest in the idea of polarity as a way of taming misbehaved logics (=-=Girard, 1991-=-, 1993). It was reconstructed in the “colour protocol” of Danos et al. (1997) for studying normalization of proofs, and used by Watkins et al. (2002) to define a dependent type theory with only canoni... |

161 | A judgemental reconstruction of modal logic
- Pfenning, Davies
(Show Context)
Citation Context ...estriction on polymorphismintroduction (Wright, 1995; Milner et al., 1997). It might be easy to dismiss this as an anomaly, but recent studies of intersection and union types in operational settings (=-=Pfenning and Davies, 2001-=-; Dunfield and Pfenning, 2004) have suggested a wider pattern of operationally-sensitive typing phenomena. The usual intersection introduction rule, for instance, is unsound in effectful call-by-value... |

125 |
On the meanings of the logical constants and the justifications of the logical laws
- Martin-Löf
- 1996
(Show Context)
Citation Context ... approach a pragmatist meaning-theory. How can these two alternatives be related? Our answer, which goes beyond Dummett’s requirement of harmony, combines insights from MartinLöf’s judgmental method (=-=Martin-Löf, 1996-=-; Pfenning and Davies, 2001) and Laurent’s polarized linear logic. First, we identify the different tools of Dummett’s analysis as different judgments about propositions. By concentrating on proofs an... |

103 | A new deconstructive logic: Linear logic - Danos, Joinet, et al. - 1997 |

85 | Pattern matching with dependent types - Coquand - 1992 |

83 | Control categories and duality: on the categorical semantics of the lambda-mu calculus
- Selinger
(Show Context)
Citation Context ...d’s “unity of logic” (Girard, 1993), and a series of papers by different authors, all suggesting a duality between call-by-value and call-by-name languages (Filinski, 1989; Curien and Herbelin, 2000; =-=Selinger, 2001-=-; Wadler, 2003). By giving this polarized logic a Curry-Howard interpretation, we construct a single programming language in which evaluation order is explicitly reflected at the level of types, and c... |

75 |
Constructible falsity
- Nelson
- 1949
(Show Context)
Citation Context ...tionistic” truth (Czermak, 1977; Goodman, 1981). Conversely, the judgment N absurd is more stringent than intuitionistic falsehood, roughly corresponding to what Nelson calls “constructible falsity” (=-=Nelson, 1949-=-). Formally, we can state a simple duality principle between the positive and negative interpretations. We first define (−) ⊥ as an operator taking positive formulas to negative, and vice versa: 8 X⊥ ... |

74 | A concurrent logical framework i: Judgments and properties - Watkins, Cervesato, et al. |

67 |
W.: Iterated Inductive Definitions and Subsystems of Analysis
- Buchholz, Feferman, et al.
- 1981
(Show Context)
Citation Context ...re considering, the rule will always simply have a finite list of premises. More abstractly, though, the rule for concluding P false may be seen as an iterated inductive definition (Martin-Löf, 1971; =-=Buchholz et al., 1981-=-), applying induction on the previously defined relation ∆ ⇒ P triv. Interpreted constructively, the rule demands a map from derivations ∆ ⇒ P triv to derivations Γ, ∆ ⊢ contra. We will exploit this h... |

65 | Intersection types and computational effects - Davies, Pfenning - 2000 |

60 |
Locus Solum: from the rules of logics to the logics of rules
- Girard
(Show Context)
Citation Context ...two different, oppositely polarized negations. 2to the dualizing operation (−) ⊥ familiar from linear logic, while the vertical arrows correspond to the more recently-discovered “shift” connectives (=-=Girard, 2001-=-). The title of this paper is a pun on Girard’s “unity of logic” (Girard, 1993), and a series of papers by different authors, all suggesting a duality between call-by-value and call-by-name languages ... |

58 | Intersection and union types: Syntax and semantics - Barbanera, Dezani-Ciancaglini, et al. - 1995 |

57 |
Hauptsatz for the intuitionistic theory of iterated inductive definitions
- Martin-Löf
- 1971
(Show Context)
Citation Context ...e connectives we are considering, the rule will always simply have a finite list of premises. More abstractly, though, the rule for concluding P false may be seen as an iterated inductive definition (=-=Martin-Löf, 1971-=-; Buchholz et al., 1981), applying induction on the previously defined relation ∆ ⇒ P triv. Interpreted constructively, the rule demands a map from derivations ∆ ⇒ P triv to derivations Γ, ∆ ⊢ contra.... |

51 | Classical logic, continuation semantics and abstract machines - Streicher, Reus - 1998 |

47 |
Call-by-value is dual to call-by-name
- Wadler
- 2003
(Show Context)
Citation Context ...gic” (Girard, 1993), and a series of papers by different authors, all suggesting a duality between call-by-value and call-by-name languages (Filinski, 1989; Curien and Herbelin, 2000; Selinger, 2001; =-=Wadler, 2003-=-). By giving this polarized logic a Curry-Howard interpretation, we construct a single programming language in which evaluation order is explicitly reflected at the level of types, and call-by-value a... |

36 | Tridirectional Typechecking
- Dunfield, Pfenning
- 2004
(Show Context)
Citation Context ...ntroduction (Wright, 1995; Milner et al., 1997). It might be easy to dismiss this as an anomaly, but recent studies of intersection and union types in operational settings (Pfenning and Davies, 2001; =-=Dunfield and Pfenning, 2004-=-) have suggested a wider pattern of operationally-sensitive typing phenomena. The usual intersection introduction rule, for instance, is unsound in effectful call-by-value languages (requiring a value... |

33 |
Focussing and proof construction
- Andreoli
- 2001
(Show Context)
Citation Context ...r a negative formula in right focus. 3. On a polarity mismatch, blur the sequent (i.e., lose focus) and go back to stage (1). Finally, this description may be refined with one additional observation (=-=Andreoli, 2001-=-): the particular sequence of left and right rules occurring within stages (1) and (2) is unimportant, and one can instead consider each stage as a single step. By this view, stage (1) applies a singl... |

32 | Etude de la polarisation en logique. These de doctorat, Universite Aix-Marseille 2 - Laurent - 2002 |

30 | Declarative continuations and categorical duality
- Filinski
- 1989
(Show Context)
Citation Context .... The title of this paper is a pun on Girard’s “unity of logic” (Girard, 1993), and a series of papers by different authors, all suggesting a duality between call-by-value and call-by-name languages (=-=Filinski, 1989-=-; Curien and Herbelin, 2000; Selinger, 2001; Wadler, 2003). By giving this polarized logic a Curry-Howard interpretation, we construct a single programming language in which evaluation order is explic... |

30 |
Zur Deutung der Intuitionistischen Logik
- Kolmogorov
- 1932
(Show Context)
Citation Context ...ustification of an assertion that constitutes the sense of the assertion” (Wittgenstein, 1974, I,§40)), and Brouwer-Heyting-Kolmogorov in their interpretations of intuitionistic logic (Heyting, 1974; =-=Kolmogorov, 1932-=-). � D2 B 3Dummett extended this sort of justification to arbitrary logical laws—not just the standard elimination rules—by defining canonical proof as a hereditary notion. Canonical proofs now end i... |

27 |
On the unity of logic, Annals of Pure and Applied Logic 59
- Girard
- 1993
(Show Context)
Citation Context ...) ⊥ familiar from linear logic, while the vertical arrows correspond to the more recently-discovered “shift” connectives (Girard, 2001). The title of this paper is a pun on Girard’s “unity of logic” (=-=Girard, 1993-=-), and a series of papers by different authors, all suggesting a duality between call-by-value and call-by-name languages (Filinski, 1989; Curien and Herbelin, 2000; Selinger, 2001; Wadler, 2003). By ... |

24 |
The Definition of Standard ML, Revised edition
- Milner, Tofte, et al.
- 1997
(Show Context)
Citation Context ...able storage and callcc (Harper and Lillibridge, 1991), and prompted various workarounds, with the eventual adoption of a non-logical, syntactic restriction on polymorphismintroduction (Wright, 1995; =-=Milner et al., 1997-=-). It might be easy to dismiss this as an anomaly, but recent studies of intersection and union types in operational settings (Pfenning and Davies, 2001; Dunfield and Pfenning, 2004) have suggested a ... |

18 | LJQ: a strongly focused calculus for intuitionistic logic - Dyckhoff, Lengrand - 2006 |

13 | Towards a logic for pragmatics. assertions and conjectures - Bellin, Biasi |

13 | Continuations semantics or expressing implication by negation - Lafont, Reus, et al. - 1993 |

9 | On the relations between monadic semantics - Filinski - 2007 |

9 | Classical isomorphisms of types - Laurent |

9 | On the idea of a general proof theory - Prawitz - 1974 |

7 |
A Remark on Gentzen’s Calculus of Sequents
- Czermak
- 1977
(Show Context)
Citation Context ... 6, it is clear that the judgment N true does not correspond to intuitionistic truth. In fact, it corresponds to what Czermak has called “dual intuitionistic” and Goodman “anti-intuitionistic” truth (=-=Czermak, 1977-=-; Goodman, 1981). Conversely, the judgment N absurd is more stringent than intuitionistic falsehood, roughly corresponding to what Nelson calls “constructible falsity” (Nelson, 1949). Formally, we can... |

6 | The Logical Basis of Metaphysics. The William James Lectures - Dummett - 1991 |

6 |
ML with callcc is unsound. Post to TYPES mailing list
- Harper, Lillibridge
- 1991
(Show Context)
Citation Context ...lue restriction on polymorphism, or secondorder quantification. The original implementation of ML was unsound due to the interaction of poly1morphism with effects such as mutable storage and callcc (=-=Harper and Lillibridge, 1991-=-), and prompted various workarounds, with the eventual adoption of a non-logical, syntactic restriction on polymorphismintroduction (Wright, 1995; Milner et al., 1997). It might be easy to dismiss thi... |

5 |
The Logic of Contradiction. Zeitschrift für Mathematische Logik und Grundlagen der Mathematik
- Goodman
- 1981
(Show Context)
Citation Context ... that the judgment N true does not correspond to intuitionistic truth. In fact, it corresponds to what Czermak has called “dual intuitionistic” and Goodman “anti-intuitionistic” truth (Czermak, 1977; =-=Goodman, 1981-=-). Conversely, the judgment N absurd is more stringent than intuitionistic falsehood, roughly corresponding to what Nelson calls “constructible falsity” (Nelson, 1949). Formally, we can state a simple... |

4 | Jumbo λ-calculus - Levy - 2006 |

4 |
Philosophical Grammar
- Wittgenstein
- 1978
(Show Context)
Citation Context ...ugh, this idea was already explored by various people in the 30s, particularly Wittgenstein (“It is what is regarded as the justification of an assertion that constitutes the sense of the assertion” (=-=Wittgenstein, 1974-=-, I,§40)), and Brouwer-Heyting-Kolmogorov in their interpretations of intuitionistic logic (Heyting, 1974; Kolmogorov, 1932). � D2 B 3Dummett extended this sort of justification to arbitrary logical ... |

2 |
P.Martin-LGf, Syntax and Semantics of the Language of Primitive Recursiue FunctionqPreprint No
- Hancock
- 1975
(Show Context)
Citation Context ...ing-theory for the language of mathematics on the basis of the assumption that it is the elimination rules that determine meaning.” This is likely a reference to Martin-Löf’s work with Peter Hancock (=-=Hancock and Martin-Löf, 1975-=-), about which Martin-Löf wrote to Dummett shortly before the William James Lectures (Martin-Löf, 1976). In proof-theoretic terms, though, their realization of a pragmatist meaning-theory is different... |

2 | A computational interpretation of classical S4 modal logic - Shan - 2005 |

1 | Letter to Michael Dummett, dated 5 - Martin-Löf - 1976 |