Additive Magmas

This chapter deals with domains that are closed under addition +, which are called near-additive magmas in &GAP;. Together with the domains closed under multiplication * (see ), they are the basic algebraic structures. In many cases, the addition is commutative (see ), the domain is called an additive magma then. Every module (see ), vector space (see ), ring (see ), or field (see ) is an additive magma. In the cases of all (near-)additive magma-with-zero or (near-)additive magma-with-inverses, additional additive structure is present (see ).

(Near-)Additive Magma Categories
<#Include Label="IsNearAdditiveMagma"> <#Include Label="IsNearAdditiveMagmaWithZero"> <#Include Label="IsNearAdditiveGroup"> <#Include Label="IsAdditiveMagma"> <#Include Label="IsAdditiveMagmaWithZero"> <#Include Label="IsAdditiveGroup">

(Near-)Additive Magma Generation

This section describes functions that create additive magmas from generators (see , , ), the underlying operations for which methods can be installed (see , , ) and functions for forming additive submagmas (see , , ).

<#Include Label="NearAdditiveMagma"> <#Include Label="NearAdditiveMagmaWithZero"> <#Include Label="NearAdditiveGroup"> <#Include Label="NearAdditiveMagmaByGenerators"> <#Include Label="NearAdditiveMagmaWithZeroByGenerators"> <#Include Label="NearAdditiveGroupByGenerators"> <#Include Label="SubnearAdditiveMagma"> <#Include Label="SubnearAdditiveMagmaWithZero"> <#Include Label="SubnearAdditiveGroup">

Attributes and Properties for (Near-)Additive Magmas
<#Include Label="IsAdditivelyCommutative"> <#Include Label="GeneratorsOfNearAdditiveMagma"> <#Include Label="GeneratorsOfNearAdditiveMagmaWithZero"> <#Include Label="GeneratorsOfNearAdditiveGroup"> <#Include Label="AdditiveNeutralElement"> <#Include Label="TrivialSubnearAdditiveMagmaWithZero">

Operations for (Near-)Additive Magmas
<#Include Label="ClosureNearAdditiveGroup"> <#Include Label="ShowAdditionTable">