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.Structure.Oriented.Opposite

Description

predicate for the opposite.

Synopsis

Op

newtype Op x Source #

Predicate for the opposite of a type x.

Constructors

Op x 

Instances

Instances details
(TransformableType r, TransformableOp r) => DualisableGId r Op Source # 
Instance details

Defined in OAlg.Category.Dualisable

(TransformableType r, TransformableOp r) => DualisableGPnt r Op Source # 
Instance details

Defined in OAlg.Category.Dualisable

(TransformableType s, TransformableFbrOrt s, TransformableOp s, TransformableAdd s) => DualisableAdditive s Op Source # 
Instance details

Defined in OAlg.Hom.Additive

(TransformableType s, TransformableFbrOrt s, TransformableOp s) => DualisableFibred s Op Source # 
Instance details

Defined in OAlg.Hom.Fibred

(TransformableType s, TransformableOrt s, TransformableFbrOrt s, TransformableOp s) => DualisableFibredOriented s Op Source # 
Instance details

Defined in OAlg.Hom.FibredOriented

(TransformableOrt s, TransformableMlt s, TransformableOp s, TransformableType s) => DualisableMultiplicative s Op Source # 
Instance details

Defined in OAlg.Hom.Multiplicative

(TransformableType s, TransformableOrt s, TransformableOp s) => DualisableOriented s Op Source # 
Instance details

Defined in OAlg.Hom.Oriented.Definition

TransformableGRefl Op Dst Source # 
Instance details

Defined in OAlg.Structure.Distributive.Definition

TransformableGRefl Op DstX Source # 
Instance details

Defined in OAlg.Structure.Distributive.Proposition

TransformableGRefl Op FbrOrt Source # 
Instance details

Defined in OAlg.Structure.FibredOriented

TransformableGRefl Op Mlt Source # 
Instance details

Defined in OAlg.Structure.Multiplicative.Definition

TransformableGRefl Op Ort Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

TransformableGRefl Op OrtX Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

TransformableGRefl Op OrtSiteX Source # 
Instance details

Defined in OAlg.Structure.Oriented.X

TransformableG Op Dst Dst Source # 
Instance details

Defined in OAlg.Structure.Distributive.Definition

Methods

tauG :: Struct Dst x -> Struct Dst (Op x) Source #

TransformableG Op DstX DstX Source # 
Instance details

Defined in OAlg.Structure.Distributive.Proposition

Methods

tauG :: Struct DstX x -> Struct DstX (Op x) Source #

TransformableG Op FbrOrt FbrOrt Source # 
Instance details

Defined in OAlg.Structure.FibredOriented

Methods

tauG :: Struct FbrOrt x -> Struct FbrOrt (Op x) Source #

TransformableG Op FbrOrtX FbrOrtX Source # 
Instance details

Defined in OAlg.Structure.FibredOriented

Methods

tauG :: Struct FbrOrtX x -> Struct FbrOrtX (Op x) Source #

TransformableG Op Mlt Mlt Source # 
Instance details

Defined in OAlg.Structure.Multiplicative.Definition

Methods

tauG :: Struct Mlt x -> Struct Mlt (Op x) Source #

TransformableG Op MltX MltX Source # 
Instance details

Defined in OAlg.Structure.Multiplicative.Proposition

Methods

tauG :: Struct MltX x -> Struct MltX (Op x) Source #

TransformableG Op EqEOrt EqEOrt Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

Methods

tauG :: Struct EqEOrt x -> Struct EqEOrt (Op x) Source #

TransformableG Op Ort Ort Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

Methods

tauG :: Struct Ort x -> Struct Ort (Op x) Source #

TransformableG Op OrtX OrtX Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

Methods

tauG :: Struct OrtX x -> Struct OrtX (Op x) Source #

TransformableG Op OrtSiteX OrtSiteX Source # 
Instance details

Defined in OAlg.Structure.Oriented.X

DualisableG OrtX EqualExtOrt Op Id Source # 
Instance details

Defined in OAlg.Category.Dualisable

Methods

toDualG :: Struct OrtX x -> EqualExtOrt (Id x) (Id (Op x)) Source #

