| Copyright | (c) Erich Gut |
|---|---|
| License | BSD3 |
| Maintainer | zerich.gut@gmail.com |
| Safe Haskell | None |
| Language | Haskell2010 |
OAlg.Hom.Fibred
Contents
Description
definition of homomorphisms between Fibred structures
Synopsis
- class (Morphism h, Applicative h, ApplicativeRoot h, Transformable (ObjectClass h) Fbr) => HomFibred (h :: Type -> Type -> Type)
- class (Functorial h, FunctorialRoot h) => FunctorialFibred (h :: Type -> Type -> Type)
- class (DualisableG s (->) o Id, DualisableG s (->) o Rt, Transformable s Fbr) => DualisableFibred s (o :: Type -> Type)
- toDualStk :: DualisableFibred s o => q o -> Struct s x -> x -> o x
- toDualRt :: forall s (o :: Type -> Type) q x. DualisableFibred s o => q o -> Struct s x -> Root x -> Root (o x)
- xsoFbrOrtX :: s ~ FbrOrtX => X (SomeObjectClass (SHom s s Op (HomEmpty s)))
- prpHomFbr :: (HomFibred h, Show2 h) => h x y -> x -> Statement
- prpHomDisjOpFbr :: Statement
- prpHomFibred :: forall (h :: Type -> Type -> Type). (HomFibred h, Show2 h) => X (SomeApplication h) -> Statement
Fibred
class (Morphism h, Applicative h, ApplicativeRoot h, Transformable (ObjectClass h) Fbr) => HomFibred (h :: Type -> Type -> Type) Source #
homomorphisms between Fibred structures.
Property Let , then for all HomFibred hx, y and h in
h x y holds:
Instances
| HomFibred h => HomFibred (Inv2 h) Source # | |
Defined in OAlg.Hom.Fibred | |
| HomFibred h => HomFibred (Path h) Source # | |
Defined in OAlg.Hom.Fibred | |
| TransformableFbrOrt s => HomFibred (Ornt s) Source # | |
Defined in OAlg.Data.Ornt | |
| (Semiring r, Commutative r) => HomFibred (HomSymbol r) Source # | |
Defined in OAlg.Entity.Matrix.Vector | |
| TransformableFbr s => HomFibred (HomEmpty s) Source # | |
Defined in OAlg.Hom.Fibred | |
| (Transformable s Fbr, HomFibred h) => HomFibred (Sub s h) Source # | |
Defined in OAlg.Hom.Fibred | |
| (TransformableGRefl o s, DualisableDistributive s o, TransformableGRefl Matrix s, TransformableDst s) => HomFibred (HomCo Matrix s o) Source # | |
Defined in OAlg.Entity.Matrix.Definition | |
| (HomFibred h, DualisableFibred s o) => HomFibred (HomDisj s o h) Source # | |
Defined in OAlg.Hom.Fibred | |
| (HomFibred h, Disjunctive2 h) => HomFibred (Variant2 v h) Source # | |
Defined in OAlg.Hom.Fibred | |
class (Functorial h, FunctorialRoot h) => FunctorialFibred (h :: Type -> Type -> Type) Source #
functorial morphism, i.e. Functorial and FunctorialRoot.
Note It's not mandatory being an homomorphism!
Instances
| (TransformableGRefl o s, DualisableDistributive s o, TransformableGRefl Matrix s, TransformableDst s) => FunctorialFibred (HomCo Matrix s o) Source # | |
Defined in OAlg.Entity.Matrix.Definition | |
| (HomFibred h, DualisableFibred s o) => FunctorialFibred (HomDisj s o h) Source # | |
Defined in OAlg.Hom.Fibred | |
Duality
class (DualisableG s (->) o Id, DualisableG s (->) o Rt, Transformable s Fbr) => DualisableFibred s (o :: Type -> Type) Source #
duality according to o on FibredOriented structures.
Properties Let , then
for all DualisableFibred s ox and s in holds:Struct s x
where q is any proxy for o.
Instances
| (TransformableType s, TransformableFbrOrt s, TransformableOp s) => DualisableFibred s Op Source # | |
Defined in OAlg.Hom.Fibred | |
toDualStk :: DualisableFibred s o => q o -> Struct s x -> x -> o x Source #
the dual stalk ginven by and induced by
DualisableFibred s o.DualisableG s (->) o Id
toDualRt :: forall s (o :: Type -> Type) q x. DualisableFibred s o => q o -> Struct s x -> Root x -> Root (o x) Source #
the dual root ginven by and induced by
DualisableFibred s o.DualisableG s (->) o Rt
X
xsoFbrOrtX :: s ~ FbrOrtX => X (SomeObjectClass (SHom s s Op (HomEmpty s))) Source #
random variable for some FibredOriented object classes.
Proposition
prpHomFbr :: (HomFibred h, Show2 h) => h x y -> x -> Statement Source #
validity according to HomFibred.
prpHomDisjOpFbr :: Statement Source #
validity of according to HomDisjEmpty FbrOrt OpHomFibred.