Copyright | (c) Nils Alex 2020 |
---|---|
License | MIT |
Maintainer | nils.alex@fau.de |
Safe Haskell | None |
Language | Haskell2010 |
Definitions of Kronecker deltas \(\delta^{a}_{\hphantom ab}\) (identity automorphisms) for arbitrary vector spaces.
Synopsis
- delta :: forall (id :: Symbol) (n :: Nat) (a :: Symbol) (b :: Symbol) (r :: Rank) v. ('['(VSpace id n, ConCov (a :| '[]) (b :| '[]))] ~ r, TailR (TailR r) ~ '[], Sane (TailR r) ~ True, SingI n, Num v) => Tensor r v
- delta' :: forall (id :: Symbol) (n :: Nat) (a :: Symbol) (b :: Symbol) (r :: Rank) v. (KnownNat n, Num v, '['(VSpace id n, ConCov (a :| '[]) (b :| '[]))] ~ r, TailR (TailR r) ~ '[], Sane (TailR r) ~ True) => Sing id -> Sing n -> Sing a -> Sing b -> Tensor r v
- someDelta :: Num v => Demote Symbol -> Demote Nat -> Demote Symbol -> Demote Symbol -> T v
Kronecker delta
delta :: forall (id :: Symbol) (n :: Nat) (a :: Symbol) (b :: Symbol) (r :: Rank) v. ('['(VSpace id n, ConCov (a :| '[]) (b :| '[]))] ~ r, TailR (TailR r) ~ '[], Sane (TailR r) ~ True, SingI n, Num v) => Tensor r v Source #
The Kronecker delta \(\delta^a_{\hphantom ab} \) for a given
with contravariant
index label VSpace
id na
and covariant index label b
.
delta' :: forall (id :: Symbol) (n :: Nat) (a :: Symbol) (b :: Symbol) (r :: Rank) v. (KnownNat n, Num v, '['(VSpace id n, ConCov (a :| '[]) (b :| '[]))] ~ r, TailR (TailR r) ~ '[], Sane (TailR r) ~ True) => Sing id -> Sing n -> Sing a -> Sing b -> Tensor r v Source #
The Kronecker delta \(\delta^a_{\hphantom ab} \) for a given
with contravariant
index label VSpace
id na
and covariant index label b
. Labels and dimension
are passed explicitly as singletons.
someDelta :: Num v => Demote Symbol -> Demote Nat -> Demote Symbol -> Demote Symbol -> T v Source #
The Kronecker delta \(\delta^a_{\hphantom ab} \) for a given
with contravariant
index label VSpace
id na
and covariant index label b
. Labels and dimension
are passed as values. Result is existentially quantified.