fromDualG :: Struct OrtX x -> EqualExtOrt (Id (Op x)) (Id x) Source #

DualisableG OrtX EqualExtOrt Op Pnt Source # 
Instance details

Defined in OAlg.Category.Dualisable

Methods

toDualG :: Struct OrtX x -> EqualExtOrt (Pnt x) (Pnt (Op x)) Source #

fromDualG :: Struct OrtX x -> EqualExtOrt (Pnt (Op x)) (Pnt x) Source #

ReflexiveG OrtX EqualExtOrt Op Id Source # 
Instance details

Defined in OAlg.Category.Dualisable

Methods

reflG :: Struct OrtX x -> Inv2 EqualExtOrt (Id x) (Id (Op (Op x))) Source #

ReflexiveG OrtX EqualExtOrt Op Pnt Source # 
Instance details

Defined in OAlg.Category.Dualisable

Methods

reflG :: Struct OrtX x -> Inv2 EqualExtOrt (Pnt x) (Pnt (Op (Op x))) Source #

Sliced i c => Sliced i (Op c) Source # 
Instance details

Defined in OAlg.Entity.Slice.Sliced

Methods

slicePoint :: i (Op c) -> Point (Op c) Source #

XStandardOrtSite 'To a => XStandardOrtSite 'From (Op a) Source # 
Instance details

Defined in OAlg.Structure.Oriented.X

XStandardOrtSite 'From a => XStandardOrtSite 'To (Op a) Source # 
Instance details

Defined in OAlg.Structure.Oriented.X

TransformableG Op (Sld i) (Sld i) Source # 
Instance details

Defined in OAlg.Entity.Slice.Sliced

Methods

tauG :: Struct (Sld i) x -> Struct (Sld i) (Op x) Source #

TransformableG Op (Alg k) (Alg k) Source # 
Instance details

Defined in OAlg.Structure.Algebraic.Definition

Methods

tauG :: Struct (Alg k) x -> Struct (Alg k) (Op x) Source #

(TransformableOrt s, TransformableType s, TransformableOp s) => HomSlicedOriented i (Sub (s, Sld i) (HomDisjEmpty s Op)) Source # 
Instance details

Defined in OAlg.Entity.Slice.Sliced

(TransformableOrt s, TransformableType s, TransformableOp s) => HomSlicedOriented i (Sub (s, Sld i) (IsoO s Op)) Source # 
Instance details

Defined in OAlg.Entity.Slice.Sliced

(Transformable s Ort, TransformableOp (s, Sld i)) => HomSlicedOriented i (HomDisjEmpty (s, Sld i) Op) Source # 
Instance details

Defined in OAlg.Entity.Slice.Sliced

TransformableGRefl Op (Dst, Sld i) Source # 
Instance details

Defined in OAlg.Entity.Slice.Sliced

TransformableGRefl Op (Mlt, Sld i) Source # 
Instance details

Defined in OAlg.Entity.Slice.Sliced

TransformableGRefl Op (Ort, Sld i) Source # 
Instance details

Defined in OAlg.Entity.Slice.Sliced

TransformableG Op (Dst, t) Dst Source # 
Instance details

Defined in OAlg.Structure.Distributive.Definition

Methods

tauG :: Struct (Dst, t) x -> Struct Dst (Op x) Source #

TransformableG Op (Mlt, t) Mlt Source # 
Instance details

Defined in OAlg.Structure.Multiplicative.Definition

Methods

tauG :: Struct (Mlt, t) x -> Struct Mlt (Op x) Source #

TransformableG Op (Ort, t) Ort Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

Methods

tauG :: Struct (Ort, t) x -> Struct Ort (Op x) Source #

(Transformable r Type, TransformableOp r) => DualisableG r (->) Op Id Source # 
Instance details

Defined in OAlg.Category.Dualisable

Methods

toDualG :: Struct r x -> Id x -> Id (Op x) Source #

fromDualG :: Struct r x -> Id (Op x) -> Id x Source #

(Transformable r Type, TransformableOp r, Transformable r FbrOrt) => DualisableG r (->) Op Rt Source # 
Instance details

Defined in OAlg.Category.Dualisable

Methods

