Interface Semigroup<M>

Type Parameters:
M - the mathematical set underlying the semigroup structure.
All Known Subinterfaces:
GenMonoid<A,M>, GenSemigroup<A,M>, Monoid<M>, MonoidAction<M,S>

public interface Semigroup<M>
Models the behaviour of a mathematical semigroup, namely to calculate an element of the carrier type from two given elements. An example for a semigroup which is not a group are the non-empty strings.
  • Method Summary

    Modifier and Type
    Method
    Description
    combine(M left, M right)
    Fundamental operation which constitutes a semigroup.
  • Method Details

    • combine

      M combine(M left, M right)
      Fundamental operation which constitutes a semigroup. Combining elements is associative.