Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3414080.3414094acmotherconferencesArticle/Chapter ViewAbstractPublication PagesppdpConference Proceedingsconference-collections
research-article

Proof-Carrying Plans: a Resource Logic for AI Planning

Published: 21 September 2020 Publication History

Abstract

Planning languages have been used successfully in AI for several decades. Recent trends in AI verification and Explainable AI have raised the question of whether AI planning techniques can be verified. In this paper, we present a novel resource logic, the Proof Carrying Plans (PCP) logic that can be used to verify plans produced by AI planners. The PCP logic takes inspiration from existing resource logics (such as Linear logic and Separation logic) as well as Hoare logic when it comes to modelling states and resource-aware plan execution. It also capitalises on the Curry-Howard approach to logics, in its treatment of plans as functions and plan pre- and post-conditions as types. This paper presents two main results. From the theoretical perspective, we show that the PCP logic is sound relative to the standard possible world semantics used in AI planning. From the practical perspective, we present a complete Agda formalisation of the PCP logic and of its soundness proof. Moreover, we showcase the Curry-Howard, or functional, value of this implementation by supplementing it with the library that parses AI plans into Agda’s proofs automatically. We provide evaluation of this library and the resulting Agda functions. Keywords: AI planning, Verification, Resource Logics, Theorem Proving, Dependent Types.

References

