agda / agda

Agda is a dependently typed programming language / interactive theorem prover.

Home Page:https://wiki.portal.chalmers.se/agda/pmwiki.php

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Regression in 2.6.4 in `rewrite` with instances

andreasabel opened this issue · comments

@buggymcbugfix writes:

The fix for this issue (#7122) does not resolve the regression in the case of rewrite:

open import Agda.Builtin.Equality

record Semiring : Set₁ where
  field
    Carrier   : Set
    one       : Carrier
    mul       : Carrier  Carrier  Carrier
    left-unit : (r : Carrier)  mul one r ≡ r

open Semiring {{...}}

foo : {{R : Semiring}} (r : Carrier)  mul one r ≡ r
foo r rewrite left-unit r = refl

Error:

Semiring.mul R (Semiring.one R) r != r of type Semiring.Carrier R
when checking that the expression refl has type
Semiring.mul R (Semiring.one R) r ≡ r