Package org.tweetyproject.math.algebra
Class FuzzySemiring
This class represents a Fuzzy Semiring, where elements are interpreted as degrees of
truth in the range [0.0, 1.0].The multiplication operation corresponds to finding the minimum of two weights,
while the addition operation corresponds to finding the maximum, 0.0 represents the
additive identity, and 1.0 represents the multiplicative identity.
- Author:
- Sandra Hoffmann
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionPerforms a custom division operation on two Double values within the context of a Fuzzy Semiring.Generates a random Double element within the specified maximum value.validateAndReturn
(Double value) Validates and returns the given fuzzy value.Methods inherited from class org.tweetyproject.math.algebra.Semiring
add, betterOrSame, getAddition, getMultiplication, getOneElement, getZeroElement, multiply, toNumericalValue
-
Constructor Details
-
FuzzySemiring
public FuzzySemiring()Constructs a FuzzySemiring instance.
-
-
Method Details
-
validateAndReturn
Validates and returns the given fuzzy value.- Overrides:
validateAndReturn
in classSemiring<Double>
- Parameters:
value
- The fuzzy value to be validated.- Returns:
- The validated fuzzy value.
- Throws:
IllegalArgumentException
- If the value is outside the valid range [0.0, 1.0].
-
getRandomElement
Generates a random Double element within the specified maximum value.- Specified by:
getRandomElement
in classSemiring<Double>
- Returns:
- A random Double element.
-
divide
Performs a custom division operation on two Double values within the context of a Fuzzy Semiring. If the divisor is less than or equal to the dividend, returns the additive identity (zeroElement). Otherwise, returns the dividend.
-