Abstract
Kobayashi and Igarashi proposed model checking of \(\mu \)HORS (recursively-typed higher-order recursion schemes), by which a wide range of programs such as object-oriented programs and multi-threaded programs can be precisely modeled and verified. In this work, we present a procedure for \(\mu \)HORS model checking that improves the procedure based on automata-based abstraction refinement proposed by Kobayashi and Li. The new procedure optimizes each step of the abstract-check-refine paradigm of the previous procedure. Specially, it combines the strengths of automata-based and type-based abstraction refinement as equivalence-based abstraction refinement. We have implemented the new procedure, and confirmed that it always outperformed the original automata-based procedure on runtime efficiency, and successfully verified all benchmarks which were previously impossible.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
Note that, the choice of \(\mathcal {B}_0\) would not affect relative completeness but practical efficiency of the procedure. An interested reader may wish to consult [8] for some approaches to constructing \(\mathcal {B}_0\).
- 2.
It does not change the graph structure by doing so, because the arguments of \(B\) occurring in the reduction could never be merged according to the assumption on \(\sim \).
References
Aehlig, K.: A finite semantics of simply-typed lambda terms for infinite runs of automata. Logical Methods Comput. Sci. 3(3), 1–23 (2007)
Amadio, R.M., Cardelli, L.: Subtyping recursive types. ACM Trans. Program. Lang. Syst. 15(4), 575–631 (1993)
Broadbent, C.H., Kobayashi, N.: Saturation-based model checking of higher-order recursion schemes. In: Rocca, S.R.D. (ed.) CSL 2013. LIPIcs, vol. 23, pp. 129–148. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik (2013)
Comon, H., Dauchet, M., Gilleron, R., Löding, C., Jacquemard, F., Lugiez, D., Tison, S., Tommasi, M.: Tree automata techniques and applications (2007). http://www.grappa.univ-lille3.fr/tata. Accessed 12 Oct 2007
Knapik, T., Niwiński, D., Urzyczyn, P.: Higher-order pushdown trees are easy. In: Nielsen, M., Engberg, U. (eds.) FOSSACS 2002. LNCS, vol. 2303, pp. 205–222. Springer, Heidelberg (2002)
Kobayashi, N.: Model checking higher-order programs. J. ACM 60(3), 20 (2013)
Kobayashi, N., Igarashi, A.: Model-checking higher-order programs with recursive types. In: Felleisen, M., Gardner, P. (eds.) ESOP 2013. LNCS, vol. 7792, pp. 431–450. Springer, Heidelberg (2013)
Kobayashi, N., Li, X.: Automata-based abstraction refinement for \(\rm \mu \)HORS model checking. In: Proceedings of LICS 2015, pp. 713–724. IEEE Computer Society (2015)
Kobayashi, N., Ong, C.H.L.: A type system equivalent to the modal mu-calculus model checking of higher-order recursion schemes. In: Proceedings of LICS 2009, pp. 179–188. IEEE Computer Society Press (2009)
Kobayashi, N., Sato, R., Unno, H.: Predicate abstraction and CEGAR for higher-order model checking. In: Hall, M.W., Padua, D.A. (eds.) PLDI 2011, pp. 222–233. ACM (2011)
Li, X., Kobayashi, N.: Equivalence-based abstraction refinement for \(\rm \mu \)HORS model checking. Full version, available from the first author’s web page (2016)
Ong, C.H.L.: On model-checking trees generated by higher-order recursion schemes. In: Proceedings of LICS 2006, pp. 81–90. IEEE Computer Society Press (2006)
Ong, C.H.L., Ramsay, S.: Verifying higher-order programs with pattern-matching algebraic data types. In: Ball, T., Sagiv, M. (eds.) POPL 2011, pp. 587–598. ACM Press (2011)
Ramsay, S., Neatherway, R., Ong, C.H.L.: An abstraction refinement approach to higher-order model checking. In: Jagannathan, S., Sewell, P. (eds.) POPL 2014. ACM (2014)
Acknowledgment
We would like to thank anonymous referees for useful comments. This work was supported by JSPS Kakenhi 15H05706.
Author information
Authors and Affiliations
Corresponding authors
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing AG
About this paper
Cite this paper
Li, X., Kobayashi, N. (2016). Equivalence-Based Abstraction Refinement for \(\mu \)HORS Model Checking. In: Artho, C., Legay, A., Peled, D. (eds) Automated Technology for Verification and Analysis. ATVA 2016. Lecture Notes in Computer Science(), vol 9938. Springer, Cham. https://doi.org/10.1007/978-3-319-46520-3_20
Download citation
DOI: https://doi.org/10.1007/978-3-319-46520-3_20
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-46519-7
Online ISBN: 978-3-319-46520-3
eBook Packages: Computer ScienceComputer Science (R0)