Package net.sf.tweety.math.func.fuzzy
Class TNorm
- java.lang.Object
-
- net.sf.tweety.math.func.fuzzy.TNorm
-
- All Implemented Interfaces:
BinaryFunction<java.lang.Double,java.lang.Double,java.lang.Double>
- Direct Known Subclasses:
LukasiewiczNorm
,MinimumNorm
,ProductNorm
public abstract class TNorm extends java.lang.Object implements BinaryFunction<java.lang.Double,java.lang.Double,java.lang.Double>
Represents a T-norm in fuzzy logic, i.e., a generalization of a logical conjunction on values in [0,1].- Author:
- Matthias Thimm
-
-
Constructor Summary
Constructors Constructor Description TNorm()
-
Method Summary
Modifier and Type Method Description abstract java.lang.Double
eval(java.lang.Double val1, java.lang.Double val2)
Evaluates the function for the given elements.java.lang.Double
eval(java.util.Collection<java.lang.Double> vals)
Generalizes this norm on sets of input parameters (as t-norms are associative, the order is not important).Term
evalTerm(java.util.Collection<Term> vals)
Gives a representation of this norm as a mathematical term.abstract Term
evalTerm(Term val1, Term val2)
Gives a representation of this norm as a mathematical termabstract TCoNorm
getDualCoNorm()
Returns the dual T-conorm of this T-norm.abstract boolean
isNilpotent()
A T-norm is nilpotent if there are x,y>0 with t(x,y)=0
-
-
-
Method Detail
-
eval
public abstract java.lang.Double eval(java.lang.Double val1, java.lang.Double val2)
Description copied from interface:BinaryFunction
Evaluates the function for the given elements.- Specified by:
eval
in interfaceBinaryFunction<java.lang.Double,java.lang.Double,java.lang.Double>
- Parameters:
val1
- some elementval2
- some element- Returns:
- the value of the element.
-
eval
public java.lang.Double eval(java.util.Collection<java.lang.Double> vals)
Generalizes this norm on sets of input parameters (as t-norms are associative, the order is not important).- Parameters:
vals
- a set of values- Returns:
- the evaluation result on the input
-
evalTerm
public abstract Term evalTerm(Term val1, Term val2)
Gives a representation of this norm as a mathematical term- Parameters:
val1
- the term denoting the first parameterval2
- the term denoting the second parameter- Returns:
- the term denoting this norm evaluation on the two terms
-
evalTerm
public Term evalTerm(java.util.Collection<Term> vals)
Gives a representation of this norm as a mathematical term. Generalizes this norm on sets of input parameters (as t-norms are associative, the order is not important).- Parameters:
vals
- a set of value terms- Returns:
- the evaluation result on the input as a term
-
getDualCoNorm
public abstract TCoNorm getDualCoNorm()
Returns the dual T-conorm of this T-norm.- Returns:
- the dual T-conorm of this T-norm.
-
isNilpotent
public abstract boolean isNilpotent()
A T-norm is nilpotent if there are x,y>0 with t(x,y)=0- Returns:
- true if the norm is nilpotent
-
-