NV
Size: a a a
ᛒ
ᛒ
ᛒ
λ
λ
ᛒ
S
NV
Oℕ
trait Polsa[Pomyta[_], Value[_, _], $$[_, _], Prost]
:def id[A: Pomyta]: Value[A, A]
def planerka[A: Pomyta, B: Pomyta, C: Pomyta](f: Value[A, B], g: Value[B, C]): Value[A, C]
def razmen[A: Pomyta, B: Pomyta]: Value[A $$ B, B $$ A]
def parallelno[A: Pomyta, B: Pomyta, C: Pomyta, D: Pomyta](f: Value[A, B], g: Value[C, D]): Value[A $$ C, B $$ D]
def perehod[A: Pomyta, B: Pomyta, C: Pomyta]: Value[A $$( B$$ C), A $$ B $$ C]
def dat: Value[A, A $$ Prost]
def vzyat: Value[A $$ Prost, A]
trait
DAG[Pomyta, Value[_, _]
, $$[_, _], Prost, Business[_, _], And, Zero](
using Polsa[Pomyta, Value, $$, Prost]):
type Just[X, Y] = Prost Value Business[A, B]
def id[A: Pomyta]: Just[A, A]
def andThen[A: Pomyta, B: Pomyta]: (Business[A, B] $$ y: Business[B, C]) Value Business[A, C]
def switch[A: Pomyta, B: Pomyta]: Just[A And B, B And A]
def product[A: Pomyta, B: Pomyta, C: Pomyta, D: Pomyta]: (Business[A, B] $$ Value[C, D] Value Business[A And C, B And D]
def assoc[A: Pomyta, B: Pomyta, C: Pomyta]: Just[A And( B And C), A And B And C]
def make: Just[A, A And Zero]
def remove: Just[A And Zero, A]
...
w
trait Polsa[Pomyta[_], Value[_, _], $$[_, _], Prost]
:def id[A: Pomyta]: Value[A, A]
def planerka[A: Pomyta, B: Pomyta, C: Pomyta](f: Value[A, B], g: Value[B, C]): Value[A, C]
def razmen[A: Pomyta, B: Pomyta]: Value[A $$ B, B $$ A]
def parallelno[A: Pomyta, B: Pomyta, C: Pomyta, D: Pomyta](f: Value[A, B], g: Value[C, D]): Value[A $$ C, B $$ D]
def perehod[A: Pomyta, B: Pomyta, C: Pomyta]: Value[A $$( B$$ C), A $$ B $$ C]
def dat: Value[A, A $$ Prost]
def vzyat: Value[A $$ Prost, A]
trait
DAG[Pomyta, Value[_, _]
, $$[_, _], Prost, Business[_, _], And, Zero](
using Polsa[Pomyta, Value, $$, Prost]):
type Just[X, Y] = Prost Value Business[A, B]
def id[A: Pomyta]: Just[A, A]
def andThen[A: Pomyta, B: Pomyta]: (Business[A, B] $$ y: Business[B, C]) Value Business[A, C]
def switch[A: Pomyta, B: Pomyta]: Just[A And B, B And A]
def product[A: Pomyta, B: Pomyta, C: Pomyta, D: Pomyta]: (Business[A, B] $$ Value[C, D] Value Business[A And C, B And D]
def assoc[A: Pomyta, B: Pomyta, C: Pomyta]: Just[A And( B And C), A And B And C]
def make: Just[A, A And Zero]
def remove: Just[A And Zero, A]
...
w
trait Polsa[Pomyta[_], Value[_, _], $$[_, _], Prost]
:def id[A: Pomyta]: Value[A, A]
def planerka[A: Pomyta, B: Pomyta, C: Pomyta](f: Value[A, B], g: Value[B, C]): Value[A, C]
def razmen[A: Pomyta, B: Pomyta]: Value[A $$ B, B $$ A]
def parallelno[A: Pomyta, B: Pomyta, C: Pomyta, D: Pomyta](f: Value[A, B], g: Value[C, D]): Value[A $$ C, B $$ D]
def perehod[A: Pomyta, B: Pomyta, C: Pomyta]: Value[A $$( B$$ C), A $$ B $$ C]
def dat: Value[A, A $$ Prost]
def vzyat: Value[A $$ Prost, A]
trait
DAG[Pomyta, Value[_, _]
, $$[_, _], Prost, Business[_, _], And, Zero](
using Polsa[Pomyta, Value, $$, Prost]):
type Just[X, Y] = Prost Value Business[A, B]
def id[A: Pomyta]: Just[A, A]
def andThen[A: Pomyta, B: Pomyta]: (Business[A, B] $$ y: Business[B, C]) Value Business[A, C]
def switch[A: Pomyta, B: Pomyta]: Just[A And B, B And A]
def product[A: Pomyta, B: Pomyta, C: Pomyta, D: Pomyta]: (Business[A, B] $$ Value[C, D] Value Business[A And C, B And D]
def assoc[A: Pomyta, B: Pomyta, C: Pomyta]: Just[A And( B And C), A And B And C]
def make: Just[A, A And Zero]
def remove: Just[A And Zero, A]
...
ᛒ
ᛒ
Α
S
C
C
Oℕ
trait Polsa[Pomyta[_], Value[_, _], $$[_, _], Prost]
:def id[A: Pomyta]: Value[A, A]
def planerka[A: Pomyta, B: Pomyta, C: Pomyta](f: Value[A, B], g: Value[B, C]): Value[A, C]
def razmen[A: Pomyta, B: Pomyta]: Value[A $$ B, B $$ A]
def parallelno[A: Pomyta, B: Pomyta, C: Pomyta, D: Pomyta](f: Value[A, B], g: Value[C, D]): Value[A $$ C, B $$ D]
def perehod[A: Pomyta, B: Pomyta, C: Pomyta]: Value[A $$( B$$ C), A $$ B $$ C]
def dat: Value[A, A $$ Prost]
def vzyat: Value[A $$ Prost, A]
trait
DAG[Pomyta, Value[_, _]
, $$[_, _], Prost, Business[_, _], And, Zero](
using Polsa[Pomyta, Value, $$, Prost]):
type Just[X, Y] = Prost Value Business[A, B]
def id[A: Pomyta]: Just[A, A]
def andThen[A: Pomyta, B: Pomyta]: (Business[A, B] $$ y: Business[B, C]) Value Business[A, C]
def switch[A: Pomyta, B: Pomyta]: Just[A And B, B And A]
def product[A: Pomyta, B: Pomyta, C: Pomyta, D: Pomyta]: (Business[A, B] $$ Value[C, D] Value Business[A And C, B And D]
def assoc[A: Pomyta, B: Pomyta, C: Pomyta]: Just[A And( B And C), A And B And C]
def make: Just[A, A And Zero]
def remove: Just[A And Zero, A]
...