toDualG :: Struct r x -> Rt x -> Rt (Op x) Source #

fromDualG :: Struct r x -> Rt (Op x) -> Rt x Source #

(Transformable r Type, TransformableOp r) => DualisableG r (->) Op Pnt Source # 
Instance details

Defined in OAlg.Category.Dualisable

Methods

toDualG :: Struct r x -> Pnt x -> Pnt (Op x) Source #

fromDualG :: Struct r x -> Pnt (Op x) -> Pnt x Source #

Transformable r Type => ReflexiveG r (->) Op Id Source # 
Instance details

Defined in OAlg.Category.Dualisable

Methods

reflG :: Struct r x -> Inv2 (->) (Id x) (Id (Op (Op x))) Source #

Transformable r Type => ReflexiveG r (->) Op Rt Source # 
Instance details

Defined in OAlg.Category.Dualisable

Methods

reflG :: Struct r x -> Inv2 (->) (Rt x) (Rt (Op (Op x))) Source #

Transformable r Type => ReflexiveG r (->) Op Pnt Source # 
Instance details

Defined in OAlg.Category.Dualisable

Methods

reflG :: Struct r x -> Inv2 (->) (Pnt x) (Pnt (Op (Op x))) Source #

TransformableG Op (s, Sld i) (Sld i) Source # 
Instance details

Defined in OAlg.Entity.Slice.Sliced

Methods

tauG :: Struct (s, Sld i) x -> Struct (Sld i) (Op x) Source #

TransformableObjectClass OrtX (HomDisj OrtX Op (HomEmpty OrtX)) Source # 
Instance details

Defined in OAlg.Hom.Definition

TransformableGObjectClassDomain Id (HomDisj OrtX Op (HomEmpty OrtX)) EqEOrt Source # 
Instance details

Defined in OAlg.Hom.Definition

TransformableGObjectClassDomain Pnt (HomDisj OrtX Op (HomEmpty OrtX)) EqEOrt Source # 
Instance details

Defined in OAlg.Hom.Definition

