A compiled implementation of strong reduction

Benjamin Grégoire, Xavier Leroy
2002 Proceedings of the seventh ACM SIGPLAN international conference on Functional programming - ICFP '02  
Motivated by applications to proof assistants based on dependent types, we develop and prove correct a strong reducer and βequivalence checker for the λ-calculus with products, sums, and guarded fixpoints. Our approach is based on compilation to the bytecode of an abstract machine performing weak reductions on non-closed terms, derived with minimal modifications from the ZAM machine used in the Objective Caml bytecode interpreter, and complemented by a recursive "read back" procedure. An
more » ... ntation in the Coq proof assistant demonstrates important speedups compared with the original interpreter-based implementation of strong reduction in Coq.
doi:10.1145/581478.581501 dblp:conf/icfp/GregoireL02 fatcat:hyc6jim7rreu3jfllyghftt3ii