Interface TNorm
public interface TNorm
T-norm (Triangular norm) for fuzzy logic.
A t-norm is a binary operation on [0,1] that generalizes the logical AND. It must satisfy: commutativity, associativity, monotonicity, and have 1 as identity.
Common t-norms include: - Minimum: min(a, b) - Product: a * b - Ã…Âukasiewicz: max(0, a + b - 1) - Drastic: min(a,b) if max(a,b)=1, else 0
- Since:
- 1.0
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final TNormDrastic t-norm: min(a,b) if max(a,b)=1, else 0static final TNormHamacher product t-norm: (a*b)/(a+b-a*b) if a+b≠0, else 0static final TNormÃ…Âukasiewicz t-norm: max(0, a + b - 1)static final TNormMinimum t-norm: min(a, b)static final TNormNilpotent minimum t-norm: min(a,b) if a+b>1, else 0static final TNormProduct t-norm: a * b -
Method Summary
Modifier and TypeMethodDescriptiondoubleapply(double a, double b) Applies the t-norm to two values.default doubleapplyConorm(double a, double b) Applies the t-conorm (S-norm) - dual of t-norm.
-
Field Details
-
MINIMUM
Minimum t-norm: min(a, b) -
PRODUCT
Product t-norm: a * b -
LUKASIEWICZ
Ã…Âukasiewicz t-norm: max(0, a + b - 1) -
DRASTIC
Drastic t-norm: min(a,b) if max(a,b)=1, else 0 -
NILPOTENT_MINIMUM
Nilpotent minimum t-norm: min(a,b) if a+b>1, else 0 -
HAMACHER_PRODUCT
Hamacher product t-norm: (a*b)/(a+b-a*b) if a+b≠0, else 0
-
-
Method Details
-
apply
double apply(double a, double b) Applies the t-norm to two values.- Parameters:
a- first value in [0,1]b- second value in [0,1]- Returns:
- the t-norm result
-
applyConorm
default double applyConorm(double a, double b) Applies the t-conorm (S-norm) - dual of t-norm. S(a,b) = 1 - T(1-a, 1-b)- Parameters:
a- first value in [0,1]b- second value in [0,1]- Returns:
- the t-conorm result
-