A more cost effective algorithm for finding perfect hash functions

As the use of knowledge-based systems increases, there will be a growing need for efficient artificial intelligence systems and methods to access large lexicons. In the COmposite Document Expert/extended/effective Retrieval (CODER) system we have, in order to provide rapid access to data items on CD-ROMs and to terms in a lexicon built from machine readable dictionaries, investigated the construction of perfect hash functions. We have considered algorithms reported earlier in the literature, have made numerous enhancements to them, have developed new algorithms, and here report on some of our results. This paper covers an O(n3) algorithm that has been applied to building hash functions for a collection of 69806 words on a CD-ROM. Most recently we have developed a much better algorithm and have succeeded in finding a perfect hash function for a set of 130,199 words taken from sources including the Collins English Dictionary.