[comp.lang.prolog] Unification Question

naim@eecs.nwu.edu (Naim Abdullah) (08/05/88)

I am writing a unification algorithm that will be used in a
logic programming system (not prolog).

The input of the unification algorithm will be two character strings
which will be the two terms that need to be unified and the output
is to be the MGU as a character string.

Currently, I am thinking about what should be done if the unification
algorithm is passed these two strings:

   some_term_name([a|X])
   some_term_name([a, b, Y])

   /* "X" and "Y" are variables while "a" and "b" are constants */
      
Clearly, X/[b, Y] is to be a part of the MGU but I am wondering what
(if anything) I should indicate as the substitution for Y.

The context of all this is that each term is part of a clause and
the MGU will be used to substitute for the variables in the clause,
in other parts of the system.

Any suggestions would be very welcome.

		      Naim Abdullah
		      Dept. of EECS,
		      Northwestern University

		      Internet: naim@eecs.nwu.edu
		      Uucp: {oddjob, chinet, laidbak, att}!nucsrl!naim