【发布时间】:2023-03-07 21:32:01
【问题描述】:
在我研究Typoclassopedia 的过程中,我遇到了这个证明,但我不确定我的证明是否正确。问题是:
人们可能会想象交换定律的一种变体,它说明了将纯函数应用于有效论证的内容。使用上述定律,证明:
pure f <*> x = pure (flip ($)) <*> x <*> pure f
其中“高于法律”指向Applicative Laws,简而言之:
pure id <*> v = v -- identity law
pure f <*> pure x = pure (f x) -- homomorphism
u <*> pure y = pure ($ y) <*> u -- interchange
u <*> (v <*> w) = pure (.) <*> u <*> v <*> w -- composition
我的证明如下:
pure f <*> x = pure (($) f) <*> x -- identical
pure f <*> x = pure ($) <*> pure f <*> x -- homomorphism
pure f <*> x = pure (flip ($)) <*> x <*> pure f -- flip arguments
【问题讨论】:
标签: haskell applicative category-theory