Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3167097acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
research-article

Formal proof of polynomial-time complexity with quasi-interpretations

Published: 08 January 2018 Publication History

Abstract

We present a Coq library that allows for readily proving that a function is computable in polynomial time. It is based on quasi-interpretations that, in combination with termination ordering, provide a characterisation of the class fp of functions computable in polynomial time. At the heart of this formalisation is a proof of soundness and extensional completeness. Compared to the original paper proof, we had to fill a lot of not so trivial details that were left to the reader and fix a few glitches. To demonstrate the usability of our library, we apply it to the modular exponentiation.

References

[1]
Reynald Affeldt, Miki Tanaka, and Nicolas Marti. 2007. Formal Proof of Provable Security by Game-Playing in a Proof Assistant. In Provable Security, First International Conference, ProvSec 2007, Wollongong, Australia, November 1-2, 2007, Proceedings (Lecture Notes in Computer Science), Willy Susilo, Joseph K. Liu, and Yi Mu (Eds.), Vol. 4784. Springer, 151–168.
[2]
Martin Avanzini, Georg Moser, and Michael Schaper. 2016. TcT: Tyrolean Complexity Tool. In Tools and Algorithms for the Construction and Analysis of Systems - 22nd International Conference, TACAS 2016, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2016, Eindhoven, The Netherlands, April 2-8, 2016, Proceedings (Lecture Notes in Computer Science), Marsha Chechik and Jean-François Raskin (Eds.), Vol. 9636. Springer, 407–423.
[3]
Patrick Baillot, Gilles Barthe, and Ugo Dal Lago. 2015. Implicit Computational Complexity of Subrecursive Definitions and Applications to Cryptographic Proofs. In Logic for Programming, Artificial Intelligence, and Reasoning - 20th International Conference, LPAR-20 2015, Suva, Fiji, November 24-28, 2015, Proceedings (Lecture Notes in Computer Science), Martin Davis, Ansgar Fehnker, Annabelle McIver, and Andrei Voronkov (Eds.), Vol. 9450. Springer, 203–218.
[4]
Patrick Baillot, Ugo Dal Lago, and Jean-Yves Moyen. 2012. On quasiinterpretations, blind abstractions and implicit complexity. Mathematical Structures in Computer Science 22, 4 (2012), 549–580.
[5]
Gilles Barthe, Juan Manuel Crespo, Benjamin Grégoire, César Kunz, and Santiago Zanella Béguelin. 2012. Computer-Aided Cryptographic Proofs. In Interactive Theorem Proving - Third International Conference, ITP 2012, Princeton, NJ, USA, August 13-15, 2012. Proceedings (Lecture Notes in Computer Science), Lennart Beringer and Amy P. Felty (Eds.), Vol. 7406. Springer, 11–27.
[6]
Gilles Barthe, Benjamin Grégoire, and Santiago Zanella Béguelin. 2009. Formal certification of code-based cryptographic proofs. In Proceedings of the 36th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2009, Savannah, GA, USA, January 21-23, 2009, Zhong Shao and Benjamin C. Pierce (Eds.). ACM, 90–101.
[7]
Gilles Barthe, Benjamin Grégoire, Yassine Lakhnech, and Santiago Zanella Béguelin. 2011. Beyond Provable Security Verifiable IND-CCA Security of OAEP. In Topics in Cryptology - CT-RSA 2011 - The Cryptographers’ Track at the RSA Conference 2011, San Francisco, CA, USA, February 14-18, 2011. Proceedings (Lecture Notes in Computer Science), Aggelos Kiayias (Ed.), Vol. 6558. Springer, 180–196.
[8]
Stephen Bellantoni and Stephen A. Cook. 1992. A New RecursionTheoretic Characterization of the Polytime Functions. Computational Complexity 2 (1992), 97–110.
[9]
Guillaume Bonfante, Jean-Yves Marion, and Jean-Yves Moyen. 2011. Quasi-interpretations a way to control resources. Theor. Comput. Sci. 412, 25 (2011), 2776–2796.
[10]
Alan Cobham. 1965. The Intrinsic Computational Difficulty of Functions. In Logic, Methodology and Philosophy of Science: Proceedings of the 1964 International Congress (Studies in Logic and the Foundations of Mathematics), Yehoshua Bar-Hillel (Ed.). North-Holland Publishing, 24–30.
[11]
Loïc Colson. 1998. The Logic in Computer Science Column Functions versus Algorithms. Bulletin of the EATCS 65 (1998), 98–117.
[12]
Judicaël Courant, Marion Daubignard, Cristian Ene, Pascal Lafourcade, and Yassine Lakhnech. 2011. Automated Proofs for Asymmetric Encryption. J. Autom. Reasoning 46, 3-4 (2011), 261–291.
[13]
Jerry den Hartog. 2008. Towards mechanized correctness proofs for cryptographic algorithms: Axiomatization of a probabilistic Hoare style logic. Sci. Comput. Program. 74, 1-2 (2008), 52–63.
[14]
Nachum Dershowitz. 1982. Orderings for Term-Rewriting Systems. Theor. Comput. Sci. 17 (1982), 279–301.
[15]
Hugo Férée, Samuel Hym, Micaela Mayero, Jean-Yves Moyen, and David Nowak. 2017. A detailed proof of the P-criterion. (Oct. 2017). http://www.cristal.univ-lille.fr/~nowakd/cecoa/
[16]
Jürgen Giesl, Cornelius Aschermann, Marc Brockschmidt, Fabian Emmes, Florian Frohn, Carsten Fuhs, Jera Hensel, Carsten Otto, Martin Plücker, Peter Schneider-Kamp, Thomas Ströder, Stephanie Swiderski, and René Thiemann. 2017. Analyzing Program Termination and Complexity Automatically with AProVE. J. Autom. Reasoning 58, 1 (2017), 3–31.
[17]
Oded Goldreich. 2001. The Foundations of Cryptography - Volume 1, Basic Techniques. Cambridge University Press.
[18]
Sylvain Heraud and David Nowak. 2011. A Formalization of Polytime Functions. In Interactive Theorem Proving - Second International Conference, ITP 2011, Berg en Dal, The Netherlands, August 22-25, 2011. Proceedings (Lecture Notes in Computer Science), Marko C. J. D. van Eekelen, Herman Geuvers, Julien Schmaltz, and Freek Wiedijk (Eds.), Vol. 6898. Springer, 119–134.
[19]
Dieter Hofbauer. 1992. Termination Proofs by Multiset Path Orderings Imply Primitive Recursive Derivation Lengths. Theor. Comput. Sci. 105, 1 (1992), 129–140.
[20]
Jan Hoffmann, Ankush Das, and Shu-Chun Weng. 2017. Towards automatic resource bound analysis for OCaml. In Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages, POPL 2017, Paris, France, January 18-20, 2017, Giuseppe Castagna and Andrew D. Gordon (Eds.). ACM, 359–373.
[21]
Martin Hofmann. 2000. Safe recursion with higher types and BCK-algebra. Ann. Pure Appl. Logic 104, 1-3 (2000), 113–166.
[22]
Russell Impagliazzo and Bruce M. Kapron. 2006. Logics for reasoning about cryptographic constructions. J. Comput. Syst. Sci. 72, 2 (2006), 286–320.
[23]
Jonathan Katz and Yehuda Lindell. 2014. Introduction to Modern Cryptography, Second Edition. CRC Press.
[24]
Jean-Yves Marion. 2003. Analysing the implicit complexity of programs. Inf. Comput. 183, 1 (2003), 2–18.
[25]
John C. Mitchell, Ajith Ramanathan, Andre Scedrov, and Vanessa Teague. 2006. A probabilistic polynomial-time process calculus for the analysis of cryptographic protocols. Theor. Comput. Sci. 353, 1-3 (2006), 118–164.
[26]
J.-Y. Moyen and J. G. Simonsen. 2016. More intensional versions of Rice’s Theorem. In Developments in Implicit Computational Complexity, DICE’16, D. Mazza (Ed.). Eindhoven, Netherlands.
[27]
David Nowak. 2007. A Framework for Game-Based Security Proofs. In Information and Communications Security, 9th International Conference, ICICS 2007, Zhengzhou, China, December 12-15, 2007, Proceedings (Lecture Notes in Computer Science), Sihan Qing, Hideki Imai, and Guilin Wang (Eds.), Vol. 4861. Springer, 319–333.
[28]
David Nowak. 2008. On Formal Verification of Arithmetic-Based Cryptographic Primitives. In Information Security and Cryptology -ICISC 2008, 11th International Conference, Seoul, Korea, December 3-5, 2008, Revised Selected Papers (Lecture Notes in Computer Science), Pil Joong Lee and Jung Hee Cheon (Eds.), Vol. 5461. Springer, 368–382.
[29]
David Nowak and Yu Zhang. 2015. Formal security proofs with minimal fuss: Implicit computational complexity at work. Inf. Comput. 241 (2015), 96–113.
[30]
H. E. Rose. 1984. Subrecursion: Functions and Hierarchies. Oxford University Press.
[31]
Johannes Waldmann. 2015. Matrix Interpretations on Polyhedral Domains. In 26th International Conference on Rewriting Techniques and Applications, RTA 2015, June 29 to July 1, 2015, Warsaw, Poland (LIPIcs), Maribel Fernández (Ed.), Vol. 36. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, 318–333.
[32]
Harald Zankl and Martin Korp. 2014. Modular Complexity Analysis for Term Rewriting. Logical Methods in Computer Science 10, 1 (2014).
[33]
Yu Zhang. 2010. The computational SLR: a logic for reasoning about computational indistinguishability. Mathematical Structures in Computer Science 20, 5 (2010), 951–975.

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
CPP 2018: Proceedings of the 7th ACM SIGPLAN International Conference on Certified Programs and Proofs
January 2018
306 pages
ISBN:9781450355865
DOI:10.1145/3176245
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 08 January 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Coq formal proof
  2. implicit complexity
  3. polynomial time

Qualifiers

  • Research-article

Funding Sources

  • EPSRC
  • Marie Sklodowska--Curie action ``Walgo', program H2020-MSCA-IF-2014

Conference

CPP '18
Sponsor:
CPP '18: Certified Proofs and Programs
January 8 - 9, 2018
CA, Los Angeles, USA

Acceptance Rates

Overall Acceptance Rate 18 of 26 submissions, 69%

Upcoming Conference

POPL '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 89
    Total Downloads
  • Downloads (Last 12 months)5
  • Downloads (Last 6 weeks)1
Reflects downloads up to 26 Sep 2024

Other Metrics

Citations

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media