Polymorphic lemmas and definitions in $\lambda$Prolog and Twelf

  • Authors:
  • Andrew W. Appel;Amy P. Felty

  • Affiliations:
  • Department of Computer Science, Princeton University, NJ, USA (e-mail: appel@princeton.edu);School of Information Technology and Engineering, University of Ottawa, Canada (e-mail: afelty@site.uottawa.ca)

  • Venue:
  • Theory and Practice of Logic Programming
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

$\lambda$Prolog is known to be well-suited for expressing and implementing logics and inference systems. We show that lemmas and definitions in such logics can be implemented with a great economy of expression. We encode a higher-order logic using an encoding that maps both terms and types of the object logic (higher-order logic) to terms of the metalanguage ($\lambda$Prolog). We discuss both the Terzo and Teyjus implementations of $\lambda$Prolog. We also encode the same logic in Twelf and compare the features of these two metalanguages for our purposes.