You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
andreasabel opened this issue
May 1, 2017
· 2 comments
Labels
metaMetavariables, insertion of implicit arguments, etcrecordsRecord declarations, literals, constructors and updatestype: bugIssues and pull requests about actual bugs
data_≡_ {A :Set} (x : A) : A →Setwhererefl : x ≡ x
record_×_ (A B :Set) :Setwhereconstructor_,_fieldproj₁ : A
proj₂ : B
open_×_postulate A :Setmutualrecord R :Setwherefoo : A → A
foo =λ x →{!!}field bar : A -- with this field, the meta is not longer solvedinst :∀ (p : A × A) → foo (proj₁ p) ≡ proj₁ p
inst p = refl
Without the field, the meta is solved by ?0 := x. When the field is present, the internal representation of the meta seems to be messed up such that the expandProjectedVar magic no longer works.
_21 := λ p → refl [blocked on problem 29]
[29, 32] ?0 (proj₁ p) = proj₁ p : A
This issue should be fixed along with #2500.
Also, the fix for #707 does not do the correct thing for this example (see #2257). However, even if we replace the interaction meta by an underscore, it is not solved in the presence of the field.
The text was updated successfully, but these errors were encountered:
andreasabel
added
type: bug
Issues and pull requests about actual bugs
meta
Metavariables, insertion of implicit arguments, etc
records
Record declarations, literals, constructors and updates
labels
May 1, 2017
recordR:Setwherefoo : A → A
foo =λ x →{!!}field bar : A -- with this field, the meta is not longer solvedinst :∀ (p : A × A) → foo (proj₁ p) ≡ proj₁ p
inst p = refl -- (proj₁ p) != proj₁ p of type Afield boo : A
But the corresponding field telescope checks without problems:
no-record : (let foo : A → A; foo =λ x →{!!}) (bar : A)
(let inst : (p : A × A) → (proj₁ p) ≡ proj₁ p
inst =λ p → refl) (boo : A) → A
no-recordbar boo = boo
This is part of a set of related issues with record types that require a major overhaul of how we handle definitions inside a record module. Attempting a quick fix would likely be a waste of time, so I'm bumping this to the next milestone.
metaMetavariables, insertion of implicit arguments, etcrecordsRecord declarations, literals, constructors and updatestype: bugIssues and pull requests about actual bugs
Without the field, the meta is solved by
?0 := x
. When the field is present, the internal representation of the meta seems to be messed up such that theexpandProjectedVar
magic no longer works.This issue should be fixed along with #2500.
Also, the fix for #707 does not do the correct thing for this example (see #2257). However, even if we replace the interaction meta by an underscore, it is not solved in the presence of the field.
The text was updated successfully, but these errors were encountered: