given_Dual_One_One

libretto.puro.PuroLib.given_Dual_One_One
object given_Dual_One_One extends Dual[dsl.One, dsl.One]

Attributes

Graph
Supertypes
trait Dual[dsl.One, dsl.One]
class Object
trait Matchable
class Any
Self type

Members list

Inherited
  • Not inherited
  • Dual

Value members

Inherited methods

def law_lr_id: Equal[dsl.One dsl.-⚬ dsl.One]

Law stating that lInvert followed by rInvert is identity.

Law stating that lInvert followed by rInvert is identity.

Attributes

Inherited from:
Dual
def law_rl_id: Equal[dsl.One dsl.-⚬ dsl.One]

Law stating that rInvert followed by lInvert is identity.

Law stating that rInvert followed by lInvert is identity.

Attributes

Inherited from:
Dual

Concrete fields

val lInvert: dsl.One dsl.-⚬ (dsl.One dsl.|*| dsl.One)

Reverses the output that flows against the -⚬ arrow (say it is the B output) to its dual (A) flowing in the direction of the arrow.

Reverses the output that flows against the -⚬ arrow (say it is the B output) to its dual (A) flowing in the direction of the arrow.

 ┏━━━━━┓
 ┃ l   ┞─┐
 ┃ I ┌─╎B│
 ┃ n ┆ ┟─┘
 ┃ v ┆ ┃
 ┃ e ┆ ┞─┐
 ┃ r └→╎A│
 ┃ t   ┟─┘
 ┗━━━━━┛

Attributes

val rInvert: (dsl.One dsl.|*| dsl.One) dsl.-⚬ dsl.One

Reverses the input that flows along the -⚬ arrow (say it is the A input) to its dual (B) flowing against the direction of the arrow.

Reverses the input that flows along the -⚬ arrow (say it is the A input) to its dual (B) flowing against the direction of the arrow.

 ┏━━━━━━━┓
 ┞─┐   r ┃
 ╎A│─┐ I ┃
 ┟─┘ ┆ n ┃
 ┃   ┆ v ┃
 ┞─┐ ┆ e ┃
 ╎B│←┘ r ┃
 ┟─┘   t ┃
 ┗━━━━━━━┛

Attributes