skip to main content
10.1145/888251.888276acmconferencesArticle/Chapter ViewAbstractPublication PagesppdpConference Proceedingsconference-collections
Article

Foundational proof checkers with small witnesses

Published:27 August 2003Publication History

ABSTRACT

Proof checkers for proof-carrying code (and similar systems) can suffer from two problems: huge proof witnesses and untrustworthy proof rules. No previous design has addressed both of these problems simultaneously. We show the theory, design, and implementation of a proof-checker that permits small proof witnesses and machine-checkable proofs of the soundness of the system.

References

  1. Amal J. Ahmed, Andrew W. Appel, and Roberto Virga. A stratified semantics of general references embeddable in higher-order logic. In In Proceedings of the 17th Annual IEEE Symposium on Logic in Computer Science (LICS 2002), July 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Andrew W. Appel. Foundational proof-carrying code. In Symposium on Logic in Computer Science (LICS '01), pages 247--258. IEEE, 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Andrew W. Appel and Edward W. Felten. Proof-carrying authentication. In 6th ACM Conference on Computer and Communications Security. ACM Press, November 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Andrew W. Appel and Amy P. Felty. A semantic model of types and machine instructions for proof-carrying code. In POPL '00: The 27th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 243--253, New York, January 2000. ACM Press.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Andrew W. Appel and David McAllester. An indexed model of recursive types for foundational proof-carrying code. ACM Trans. on Programming Languages and Systems, 23(5):657--683, Sept. 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Andrew W. Appel, Neophytos Michael, Aaron Stump, and Roberto Virga. A trustworthy proof checker. In Iliano Cervesato, editor, Foundations of Computer Security workshop, pages 37--48. DIKU, July 2002.]]Google ScholarGoogle Scholar
  7. Juan Chen, Dinghao Wu, Andrew~W. Appel, and Hai Fang. A provably sound TAL for back-end optimization. In PLDI '03: Proceedings of the 2003 ACM SIGPLAN Conference on Programming Language Design and Implementation, New York, June 2003. ACM Press.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Robert Harper, Furio Honsell, and Gordon Plotkin. A framework for defining logics. Journal of the ACM, 40(1):143--184, January 1993.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Christopher League, Zhong Shao, and Valery Trifonov. Precision in practice: A type-preserving Java compiler. In 12th International Conference on Compiler Construction (CC'03), page to appear, April 2003.]]Google ScholarGoogle Scholar
  10. George Necula. Proof-carrying code. In 24th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 106--119, New York, January 1997. ACM Press.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. George C. Necula and Peter Lee. Efficient representation and validation of proofs. In In Proceedings of the 13th Annual Symposium on Logic in Computer Science, 1998.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. George C. Necula and S. P. Rahul. Oracle-based checking of untrusted software. In POPL 2001: The 28th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 142--154. ACM Press, January 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Frank Pfenning. Logic programming in the LF logical framework. In Gérard Huet and Gordon Plotkin, editors, Logical Frameworks, pages 149--181. Cambridge University Press, 1991.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Frank Pfenning. Elf: A meta-language for deductive systems. In A. Bundy, editor, Proceedings of the 12th International Conference on Automated Deduction, pages 811--815, Nancy, France, June 1994. Springer-Verlag LNAI 814.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Frank Pfenning and Carsten Schürmann. System description: Twelf --- a meta-logical framework for deductive systems. In H. Ganzinger, editor, Proceedings of the 16th International Conference on Automated Deduction (CADE-16), pages 202--206, Trento, Italy, July 1999. Springer-Verlag. LNAI 1632.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Frank Pfenning and Carsten Schürmann. Twelf User's Guide (Version 1.4). Carnegie-Mellon Univ., 2002.]]Google ScholarGoogle Scholar
  17. Robert Pollack. How to believe a machine-checked proof. In G. Sambin and J. Smith, editors, Twenty Five Years of Constructive Type Theory. Oxford University Press, 1998.]]Google ScholarGoogle Scholar
  18. David A. Schmidt. Denotational Semantics: A Methodology for Language Development. Allyn and Bacon, Boston, 1986.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Gang Tan, Kedar Swadi, Dinghao Wu, and Andrew W. Appel. Construction of a semantic model for a typed assembly language. March 2003.]]Google ScholarGoogle Scholar

Index Terms

  1. Foundational proof checkers with small witnesses

                Recommendations

                Comments

                Login options

                Check if you have access through your login credentials or your institution to get full access on this article.

                Sign in
                • Published in

                  cover image ACM Conferences
                  PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programming
                  August 2003
                  292 pages
                  ISBN:1581137052
                  DOI:10.1145/888251

                  Copyright © 2003 ACM

                  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 ACM 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]

                  Publisher

                  Association for Computing Machinery

                  New York, NY, United States

                  Publication History

                  • Published: 27 August 2003

                  Permissions

                  Request permissions about this article.

                  Request Permissions

                  Check for updates

                  Qualifiers

                  • Article

                  Acceptance Rates

                  PPDP '03 Paper Acceptance Rate24of48submissions,50%Overall Acceptance Rate230of486submissions,47%

                PDF Format

                View or Download as a PDF file.

                PDF

                eReader

                View online with eReader.

                eReader