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