Bousi-Prolog: Design and Implementation of a Proximity-based Fuzzy Logic Programming Language
Loading...
Official URL
Full text at PDC
Publication date
2023
Advisors (or tutors)
Editors
Journal Title
Journal ISSN
Volume Title
Publisher
Expert Systems with Applications
Citation
P. Julián-Iranzo and F. Sáenz-Pérez, "Bousi~Prolog: Design and implementation of a proximity-based fuzzy logic programming language", Expert Systems with Applications, Volume 213, Part A, 2023. DOI 10.1016/j.eswa.2022.118858.
Abstract
The fuzzy logic programming language Bousi∼Prolog extends Prolog with a weak unification algorithm based on proximity relations and truth degree annotations. The weak unification algorithm makes the search for answers more flexible, while rule annotations make possible knowledge-based applications where the rules may be uncertain. In this paper, after recalling the main concepts supporting this language, we detail its design and implementation. We describe the implementation of its operational semantics, which is based on compiling programs and queries into Prolog, and those important features that makes it more applicable: fuzzy sets, integration with WordNet and efficiency techniques. The result is a high-level open-source implementation of the Bousi∼Prolog system, written on top of SWI-Prolog, and publicly available. We also summarise some experiments measuring its performance compared to other systems.