Hostname: page-component-6898cfcb55-kwdml Total loading time: 0 Render date: 2026-11-11T20:30:37.146Z Has data issue: false hasContentIssue false

Tabling, Rational Terms, and Coinduction Finally Together!

Published online by Cambridge University Press:  21 July 2014

THEOFRASTOS MANTADELIS
Affiliation:
CRACS & INESC TEC, Faculty of Sciences, University of Porto, Rua do Campo Alegre, 1021/1055, 4169-007 Porto, Portugal (e-mail: theo.mantadelis@dcc.fc.up.pt, ricroc@dcc.fc.up.pt, pmoura@inescporto.pt)
RICARDO ROCHA
Affiliation:
CRACS & INESC TEC, Faculty of Sciences, University of Porto, Rua do Campo Alegre, 1021/1055, 4169-007 Porto, Portugal (e-mail: theo.mantadelis@dcc.fc.up.pt, ricroc@dcc.fc.up.pt, pmoura@inescporto.pt)
PAULO MOURA
Affiliation:
CRACS & INESC TEC, Faculty of Sciences, University of Porto, Rua do Campo Alegre, 1021/1055, 4169-007 Porto, Portugal (e-mail: theo.mantadelis@dcc.fc.up.pt, ricroc@dcc.fc.up.pt, pmoura@inescporto.pt)
Rights & Permissions [Opens in a new window]

Abstract

Core share and HTML view are not available for this content. However, as you have access to this content, a full PDF is available via the 'Save PDF' action button.

Tabling is a commonly used technique in logic programming for avoiding cyclic behavior of logic programs and enabling more declarative program definitions. Furthermore, tabling often improves computational performance. Rational term are terms with one or more infinite sub-terms but with a finite representation. Rational terms can be generated in Prolog by omitting the occurs check when unifying two terms. Applications of rational terms include definite clause grammars, constraint handling systems, and coinduction. In this paper, we report our extension of YAP's Prolog tabling mechanism to support rational terms. We describe the internal representation of rational terms within the table space and prove its correctness. We then use this extension to implement a tabling based approach to coinduction. We compare our approach with current coinductive transformations and describe the implementation. In addition, we present an algorithm that ensures a canonical representation for rational terms.

Information

Type
Regular Papers
Copyright
Copyright © Cambridge University Press 2014 
Supplementary material: PDF

MANTADELIS et al.

Tabling, Rational Terms, and Coinduction Finally Together!

Download MANTADELIS et al.(PDF)
PDF 229.6 KB