Abstract

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 theoryorthogonality 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.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.