| Copyright | (c) Erich Gut |
|---|---|
| License | BSD3 |
| Maintainer | zerich.gut@gmail.com |
| Safe Haskell | None |
| Language | Haskell2010 |
OAlg.Data.FinitelyPresentable
Description
Finitely presentable Points within Distributive structures.
Synopsis
- newtype FinitelyPresentable (s :: Site) (i :: N' -> Type -> Type) a = 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
- newtype Splitable (s :: Site) (i :: N' -> Type -> Type) d = 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)
- data FinitePresentation (s :: Site) (i :: N' -> Type -> Type) a where
- 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
- generator :: forall (i :: N' -> Type -> Type) a. FinitePresentation 'To i a -> SomeSliceN 'From i a
- embedding :: forall (i :: N' -> Type -> Type) a. FinitePresentation 'From i a -> SomeSliceN 'To i a
- data SomeSliceN (t :: Site) (i :: N' -> Type -> Type) d where
- 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
- newtype XSomeFreeSliceFromLiftable a = XSomeFreeSliceFromLiftable (Point a -> X (SomeFreeSlice 'From a))
- xsfsfl :: XSomeFreeSliceFromLiftable a -> Point a -> X (SomeFreeSlice 'From a)
- class XStandardSomeFreeSliceFromLiftable a where
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 there is an associated Point a
such that its FinitePresentation s i afinitePoint 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 #
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 be in
GeneratorTo d k' k'' coker ker lft and let
FinitePresentation From i aDiagramChainTo p (g:|g':|Nil) = d
g g' p <<------- p' <------< p''
then holds:
cokeris the cokernel ofg'withgas the shell factor of its universal cone.keris the kernel ofgwithg'as the shell factor of its universal cone.isKernelSliceFromSomeFreeTipk'' k' kervalid.
p'
^ |
/ |
lft h / | g
/ |
/ v
* ---> p
h
Property 2 Let be in
-- EmbeddingFrom d k' k'' ker coker lft then holds the dual of the property 1 above.FinitePresentation To i a
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 |
Instances
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
| Show d => Show (SomeSliceN t i d) Source # | |
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 #
Constructors
| XSomeFreeSliceFromLiftable (Point a -> X (SomeFreeSlice 'From a)) |
Instances
| (Oriented a, XStandardPoint a) => Validable (XSomeFreeSliceFromLiftable a) Source # | |
Defined in OAlg.Data.FinitelyPresentable Methods valid :: XSomeFreeSliceFromLiftable a -> Statement Source # | |
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 and Point a in the range of
SomeFreeSlice (SliceFrom _ h) holds: xStandardSomeFreeSliceFromLiftable p.end h == p