RFuzzy: An Expressive Simple Fuzzy Compiler

  • Susana Munoz-Hernandez
  • Victor Pablos Ceruelo
  • Hannes Strass
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5517)


Fuzzy reasoning is a very productive research field that during the last years has provided a number of theoretical approaches and practical implementation prototypes. Nevertheless, the classical implementations, like Fril, are not adapted to the latest formal approaches, like multi-adjoint logic semantics.

Some promising implementations, like Fuzzy Prolog, are so general that the regular user/programmer does not feel comfortable because either the representation of fuzzy concepts is complex or the results of the fuzzy queries are difficult to interpret.

In this paper we present a modern framework, RFuzzy, that is modeling multi-adjoint logic in a practical way. It provides some extensions as default values (to represent missing information), partial default values (for a subset of data) and typed variables. RFuzzy represents the truth value of predicates using facts, rules and also can define fuzzy predicates as continuous functions. Queries are answered with direct results (instead of providing complex constraints), so it is easy to use for any person that wants to represent a problem using fuzzy reasoning in a simple way (just using the classical fuzzy representation with real numbers). The most promising characteristic of RFuzzy is that the user can obtain constructive answers to queries that restrict the truth value.


Fuzzy reasoning Implementation tool Fuzzy Logic  Multi-adjoint logic Logic Programming Implementation Fuzzy Logic Application 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abietar, J.M., Morcillo, P.J., Moreno, G.: Designing a software tool for fuzzy logic programming. In: Simos, T.E., Maroulis, G. (eds.) Proc. of the Int. Conf. of Computational Methods in Sciences and Engineering. ICCMSE 2007. Computation in Mordern Science and Engineering, vol. 2, pp. 1117–1120. American Institute of Physics (2007) (Distributed by Springer)Google Scholar
  2. 2.
    Bistarelli, S., Montanari, U., Rossi, F.: Semiring-based constraint Logic Programming: syntax and semantics. In: ACM TOPLAS, vol. 23, pp. 1–29 (2001)Google Scholar
  3. 3.
    Guadarrama, S., Munoz-Hernandez, S., Vaucheret, C.: Fuzzy Prolog: A new approach using soft constraints propagation. Fuzzy Sets and Systems 144(1), 127–150 (2004)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Lee, R.C.T.: Fuzzy Logic and the resolution principle. Journal of the Association for Computing Machinery 19(1), 119–129 (1972)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Medina, J., Ojeda-Aciego, M., Votjas, P.: A completeness theorem for multi-adjoint Logic Programming. In: International Fuzzy Systems Conference, pp. 1031–1034. IEEE, Los Alamitos (2001)Google Scholar
  6. 6.
    Medina, J., Ojeda-Aciego, M., Votjas, P.: Multi-adjoint Logic Programming with continuous semantics. In: Eiter, T., Faber, W., Truszczyński, M. (eds.) LPNMR 2001. LNCS, vol. 2173, pp. 351–364. Springer, Heidelberg (2001)Google Scholar
  7. 7.
    Medina, J., Ojeda-Aciego, M., Votjas, P.: A procedural semantics for multi-adjoint Logic Programming. In: Brazdil, P.B., Jorge, A.M. (eds.) EPIA 2001. LNCS, vol. 2258, pp. 290–297. Springer, Heidelberg (2001)Google Scholar
  8. 8.
    Morcillo, P.J., Moreno, G.: Floper, a fuzzy logic programming environment for research. In: Proceedings of the Spanish Conference on Programming and Computer Languages, PROLE 2008, Gijón, Spain (2008)Google Scholar
  9. 9.
    Moreno, G.: Building a fuzzy transformation system. In: SOFtware SEMinar 2006: Theory and Practice of Computer Science, pp. 409–418 (2006)Google Scholar
  10. 10.
    Munoz-Hernandez, S., Vaucheret, C., Guadarrama, S.: Combining crisp and fuzzy Logic in a prolog compiler. In: Moreno-Navarro, J.J., Mariño, J. (eds.) Joint Conf. on Declarative Programming: APPIA-GULP-PRODE 2002, Madrid, Spain, pp. 23–38 (September 2002)Google Scholar
  11. 11.
    Shen, Z., Ding, L., Mukaidono, M.: Fuzzy resolution principle. In: Proc. of 18th International Symposium on Multiple-valued Logic, vol. 5 (1989)Google Scholar
  12. 12.
    The CLIP Lab. The Ciao Prolog Development System WWW Site,
  13. 13.
    Vaucheret, C., Guadarrama, S., Munoz-Hernandez, S.: Fuzzy prolog: A simple general implementation using clp(r). In: Baaz, M., Voronkov, A. (eds.) LPAR 2002. LNCS (LNAI), vol. 2514, pp. 450–463. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  14. 14.
    Vojtas, P.: Fuzzy logic programming. Fuzzy Sets and Systems 124(1), 361–370 (2001)MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Ehud, Y., Shapiro: Logic programs with uncertainties: A tool for implementing rule-based systems. In: International Joint Conference on Artificial Intelligence, pp. 529–532 (1983)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Susana Munoz-Hernandez
    • 1
  • Victor Pablos Ceruelo
    • 1
  • Hannes Strass
    • 1
  1. 1.Universidad Politécnica de MadridSpain

Personalised recommendations