English

Static Analysis Techniques for Equational Logic Programming

Logic in Computer Science 2007-05-23 v1 Programming Languages

Abstract

An equational logic program is a set of directed equations or rules, which are used to compute in the obvious way (by replacing equals with ``simpler'' equals). We present static analysis techniques for efficient equational logic programming, some of which have been implemented in LR2LR^2, a laboratory for developing and evaluating fast, efficient, and practical rewriting techniques. Two novel features of LR2LR^2 are that non-left-linear rules are allowed in most contexts and it has a tabling option based on the congruence-closure based algorithm to compute normal forms. Although, the focus of this research is on the tabling approach some of the techniques are applicable to the untabled approach as well. Our presentation is in the context of LR2LR^2, which is an interpreter, but some of the techniques apply to compilation as well.

Keywords

Cite

@article{arxiv.cs/0010034,
  title  = {Static Analysis Techniques for Equational Logic Programming},
  author = {Rakesh M. Verma},
  journal= {arXiv preprint arXiv:cs/0010034},
  year   = {2007}
}

Comments

Appeared in 1st ACM SIGPLAN Workshop on Rule-based Programming (RULE 2000)