Location: CLT 7.01 Date/Time: 31st August 2016, 14:00 - 15:00
Speaker(s): Dr. Wickerson.
Brief Description:In this work, we identify four important tasks involved in designing and understanding MCMs: generating conformance tests, distinguishing two MCMs, checking compiler optimisations, and checking compiler mappings. We show that all four tasks can be cast as instances of a general constraint-satisfaction problem to which the solution is either a program or a pair of programs. We further show that although these constraints aren't tractable for automatic solvers when phrased over programs directly, we can solve analogous constraints over program *executions*, and then reconstruct programs that satisfy the original constraints.