An inference engine for extensional λ-calculus