Dependently Typed Programming with Domain-Specific Logics ( Thesis Proposal DRAFT )

We propose a thesis defending the following statement: The logical notions of polarity and focusing provide a foundation for dependently typed programming with domain-specific logics, with applications to certified software and mechanized metatheory.

[1]  Yves Bertot,et al.  Interactive Theorem Proving and Program Development: Coq'Art The Calculus of Inductive Constructions , 2010 .

[2]  Brigitte Pientka,et al.  Case Analysis of Higher-Order Data , 2009, Electron. Notes Theor. Comput. Sci..

[3]  Limin Jia,et al.  AURA: a programming language for authorization and audit , 2008, ICFP.

[4]  Noam Zeilberger,et al.  Focusing on Binding and Computation , 2008, 2008 23rd Annual IEEE Symposium on Logic in Computer Science.

[5]  Carsten Schürmann,et al.  Structural Logical Relations , 2008, 2008 23rd Annual IEEE Symposium on Logic in Computer Science.

[6]  Limin Jia,et al.  Evidence-Based Audit , 2008, 2008 21st IEEE Computer Security Foundations Symposium.

[7]  Frank Pfenning,et al.  Contextual modal type theory , 2008, TOCL.

[8]  Noam Zeilberger On the unity of duality , 2008, Ann. Pure Appl. Log..

[9]  Carsten Schürmann,et al.  Practical Programming with Higher-Order Encodings and Dependent Types , 2008, ESOP.

[10]  Brigitte Pientka A type-theoretic foundation for programming with higher-order abstract syntax and first-class substitutions , 2008, POPL '08.

[11]  Arthur Charguéraud,et al.  Engineering formal metatheory , 2008, POPL '08.

[12]  Noam Zeilberger,et al.  Focusing and higher-order abstract syntax , 2008, POPL '08.

[13]  Christian Urban,et al.  Nominal Techniques in Isabelle/HOL , 2005, Journal of Automated Reasoning.

[14]  Aleksandar Nanevski,et al.  Ynot : Reasoning with the Awkward Squad , 2008 .

[15]  Frank Pfenning,et al.  A Bidirectional Refinement Type System for LF , 2007, LFMTP@CADE.

[16]  Amy P. Felty,et al.  Two-Level Hybrid: A System for Reasoning Using Higher-Order Abstract Syntax , 2008, Electron. Notes Theor. Comput. Sci..

[17]  Matthieu Sozeau Program-ing finger trees in Coq , 2007, ICFP '07.

[18]  Dale Miller,et al.  Focusing and Polarization in Intuitionistic Logic , 2007, CSL.

[19]  François Pottier,et al.  Static Name Control for FreshML , 2007, 22nd Annual IEEE Symposium on Logic in Computer Science (LICS 2007).

[20]  Robert Harper,et al.  A language for access control , 2007 .

[21]  U. Norell,et al.  Towards a practical programming language based on dependent type theory , 2007 .

[22]  Xin Yu,et al.  Mechanized meta-reasoning using a hybrid HOAS/de bruijn representation and reflection , 2006, ICFP '06.

[23]  Lars Birkedal,et al.  Polymorphism and separation in hoare type theory , 2006, ICFP '06.

[24]  Simon L. Peyton Jones,et al.  Simple unification-based type inference for GADTs , 2006, ICFP '06.

