The study of methodologies and techniques to produce correct software has been active for four decades. During this period, researchers have developed and investigated a wide vari...
Matthew B. Dwyer, John Hatcliff, Robby, Corina S. ...
Reasoning about the correctness of program transformations requires a notion of program equivalence. We present an observational semantics for the concurrent lambda calculus with f...
The method of logical relations is a classic technique for proving the equivalence of higher-order programs that implement the same observable behavior but employ different intern...
Derek Dreyer, Georg Neis, Andreas Rossberg, Lars B...
Navigating through tree structures is a core operation in tree processing programs. Most notably, XML processing programs intensively use XPath, the path specification language t...
Specializing programs by partial evaluation is well defined extensionally, but in practice no intensional properties, such as what the specialized programs will look like or how ...