oalg-base-1.1.4.0: Algebraic structures on oriented entities and limits as a tool kit to solve algebraic problems.
Copyright(c) Erich Gut
LicenseBSD3
Maintainerzerich.gut@gmail.com
Safe HaskellSafe-Inferred
LanguageHaskell2010

OAlg.Hom.Additive

Description

homomorphisms between Additive structures

Synopsis

Additive

class (EmbeddableMorphism h Add, HomFibred h) => HomAdditive h Source #

type family of homomorphisms between Additive structures.

Property Let h be a type instance of the class HomAdditive, then for all a, b and f in h a b holds:

  1. For all r in Root a holds: amap f (zero r) == zero (rmap f r).
  2. For all x and y in a with root x == root y holds: amap f (x + y) ) == amap f x + amap f y.

Such a h will be called a family of homomorphisms between additive structures and an entity f of h a b a additive homomorphism between a and b.

Instances

Instances details
HomAdditive h => HomAdditive (Path h) Source # 
Instance details

Defined in OAlg.Hom.Additive

(Semiring r, Commutative r) => HomAdditive (HomSymbol r) Source # 
Instance details

Defined in OAlg.Entity.Matrix.Vector

(TransformableOp s, ForgetfulFbrOrt s, ForgetfulAdd s, ForgetfulTyp s, Typeable s) => HomAdditive (HomOp s) Source # 
Instance details

Defined in OAlg.Hom.Additive

(ForgetfulAdd s, ForgetfulTyp s, Typeable s) => HomAdditive (IdHom s) Source # 
Instance details

Defined in OAlg.Hom.Additive

(TransformableOp s, ForgetfulFbrOrt s, ForgetfulAdd s, ForgetfulTyp s, Typeable s) => HomAdditive (IsoOp s) Source # 
Instance details

Defined in OAlg.Hom.Additive

(HomAdditive h, HomFibredOriented h) => HomAdditive (OpHom h) Source # 
Instance details

Defined in OAlg.Hom.Additive

(TransformableOp s, ForgetfulDst s, ForgetfulTyp s, Typeable s) => HomAdditive (IsoOpMap Matrix s) Source # 
Instance details

Defined in OAlg.Entity.Matrix.Definition

(TransformableOp s, ForgetfulDst s, ForgetfulTyp s, Typeable s) => HomAdditive (OpMap Matrix s) Source # 
Instance details

Defined in OAlg.Entity.Matrix.Definition

Proposition

prpHomAdd1 :: HomAdditive h => h a b -> Root a -> Statement Source #

validity according to OAlg.Hom.Additive.

prpHomAdd2 :: HomAdditive h => h a b -> Adbl2 a -> Statement Source #

validity according to OAlg.Hom.Additive.