Read x => Read (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

Show x => Show (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

Methods

showsPrec :: Int -> Op x -> ShowS #

show :: Op x -> String #

showList :: [Op x] -> ShowS #

Eq x => Eq (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

Methods

(==) :: Op x -> Op x -> Bool #

(/=) :: Op x -> Op x -> Bool #

Ord x => Ord (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

Methods

compare :: Op x -> Op x -> Ordering #

(<) :: Op x -> Op x -> Bool #

(<=) :: Op x -> Op x -> Bool #

(>) :: Op x -> Op x -> Bool #

(>=) :: Op x -> Op x -> Bool #

max :: Op x -> Op x -> Op x #

min :: Op x -> Op x -> Op x #

Logical a => Logical (Op a) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

Methods

(||) :: Op a -> Op a -> Op a Source #

(&&) :: Op a -> Op a -> Op a Source #

Validable x => Validable (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

Methods

valid :: Op x -> Statement Source #

XStandard x => XStandard (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

Methods

xStandard :: X (Op x) Source #

HomOrientedSlicedFree (Inv2 (HomFree Dst)) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

HomOrientedSlicedFree (Inv2 (HomFree Mlt)) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

(TransformableOrt s, TransformableType s, TransformableOp s) => HomOrientedSlicedFree (HomFree s) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

SlicedFree x => SlicedFree (Op x) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

Methods

slicedFree :: forall (k :: N'). Attestable k => Struct (Sld (Free k)) (Op x) Source #

(Abelian a, FibredOriented a) => Abelian (Op a) Source # 
Instance details

Defined in OAlg.Structure.Additive.Definition

Methods

negate :: Op a -> Op a Source #

(-) :: Op a -> Op a -> Op a Source #

ztimes :: Z -> Op a -> Op a Source #

(Additive a, FibredOriented a) => Additive (Op a) Source # 
Instance details

Defined in OAlg.Structure.Additive.Definition

Methods

zero :: Root (Op a) -> Op a Source #

(+) :: Op a -> Op a -> Op a Source #

ntimes :: N -> Op a -> Op a Source #

(FibredOriented x, XStandardAdd x) => XStandardAdd (Op x) Source # 
Instance details

Defined in OAlg.Structure.Additive.Proposition

Methods

xStandardAdd :: XAdd (Op x) Source #

Algebraic a => Algebraic (Op a) Source # 
Instance details

Defined in OAlg.Structure.Algebraic.Definition

Distributive d => Distributive (Op d) Source # 
Instance details

Defined in OAlg.Structure.Distributive.Definition

(FibredOriented x, XStandardDst x) => XStandardDst (Op x) Source # 
Instance details

Defined in OAlg.Structure.Distributive.Proposition

Methods

xStandardDst :: XDst (Op x) Source #

FibredOriented x => Fibred (Op x) Source # 
Instance details

Defined in OAlg.Structure.FibredOriented

Methods

root :: Op x -> Root (Op x) Source #

EqRoot x => EqRoot (Op x) Source # 
Instance details

Defined in OAlg.Structure.Fibred.Root

ShowRoot x => ShowRoot (Op x) Source # 
Instance details

Defined in OAlg.Structure.Fibred.Root

SingletonRoot x => SingletonRoot (Op x) Source # 
Instance details

Defined in OAlg.Structure.Fibred.Root

TypeableRoot x => TypeableRoot (Op x) Source # 
Instance details

Defined in OAlg.Structure.Fibred.Root

ValidableRoot x => ValidableRoot (Op x) Source # 
Instance details

Defined in OAlg.Structure.Fibred.Root

FibredOriented x => FibredOriented (Op x) Source # 
Instance details

Defined in OAlg.Structure.FibredOriented

Lattice a => Lattice (Op a) Source # 
Instance details

Defined in OAlg.Structure.Lattice.Definition

Cayleyan c => Cayleyan (Op c) Source # 
Instance details

Defined in OAlg.Structure.Multiplicative.Definition

Commutative c => Commutative (Op c) Source # 
Instance details

Defined in OAlg.Structure.Multiplicative.Definition

Invertible c => Invertible (Op c) Source # 
Instance details

Defined in OAlg.Structure.Multiplicative.Definition

Methods

tryToInvert :: Op c -> Solver (Op c) Source #

invert :: Op c -> Op c Source #

isInvertible :: Op c -> Bool Source #

zpower :: Op c -> Z -> Op c Source #

Multiplicative c => Multiplicative (Op c) Source # 
Instance details

Defined in OAlg.Structure.Multiplicative.Definition

Methods

one :: Point (Op c) -> Op c Source #

(*) :: Op c -> Op c -> Op c Source #

npower :: Op c -> N -> Op c Source #

XStandardMlt x => XStandardMlt (Op x) Source # 
Instance details

Defined in OAlg.Structure.Multiplicative.Proposition

Methods

xStandardMlt :: XMlt (Op x) Source #

Oriented q => Oriented (Op q) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

Methods

orientation :: Op q -> Orientation (Point (Op q)) Source #

start :: Op q -> Point (Op q) Source #

end :: Op q -> Point (Op q) Source #

EqPoint x => EqPoint (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

OrdPoint x => OrdPoint (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

ShowPoint x => ShowPoint (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

SingletonPoint x => SingletonPoint (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

TypeablePoint x => TypeablePoint (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

ValidablePoint x => ValidablePoint (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

XStandardPoint x => XStandardPoint (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

XStandardOrtOrientation x => XStandardOrtOrientation (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.X

XStandardOrtSiteTo x => XStandardOrtSiteFrom (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.X

XStandardOrtSiteFrom x => XStandardOrtSiteTo (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.X

PartiallyOrdered x => PartiallyOrdered (Op x) Source # 
Instance details

Defined in OAlg.Structure.PartiallyOrdered.Definition

Methods

(<<=) :: Op x -> Op x -> Bool Source #

(Vectorial v, FibredOriented v) => Vectorial (Op v) Source # 
Instance details

Defined in OAlg.Structure.Vectorial.Definition

Associated Types

type Scalar (Op v) 
Instance details

Defined in OAlg.Structure.Vectorial.Definition

type Scalar (Op v) = Scalar v

Methods

(!) :: Scalar (Op v) -> Op v -> Op v Source #

(NaturalDiagrammatic (Inv2 (HomFree s)) d ('Parallel 'LeftToRight) N2 N1, NaturalDiagrammatic (Inv2 (HomFree s)) d ('Parallel 'RightToLeft) N2 N1, p ~ Dual (Dual p), t ~ Dual (Dual t)) => ApplicativeG (SDualBi (ConeLiftable s p d t n m)) (Inv2 (HomFree s)) (->) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

Methods

amapG :: Inv2 (HomFree s) x y -> SDualBi (ConeLiftable s p d t n m) x -> SDualBi (ConeLiftable s p d t n m) y Source #

p ~ Dual (Dual p) => ApplicativeG (SDualBi (LiftableFree p)) (Inv2 (HomFree Dst)) (->) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

Methods

amapG :: Inv2 (HomFree Dst) x y -> SDualBi (LiftableFree p) x -> SDualBi (LiftableFree p) y Source #

p ~ Dual (Dual p) => ApplicativeG (SDualBi (LiftableFree p)) (Inv2 (HomFree Mlt)) (->) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

Methods

amapG :: Inv2 (HomFree Mlt) x y -> SDualBi (LiftableFree p) x -> SDualBi (LiftableFree p) y Source #

(NaturalDiagrammatic (Inv2 (HomFree s)) d ('Parallel 'LeftToRight) N2 N1, NaturalDiagrammatic (Inv2 (HomFree s)) d ('Parallel 'RightToLeft) N2 N1, p ~ Dual (Dual p), t ~ Dual (Dual t)) => FunctorialG (SDualBi (ConeLiftable s p d t n m)) (Inv2 (HomFree s)) (->) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

p ~ Dual (Dual p) => FunctorialG (SDualBi (LiftableFree p)) (Inv2 (HomFree Dst)) (->) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

p ~ Dual (Dual p) => FunctorialG (SDualBi (LiftableFree p)) (Inv2 (HomFree Mlt)) (->) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

Attestable k => HomSlicedOriented (Free k) (Sub (Dst, SldFr) (HomDisjEmpty Dst Op)) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

Transformable s Typ => EqExt (HomDisjEmpty s Op) Source # 
Instance details

Defined in OAlg.Hom.Definition

Methods

(.=.) :: HomDisjEmpty s Op x y -> HomDisjEmpty s Op x y -> Statement Source #

FunctorialOriented (Sub (Dst, SldFr) (HomDisjEmpty Dst Op)) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

FunctorialOriented (Sub (Mlt, SldFr) (HomDisjEmpty Mlt Op)) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

Transformable (s, Sld i) s => TransformableObjectClass (s, Sld i) (HomDisjEmpty s Op) Source # 
Instance details

Defined in OAlg.Entity.Slice.Sliced

TransformableObjectClass (Dst, SldFr) (HomDisj Dst Op (HomEmpty Dst)) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

TransformableObjectClass (Mlt, SldFr) (HomDisj Mlt Op (HomEmpty Mlt)) Source # 
Instance details

Defined in OAlg.Entity.Slice.Free

type Root (Op x) Source # 
Instance details

Defined in OAlg.Structure.Fibred.Root

type Root (Op x) = Root x
type Point (Op x) Source # 
Instance details

Defined in OAlg.Structure.Oriented.Opposite

type Point (Op x) = Point x
type Scalar (Op v) Source # 
Instance details

Defined in OAlg.Structure.Vectorial.Definition

type Scalar (Op v) = Scalar v

fromOp :: Op x -> x Source #

from Op x.

fromOpOp :: Op (Op x) -> x Source #

from Op (Op x).

toOpG :: (x -> y) -> Op x -> Op y Source #

the induced mapping.

Transformable

class TransformableG Op s s => TransformableOp s Source #

helper class to avoid undecidable instances.

tauOp :: Transformable1 Op s => Struct s x -> Struct s (Op x) Source #

tau for Op.

structOrtOp :: Struct Ort x -> Struct Ort (Op x) Source #

attest that if x is Oriented then also Op x is Oriented.

class TransformableGRefl Op s => TransformableGReflOp s Source #

helper class to avoid undecidable instances.