Abstract
Overloading in the context of higher-order logic has been used for some time now. We define what we mean by Higher-Order Logic with Conservative Overloading (HOLCO). HOLCO captures how overloading is actually applied by the users of Isabelle.
We show that checking whether definitions obey the rules of HOLCO is not even semi-decidable.
The undecidability proof reveals strong ties between our problem and the dependency pair method by Arts and Giesl for proving termination of TRSs via the notion overloading TRS. The dependency graph of overloading TRSs can be computed exactly. We exploit this by providing an algorithm that checks the conservativity of definitions based on the dependency pair method and a simple form of linear polynomial interpretation; the algorithm also uses the strategy of Hirokawa and Middeldorp of recursively calculating the strongly connected components of the dependency graph. The algorithm is powerful enough to deal with all overloaded definitions that the author has encountered so far in practice.
An implementation of this algorithm is available as part of a package that adds conservative overloading to Isabelle. This package also allows to delegate the conservativity check to external tools like the Tyrolean Termination Tool or the Automated Program Verification Environment.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Obua, S.: Conservative Overloading in Higher-Order Logic. Technical Report, Institut für Informatik, Technische Universität München (2006), http://www4.in.tum.de/~obua/checkdefs
Paulson, L.C.: The Foundation of a Generic Theorem Prover. Journal of Automated Reasoning 5(3), 363–397 (1989)
Wenzel, M.: Type Classes and Overloading in Higher-Order Logic. In: Gunter, E.L., Felty, A.P. (eds.) TPHOLs 1997. LNCS, vol. 1275, pp. 307–322. Springer, Heidelberg (1997)
Nipkow, T., Paulson, L.C., Wenzel, M.: Isabelle/HOL: A Proof Assistant for Higher-Order Logic. Springer, Heidelberg (2002)
Baader, F., Nipkow, T.: Term Rewriting and All That. Cambridge U.P., NewYork (1998)
Terese: Term Rewriting Systems. Cambridge U.P., New York (2003)
Arts, T., Giesl, J.: Termination of term rewriting using dependency pairs. Theoretical Computer Science 236, 133–178 (2000)
Hirokawa, N., Middeldorp, A.: Automating the dependency pair method. Information and Computation 199, 172–199 (2005)
Ruohonen, K.: Reversible Machines and Post’s Correspondence Problem for Biprefix Morphisms. Journal of Information Processing and Cybernetics 21(12), 579–595 (1985)
The HOL System Description, http://hol.sourceforge.net/
Harrison, J.: The HOL Light theorem prover, http://www.cl.cam.ac.uk/~jrh/hol-light/
Giesl, J., Thiemann, R., Schneider-Kamp, P., Falke, S.: Automated Termination Proofs with AProVE. In: van Oostrom, V. (ed.) RTA 2004. LNCS, vol. 3091, pp. 210–220. Springer, Heidelberg (2004), http://www-i2.informatik.rwth-aachen.de/AProVE/
Hirokawa, N., Middeldorp, A.: Tyrolean Termination Tool. In: Giesl, J. (ed.) RTA 2005. LNCS, vol. 3467, pp. 175–184. Springer, Heidelberg (2005), http://cl2-informatik.uibk.ac.at/ttt/
Obua, S.: Proving Bounds for Real Linear Programs in Isabelle/HOL. In: Hurd, J., Melham, T. (eds.) TPHOLs 2005. LNCS, vol. 3603, pp. 227–244. Springer, Heidelberg (2005)
Urban, C.: Nominal Techniques in Isabelle/HOL. In: Nieuwenhuis, R. (ed.) CADE 2005. LNCS (LNAI), vol. 3632, pp. 38–53. Springer, Heidelberg (2005)
Project Bali, http://isabelle.in.tum.de/Bali
Vanderbei, R.J.: Linear Programming, 2nd edn. Springer, Heidelberg (2001)
Giesl, J.: Generating Polynomial Orderings for Termination Proofs. In: Hsiang, J. (ed.) RTA 1995. LNCS, vol. 914, pp. 426–431. Springer, Heidelberg (1995)
Brucker, A.D., Wolff, B.: A Proposal for a Formal OCL Semantics in Isabelle/HOL. In: Carreño, V.A., Muñoz, C.A., Tahar, S. (eds.) TPHOLs 2002. LNCS, vol. 2410, pp. 99–114. Springer, Heidelberg (2002)
Giesl, J., Arts, T.: Verification of Erlang Processes by Dependency Pairs. Applicable Algebra in Engineering, Communication and Computing 12, 39–72 (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Obua, S. (2006). Checking Conservativity of Overloaded Definitions in Higher-Order Logic. In: Pfenning, F. (eds) Term Rewriting and Applications. RTA 2006. Lecture Notes in Computer Science, vol 4098. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11805618_16
Download citation
DOI: https://doi.org/10.1007/11805618_16
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-36834-2
Online ISBN: 978-3-540-36835-9
eBook Packages: Computer ScienceComputer Science (R0)
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.