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

Shape-irrelevance without-K broken by Agda 2.6.2

andreasabel opened this issue · comments

(AIM XXXVIII playing with cubical equality proofs for sized coinduction.)
This (ICFP 2017 paper definition) is no longer accepted by Agda >= 2.6.2:

{-# OPTIONS --without-K --sized-types --experimental-irrelevance #-}

open import Agda.Builtin.Size

data  ..(s : Size) : Set where
  suc : .{t : Size< s}  ℕ t  ℕ s

Error:

.{t : Size< s} → ℕ t → ℕ s 
is not usable at the required modality @ω
when checking the constructor suc in the declaration of ℕ

Possibly missing applyWhen optExperimentalIrrelevance irrToNonStrict on the codomain here?

Pi a b -> usableMod domMod (unEl $ unDom a) `and2M` usableModAbs (getArgInfo a) mod (unEl <$> b)
where
domMod = mapQuantity (composeQuantity $ getQuantity a) $
mapCohesion (composeCohesion $ getCohesion a) mod

Possibly missing applyWhen optExperimentalIrrelevance irrToNonStrict on the codomain here?

This lets the data definition through, but trying to use it the conSplitModalityCheck barks at us. @plt-amy says this is for a reason because the transports cannot be defined.