next up previous
Next: Installation Instructions. Up: A low level implementation Previous: A low level implementation

The Similarity WAM Machine

The Similarity WAM machine (SWAM) is a virtual machine for executing BPL programs. It have been implemented using the Java programming language. Roughly speaking, it is an adaptation of the classical WAM, as described in [1], able to execute a Prolog program in the context of a similarity relation defined on the first order alphabet induced by that program. The SWAM uses an operational mechanism that conforms with the weak SLD principle.

We have dealt with the problem of adapting the WAM to incorporate fuzzy unification in a conservative way, without forcing its main structure. The SWAM is based in a pre-compilation phase, called the Adapter, which introduces some adaptations into the source code to facilitate the translation task. Also, the Adapter translates the original program into a transformed program, with explicit information about the similarity degree of predicates, that helps us to manage similarity relations properly. The similarity relation is stored into the Similarity Matrix memory area and its information is used:

More information about the foundations and implementation details of the SWAM can be found by [downloading] the report [4].


next up previous
Next: Installation Instructions. Up: A low level implementation Previous: A low level implementation
Pascual Julian Iranzo 2008-04-30