Path: utzoo!attcan!uunet!husc6!mailrus!cornell!uw-beaver!teknowledge-vaxc!sri-unix!quintus!ok From: ok@quintus.uucp (Richard A. O'Keefe) Newsgroups: comp.lang.prolog Subject: Re: Soundex revisited Message-ID: <361@quintus.UUCP> Date: 7 Sep 88 07:26:24 GMT References: <305@quintus.UUCP> <7000005@osiris.cso.uiuc.edu> <822@kuling.UUCP> Sender: news@quintus.UUCP Reply-To: ok@quintus.UUCP (Richard A. O'Keefe) Organization: Quintus Computer Systems, Inc. Lines: 16 In article <822@kuling.UUCP> waldau@kuling.UUCP (Mattias Waldau) writes: >The soundex-algorithm is not easy specifiable, since it is an >algorithm where we transform A to B, B to C, and the relationship >between A and C is not easy to specify. (a) If we transform A to B then B to C, it is easy to specify this provided the A->B and B->C mappings are separately easy to specify. Why should we care about A->C? Presumably if that was easy to describe, we'd describe it directly and forget about B entirely. (b) The Soundex function is not hard to specify at all, *if* you use an appropriate *vocabulary*. I showed in an earlier message how, if you already have a suitable kit of schemas, Soundex can be specified in Prolog with one clause having four body goals. That particular kit wouldn't be much good for handling problems involving sets, whereas the methods that Waldau used would work rather well in that case.