Confluence of Orthogonal Term Rewriting Systems in the Prototype Verification System
- 130 Downloads
Orthogonality is a discipline of programming which syntactically guarantees determinism of functional specifications. Essentially, orthogonality avoids critical forks in term rewriting systems (TRSs) twofold: avoiding overlappings between left-hand sides of the rules (non-ambiguity) prohibiting rules in the definitions of functions that may apply simultaneously and forbidding repetitions of variables in the left-hand side of the rules (left-linearity) that may produce forks. In the theory of term rewriting systems, determinism is captured by the well-known property of confluence that is a consequence of orthogonality. This work describes a complete formalization in PVS of the theorem of confluence of orthogonal term rewriting systems. The formalization includes definitions and results on parallel reduction, in particular Rosen’s Parallel Moves Lemma. It is made available as a PVS theory orthogonality inside the directory TRS of the NASA Langley PVS Library. Like all of TRS, orthogonality is intended to stay close to textbook proofs. The present proof uses the Parallel Moves Lemma at dominating positions of a parallel context. In this manner, all parallel forks filling the holes of the context are joined and, as result, a term of joinability for the whole fork is constructed.
KeywordsTerm rewriting system Confluence Orthogonality Left-linearity Non-ambiguity Critical pairs Non-termination
A.C. Rocha Oliveira was supported by a scholarship of the Coordination for the Improvement of Higher Education Personnel of the Brazilian Education Ministry CAPES; A.L. Galdino by the Foundation for Research Support of the State of Goiás FAPEG and M. Ayala-Rincón Partially supported by the Brazilian National Counsel of Scientific and Technological Development CNPq.
- 2.Ayala-Rincón, M., Avelar, A.B., Galdino, A.L., Rocha-Oliveira, A.C.: TRS: a PVS Theory for Term Rewriting Systems. http://trs.cic.unb.br—Universidade de Brasília, and http://shemesh.larc.nasa.gov/fm/ftp/larc/PVS-library/library.html—NASA Langley Research Center PVS libraries (Last visited: August, 2015)
- 3.Ayala-Rincón, M., Fernández, M., Gabbay, M.J., Rocha-Oliveira, A.C.: Checking overlaps of nominal rewriting rules. In Pre-proc. Logical and Semantic Frameworks with Applications (LSFA). ENTCS (2015)Google Scholar
- 5.Bezem, M., Klop, J.W., de Vrijer, R. (eds.): Term Rewriting Systems, Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, Cambridge (2003)Google Scholar
- 9.Huet, G.P., Lévy, J.-J.: Computations in orthogonal rewriting systems, I. In: Computational Logic—Essays in Honor of Alan Robinson, pp. 395–414 (1991)Google Scholar
- 10.Rocha-Oliveira, A.C., Ayala-Rincón, M.: Formalizing the confluence of orthogonal rewriting systems. In: Proceedings of 7th Workshop on Logical and Semantic Frameworks, with Applications, LSFA, pp. 145–152 (2012)Google Scholar
- 12.Shankar, N., Owre, S., Rushby, J.M., Stringer-Calvert, D.W.J.: PVS Prover Guide. Technical report, SRI International. http://pvs.csl.sri.com/doc/pvs-prover-guide.pdf (2001)
- 13.Suzuki, T., Kikuchi, K., Aoto, T., Toyama, Y.: Confluence of orthogonal nominal rewriting systems revisited. In: Proceedings of the 26th International Conference on Rewriting Techniques and Applications (RTA 2015), pp. 301–317. LIPIcs (2015)Google Scholar
- 15.Thiemann, R.: Formalizing bounded increase. In: Interactive Theorem Proving—4th International Conference, ITP 2013, Rennes, France, July 22–26, 2013. Proceedings, pp. 245–260 (2013)Google Scholar