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 TypeMethodDescriptionbooleanIndicates antireflexivity.booleanIndicates anti-symmetry.booleanIndicates reflexivity.booleanIndicates symmetry.booleanIndicates 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., thatequalsruns 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., thatequalsruns 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).
-