Interface Tensor<Cat, T, I>

All instance of Tensor must satisfy:

  • forward(leftUnit())(a.compose(i)) == a,
  • backward(leftUnit())(a) == a.compose(i),
  • forward(rightUnit())(i.compose(a)) == a,
  • backward(rightUnit())(a) == i.compose(a).

Type Parameters

  • Cat

  • T

  • I

Hierarchy

Properties

assoc: (<A, B, C>() => Iso<Cat, Instance<Apply2<T, Instance<Apply2<T, C, B>>, A>>, Instance<Apply2<T, C, Instance<Apply2<T, B, A>>>>>)

Type declaration

cat1: Category<Cat>
cat2: Category<Cat>
cat3: Category<Cat>
compose: (<B, C>(funcA) => (<A>(funcB) => Instance<Apply2<Cat, C, A>>))

Type declaration

genericBiMap: (<A, B>(first) => (<C, D>(second) => Instance<Apply2<Cat, Instance<Apply2<T, D, B>>, Instance<Apply2<T, C, A>>>>))

Type declaration

identity: (<A>() => Instance<Apply2<Cat, A, A>>)

Type declaration

leftUnit: (<A>() => Iso<Cat, Get2<T, I, A>, A>)

Type declaration

    • <A>(): Iso<Cat, Get2<T, I, A>, A>
    • Type Parameters

      • A

      Returns Iso<Cat, Get2<T, I, A>, A>

rightUnit: (<A>() => Iso<Cat, Get2<T, A, I>, A>)

Type declaration

    • <A>(): Iso<Cat, Get2<T, A, I>, A>
    • Type Parameters

      • A

      Returns Iso<Cat, Get2<T, A, I>, A>

Generated using TypeDoc