Anti-unification of Unordered Goals

Research output: Contribution to conferencePaper

8 Downloads (Pure)


Anti-unification in logic programming refers to the process of capturing common syntactic structure among given goals, computing as such a single new goal that is more general and hence called a generalization of the given goals. Finding an arbitrary common generalization for two goals is trivial, but looking for those common generalizations that are either as large as possible (called largest common generalizations) or as specific as possible (called most specific generalizations) is a non-trivial optimization problem, in particular when goals are considered to be unordered sets of atoms. In this work we provide an in-depth study of the problem by defining two different generalization relations. We formulate a characterization of what constitutes a most specific generalization in both settings. While these generalizations can be computed in polynomial time, we show that when the number of variables in the generalization needs to be minimized, the problem becomes NP-hard. We subsequently revisit an abstraction of the largest common generalization when anti-unification is based on injective variable renamings, and prove that it can be computed in polynomially bounded time.
Original languageEnglish
Publication statusSubmitted - Jun 2021
EventComputer Science Logic 2022 - Göttingen, Germany
Duration: 14 Feb 202219 Feb 2022


ConferenceComputer Science Logic 2022
Abbreviated titleCSL 2022
Internet address


Dive into the research topics of 'Anti-unification of Unordered Goals'. Together they form a unique fingerprint.

Cite this