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.Category.Definition

Description

categories of morphisms. We adapted the concept of categories form Category to better cover our needs.

Synopsis

Category

class Morphism c => Category c where Source #

category of morphisms.

Properties Let c be a type instance of the class Category, then holds:

  1. For all types x, y and f in c x y holds: cOne (range f) . f = f and f . cOne (domain f) = f.
  2. For all types w, x, y, z and f in c x w, g in c y x, h in c z y holds: f . (g . h) = (f . g) . h.

Methods

cOne :: Struct (ObjectClass c) x -> c x x Source #

the identity morphism for an eligible x.

(.) :: c y z -> c x y -> c x z infixr 9 Source #

Instances

Instances details
Category (Homomorphous s) Source # 
Instance details

Defined in OAlg.Category.Definition

Morphism m => Category (Path m) Source # 
Instance details

Defined in OAlg.Category.Path

Methods

cOne :: Struct (ObjectClass (Path m)) x -> Path m x x Source #

(.) :: Path m y z -> Path m x y -> Path m x z Source #

Category c => Category (Op2 c) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

cOne :: Struct (ObjectClass (Op2 c)) x -> Op2 c x x Source #

(.) :: Op2 c y z -> Op2 c x y -> Op2 c x z Source #

Category (IdHom s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Methods

cOne :: Struct (ObjectClass (IdHom s)) x -> IdHom s x x Source #

(.) :: IdHom s y z -> IdHom s x y -> IdHom s x z Source #

Category (IsoOp s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Methods

cOne :: Struct (ObjectClass (IsoOp s)) x -> IsoOp s x x Source #

(.) :: IsoOp s y z -> IsoOp s x y -> IsoOp s x z Source #

Category (IsoOpMap f s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Methods

cOne :: Struct (ObjectClass (IsoOpMap f s)) x -> IsoOpMap f s x x Source #

(.) :: IsoOpMap f s y z -> IsoOpMap f s x y -> IsoOpMap f s x z Source #

Category (->) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

cOne :: Struct (ObjectClass (->)) x -> x -> x Source #

(.) :: (y -> z) -> (x -> y) -> x -> z Source #

cOne' :: Category c => p c -> Struct (ObjectClass c) x -> c x x Source #

the cOne to a given Struct (ObjectClass c). The type p c serves only as proxy and cOne' is lazy in it.

Note As ObjectClass may be a non-injective type family, the type checker needs some times a little bit more information to pic the right cOne.

Some basic definitions in the category (->)

id :: x -> x Source #

the identity map.

const :: b -> a -> b Source #

the constant map given by a value in b.

Property Let y be in b then for all x in a holds: const y x is identical to y.

curry :: ((a, b) -> c) -> a -> b -> c Source #

currying a map.

uncurry :: (a -> b -> c) -> (a, b) -> c Source #

uncurrying a map.

fst :: (a, b) -> a Source #

the first component of the pair.

snd :: (a, b) -> b Source #

the second component of the pair.

curry3 :: ((a, b, c) -> d) -> a -> b -> c -> d Source #

currying a map.

uncurry3 :: (a -> b -> c -> d) -> (a, b, c) -> d Source #

uncurrying a map.

Cayleyan

class (Category c, Eq2 c) => Cayleyan2 c where Source #

category of isomorphisms.

Property Let c be a type instance of Cayleyan2, then holds: For all types x, y and f in c x y holds: (invert2 f . f) == cOne (domain f) and (f . invert2 f) == cOne (range f) where (==) = eq2.

Methods

invert2 :: c x y -> c y x Source #

Instances

Instances details
Cayleyan2 (Homomorphous m) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

invert2 :: Homomorphous m x y -> Homomorphous m y x Source #

(Cayleyan2 m, EmbeddableMorphismTyp m) => Cayleyan2 (Path m) Source # 
Instance details

Defined in OAlg.Category.Path

Methods

invert2 :: Path m x y -> Path m y x Source #

Cayleyan2 c => Cayleyan2 (Op2 c) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

invert2 :: Op2 c x y -> Op2 c y x Source #

Cayleyan2 (IdHom s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Methods

invert2 :: IdHom s x y -> IdHom s y x Source #

ForgetfulTyp s => Cayleyan2 (IsoOp s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Methods

invert2 :: IsoOp s x y -> IsoOp s y x Source #

ForgetfulTyp s => Cayleyan2 (IsoOpMap f s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Methods

invert2 :: IsoOpMap f s x y -> IsoOpMap f s y x Source #

Morphism

class Morphism m where Source #

morphism.

Minimal complete definition

homomorphous | domain, range

Associated Types

type ObjectClass m Source #

the object class.

Methods

homomorphous :: m x y -> Homomorphous (ObjectClass m) x y Source #

attests, that the types x and y fulfill the constraints given by Homomorphous (ObjectClass m) x y, i.e both fulfill the constraints given by Structure (ObjectClass m) x and Structure (ObjectClass m) y respectively.

domain :: m x y -> Struct (ObjectClass m) x Source #

attests that the domain type x fulfills the constraints given by Structure (ObjectClass m) x.

range :: m x y -> Struct (ObjectClass m) y Source #

attests that the range type y fulfills the constraints given by Structure (ObjectClass m) y.

Instances

Instances details
Morphism GLApp Source # 
Instance details

Defined in OAlg.Entity.Matrix.GeneralLinearGroup

Associated Types

type ObjectClass GLApp Source #

Morphism TrApp Source # 
Instance details

Defined in OAlg.Entity.Matrix.GeneralLinearGroup

Associated Types

type ObjectClass TrApp Source #

Morphism (Homomorphous s) Source # 
Instance details

Defined in OAlg.Category.Definition

Associated Types

type ObjectClass (Homomorphous s) Source #

Morphism m => Morphism (Path m) Source # 
Instance details

Defined in OAlg.Category.Path

Associated Types

type ObjectClass (Path m) Source #

Methods

homomorphous :: Path m x y -> Homomorphous (ObjectClass (Path m)) x y Source #

domain :: Path m x y -> Struct (ObjectClass (Path m)) x Source #

range :: Path m x y -> Struct (ObjectClass (Path m)) y Source #

Morphism h => Morphism (Op2 h) Source # 
Instance details

Defined in OAlg.Category.Definition

Associated Types

type ObjectClass (Op2 h) Source #

Methods

homomorphous :: Op2 h x y -> Homomorphous (ObjectClass (Op2 h)) x y Source #

domain :: Op2 h x y -> Struct (ObjectClass (Op2 h)) x Source #

range :: Op2 h x y -> Struct (ObjectClass (Op2 h)) y Source #

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

Defined in OAlg.Entity.Matrix.Vector

Associated Types

type ObjectClass (HomSymbol r) Source #

Morphism (SliceFactorDrop s) Source # 
Instance details

Defined in OAlg.Entity.Slice.Definition

Associated Types

type ObjectClass (SliceFactorDrop s) Source #

Morphism (HomOp s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Associated Types

type ObjectClass (HomOp s) Source #

Morphism (IdHom s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Associated Types

type ObjectClass (IdHom s) Source #

Morphism (IsoOp s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Associated Types

type ObjectClass (IsoOp s) Source #

Morphism h => Morphism (OpHom h) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Associated Types

type ObjectClass (OpHom h) Source #

Morphism m => Morphism (Forget t m) Source # 
Instance details

Defined in OAlg.Category.Definition

Associated Types

type ObjectClass (Forget t m) Source #

Methods

homomorphous :: Forget t m x y -> Homomorphous (ObjectClass (Forget t m)) x y Source #

domain :: Forget t m x y -> Struct (ObjectClass (Forget t m)) x Source #

range :: Forget t m x y -> Struct (ObjectClass (Forget t m)) y Source #

(Morphism f, Morphism g, ObjectClass f ~ ObjectClass g) => Morphism (Either2 f g) Source # 
Instance details

Defined in OAlg.Category.Definition

Associated Types

type ObjectClass (Either2 f g) Source #

Methods

homomorphous :: Either2 f g x y -> Homomorphous (ObjectClass (Either2 f g)) x y Source #

domain :: Either2 f g x y -> Struct (ObjectClass (Either2 f g)) x Source #

range :: Either2 f g x y -> Struct (ObjectClass (Either2 f g)) y Source #

(Multiplicative c, Sliced i c) => Morphism (SliceCokernelKernel i c) Source # 
Instance details

Defined in OAlg.Entity.Slice.Adjunction

Associated Types

type ObjectClass (SliceCokernelKernel i c) Source #

Morphism (IsoOpMap f s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Associated Types

type ObjectClass (IsoOpMap f s) Source #

Morphism (OpMap f s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Associated Types

type ObjectClass (OpMap f s) Source #

Methods

homomorphous :: OpMap f s x y -> Homomorphous (ObjectClass (OpMap f s)) x y Source #

domain :: OpMap f s x y -> Struct (ObjectClass (OpMap f s)) x Source #

range :: OpMap f s x y -> Struct (ObjectClass (OpMap f s)) y Source #

Morphism (->) Source # 
Instance details

Defined in OAlg.Category.Definition

Associated Types

type ObjectClass (->) Source #

Methods

homomorphous :: (x -> y) -> Homomorphous (ObjectClass (->)) x y Source #

domain :: (x -> y) -> Struct (ObjectClass (->)) x Source #

range :: (x -> y) -> Struct (ObjectClass (->)) y Source #

data Homomorphous s x y Source #

attest that both x and y have homomorphous structures, i.e. both admit the same constraints given by the parameter s.

Constructors

(Struct s x) :>: (Struct s y) infix 5 

Instances

Instances details
Category (Homomorphous s) Source # 
Instance details

Defined in OAlg.Category.Definition

Cayleyan2 (Homomorphous m) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

invert2 :: Homomorphous m x y -> Homomorphous m y x Source #

Morphism (Homomorphous s) Source # 
Instance details

Defined in OAlg.Category.Definition

Associated Types

type ObjectClass (Homomorphous s) Source #

Eq2 (Homomorphous m) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

eq2 :: Homomorphous m x y -> Homomorphous m x y -> Bool Source #

Show2 (Homomorphous m) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

show2 :: Homomorphous m a b -> String Source #

Show (Homomorphous s x y) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

showsPrec :: Int -> Homomorphous s x y -> ShowS #

show :: Homomorphous s x y -> String #

showList :: [Homomorphous s x y] -> ShowS #

Eq (Homomorphous s x y) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

(==) :: Homomorphous s x y -> Homomorphous s x y -> Bool #

(/=) :: Homomorphous s x y -> Homomorphous s x y -> Bool #

type ObjectClass (Homomorphous s) Source # 
Instance details

Defined in OAlg.Category.Definition

tauHom :: Transformable s t => Homomorphous s x y -> Homomorphous t x y Source #

transforming homomorphous structural attests.

tau1Hom :: Transformable1 f s => Homomorphous s x y -> Homomorphous s (f x) (f y) Source #

transforming homomorphous structural attests.

eqlDomain :: Struct Typ x -> Struct Typ x' -> m x y -> m x' y -> Maybe (x :~: x') Source #

gets for two Typeable types x and x' and for two parameterized types maybe an attest that the domain types are equal.

eqlRange :: Struct Typ y -> Struct Typ y' -> m x y -> m x y' -> Maybe (y :~: y') Source #

gets for two Typeable types y and y' and for two parameterized types maybe an attest that the range types are equal.

eqlMorphism :: Typeable m => Struct Typ x -> Struct Typ x' -> Struct Typ y -> Struct Typ y' -> m x y -> m x' y' -> Maybe (m x y :~: m x' y') Source #

gets maybe an attest that the two given morphisms types are equal.

Applicative

class Applicative h where Source #

family of types having a representation in (->).

Methods

amap :: h a b -> a -> b Source #

application.

Instances

Instances details
Applicative GLApp Source # 
Instance details

Defined in OAlg.Entity.Matrix.GeneralLinearGroup

Methods

amap :: GLApp a b -> a -> b Source #

Applicative TrApp Source # 
Instance details

Defined in OAlg.Entity.Matrix.GeneralLinearGroup

Methods

amap :: TrApp a b -> a -> b Source #

Applicative m => Applicative (Path m) Source # 
Instance details

Defined in OAlg.Category.Path

Methods

amap :: Path m a b -> a -> b Source #

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

Defined in OAlg.Entity.Matrix.Vector

Methods

amap :: HomSymbol r a b -> a -> b Source #

Applicative (SliceFactorDrop s) Source # 
Instance details

Defined in OAlg.Entity.Slice.Definition

Methods

amap :: SliceFactorDrop s a b -> a -> b Source #

ForgetfulOrt s => Applicative (HomOp s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Methods

amap :: HomOp s a b -> a -> b Source #

Applicative (IdHom s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Methods

amap :: IdHom s a b -> a -> b Source #

ForgetfulOrt s => Applicative (IsoOp s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Methods

amap :: IsoOp s a b -> a -> b Source #

Applicative h => Applicative (OpHom h) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Methods

amap :: OpHom h a b -> a -> b Source #

Applicative m => Applicative (Forget t m) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

amap :: Forget t m a b -> a -> b Source #

(Applicative f, Applicative g) => Applicative (Either2 f g) Source # 
Instance details

Defined in OAlg.Category.Applicative

Methods

amap :: Either2 f g a b -> a -> b Source #

(Distributive c, SliceCokernelTo i c, SliceKernelFrom i c) => Applicative (SliceCokernelKernel i c) Source # 
Instance details

Defined in OAlg.Entity.Slice.Adjunction

Methods

amap :: SliceCokernelKernel i c a b -> a -> b Source #

ForgetfulDst s => Applicative (IsoOpMap Matrix s) Source # 
Instance details

Defined in OAlg.Entity.Matrix.Definition

Methods

amap :: IsoOpMap Matrix s a b -> a -> b Source #

ForgetfulOrt s => Applicative (IsoOpMap Path s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Methods

amap :: IsoOpMap Path s a b -> a -> b Source #

ForgetfulDst s => Applicative (OpMap Matrix s) Source # 
Instance details

Defined in OAlg.Entity.Matrix.Definition

Methods

amap :: OpMap Matrix s a b -> a -> b Source #

ForgetfulOrt s => Applicative (OpMap Path s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Methods

amap :: OpMap Path s a b -> a -> b Source #

Applicative (->) Source # 
Instance details

Defined in OAlg.Category.Applicative

Methods

amap :: (a -> b) -> a -> b Source #

($) :: Applicative h => h a b -> a -> b infixr 0 Source #

right associative application on values.

class Applicative1 h f where Source #

family of types having a representation in f a -> f b.

Methods

amap1 :: h a b -> f a -> f b Source #

application.

Instances

Instances details
HomDistributive h => Applicative1 h Matrix Source # 
Instance details

Defined in OAlg.Entity.Matrix.Definition

Methods

amap1 :: h a b -> Matrix a -> Matrix b Source #

HomOriented h => Applicative1 h (Diagram t n m) Source # 
Instance details

Defined in OAlg.Entity.Diagram.Definition

Methods

amap1 :: h a b -> Diagram t n m a -> Diagram t n m b Source #

HomDistributive h => Applicative1 h (Cone Dst p t n m) Source # 
Instance details

Defined in OAlg.Limes.Cone.Definition

Methods

amap1 :: h a b -> Cone Dst p t n m a -> Cone Dst p t n m b Source #

HomMultiplicative h => Applicative1 h (Cone Mlt p t n m) Source # 
Instance details

Defined in OAlg.Limes.Cone.Definition

Methods

amap1 :: h a b -> Cone Mlt p t n m a -> Cone Mlt p t n m b Source #

IsoMultiplicative h => Applicative1 h (Limes Mlt p t n m) Source # 
Instance details

Defined in OAlg.Limes.Definition

Methods

amap1 :: h a b -> Limes Mlt p t n m a -> Limes Mlt p t n m b Source #

IsoDistributive h => Applicative1 h (Limits Dst p t n m) Source # 
Instance details

Defined in OAlg.Limes.Limits

Methods

amap1 :: h a b -> Limits Dst p t n m a -> Limits Dst p t n m b Source #

IsoMultiplicative h => Applicative1 h (Limits Mlt p t n m) Source # 
Instance details

Defined in OAlg.Limes.Limits

Methods

amap1 :: h a b -> Limits Mlt p t n m a -> Limits Mlt p t n m b Source #

Functor f => Applicative1 (->) f Source # 
Instance details

Defined in OAlg.Category.Applicative

Methods

amap1 :: (a -> b) -> f a -> f b Source #

Functorial

class (Applicative c, Category c) => Functorial c Source #

representable categories, i.e. covariant functors from an Applicative category c to (->).

Properties Let c be a type instance of the class Functorial then holds:

  1. For all types x and d in Struct (ObjectClass c) x holds: amap (cOne d) = id.
  2. For all types x, y, z and f in c y z, g in c x y holds: amap (f . g) = amap f . amap g.

Instances

Instances details
(Applicative m, Morphism m) => Functorial (Path m) Source # 
Instance details

Defined in OAlg.Category.Path

Functorial (IdHom s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

ForgetfulOrt s => Functorial (IsoOp s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

ForgetfulDst s => Functorial (IsoOpMap Matrix s) Source # 
Instance details

Defined in OAlg.Entity.Matrix.Definition

ForgetfulOrt s => Functorial (IsoOpMap Path s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Forget

data Forget t m x y where Source #

forgets the ObjectClass of m and sets it to t, under the condition that the ObjectClass of m is Transformable to t.

Constructors

Forget :: Transformable (ObjectClass m) t => m x y -> Forget t m x y 

Instances

Instances details
Applicative m => Applicative (Forget t m) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

amap :: Forget t m a b -> a -> b Source #

(Morphism m, ForgetfulTyp t) => EmbeddableMorphismTyp (Forget t m) Source # 
Instance details

Defined in OAlg.Category.Definition

Morphism m => Morphism (Forget t m) Source # 
Instance details

Defined in OAlg.Category.Definition

Associated Types

type ObjectClass (Forget t m) Source #

Methods

homomorphous :: Forget t m x y -> Homomorphous (ObjectClass (Forget t m)) x y Source #

domain :: Forget t m x y -> Struct (ObjectClass (Forget t m)) x Source #

range :: Forget t m x y -> Struct (ObjectClass (Forget t m)) y Source #

Eq2 m => Eq2 (Forget t m) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

eq2 :: Forget t m x y -> Forget t m x y -> Bool Source #

Show2 m => Show2 (Forget t m) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

show2 :: Forget t m a b -> String Source #

Validable2 m => Validable2 (Forget t m) Source # 
Instance details

Defined in OAlg.Data.Validable

Methods

valid2 :: Forget t m x y -> Statement Source #

(Entity2 h, Typeable t) => Entity2 (Forget t h) Source # 
Instance details

Defined in OAlg.Entity.Definition

(HomMultiplicative h, Transformable1 Op t, ForgetfulMlt t, ForgetfulTyp t, Typeable t) => HomMultiplicative (Forget t h) Source # 
Instance details

Defined in OAlg.Hom.Multiplicative.Definition

(HomOriented h, Transformable1 Op t, ForgetfulOrt t, ForgetfulTyp t, Typeable t) => HomOriented (Forget t h) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Methods

pmap :: Forget t h a b -> Point a -> Point b Source #

(Morphism m, Transformable s t) => EmbeddableMorphism (Forget s m) t Source # 
Instance details

Defined in OAlg.Category.Definition

Show2 m => Show (Forget t m x y) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

showsPrec :: Int -> Forget t m x y -> ShowS #

show :: Forget t m x y -> String #

showList :: [Forget t m x y] -> ShowS #

Eq2 m => Eq (Forget t m x y) Source # 
Instance details

Defined in OAlg.Category.Definition

Methods

(==) :: Forget t m x y -> Forget t m x y -> Bool #

(/=) :: Forget t m x y -> Forget t m x y -> Bool #

Validable2 m => Validable (Forget t m x y) Source # 
Instance details

Defined in OAlg.Data.Validable

Methods

valid :: Forget t m x y -> Statement Source #

type ObjectClass (Forget t m) Source # 
Instance details

Defined in OAlg.Category.Definition

type ObjectClass (Forget t m) = t

Embeddable

class (Morphism m, Transformable (ObjectClass m) t) => EmbeddableMorphism m t Source #

morphism for which its object class can be embedded into the given structure.

Instances

Instances details
EmbeddableMorphism GLApp Typ Source # 
Instance details

Defined in OAlg.Entity.Matrix.GeneralLinearGroup

EmbeddableMorphism GLApp Mlt Source # 
Instance details

Defined in OAlg.Entity.Matrix.GeneralLinearGroup

EmbeddableMorphism GLApp Ort Source # 
Instance details

Defined in OAlg.Entity.Matrix.GeneralLinearGroup

EmbeddableMorphism TrApp Typ Source # 
Instance details

Defined in OAlg.Entity.Matrix.GeneralLinearGroup

EmbeddableMorphism TrApp Ort Source # 
Instance details

Defined in OAlg.Entity.Matrix.GeneralLinearGroup

EmbeddableMorphism m t => EmbeddableMorphism (Path m) t Source # 
Instance details

Defined in OAlg.Category.Path

EmbeddableMorphism m t => EmbeddableMorphism (Op2 m) t Source # 
Instance details

Defined in OAlg.Category.Definition

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

Defined in OAlg.Entity.Matrix.Vector

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

Defined in OAlg.Entity.Matrix.Vector

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

Defined in OAlg.Entity.Matrix.Vector

EmbeddableMorphism (SliceFactorDrop s) Typ Source # 
Instance details

Defined in OAlg.Entity.Slice.Definition

EmbeddableMorphism (SliceFactorDrop s) Mlt Source # 
Instance details

Defined in OAlg.Entity.Slice.Definition

EmbeddableMorphism (SliceFactorDrop s) Ort Source # 
Instance details

Defined in OAlg.Entity.Slice.Definition

Transformable s t => EmbeddableMorphism (HomOp s) t Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Transformable s t => EmbeddableMorphism (IdHom s) t Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Transformable s t => EmbeddableMorphism (IsoOp s) t Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

EmbeddableMorphism h Add => EmbeddableMorphism (OpHom h) Add Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

EmbeddableMorphism h Typ => EmbeddableMorphism (OpHom h) Typ Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

EmbeddableMorphism h Dst => EmbeddableMorphism (OpHom h) Dst Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

EmbeddableMorphism h Fbr => EmbeddableMorphism (OpHom h) Fbr Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

EmbeddableMorphism h FbrOrt => EmbeddableMorphism (OpHom h) FbrOrt Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

EmbeddableMorphism h Mlt => EmbeddableMorphism (OpHom h) Mlt Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

EmbeddableMorphism h Ort => EmbeddableMorphism (OpHom h) Ort Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

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

Defined in OAlg.Entity.Matrix.Vector

(Morphism m, Transformable s t) => EmbeddableMorphism (Forget s m) t Source # 
Instance details

Defined in OAlg.Category.Definition

(Multiplicative c, Sliced i c) => EmbeddableMorphism (SliceCokernelKernel i c) Typ Source # 
Instance details

Defined in OAlg.Entity.Slice.Adjunction

(Multiplicative c, Sliced i c) => EmbeddableMorphism (SliceCokernelKernel i c) Mlt Source # 
Instance details

Defined in OAlg.Entity.Slice.Adjunction

(Multiplicative c, Sliced i c) => EmbeddableMorphism (SliceCokernelKernel i c) Ort Source # 
Instance details

Defined in OAlg.Entity.Slice.Adjunction

Transformable s t => EmbeddableMorphism (IsoOpMap f s) t Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

Transformable s t => EmbeddableMorphism (OpMap f s) t Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

class EmbeddableMorphism m Typ => EmbeddableMorphismTyp m Source #

helper class to avoid undecidable instances.

Instances

Instances details
EmbeddableMorphismTyp GLApp Source # 
Instance details

Defined in OAlg.Entity.Matrix.GeneralLinearGroup

EmbeddableMorphismTyp TrApp Source # 
Instance details

Defined in OAlg.Entity.Matrix.GeneralLinearGroup

EmbeddableMorphismTyp m => EmbeddableMorphismTyp (Path m) Source # 
Instance details

Defined in OAlg.Category.Path

EmbeddableMorphismTyp m => EmbeddableMorphismTyp (Op2 m) Source # 
Instance details

Defined in OAlg.Category.Definition

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

Defined in OAlg.Entity.Matrix.Vector

EmbeddableMorphismTyp (SliceFactorDrop s) Source # 
Instance details

Defined in OAlg.Entity.Slice.Definition

ForgetfulTyp s => EmbeddableMorphismTyp (HomOp s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

ForgetfulTyp s => EmbeddableMorphismTyp (IdHom s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

ForgetfulTyp s => EmbeddableMorphismTyp (IsoOp s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

EmbeddableMorphismTyp h => EmbeddableMorphismTyp (OpHom h) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

(Morphism m, ForgetfulTyp t) => EmbeddableMorphismTyp (Forget t m) Source # 
Instance details

Defined in OAlg.Category.Definition

(Multiplicative c, Sliced i c) => EmbeddableMorphismTyp (SliceCokernelKernel i c) Source # 
Instance details

Defined in OAlg.Entity.Slice.Adjunction

ForgetfulTyp s => EmbeddableMorphismTyp (IsoOpMap f s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

ForgetfulTyp s => EmbeddableMorphismTyp (OpMap f s) Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition