The Teyjus system is an efficient implementation of the higher-order logic programming language Lambda Prolog. The main strength of Lambda Prolog, a language developed by Dale Miller and Gopalan Nadathur, is the support it offers for what is known as lambda tree syntax, a new and effective way to view the structure of complex syntactic objects such as types, formulas, proofs and programs. Lambda Prolog provides this support by using lambda terms as data representation devices and by including primitives for probing such terms in logically meaningful ways. The new features present in the language raise several implementation challenges that have been addressed in collaborative work between Nadathur and his students and colleagues. The name "Teyjus" actually stands both for a project and for a class of compiler and virtual machine based realizations of Lambda Prolog arising from the research carried out within this project. Underlying the most recent version of the Teyjus system is a new and significantly improved virtual machine that has been designed by Xiaochu Qi as part of her doctoral dissertation work at the University of Minnesota. This virtual machine extensively exploits a special form of higher-order unification known as pattern unification.

Further Information

Use the following links to get further information about the Teyjus project and to download the system in source code form. Please note that starting in April 2008, we have switched over to a completely new implementation: Version 2 of the Teyjus system. This version solves many of the portability issues that were noted with Version 1 and is the focus of ongoing research and development. A link to the page for Version 1 is provided below for historical reasons but this system is no longer maintained and the link may also disappear in time.

Acknowledgments

Support for the work reported on this page and for the development of facilities that are available through it has been provided primarily by the National Science Foundation under the grant CCF-0429572. This work is a continuation of earlier research funded by the NSF grants CCR-8905825, CCR-9208465, CCR-9596119, CCR-9803849 and CCR-0096322. Opinions, findings and conclusions or recommendations that are manifest in this material are those of the project participants and do not necessarily reflect the views of the NSF.