The weak unification algorithm operates on the basis of a similarity relation (a fuzzy binary relation holding the reflexive, symmetric and transitive properties) on a syntactic domain. So it is important to generate automatically a similarity relation starting from an ordinary fuzzy binary relation on a set of first order symbols of a BPL program.
Similarity equations of the form
``<symbol> ~~ <symbol> = <degree>
''
are used to represent an arbitrary fuzzy binary relation .
A similarity equation
is representing the entry
.
The user supplies an initial subset of similarity equations and then, the system automatically generates a reflexive, symmetric, transitive closure to obtain a similarity relation. The transitivity/1 directive can alter this default behavior.
A foreign module, written in the C programming language [5], implements the algorithm for the construction of the similarity relation. See [2] for more details about that algorithm.