oalg-base-3.0.0.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 HaskellNone
LanguageHaskell2010

OAlg.Data.FinitelyPresentable

Description

Finitely presentable Points within Distributive structures.

Synopsis

Finitely Presentable

newtype FinitelyPresentable (s :: Site) (i :: N' -> Type -> Type) a Source #

predicate for finitely presentable Distributive structures a, where for each point p in Point a there is an associated FinitePresentation s i a such that its finitePoint is equal to p.

Constructors

FinitelyPresentable (Point a -> FinitePresentation s i a) 

finitePresentation :: forall (s :: Site) (i :: N' -> Type -> Type) a. FinitelyPresentable s i a -> Point a -> FinitePresentation s i a Source #

the finite presentation of a given point and according to a finitaly presentable structure.

Splitable

newtype Splitable (s :: Site) (i :: N' -> Type -> Type) d Source #

predicate for splitable slices.

Propterties Let d be Oriented and Sliced ( i k) d for all k, then holds:

  1. Let Splitable splt be in Splitable From i d then holds: For all k and s in Slice From (i k) d holds: end s' == end s for all s' in splt s.

Constructors

Splitable (forall (k :: N'). (Attestable k, Sliced (i k) d) => Slice s (i k) d -> FinList k (Slice s (i N1) d)) 

split :: forall (k :: N') (i :: N' -> Type -> Type) d (s :: Site). (Attestable k, Sliced (i k) d) => Splitable s i d -> Slice s (i k) d -> FinList k (Slice s (i N1) d) Source #

splitting of a slice of dimension i k.

Finite Presentation

data FinitePresentation (s :: Site) (i :: N' -> Type -> Type) a where Source #

finitely presentable Points within a Distributive structure.

Property 1 Let GeneratorTo d k' k'' coker ker lft be in FinitePresentation From i a and let DiagramChainTo p (g:|g':|Nil) = d

         g           g'
  p <<------- p' <------< p''

then holds:

  1. coker is the cokernel of g' with g as the shell factor of its universal cone.
  2. ker is the kernel of g with g' as the shell factor of its universal cone.
  3. KernelSliceFromSomeFreeTip k'' k' ker is valid.
  4. For all h in Slice From (i k) a with end h == p holds:

    1. lft h is valid.
    2. orientation (lft h) == start h :> start g.
    3. g *> lft h == h.
             p'
           ^ |
          /  |
  lft h  /   | g
        /    |
       /     v
      * ---> p
         h

Property 2 Let EmbeddingFrom d k' k'' ker coker lft be in -- FinitePresentation To i a then holds the dual of the property 1 above.

Constructors

GeneratorTo :: forall (k' :: N') (i :: N' -> Type -> Type) a (k'' :: N'). (Attestable k', Sliced (i k') a, Attestable k'', Sliced (i k'') a) => Diagram ('Chain 'To) N3 N2 a -> i k' a -> i k'' a -> Cokernel N1 a -> Kernel N1 a -> (forall (k :: N'). Slice 'From (i k) a -> Slice 'From (i k) a) -> FinitePresentation 'To i a 
EmbeddingFrom :: forall (k' :: N') (i :: N' -> Type -> Type) a (k'' :: N'). (Attestable k', Sliced (i k') a, Attestable k'', Sliced (i k'') a) => Diagram ('Chain 'From) N3 N2 a -> i k' a -> i k'' a -> Kernel N1 a -> Cokernel N1 a -> (forall (k :: N'). Slice 'To (i k) a -> Slice 'To (i k) a) -> FinitePresentation 'From i a 

finitePoint :: forall (s :: Site) (i :: N' -> Type -> Type) a. FinitePresentation s i a -> Point a Source #

the underlying finite point given by the finite presentation.

generator :: forall (i :: N' -> Type -> Type) a. FinitePresentation 'To i a -> SomeSliceN 'From i a Source #

the generator

embedding :: forall (i :: N' -> Type -> Type) a. FinitePresentation 'From i a -> SomeSliceN 'To i a Source #

the embedding of the finite point.

data SomeSliceN (t :: Site) (i :: N' -> Type -> Type) d where Source #

some slice.

Constructors

SomeSliceN :: forall (n :: N') (i :: N' -> Type -> Type) d (t :: Site). (Attestable n, Sliced (i n) d) => Slice t (i n) d -> SomeSliceN t i d 

Instances

Instances details
Show d => Show (SomeSliceN t i d) Source # 
Instance details

Defined in OAlg.Data.FinitelyPresentable

Methods

showsPrec :: Int -> SomeSliceN t i d -> ShowS #

show :: SomeSliceN t i d -> String #

showList :: [SomeSliceN t i d] -> ShowS #

X

newtype XSomeFreeSliceFromLiftable a Source #

random variable of factors in a having a free start and as end-point the given one.

Instances

Instances details
(Oriented a, XStandardPoint a) => Validable (XSomeFreeSliceFromLiftable a) Source # 
Instance details

Defined in OAlg.Data.FinitelyPresentable

xsfsfl :: XSomeFreeSliceFromLiftable a -> Point a -> X (SomeFreeSlice 'From a) Source #

the underlying random variable for some free slice.

class XStandardSomeFreeSliceFromLiftable a where Source #

random variable of lift-able free slice froms.

Property Let a be in instance of XStandardSomeFreeSliceFromLiftable then holds: For all p in Point a and SomeFreeSlice (SliceFrom _ h) in the range of xStandardSomeFreeSliceFromLiftable p holds: end h == p.