Fuzzy membership functions are defined as set of points (class FPOINT).
This datatype is a pair of a "real" value (anything physical, a temperature, voltage, whatever...), and a "fuzzy" value in the range , that defines the degree of membership.
- The first is implemented through the slifis::REALVAL, and is at present just an alias for a 'double'.
- The second type is implemented through the FUZZYVAL class. It is also a C 'double', but encapsulated into a class so its values cannot be outside the [0,1] interval. It has all the needed operators, so it should be quite transparent for user. This ensures good robustness, as every operation guarantees not to be outside these bounds.