Generalizing Generalization: towards a framework for anti-unification problems in Logic Programming

Research output: Contribution to conferencePaper


Anti-unification (the dual operation of unification) is typically de-fined as a computing process that outputs a program object (calleda generalization) when other program objects of a similar natureare given as inputs. The computed generalization must be moregeneral than all input objects with respect to a given generalizationrelation, and usually some optimization is required in order to findthe "most specific" or "best" possible generalization according tosome criterion, rather than any common generalization. In logic pro-gramming contexts, many independent anti-unification approachesexist – each with its own interesting specificities – but no effort hasyet been done in the literature to devise a synthetic framework foranti-unification. We believe that such an effort would not only pro-vide possibilities for replacing existing anti-unification algorithmsby slightly different and perhaps more adequate or more efficientsolutions, but also highlight specific configurations for which noalgorithm even exists at the moment, although the anti-unificationproblems falling into said configurations could be numerous inpractice. This short paper first aims to formalize the concept ofconfiguration as a foundation for such a theory of generalization.It will pursue related work in the exploration of specific configu-rations that haven’t been thoroughly studied before (such as un-ordered goals anti-unification). Throughout the paper we describeand motivate ongoing and potential future work in the vast area ofanti-unification techniques in logic programming.
Original languageEnglish
Number of pages7
Publication statusUnpublished - 22 Nov 2019
EventGrascomp Doctoral Day - UNamur - Faculté d'Informatique, Namur, Belgium
Duration: 22 Nov 201922 Nov 2019


ConferenceGrascomp Doctoral Day
Abbreviated titleGDD19


Dive into the research topics of 'Generalizing Generalization: towards a framework for anti-unification problems in Logic Programming'. Together they form a unique fingerprint.

Cite this