GRASS logo


r.fuzzy.logic - Performs logical operations on membership images created with r.fuzzy or different method. Use families for fuzzy logic.


raster, fuzzy logic


r.fuzzy.logic --help
r.fuzzy.logic xmap=name [ymap=name] output=name operator=string family=string [--overwrite] [--help] [--verbose] [--quiet] [--ui]


Allow output files to overwrite existing files
Print usage summary
Verbose module output
Quiet module output
Force launching GUI dialog


xmap=name [required]
x operand (membership map)
y operand (membership map)
output=name [required]
Resulting map
operator=string [required]
Fuzzy logic operation
Options: AND, OR, NOT, IMP
Default: AND
family=string [required]
Fuzzy logic family
Options: Zadeh, product, drastic, Lukasiewicz, Fodor, Hamacher
Default: Zadeh

Table of contents


Name of input x membership operand. This map must be of type FCELL with range 0 :1 and may require null values. Otherwise program will print error message and stops.
Name of input y membership operand. This map must be of type FCELL with range 0 :1 and may require null values. Otherwise program will print error message and stops. This map is optional bit is required for all operation except NOT
A fuzzy set operators are generalization of crisp operators. There is more than one possible generalization of every operator. There are three operations: fuzzy complements, fuzzy intersections, and fuzzy unions. Additional implication operator is also provided.
  • fuzzy intersection (AND) use T-norm of given family for calculation;
  • fuzzy union (OR) use T-conorm of given family for calculation;
  • fuzzy complement (NOT) fuzzy negation usually 1-x;
  • fuzzy implication (IMP) use residuum of given family if available;
T-norms, T-conorms and residuals are a generalization of the two-valued logical conjunction, disjunction and implication used by boolean logic, for fuzzy logics. Because there is more than one possible generalisation of logical operations, r.fuzzy.logic provides 6 most popular families for fuzzy operations:
  • Zadeh with minimum (Godel) t-norm and maximum T-conorm;
  • product with product T-norm and probabilistic sum as T-conorm;
  • drastic with drastic T-norm and drastic T-conorm;
  • Łukasiewicz with Łukasiewicz T-norm and bounded sum as a T-conorm;
  • Fodor with nilpotent minimum as T-norm and nilpotent maximum as T-conorm;
  • Hamacher (simplified) with Hamacher product as T-norm and Einstein sum as T-conorm;
There is no residuum for drastic and Hamacher families. For more details see Meyer D, Hornik K (2009); T-norms;


Map containing result of two-values operations. Multivalued operations will be available in the future. Map is always of type FCELLS and contains values from 0 (no membership) to 1 (full membership). Values between 0 and 1 indicate partial membership


r.fuzzy, r.mapcalc


Zadeh, L.A. (1965). Fuzzy sets. Information and Control 8 (3): 338–353. doi:10.1016/S0019-9958(65)90241-X. ISSN 0019-9958.

Novák, Vilém (1989). Fuzzy Sets and Their Applications. Bristol: Adam Hilger. ISBN 0-85274-583-4.

Klir, George J.; Yuan, Bo (1995). Fuzzy sets and fuzzy logic: theory and applications. Upper Saddle River, NJ: Prentice Hall PTR. ISBN 0-13-101171-5.

Klir, George J.; St Clair, Ute H.; Yuan, Bo (1997). Fuzzy set theory: foundations and applications. Englewood Cliffs, NJ: Prentice Hall. ISBN 0133410587.

Meyer D, Hornik K (2009a). Generalized and Customizable Sets in R. Journal of Statistical Software, 31(2), 1-27. URL

Meyer D, Hornik K (2009b). sets: Sets, Generalized Sets, and Customizable Sets. R package version, URL


Jarek Jasiewicz


Available at: r.fuzzy.logic source code (history)

Main index | Raster index | Topics index | Keywords index | Graphical index | Full index

© 2003-2020 GRASS Development Team, GRASS GIS 7.8.3dev Reference Manual