2017-11-08 12 views
1

Agda標準ライブラリでは、我々はRawMonadRawApplicative、などがあります。..AgdaのHaskell型式のメーターが `Raw`で始まっているのはなぜですか?

RawMonad : ∀ {f} → (Set f → Set f) → Set _ 
RawMonad M = RawIMonad {I = ⊤} (λ _ _ → M) 

RawMonadZero : ∀ {f} → (Set f → Set f) → Set _ 
RawMonadZero M = RawIMonadZero {I = ⊤} (λ _ _ → M) 

RawMonadPlus : ∀ {f} → (Set f → Set f) → Set _ 
RawMonadPlus M = RawIMonadPlus {I = ⊤} (λ _ _ → M) 

は、なぜ彼らはRawで始まるのですか? AgdaにMonadまたはApplicativeはありますか?

答えて

3

私はNils Anders Danielsson(彼らの著者、私は疑いがあります)は、それぞれの法律の証拠が含まれていないという理由でそれを聞いたことがあります。 AFAIK、Agda標準ライブラリには、そのような証明を含むこれらのバージョンはありませんが、必要に応じて独自のロールを使用することができます。

+0

なぜstdlibに実装されていないのですか?証明にはさまざまな方法があるからですか? – ice1000

+1

また、あなたの答えに感謝します。私は毎日の投票限度に達しており、明日あなたの答えに投票します。 – ice1000

+1

@ ice1000どのような平等の概念を使うべきかは不明だからです。 – gallais

関連する問題