Copyright | (c) Erich Gut |
---|---|
License | BSD3 |
Maintainer | zerich.gut@gmail.com |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
sliced structures with an assigned free Point
of some given dimension.
Synopsis
- newtype Free k c = Free (Any k)
- freeN :: Free k c -> N
- castFree :: Free k x -> Free k y
- isFree :: (Eq (Point c), Sliced (Free k) c) => Free k c -> Point c -> Bool
- data SomeFree c where
- data SomeFreeSlice s c where
- SomeFreeSlice :: (Attestable k, Sliced (Free k) c) => Slice s (Free k) c -> SomeFreeSlice s c
- data LimesFree s p t n m a where
- limesFree :: LimesFree s p t n m a -> Limes s p t n m a
- data DiagramFree t n m a = DiagramFree (FinList n (SomeFree a)) (Diagram t n m a)
- dgfDiagram :: DiagramFree t n m a -> Diagram t n m a
- data KernelSliceFromSomeFreeTip n i c where
- KernelSliceFromSomeFreeTip :: (Attestable k', Sliced (Free k') c) => Free k' c -> i c -> Kernel n c -> KernelSliceFromSomeFreeTip n i c
- ksfKernel :: KernelSliceFromSomeFreeTip n i c -> Kernel n c
- type KernelFree = LimesFree Dst Projective (Parallel LeftToRight) N2
- type KernelDiagramFree = DiagramFree (Parallel LeftToRight) N2
- type CokernelDiagramFree = DiagramFree (Parallel RightToLeft) N2
- type PullbackFree n c = LimesFree Mlt Projective (Star To) (n + 1) n c
- type PullbackDiagramFree n c = DiagramFree (Star To) (n + 1) n c
Free
index for free points within a Multiplicative
structure c
.
>>>
lengthN (Free attest :: Free N3 c)
3
Instances
Eq1 (Free k) Source # | |
Show1 (Free k) Source # | |
Attestable k => Singleton1 (Free k) Source # | |
Defined in OAlg.Entity.Slice.Free | |
Validable1 (Free k) Source # | |
Typeable k => Entity1 (Free k) Source # | |
Defined in OAlg.Entity.Slice.Free | |
Show (Free k c) Source # | |
Eq (Free k c) Source # | |
Validable (Free k c) Source # | |
(Typeable c, Typeable k) => Entity (Free k c) Source # | |
Defined in OAlg.Entity.Slice.Free |
isFree :: (Eq (Point c), Sliced (Free k) c) => Free k c -> Point c -> Bool Source #
check for being a free point, i.e. if it is equal to slicePoint
.
Definition Let n
be in
and Free
n cp
in
then
we call Point
cp
of order n
if and only if
.slicePoint
i ==
p
data SomeFreeSlice s c where Source #
some free point within a Multiplicative
structure c
.
SomeFreeSlice :: (Attestable k, Sliced (Free k) c) => Slice s (Free k) c -> SomeFreeSlice s c |
Instances
Show c => Show (SomeFreeSlice s c) Source # | |
Defined in OAlg.Entity.Slice.Free showsPrec :: Int -> SomeFreeSlice s c -> ShowS # show :: SomeFreeSlice s c -> String # showList :: [SomeFreeSlice s c] -> ShowS # | |
Oriented c => Validable (SomeFreeSlice s c) Source # | |
Defined in OAlg.Entity.Slice.Free valid :: SomeFreeSlice s c -> Statement Source # |
Limes
data LimesFree s p t n m a where Source #
predicate for a limes with a free tip of its universal cone.
Property Let 'LimesFree k l
be in
and
then holds: LimesFree
s p t n m a
where slicePoint
k ==
tt =
. tip
(universalCone
l)
LimesFree :: (Attestable k, Sliced (Free k) a) => Free k a -> Limes s p t n m a -> LimesFree s p t n m a |
data DiagramFree t n m a Source #
predicate for diagrams with free points.
DiagramFree (FinList n (SomeFree a)) (Diagram t n m a) |
Instances
Oriented a => Show (DiagramFree t n m a) Source # | |
Defined in OAlg.Entity.Slice.Free showsPrec :: Int -> DiagramFree t n m a -> ShowS # show :: DiagramFree t n m a -> String # showList :: [DiagramFree t n m a] -> ShowS # | |
Oriented a => Validable (DiagramFree t n m a) Source # | |
Defined in OAlg.Entity.Slice.Free valid :: DiagramFree t n m a -> Statement Source # |
dgfDiagram :: DiagramFree t n m a -> Diagram t n m a Source #
the underlying diagram.
data KernelSliceFromSomeFreeTip n i c where Source #
predicate for a kernel with a start point of its diagram given by the slice index and a free universal tip.
Property Let
be in
KernelSliceFromSomeFreeTip
k' i ker
, then holds:KernelSliceFromSomeFreeTip
n c
whereslicePoint
i==
s
.DiagramParallelLR
s _ _ =diagram
ker
.slicePoint
k'==
tip
(universalCone
ker)
KernelSliceFromSomeFreeTip :: (Attestable k', Sliced (Free k') c) => Free k' c -> i c -> Kernel n c -> KernelSliceFromSomeFreeTip n i c |
Instances
(Oriented c, Sliced i c) => Show (KernelSliceFromSomeFreeTip n i c) Source # | |
Defined in OAlg.Entity.Slice.Free showsPrec :: Int -> KernelSliceFromSomeFreeTip n i c -> ShowS # show :: KernelSliceFromSomeFreeTip n i c -> String # showList :: [KernelSliceFromSomeFreeTip n i c] -> ShowS # | |
(Distributive c, Sliced i c, XStandardOrtSiteTo c, Typeable n) => Validable (KernelSliceFromSomeFreeTip n i c) Source # | |
Defined in OAlg.Entity.Slice.Free valid :: KernelSliceFromSomeFreeTip n i c -> Statement Source # |
ksfKernel :: KernelSliceFromSomeFreeTip n i c -> Kernel n c Source #
the underlying kernel.
Kernel
type KernelFree = LimesFree Dst Projective (Parallel LeftToRight) N2 Source #
kernel of a diagram with free points.
type KernelDiagramFree = DiagramFree (Parallel LeftToRight) N2 Source #
kerne diagram with free points.
Cokernel
type CokernelDiagramFree = DiagramFree (Parallel RightToLeft) N2 Source #
cokernel diagrams with free points.
Pullback
type PullbackFree n c = LimesFree Mlt Projective (Star To) (n + 1) n c Source #
pullback of a diagram with free points.
type PullbackDiagramFree n c = DiagramFree (Star To) (n + 1) n c Source #
pullback diagram with free points.