Abstract
Proofs by induction are often incompatible with functions in tail-recursive form as the accumulator changes in the course of unfolding the definitions. Context-moving and context-splitting (Giesl, 2000) for functional programs transform tail-recursive programs into non tail-recursive ones which are more suitable for proofs by induction and thus for verification. In this paper, we formulate context-moving and context-splitting transformations in the framework of term rewriting systems, and prove their correctness with respect to both eager evaluation semantics and initial algebra semantics under some conditions on the programs to be transformed. The conditions for the correctness with respect to initial algebra semantics can be checked by automated methods for inductive theorem proving developed in the field of term rewriting systems.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
In the case of many-sorted TRSs, we assume sufficient completeness only for the sort of return values of the target f of the context-moving transformation, meaning that any ground term of that sort can be rewritten to a constructor term. Cf. Example 6.
- 2.
For terms of sort \( NatStream \), we do not seek the correctness of the context-moving transformation in the style of Theorem 2.
References
Aoto, T.: Designing a rewriting induction prover with an increased capability of non-orientable equations. In: Proceedings of 1st SCSS, volume 08–08 of RISC Technical report, pp. 1–15 (2008)
Aoto, T.: Sound lemma generation for proving inductive validity of equations. In: Proceedings of 28th FSTTCS, LIPIcs, vol. 2, pp. 13–24. Schloss Dagstuhl (2008)
Bouhoula, A., Kounalis, E., Rusinowitch, M.: Automated mathematical induction. J. Logic Comput. 5(5), 631–668 (1995)
Giesl, J.: Context-moving transformations for function verification. In: Bossi, A. (ed.) LOPSTR 1999. LNCS, vol. 1817, pp. 293–312. Springer, Heidelberg (2000)
Giesl, J.: Induction proofs with partial functions. J. Autom. Reasoning 26(1), 1–49 (2001)
Kapur, D., Narendran, P., Zhang, H.: On sufficient-completeness and related properties of term rewriting systems. Acta Informatica 24(4), 395–415 (1987)
Reddy, U.S.: Term rewriting induction. In: Stickel, M.E. (ed.) CADE 1990. LNCS, vol. 449, pp. 162–177. Springer, Heidelberg (1990)
Sato, K., Kikuchi, K., Aoto, T., Toyama, Y.: Automated inductive theorem proving using transformations of term rewriting systems. JSSST Comput. Softw. 32(1), 179–193 (2015). In Japanese
Shimazu, S., Aoto, T., Toyama, Y.: Automated lemma generation for rewriting induction with disproof. JSSST Comput. Softw. 26(2), 41–55 (2009). In Japanese
Stratulat, S.: A general framework to build contextual cover set induction provers. J. Symbolic Comput. 32, 403–445 (2001)
Urso, P., Kounalis, E.: Sound generalizations in mathematical induction. Theor. Comput. Sci. 323, 443–471 (2004)
Walsh, T.: A divergence critic for inductive proof. J. Artif. Intell. Res. 4, 209–235 (1996)
Acknowledgements
We are grateful to the anonymous referees for valuable comments. This research was supported by JSPS KAKENHI Grant Numbers 25330004, 25280025 and 15K00003.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Sato, K., Kikuchi, K., Aoto, T., Toyama, Y. (2015). Correctness of Context-Moving Transformations for Term Rewriting Systems. In: Falaschi, M. (eds) Logic-Based Program Synthesis and Transformation. LOPSTR 2015. Lecture Notes in Computer Science(), vol 9527. Springer, Cham. https://doi.org/10.1007/978-3-319-27436-2_20
Download citation
DOI: https://doi.org/10.1007/978-3-319-27436-2_20
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-27435-5
Online ISBN: 978-3-319-27436-2
eBook Packages: Computer ScienceComputer Science (R0)