noether-0.0.1: Math in Haskell.

Safe HaskellNone
LanguageHaskell2010

Noether.Algebra.Vector.Tags

Documentation

data UVectorLift Source #

Instances

(Unbox b, KnownNat n, ActsK k lr op a b s) => ActsK k lr op a (UVector n b) (ActsTagged UVectorLift s) Source #

Actions of a on b extend to actions of a on 'UVector n b'.

(Unbox v, KnownNat n, NeutralK k op v s) => NeutralK k op (UVector n v) (NeutralTagged UVectorLift s) Source #

Neutral elements for addition and multiplication.

(Unbox v, MagmaK k op v s) => MagmaK k op (UVector n v) (MagmaTagged UVectorLift s) Source #

Lifting addition and multiplication coordinatewise (Hadamard?)

(Unbox v, KnownNat n, CancellativeK k op v s) => CancellativeK k op (UVector n v) (CancellativeTagged UVectorLift s) Source #

Pointwise negation and inversion.

Note that v^n has (a lot of) nontrivial zerodivisors even if v does not. The zerodivisors are all elements with a zero(divisor) in some coordinate, e.g. (1,0) and (0,1) are zerodivisors in R^2.

(This corresponds to the idea that the Spec of a product ring is disconnected!)

data BVectorLift Source #

Instances

ActsK k1 lr op a b s => ActsK k1 lr op a (BVector k n b) (ActsTagged BVectorLift s) Source #

Actions of a on b extend to actions of a on 'BVector n b'.

Methods

actK :: Proxy lr a -> Proxy ActsE s -> Proxy Side op -> BVector k n b -> ActsTagged BVectorLift s -> ActsTagged BVectorLift s Source #

(KnownNat n, NeutralK k op v s) => NeutralK k op (BVector Nat n v) (NeutralTagged BVectorLift s) Source #

Neutral elements for addition and multiplication.

MagmaK k1 op v s => MagmaK k1 op (BVector k n v) (MagmaTagged BVectorLift s) Source #

Lifting addition and multiplication coordinatewise (Hadamard?)

CancellativeK k1 op v s => CancellativeK k1 op (BVector k n v) (CancellativeTagged BVectorLift s) Source #

Pointwise negation and inversion.

Note that v^n has (a lot of) nontrivial zerodivisors even if v does not. The zerodivisors are all elements with a zero(divisor) in some coordinate, e.g. (1,0) and (0,1) are zerodivisors in R^2.

(This corresponds to the idea that the Spec of a product ring is disconnected!)