Package eu.bandm.tools.util
Interface Operators.BinRel<X>
- All Superinterfaces:
Operators.Rel<X,
X>
- All Known Implementing Classes:
Operators.AbstractBinRel
,Operators.AbstractEquivalence
,Operators.AbstractPartialOrder
,Operators.AllBinRel
,Operators.EqualsRel
- Enclosing class:
- Operators
Represents binary relations on a single type. These come with
possible additional properties, namely reflexivity,
symmetry and transitivity, that may serve to simplify
certain algorithms.
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Indicates antireflexivity.boolean
Indicates anti-symmetry.boolean
Indicates reflexivity.boolean
Indicates symmetry.boolean
Indicates anti-symmetry.Methods inherited from interface eu.bandm.tools.util.Operators.Rel
relates
-
Method Details
-
isReflexive
boolean isReflexive()Indicates reflexivity. This means thatx.equals(y)
impliesrelates(x, y)
. It is silently assumed that preempting this case is an optimization, i.e., thatequals
runs faster than relates. -
isAntireflexive
boolean isAntireflexive()Indicates antireflexivity. This means thatx.equals(y)
implies!relates(x, y)
. It is silently assumed that preempting this case is an optimization, i.e., thatequals
runs faster than relates. -
isSymmetric
boolean isSymmetric()Indicates symmetry. This means thatrelates(y, x)
impliesrelates(x, y)
. -
isAntisymmetric
boolean isAntisymmetric()Indicates anti-symmetry. This means thatrelates(y, x) & relates(x, y)
impliesx.equals(y)
. -
isTransitive
boolean isTransitive()Indicates anti-symmetry. This means thatrelates(y, x) & relates(y, z)
impliesx.equals(z)
.
-