Skip to main content

HOCore in Coq

  • Conference paper
  • First Online:
Interactive Theorem Proving (ITP 2015)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9236))

Included in the following conference series:

Abstract

We consider a recent publication on higher-order process calculi [12] and describe how its main results have been formalized in the Coq proof assistant. We highlight a number of important technical issues that we have uncovered in the original publication. We believe that these issues are not unique to the paper under consideration and require particular care to be avoided.

This work has been partially supported by the ANR project 2010-BLAN-0305 PiCoq, as well as by the Serbian Ministry of Education, Science and Technological Development, through projects III44006 and ON174026.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    http://www.irisa.fr/celtique/aschmitt/research/hocore/.

  2. 2.

    http://www.chargueraud.org/softs/tlc/.

  3. 3.

    We also refer to an output process as an output message or, simply, a message.

  4. 4.

    Here we have a slight overloading of terminology w.r.t. free and bound variables—while local variables are intended to model the bound variables of the object language, they can still appear free with respect to our adjusted syntax. For example, \(x\) is free in the process Lvar x, and we do not consider this process to be well-formed.

  5. 5.

    Variables that appear in an execution context, i.e., those not “guarded” by an input.

References

  1. Aydemir, B., Charguéraud, A., Pierce, B.C., Pollack, R., Weirich, S.: Engineering formal metatheory. In: ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), pp. 3–15. ACM, Jan 2008

    Google Scholar 

  2. Bengtson, J., Parrow, J.: Psi-calculi in Isabelle. In: Berghofer, S., Nipkow, T., Urban, C., Wenzel, M. (eds.) TPHOLs 2009. LNCS, vol. 5674, pp. 99–114. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  3. Boulier, S., Schmitt, A.: Formalisation de HOCore en Coq. In: Actes des 23èmes Journées Francophones des Langages Applicatifs, Jan 2012

    Google Scholar 

  4. Cao, Z.: More on bisimulations for higher order \(\pi \)-calculus. In: Aceto, L., Ingólfsdóttir, A. (eds.) FOSSACS 2006. LNCS, vol. 3921, pp. 63–78. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  5. Charguéraud, A.: The locally nameless representation. J. Autom. Reasoning, 1–46 (2011). doi:10.1007/s10817-011-9225-2

  6. Escarrá, M., Maksimović, P., Schmitt, A.: HOCore in Coq. In: Actes des 26èmes Journées Francophones des Langages Applicatifs, Jan 2015

    Google Scholar 

  7. Gimenez, E.: A Tutorial on Recursive Types in Coq. Technical report No 0221 (1998)

    Google Scholar 

  8. Hirschkoff, D.: A full formalisation of pi-calculus theory in the calculus of constructions. In: Gunter, Elsa L., Felty, Amy P. (eds.) TPHOLs 1997. LNCS, vol. 1275, pp. 153–169. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  9. Honsell, F., Miculan, M., Scagnetto, I.: pi-calculus in (co)inductive-type theory. Theoret. Comput. Sci. 253(2), 239–285 (2000)

    Article  MathSciNet  Google Scholar 

  10. Huffman, B., Urban, C.: A new foundation for nominal Isabelle. In: Kaufmann, M., Paulson, L.C. (eds.) ITP 2010. LNCS, vol. 6172, pp. 35–50. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  11. Jeffrey, A., Rathke, J.: Contextual equivalence for higher-order Pi-calculus revisited. Log. Meth. Comput. Sci. 1(1), 1–22 (2005)

    Article  MathSciNet  Google Scholar 

  12. Lanese, I., Pérez, J.A., Sangiorgi, D., Schmitt, A.: On the expressiveness and decidability of higher-order process calculi. Inf. Comput. 209(2), 198–226 (2011)

    Article  MATH  Google Scholar 

  13. The Coq development team. Coq reference manual (2014). version. 8.4

    Google Scholar 

  14. Milner, R., Moller, F.: Unique decomposition of processes. Theor. Comput. Sci. 107(2), 357–363 (1993)

    Article  MATH  MathSciNet  Google Scholar 

  15. Parrow, J., Borgström, J., Raabjerg, P., Åman Pohjola, J.: Higher-order psi-calculi. Math. Struct. Comput. Sci. FirstView 3, 1–37 2014

    Google Scholar 

  16. Pollack, R., Sato, M., Ricciotti, W.: A canonical locally named representation of binding. J. Autom. Reasoning, 1–23, May 2011. doi:10.1007/s10817-011-9229-y

  17. Pouillard, N., Pottier, F.: A fresh look at programming with names and binders. In: Proceedings of the Fifteenth ACM SIGPLAN International Conference on Functional Programming (ICFP 2010), pp. 217–228, Sept 2010

    Google Scholar 

  18. Sangiorgi, D.: Expressing Mobility in Process Algebras: First-Order and Higher-Order Paradigms. Ph.D. thesis, Univ. of Edinburgh, Dept. of Comp. Sci. (1992)

    Google Scholar 

  19. Sangiorgi, D.: Bisimulation for higher-order process calculi. Inf. Comput. 131(2), 141–178 (1996)

    Article  MATH  MathSciNet  Google Scholar 

  20. Sangiorgi, D.: \(\pi \)-calculus, internal mobility and agent-passing calculi. Theor. Comput. Sci. 167(2), 235–274 (1996)

    Article  MATH  MathSciNet  Google Scholar 

  21. Thomsen, B.: A calculus of higher order communicating systems. In: Proceedings of POPL 1989, pp. 143–154. ACM Press (1989)

    Google Scholar 

  22. Thomsen, B.: Calculi for Higher Order Communicating Systems. Ph.D. thesis, Imperial College (1990)

    Google Scholar 

  23. Thomsen, B.: Plain CHOCS: A second generation calculus for higher order processes. Acta Inf. 30(1), 1–59 (1993)

    Article  MATH  MathSciNet  Google Scholar 

  24. Tiu, A., Miller, D.: Proof search specifications of bisimulation and modal logics for the pi-calculus. ACM Trans. Comput. Logic (TOCL) 11, 13:1–13:35 (2010)

    Article  MathSciNet  Google Scholar 

  25. Urban, C.: Nominal techniques in Isabelle/HOL. J. Autom. Reasoning 40(4), 327–356 (2008)

    Article  MATH  MathSciNet  Google Scholar 

  26. Urban, C., Cheney, J., Berghofer, S.: Mechanizing the metatheory of LF. ACM Trans. Comput. Log. 12(2), 15 (2011)

    Article  MATH  MathSciNet  Google Scholar 

  27. Urban, C., Kaliszyk, C.: General bindings and alpha-equivalence in nominal isabelle. In: Barthe, G. (ed.) ESOP 2011. LNCS, vol. 6602, pp. 480–500. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Alan Schmitt .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Maksimović, P., Schmitt, A. (2015). HOCore in Coq. In: Urban, C., Zhang, X. (eds) Interactive Theorem Proving. ITP 2015. Lecture Notes in Computer Science(), vol 9236. Springer, Cham. https://doi.org/10.1007/978-3-319-22102-1_19

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-22102-1_19

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-22101-4

  • Online ISBN: 978-3-319-22102-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics