Package eu.bandm.tools.util
Class Operators.AbstractBinRel<X>
java.lang.Object
eu.bandm.tools.util.Operators.AbstractBinRel<X>
- All Implemented Interfaces:
Operators.BinRel<X>
,Operators.Rel<X,
X>
- Direct Known Subclasses:
Operators.AbstractEquivalence
,Operators.AbstractPartialOrder
- Enclosing class:
- Operators
public abstract static class Operators.AbstractBinRel<X>
extends Object
implements Operators.BinRel<X>
-
Field Summary
Modifier and TypeFieldDescriptionprotected final boolean
protected final boolean
protected final boolean
protected final boolean
protected final boolean
-
Constructor Summary
ModifierConstructorDescriptionprotected
protected
AbstractBinRel
(boolean reflexive, boolean antireflexive, boolean symmetric, boolean antisymmetric, boolean transitive) protected
AbstractBinRel
(Operators.BinRel<?> prototype) -
Method Summary
Modifier and TypeMethodDescriptionfinal boolean
Indicates antireflexivity.final boolean
Indicates anti-symmetry.final boolean
Indicates reflexivity.final boolean
Indicates symmetry.final boolean
Indicates anti-symmetry.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface eu.bandm.tools.util.Operators.Rel
relates
-
Field Details
-
reflexive
protected final boolean reflexive -
antireflexive
protected final boolean antireflexive -
symmetric
protected final boolean symmetric -
antisymmetric
protected final boolean antisymmetric -
transitive
protected final boolean transitive
-
-
Constructor Details
-
AbstractBinRel
protected AbstractBinRel(boolean reflexive, boolean antireflexive, boolean symmetric, boolean antisymmetric, boolean transitive) -
AbstractBinRel
-
AbstractBinRel
protected AbstractBinRel()
-
-
Method Details
-
isReflexive
public final boolean isReflexive()Description copied from interface:Operators.BinRel
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.- Specified by:
isReflexive
in interfaceOperators.BinRel<X>
-
isAntireflexive
public final boolean isAntireflexive()Description copied from interface:Operators.BinRel
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.- Specified by:
isAntireflexive
in interfaceOperators.BinRel<X>
-
isSymmetric
public final boolean isSymmetric()Description copied from interface:Operators.BinRel
Indicates symmetry. This means thatrelates(y, x)
impliesrelates(x, y)
.- Specified by:
isSymmetric
in interfaceOperators.BinRel<X>
-
isAntisymmetric
public final boolean isAntisymmetric()Description copied from interface:Operators.BinRel
Indicates anti-symmetry. This means thatrelates(y, x) & relates(x, y)
impliesx.equals(y)
.- Specified by:
isAntisymmetric
in interfaceOperators.BinRel<X>
-
isTransitive
public final boolean isTransitive()Description copied from interface:Operators.BinRel
Indicates anti-symmetry. This means thatrelates(y, x) & relates(y, z)
impliesx.equals(z)
.- Specified by:
isTransitive
in interfaceOperators.BinRel<X>
-