Dual1

libretto.CoreLib.Dual1
trait Dual1[F[_], G[_]]

Evidence that if A is dual to B, then F[A] is dual to G[B].

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Concise view

Value members

Abstract methods

def lInvert[A, Ā](lInvert: One -⚬ Ā |*| A): One -⚬ G[Ā] |*| F[A]
def rInvert[A, Ā](rInvert: A |*| Ā -⚬ One): F[A] |*| G[Ā] -⚬ One

Concrete methods

def apply[A, Ā](ev: Dual[A, Ā]): Dual[F[A], G[Ā]]
def lInvertFlippedTArgs: [Ā, A] => (lInvert: One -⚬ Ā |*| A) => One -⚬ G[Ā] |*| F[A]
def rInvertFlippedTAgs: [Ā, A] => (rInvert: A |*| Ā -⚬ One) => F[A] |*| G[Ā] -⚬ One

Concrete fields

val lInvertVal: [x, y] => (x$1: One -⚬ y |*| x) => One -⚬ G[y] |*| F[x]
val rInvertVal: [x, y] => (x$1: x |*| y -⚬ One) => F[x] |*| G[y] -⚬ One