This family of functions implements evaluation modes that returns a Boolean value for a given degree in [0, 1] obtained from a membership function of a linguistic value.
Usage
soft_eval(degree)
strict_eval(degree)
alpha_eval(degree, alpha)
soft_alpha_eval(degree, alpha)
Arguments
- degree
A numerical vector whose values are in [0, 1].
- alpha
A single numeric value in [0, 1].
Details
These functions yield a Boolean value that indicates whether the membership degree matches an expected interpretation (according to the meaning of an evaluation mode).
That is, the parameter degree
is a value in [0, 1] and an evaluation mode "translates" the meaning of this degree of truth as a Boolean value.
There are some different ways to make this translation:
soft_eval()
returnsTRUE
ifdegree
is greater than 0.strict_eval()
returnsTRUE
ifdegree
is equal to 1.alpha_eval()
returnsTRUE
ifdegree
is greater than or equal to another value (namedalpha
).soft_alpha_eval()
returnsTRUE
ifdegree
is greater than another value (namedalpha
).
These operators are employed to process the evaluation modes of fuzzy topological relationships (parameter eval_mode
) that are processed as Boolean predicates.
Examples
x <- c(0, 0.1, 0.3, 0.6, 1, 0.8)
soft_eval(x)
#> [1] FALSE TRUE TRUE TRUE TRUE TRUE
strict_eval(x)
#> [1] FALSE FALSE FALSE FALSE TRUE FALSE
alpha_eval(x, 0.3)
#> [1] FALSE FALSE TRUE TRUE TRUE TRUE
soft_alpha_eval(x, 0.3)
#> [1] FALSE FALSE FALSE TRUE TRUE TRUE