Skip to main content

An Isbell duality theorem for type refinement systems


Any refinement system (= functor) has a fully faithful representation in the refinement system of presheaves, by interpreting types as relative slice categories, and refinement types as presheaves over those categories. Motivated by an analogy between side effects in programming and context effects in linear logic, we study logical aspects of this ‘positive’ (covariant) representation, as well as of an associated ‘negative’ (contravariant) representation. We establish several preservation properties for these representations, including a generalization of Day's embedding theorem for monoidal closed categories. Then, we establish that the positive and negative representations satisfy an Isbell-style duality. As corollaries, we derive two different formulas for the positive representation of a pushforward (inspired by the classical negative translations of proof theory), which express it either as the dual of a pullback of a dual or as the double dual of a pushforward. Besides explaining how these constructions on refinement systems generalize familiar category-theoretic ones (by viewing categories as special refinement systems), our main running examples involve representations of Hoare logic and linear sequent calculus.

Hide All
Andreoli J.-M. (1992). Logic programming with focussing proofs in Linear Logic. Journal of Logic and Computation 2 (3) 297347.
Atkey R., Johann P. and Ghani N. (2012). Refining inductive types. Logical Methods in Computer Science 8 (2:9).
Bénabou J. (2000). Distributors at work. Notes from a course at TU Darmstadt in June 2000, taken by Thomas Streicher.
Borceux F. (1994). Handbook of Categorical Algebra 2: Categories and Structures. Cambridge University Press.
Čubrić D., Dybjer P. and Scott P. (1998). Normalization and the Yoneda Embedding. Mathematical Structures in Computer Science 8 (2) 153192.
Day B.J. (1970). On closed categories of functors. Lecture Notes in Mathematics 137, 138.
Fiore M. (2002). Semantic analysis of normalisation by evaluation for typed Lambda calculus (Extended Abstract). In: Proceedings of the 4th International Conference on Principles and Practice of Declarative Programming 26–37.
Gentzen G. (1969). Untersuchungen über das logische Schliessen (Investigations into Logical Inference) , Ph.D. thesis, Universität Göttingen. English translation in Szabo M. (ed.) The Collected Papers of Gerhard Gentzen, Amsterdam: North Holland.
Ghani N., Johann P. and Fumex C. (2013). Indexed induction and coinduction, fibrationally. Logical Methods in Computer Science 9 (3:6) 131.
Girard J.-Y. (1987). Linear logic. Theoretical Computer Science 50 (1) 1102.
Gordon M. and Collavizza H. (2010). Forward with Hoare. In: Jones C., Roscoe A.W. and Wood K.R. (eds.) Reflections on the Work of C.A.R. Hoare, Springer.
Hasegawa M. (1999). Categorical glueing and logical predicates for models of linear logic. Technical Report RIMS-1223, Research Institute for Mathematical Sciences, Kyoto University.
Hermida C. (November 1993). Fibrations, Logical predicates and indeterminates, Ph.D. thesis, University of Edinburgh.
Hermida C. and Jacobs B. (1998). Structural induction and coinduction in a fibrational setting. Information and Computation 145 (2) 107152.
Hoare C.A.R. (1969). An axiomatic basis for computer programming. Communications of the ACM 12 (10).
Isbell J. (1966). Structure of categories. Bulletin of the American Mathematical Society 72 619655.
Jacobs B. (1999). Categorical Logic and Type Theory. Studies in Logic and the Foundations of Mathematics, vol. 141, North Holland.
Katsumata S.-Y. (2002). A semantic formulation of ⊤⊤-lifting and logical predicates for computational metalanguage. CSL 2005.
Kelly M. (1982). Basic Concepts in Enriched Category Theory. Cambridge University Press.
Lambek J. (1969). Deductive Systems and Categories II, Lecture Notes in Mathematics, vol. 87, Springer-Verlag.
Lawvere F.W. (1969). Adjointness in foundations. Dialectica 23 281296.
Lawvere F.W. (1970). Equality in hyperdoctrines and comprehension schema as an adjoint functor. In: Proceedings of the AMS Symposium on Pure Mathematics XVII 1–14.
Lawvere F.W. (2005). Taking categories seriously. Reprints in Theory and Applications of Categories 8 124.
Leinster T. (2004). Higher Operads, Higher Categories. London Mathematical Society Lecture Note Series, vol. 298, Cambridge University Press.
Mac Lane S. (1971). Categories for the Working Mathematician, Springer.
Maltsiniotis G. (2005). La théorie de l'homotopie de Grothendieck, Astérisque.
Melliès P.-A. (2012). Game semantics in string diagrams. In: Proceedings of the 27th Annual IEEE Conference on Logic in Computer Science 481–490.
Melliès P.-A. and Zeilberger N. (2013). Type refinement and monoidal closed bifibrations. Unpublished manuscript. arXiv:1310.0263.
Melliès P.-A. and Zeilberger N. (2015). Functors are type refinement systems. In: Proceedings of the 42nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming 3–16.
Melliès P.-A. and Zeilberger N. (2016). A bifibrational reconstruction of Lawvere's presheaf hyperdoctrine. In: Proceedings of the 31st Annual ACM/IEEE Symposium on Logic in Computer Science 555–564.
Nanevski A., Morrisett G. and Birkedal L. (2008). Hoare type theory, polymorphism and separation. Journal of Functional Programming 18 (5–6) 865911.
Pfenning F. (2008). Church and curry: Combining intrinsic and extrinsic typing. Studies in Logic 17 303338.
Thielecke H. (1997). Categorical structure of continuation passing style, Ph.D. thesis, University of Edinburgh.
Recommend this journal

Email your librarian or administrator to recommend adding this journal to your organisation's collection.

Mathematical Structures in Computer Science
  • ISSN: 0960-1295
  • EISSN: 1469-8072
  • URL: /core/journals/mathematical-structures-in-computer-science
Please enter your name
Please enter a valid email address
Who would you like to send this to? *


Full text views

Total number of HTML views: 0
Total number of PDF views: 10 *
Loading metrics...

Abstract views

Total abstract views: 79 *
Loading metrics...

* Views captured on Cambridge Core between 20th March 2017 - 21st November 2017. This data will be updated every 24 hours.