Abstract

It has become a standard approach to reason about contextual equivalence using some notion of (bi)simulation. The main technical task of this approach is to show that (bi)simulation is a (pre)congruence, and hence is sound for reasoning about contextual equivalence. Howe devised a method to prove this, and his method has been widely adapted and applied. This paper deals with this challenge for call-by-need computation including non-determinism. In this setting, sharing of sub-computations must be taken into account due to its observable effects on the outcome of computations. The technical results of this paper are the definition of a class of non-deterministic reduction-based functional languages (SHOCS). The definition of this class is in terms of a schematic characterization of the reduction rules of the language. The main result is that for SHOCS languages mutual similarity is sound for reasoning about contextual equivalence based on may-convergence. The paper also contains a presentation of a particular non-deterministic call-by-need calculus with let, case, constructors, and seq.

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.