Download PDFOpen PDF in browser

A Prolog-based Proof Tool for Type-Theory TA-lambda and Implicational Intuitionistic-Logic

9 pagesPublished: May 15, 2012

Abstract

Studies on type theory have brought numerous important contributions to computer science. In this paper we present a GUI-based proof tool that provides assistance in constructing deductions in type theory and validating implicational intuitionistic logic formulas. As such, this proof tool is a testbed for learning type theory and implicational intuitionistic logic. This proof tool focuses on an important variant of type theory named TA<sub>λ</sub>, especially on its two core algorithms: the principal-type algorithm and the type inhabitant search algorithm. The former algorithm finds a most general type assignable to a given λ-term, while the latter finds inhabitants (closed λ-terms in β-normal form) to which a given type can be assigned. By the Curry-Howard correspondence, the latter algorithm provides provability for implicational formulas in intuitionistic logic. We elaborate on how to implement those two algorithms declaratively in Prolog and the overall GUI-based program architecture. In our implementation, we make some modification to improve the performance of the principal-type algorithm. We have also built a web-based version of the proof tool called λ-Guru.

Keyphrases: definite clause grammar, implicational intuitionistic logic, lambda calculus, proof tool, type inhabitant search algorithm, type theory

In: Geoff Sutcliffe, Stephan Schulz and Eugenia Ternovska (editors). IWIL 2010. The 8th International Workshop on the Implementation of Logics, vol 2, pages 33-41.

BibTeX entry
@inproceedings{IWIL2010:Prolog_based_Proof_Tool,
  author    = {L. Yohanes Stefanus and Ario Santoso},
  title     = {A Prolog-based Proof Tool for Type-Theory TA-lambda and Implicational Intuitionistic-Logic},
  booktitle = {IWIL 2010. The 8th International Workshop on the Implementation of Logics},
  editor    = {Geoff Sutcliffe and Stephan Schulz and Eugenia Ternovska},
  series    = {EPiC Series in Computing},
  volume    = {2},
  publisher = {EasyChair},
  bibsource = {EasyChair, https://easychair.org},
  issn      = {2398-7340},
  url       = {/publications/paper/6thS},
  doi       = {10.29007/8ttk},
  pages     = {33-41},
  year      = {2012}}
Download PDFOpen PDF in browser