Anti-unification (AU) is a general approach to finding generalizations between symbolic expressions. The idea is to find a generalization which captures the common structure between a set of expressions. AU has been a problem of continuous interest since the 1970’s in Computer Science. Where anti-unification usually refers to a class of generalization problems for logical expressions of various orders and under various equational theories Library Learning (LL) refers to a practical problem of finding programming functions which capture common structure within a corpus of computer programs.

LL literature seems to frame the LL task as an abstraction problem, which means finding functions which capture the common structure within a corpus of code so a practitioner can understand or leverage a thing according to its practical dimensions for the practitioner’s current problem.