Logo MTL4

algebra::Monoid< Operation, Element > Struct Template Reference
[Concepts]

Concept Monoid. More...

#include <algebraic_concepts.hpp>

Inherits SemiGroup< Operation, Element >.

Collaboration diagram for algebra::Monoid< Operation, Element >:

Collaboration graph
[legend]

List of all members.

Public Types

typedef associated_type identity_result_type
 Associated type; if not defined in concept_map automatically detected as result of identity.

Public Member Functions

identity_result_type identity (Operation, Element)
 Identity element of Operation.


Detailed Description

template<typename Operation, typename Element>
struct algebra::Monoid< Operation, Element >

Concept Monoid.

Parameters:
Operation A functor implementing a binary operation
Element The type upon the binary operation is defined
Refinement of:
Notation:
op Object of type Operation
x Object of type Element
Invariant:
Neutrality from right op( x, identity(op, x) ) == x
Neutrality from left op( identity(op, x), x ) == x

The documentation for this struct was generated from the following file:


algebra::Monoid< Operation, Element > Struct Template Reference -- MTL 4 -- Peter Gottschling and Andrew Lumsdaine -- Generated on 24 Aug 2009 by Doxygen 1.5.9 -- Copyright 2008-09 by TU Dresden and the Trustees of Indiana University.