[1]
Mohammad Abdulaziz, Charles Gretton, and Michael Norrish. 2019. A Verified Compositional Algorithm for AI Planning. In 10th International Conference on Interactive Theorem Proving (ITP 2019). Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik.
[2]
aibasel. 2020. Downward Benchmarks. https://github.com/aibasel/downward-benchmarks
[3]
David W. Albrecht, John N. Crossley, and John S. Jeavons. 1997. New Curry-Howard Terms for Full Linear Logic. Theor. Comput. Sci. 185, 2 (1997), 217–235.
[4]
Saddek Bensalem, Klaus Havelund, and Andrea Orlandini. 2014. Verification and validation meet planning and scheduling.
[5]
Josh Berdine, Cristiano Calcagno, and Peter W O’hearn. 2005. Symbolic execution with separation logic. In Asian Symposium on Programming Languages and Systems. Springer, 52–68.
[6]
Cristiano Calcagno, Dino Distefano, Jérémy Dubreil, Dominik Gabi, Pieter Hooimeijer, Martino Luca, Peter O’Hearn, Irene Papakonstantinou, Jim Purbrick, and Dulma Rodriguez. 2015. Moving fast with software verification. In NASA Formal Methods Symposium. Springer, 3–11.
[7]
Iliano Cervesato and Frank Pfenning. 2002. A Linear Logical Framework. Inf. Comput. 179, 1 (2002), 19–75.
[8]
Lukáš Chrpa, Pavel Surynek, and Jiří Vyskočil. 2007. Encoding of planning problems and their optimizations in linear logic. In Applications of Declarative Programming and Knowledge Management. Springer, 54–68.
[9]
Daniel C Dennett. 2006. Cognitive wheels: The frame problem of AI. (2006).
[10]
Lucas Dixon, Alan Smaill, and Tracy Tsang. 2009. Plans, Actions and Dialogues Using Linear Logic. Journal of Logic, Language and Information 18, 2 (2009), 251–289.
[11]
George W Ernst and Allen Newell. 1969. GPS: A case study in generality and problem solving. Academic Pr.
[12]
Richard Fikes and Nils J. Nilsson. 1971. STRIPS: A New Approach to the Application of Theorem Proving to Problem Solving. Artificial Intelligence 2, 3/4 (1971), 189–208.
[13]
Kathleen Fisher, John Launchbury, and Raymond Richards. 2017. The HACMS program: using formal methods to eliminate exploitable bugs. Phil. Trans. Royal Society(2017). Issue A 375.
[14]
Maria Fox and Derek Long. 2003. PDDL2. 1: An extension to PDDL for expressing temporal planning domains. Journal of artificial intelligence research 20 (2003), 61–124.
[15]
Peng Fu and Ekaterina Komendantskaya. 2017. Operational semantics of resolution and productivity in Horn clause logic. Formal Asp. Comput. 29, 3 (2017), 453–474.
[16]
Peng Fu, Ekaterina Komendantskaya, Tom Schrijvers, and Andrew Pond. 2016. Proof Relevant Corecursive Resolution. In Functional and Logic Programming - 13th International Symposium, FLOPS 2016, Kochi, Japan, March 4-6, 2016, Proceedings(Lecture Notes in Computer Science), Vol. 9613. Springer, 126–143.
[17]
Cordell Green. 1969. Theorem proving by resolution as a basis for question-answering systems. Machine intelligence 4(1969), 183–205.
[18]
Patrick J Hayes. 1981. The frame problem and related problems in artificial intelligence. In Readings in Artificial Intelligence. Elsevier, 223–230.
[19]
James A Hendler, Austin Tate, and Mark Drummond. 1990. AI planning: Systems and techniques. AI magazine 11, 2 (1990), 61–61.
[20]
A. Hill. 2020. PCP Logic: Agda formalisation. https://github.com/PDTypes/PCPLogic
[21]
Charles Antony Richard Hoare. 1969. An axiomatic basis for computer programming. Commun. ACM 12, 10 (1969), 576–580.
[22]
Joshua S. Hodas and Dale Miller. 1994. Logic Programming in a Fragment of Intuitionistic Linear Logic. Inf. Comput. 110, 2 (1994), 327–365.
[23]
Richard Howey, Derek Long, and Maria Fox. 2004. VAL: Automatic plan validation, continuous effects and mixed initiative planning using PDDL. In 16th IEEE International Conference on Tools with Artificial Intelligence. IEEE, 294–301.
[24]
Samin S Ishtiaq and Peter W O’Hearn. 2001. BI as an assertion language for mutable data structures. In Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on Principles of programming languages. 14–26.
[25]
Eric Jacopin. 1993. Classical AI planning as theorem proving: The case of a fragment of linear logic. In AAAI Fall Symposium on Automated Deduction in Nonstandard Logics. AAAI Press Publications Palo Alto, CA, 62–66.
[26]
Xavier Leroy 2012. The CompCert verified compiler. Documentation and user’s manual. INRIA Paris-Rocquencourt 53 (2012).
[27]
Derek Long, Maria Fox, and Richard Howey. 2009. Planning domains and plans: validation, verification and analysis. In Proc. Workshop on V&V of Planning and Scheduling Systems.
[28]
John McCarthy and Patrick J Hayes. 1981. Some philosophical problems from the standpoint of artificial intelligence. In Readings in artificial intelligence. Elsevier, 431–450.
[29]
Drew McDermott, Malik Ghallab, Adele Howe, Craig Knoblock, Ashwin Ram, Manuela Veloso, Daniel Weld, and David Wilkins. 1998. PDDL-the planning domain definition language. (1998).
[30]
Aleksandar Nanevski. [n.d.]. Separation Logic and Concurrency.
[31]
Aleks Nanevski. [n.d.]. Separation Logic and Concurrency (OPLSS 2016) Draft of July 22, 2016. ([n. d.]).
[32]
Aleksandar Nanevski, Anindya Banerjee, and Deepak Garg. 2013. Dependent type theory for verification of information flow and access control policies. ACM Transactions on Programming Languages and Systems (TOPLAS) 35, 2(2013), 1–41.
[33]
Aleksandar Nanevski, Greg Morrisett, and Lars Birkedal. 2006. Polymorphism and separation in hoare type theory. In Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming. 62–73.
[34]
George C. Necula. 2011. Proof-Carrying Code. In Encyclopedia of Cryptography and Security, 2nd Ed, Henk C. A. van Tilborg and Sushil Jajodia (Eds.). Springer, 984–986.
[35]
Peter O’Hearn, John Reynolds, and Hongseok Yang. 2001. Local reasoning about programs that alter data structures. In International Workshop on Computer Science Logic. Springer, 1–19.
[36]
Peter W O’hearn. 2007. Resources, concurrency, and local reasoning. Theoretical computer science 375, 1-3 (2007), 271–307.
[37]
J Scott Penberthy, Daniel S Weld, 1992. UCPOP: A Sound, Complete, Partial Order Planner for ADL.Kr 92(1992), 103–114.
[38]
John Penix, Charles Pecheur, and Klaus Havelund. 1998. Using model checking to validate AI planner domain models. In Proceedings of the 23rd Annual Software Engineering Workshop, NASA Goddard.
[39]
Jeff Polakow and Frank Pfenning. 2001. Ordered linear logic and applications. Carnegie Mellon University Pittsburgh.
[40]
Nadia Polikarpova and Ilya Sergey. 2019. Structuring the synthesis of heap-manipulating programs. Proceedings of the ACM on Programming Languages 3, POPL(2019), 72.
[41]
David Pym. 2019. Resource semantics: logic as a modelling technology. ACM SIGLOG News 6, 2 (2019), 5–41.
[42]
John C Reynolds. 2002. Separation logic: A logic for shared mutable data structures. In Proceedings 17th Annual IEEE Symposium on Logic in Computer Science. IEEE, 55–74.
[43]
Albert Rizaldi, Fabian Immler, Bastian Schürmann, and Matthias Althoff. 2018. A formally verified motion planner for autonomous vehicles. In International Symposium on Automated Technology for Verification and Analysis. Springer, 75–90.
[44]
Anders Schack-Nielsen and Carsten Schürmann. 2008. Celf - A Logical Framework for Deductive and Concurrent Systems (System Description). In Automated Reasoning, 4th International Joint Conference, IJCAR 2008, Sydney, Australia, August 12-15, 2008, Proceedings(Lecture Notes in Computer Science), Alessandro Armando, Peter Baumgartner, and Gilles Dowek(Eds.), Vol. 5195. Springer, 320–326.
[45]
Christopher Schwaab, Ekaterina Komendantskaya, Alasdair Hill, František Farka, Ronald PA Petrick, Joe Wells, and Kevin Hammond. 2019. Proof-Carrying Plans. In International Symposium on Practical Aspects of Declarative Languages. Springer, 204–220.
[46]
C. Scwaab, A. Hill, F. Farka, and E. Komendantskaya. 2018. Proof-Carrying plans: Agda implementation and examples. https://github.com/PDTypes
[47]
Mark Steedman. 2002. Plans, affordances, and combinatory grammar. Linguistics and Philosophy 25, 5-6 (2002), 723–753.
[48]
David E Wilkins. 2014. Practical planning: extending the classical AI planning paradigm. Elsevier.

Cited By

View all
  • (2021)Actions you can handle: dependent types for AI plansProceedings of the 6th ACM SIGPLAN International Workshop on Type-Driven Development10.1145/3471875.3472990(1-13)Online publication date: 18-Aug-2021
  1. Proof-Carrying Plans: a Resource Logic for AI Planning

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Other conferences
    PPDP '20: Proceedings of the 22nd International Symposium on Principles and Practice of Declarative Programming
    September 2020
    179 pages
    ISBN:9781450388214
    DOI:10.1145/3414080
    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].

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 21 September 2020

    Permissions

    Request permissions for this article.

    Check for updates

    Qualifiers

    • Research-article
    • Research
    • Refereed limited

    Funding Sources

    Conference

    PPDP '20

    Acceptance Rates

    Overall Acceptance Rate 230 of 486 submissions, 47%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)6
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 22 Sep 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2021)Actions you can handle: dependent types for AI plansProceedings of the 6th ACM SIGPLAN International Workshop on Type-Driven Development10.1145/3471875.3472990(1-13)Online publication date: 18-Aug-2021

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    HTML Format

    View this article in HTML Format.

    HTML Format

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media