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 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

      protected AbstractBinRel(Operators.BinRel<?> prototype)
    • AbstractBinRel

      protected AbstractBinRel()
  • Method Details

    • isReflexive

      public final boolean isReflexive()
      Description copied from interface: Operators.BinRel
      Indicates reflexivity. This means that x.equals(y) implies relates(x, y). It is silently assumed that preempting this case is an optimization, i.e., that equals runs faster than relates.
      Specified by:
      isReflexive in interface Operators.BinRel<X>
    • isAntireflexive

      public final boolean isAntireflexive()
      Description copied from interface: Operators.BinRel
      Indicates antireflexivity. This means that x.equals(y) implies !relates(x, y). It is silently assumed that preempting this case is an optimization, i.e., that equals runs faster than relates.
      Specified by:
      isAntireflexive in interface Operators.BinRel<X>
    • isSymmetric

      public final boolean isSymmetric()
      Description copied from interface: Operators.BinRel
      Indicates symmetry. This means that relates(y, x) implies relates(x, y).
      Specified by:
      isSymmetric in interface Operators.BinRel<X>
    • isAntisymmetric

      public final boolean isAntisymmetric()
      Description copied from interface: Operators.BinRel
      Indicates anti-symmetry. This means that relates(y, x) & relates(x, y) implies x.equals(y).
      Specified by:
      isAntisymmetric in interface Operators.BinRel<X>
    • isTransitive

      public final boolean isTransitive()
      Description copied from interface: Operators.BinRel
      Indicates anti-symmetry. This means that relates(y, x) & relates(y, z) implies x.equals(z).
      Specified by:
      isTransitive in interface Operators.BinRel<X>