Fair constraint merging tableaux in lazy functional programming style
Paper in proceedings, 2003
Constraint merging tableaux maintain a system of all closing substitutions of all subtableau up to a certain depth, which is incrementally increased. This avoids backtracking as necessary in destructive first order free variable tableaux. The first successful implementation of this paradigm was given in an object-oriented style. We analyse the reasons why lazy functional implementations so far were problematic (although appealing) I and we give a solution. The resulting implementation in Haskell is compact and modular.