[Agda] Raw algebraic structures in the standard library
Nils Anders Danielsson
nad at cse.gu.se
Sat Aug 17 12:08:16 CEST 2019
On 05/08/2019 17.38, Jacques Carette wrote:
> My understanding (which is perhaps wrong) is that the whole point of
> the Raw* structures is to do Haskell-like computations, where one is
> visibly not carrying around any extra proof baggage, 'by
> construction'. These computations work in a 'trust me' environment.
>
> Ideally one would work with Magma, Monoid, Ring, etc, but without
> knowing for sure that all proofs will be considered irrelevant [so
> that they don't interfere with computation time], it's tempting to
> just hand-erase all those pesky proofs, just to be sure.
Typically one computes with the carrier type, not the full structure.
I think I included the raw structures to make it possible to use
structures that do not support all the laws, or to avoid having to prove
all the laws. For instance, I don't think it is possible (ignoring bugs)
to prove the monad laws for the TC monad (with propositional equality as
the equality relation).
--
/NAD
More information about the Agda
mailing list