Module: Algebra::Monoid

Included in:
Group
Defined in:
lib/y_support/abstract_algebra.rb

Overview

A Monoid requires:

Closed and associative addition: #add method Additive identity element: #additive_identity

Defined Under Namespace

Modules: ClassMethods

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(receiver) ⇒ Object



31
32
33
# File 'lib/y_support/abstract_algebra.rb', line 31

def self.included receiver
  receiver.extend self::ClassMethods
end

Instance Method Details

#+(summand) ⇒ Object



35
# File 'lib/y_support/abstract_algebra.rb', line 35

def + summand; add summand end