[25]  Frank Pfenning,et al.  Non-interference in constructive authorization logic , 2006, 19th IEEE Computer Security Foundations Workshop (CSFW'06).

[26]  Martin Hofmann,et al.  Consistency of the theory of contexts , 2006, J. Funct. Program..

[27]  Amy P. Felty,et al.  Combining de Bruijn Indices and Higher-Order Abstract Syntax in Coq , 2006, TYPES.

[28]  Cormac Flanagan,et al.  Hybrid type checking , 2006, POPL '06.

[29]  Aaron Stump,et al.  A language-based approach to functionally correct imperative programming , 2005, ICFP '05.

[30]  Chiyan Chen,et al.  Combining programming with theorem proving , 2005, ICFP '05.

[31]  Shane Markstrum,et al.  Semantic type qualifiers , 2005, PLDI '05.

[32]  Frank Pfenning,et al.  On equivalence and canonical forms in the LF type theory , 2001, TOCL.

[33]  Susmit Sarkar,et al.  A Cost-Effective Foundational Certified Code System , 2005 .

[34]  Tim Sheard,et al.  WHAT IS A PROOF , 2005 .

[35]  Frank Pfenning,et al.  Tridirectional typechecking , 2004, POPL.

[36]  Andrew M. Pitts,et al.  FreshML: programming with binders made simple , 2003, ICFP '03.

[37]  Dale Miller,et al.  A proof theory for generic judgments: an extended abstract , 2003, 18th Annual IEEE Symposium of Logic in Computer Science, 2003. Proceedings..

[38]  D. Walker,et al.  A concurrent logical framework I: Judgments and properties , 2003 .

[39]  Gang Chen,et al.  Guarded recursive datatype constructors , 2003, POPL '03.

[40]  Zhong Shao,et al.  A type system for certi .ed binaries , 2002, Foundations of Intrusion Tolerant Systems, 2003 [Organically Assured and Survivable Information Systems].

[41]  Roy L. Crole,et al.  Combining Higher Order Abstract Syntax with Tactical Theorem Proving and (Co)Induction , 2002, TPHOLs.

[42]  Paul Blain Levy,et al.  Call-by-push-value , 2022, ACM SIGLOG News.

[43]  Jean-Yves Girard,et al.  Locus Solum: From the rules of logic to the logic of rules , 2001, Mathematical Structures in Computer Science.

[44]  Peter Selinger,et al.  Control categories and duality: on the categorical semantics of the lambda-mu calculus , 2001, Mathematical Structures in Computer Science.

[45]  Olivier Laurent,et al.  Étude de la polarisation en logique , 2001 .

[46]  Hugo Herbelin,et al.  The duality of computation , 2000, ICFP '00.

[47]  Andrew M. Pitts,et al.  A Metalanguage for Programming with Bound Names Modulo Renaming , 2000, MPC.

[48]  Christine Paulin-Mohring,et al.  The coq proof assistant reference manual , 2000 .

[49]  Thorsten Altenkirch,et al.  Monadic Presentations of Lambda Terms Using Generalized Inductive Types , 1999, CSL.

[50]  Frank Pfenning,et al.  System Description: Twelf - A Meta-Logical Framework for Deductive Systems , 1999, CADE.

[51]  Martin Hofmann Semantical analysis of higher-order abstract syntax , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[52]  Andrew M. Pitts,et al.  A new approach to abstract syntax involving binders , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[53]  Gordon D. Plotkin,et al.  Abstract syntax and variable binding , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[54]  Richard S. Bird,et al.  de Bruijn notation as a nested datatype , 1999, Journal of Functional Programming.

[55]  Lennart Augustsson,et al.  Cayenne—a language with dependent types , 1998, ICFP '98.

[56]  Frank Pfenning,et al.  Eliminating array bound checking through dependent types , 1998, PLDI.

[57]  Christoph Zenger,et al.  Indizierte Typen , 1998 .

[58]  Frank Pfenning,et al.  Primitive recursion for higher-order abstract syntax , 1997, Theor. Comput. Sci..

[59]  Amy P. Felty,et al.  Higher-Order Abstract Syntax in Coq , 1995, TLCA.

[60]  James Hook,et al.  Substitution: A Formal Methods Case Study Using Monads and Transformations , 1994, Sci. Comput. Program..

[61]  Jean-Yves Girard,et al.  On the Unity of Logic , 1993, Ann. Pure Appl. Log..

[62]  Furio Honsell,et al.  A framework for defining logics , 1993, JACM.

[63]  JEAN-MARC ANDREOLI,et al.  Logic Programming with Focusing Proofs in Linear Logic , 1992, J. Log. Comput..

[64]  Douglas J. Howe On computational open-endedness in Martin-Lof's type theory , 1991, [1991] Proceedings Sixth Annual IEEE Symposium on Logic in Computer Science.

[65]  S. Shelah,et al.  Annals of Pure and Applied Logic , 1991 .

[66]  Andrzej Filinski Declarative Continuations and Categorical Duality , 1989 .

[67]  Rance Cleaveland,et al.  Implementing mathematics with the Nuprl proof development system , 1986 .

[68]  P. Medawar A view from the left , 1984, Nature.

[69]  P. Martin-Löf Hauptsatz for the Intuitionistic Theory of Iterated Inductive Definitions , 1971 .