[Coq-Club] [Agda] Re: [HoTT] newbie questions about homotopy theory & advantage of UF/Coq

Vladimir Voevodsky vladimir at ias.edu
Tue Jan 7 00:36:22 CET 2014


In my opinion only those constructions which can be expressed through eliminators are trustworthy. There is really no other way to supply rigorousness to inductive types with  pseudo-parameters (or whatever they are now called) such as Id-types.

V.


On Jan 6, 2014, at 6:27 PM, Cody Roux <cody.roux at andrew.cmu.edu> wrote:

> The thing about Coq is that it's very disturbing not to have a
> Set-theoretic interpretation where Prop is the set of Booleans {True,
> False}. Agda of course doesn't have these qualms, but the fact that this
> issue appears in Coq without use of anything fancy (impredicativity,
> etc) makes me still a bit worried. In particular there should be a
> Set-theoretic model for Agda where Empty -> Box and Box -are- equal:
> with a sufficiently clever interpretation of inductives, I believe I can
> get [[Empty -> Box ]] = [[Box]] = { {} } (where {} is just the empty
> set). Can someone with more Agda knowledge try to type the original
> problematic term?
> 
> 
> Hypothesis Heq : (False -> False) = True.
> 
> Fixpoint contradiction (u : True) : False :=
> contradiction (
> match Heq in (_ = T) return T with
> | eq_refl => fun f:False => match f with end
> end
> ).
> 
> 
> 
> On 01/06/2014 06:12 PM, Altenkirch Thorsten wrote:
>> Hi Maxime,
>> 
>> your postulate seems correct since certainly Empty → Box and Box are
>> isomorphic and hence equal as a consequence of univalence.
>> 
>> However, I think the definition of loop looks suspicious in the presence
>> of proof-relevant equality: if we replace rewrite by an explicit use of
>> subst, loop isn't structural recursive anymore. Hence my diagnosis would
>> be that rewrite is simply incompatible with univalence.
>> 
>> Cheers,
>> Thorsten
>> 
>> On 06/01/2014 20:42, "Maxime Dénès" <mail at maximedenes.fr> wrote:
>> 
>>> Bingo, Agda seems to have the same problem:
>>> 
>>> module Termination where
>>> 
>>> open import Relation.Binary.Core
>>> 
>>> data Empty : Set where
>>> 
>>> data Box : Set where
>>> wrap : (Empty → Box) → Box
>>> 
>>> postulate
>>> iso : (Empty → Box) ≡ Box
>>> 
>>> loop : Box -> Empty
>>> loop (wrap x) rewrite iso = loop x
>>> 
>>> gift : Empty → Box
>>> gift ()
>>> 
>>> bug : Empty
>>> bug = loop (wrap gift)
>>> 
>>> However, I may be missing something due to my ignorance of Agda. It may
>>> be well known that the axiom I introduced is inconsistent. Forgive me if
>>> it is the case.
>>> 
>>> Maxime.
>>> 
>>> On 01/06/2014 01:15 PM, Maxime Dénès wrote:
>>>> The anti-extensionality bug is indeed related to termination. More
>>>> precisely, it is the subterm relation used by the guard checker which
>>>> is not defined quite the right way on dependent pattern matching.
>>>> 
>>>> It is not too hard to fix (we have a patch), but doing so without
>>>> ruling out any interesting legitimate example (dealing with recursion
>>>> on dependently typed data structures) is more challenging.
>>>> 
>>>> I am also curious as to whether Agda is impacted. Let's try it :)
>>>> 
>>>> Maxime.
>>>> 
>>>> On 01/06/2014 12:59 PM, Altenkirch Thorsten wrote:
>>>>> Which bug was this?
>>>>> 
>>>>> I only saw the one which allowed you to prove anti-extensionality? But
>>>>> this wasn't related to termination, or?
>>>>> 
>>>>> Thorsten
>>>>> 
>>>>> On 06/01/2014 16:54, "Cody Roux" <cody.roux at andrew.cmu.edu> wrote:
>>>>> 
>>>>>> Nice summary!
>>>>>> 
>>>>>> 
>>>>>> On 01/06/2014 08:49 AM, Altenkirch Thorsten wrote:
>>>>>>> Agda enforces termination via a termination checker which is more
>>>>>>> flexible but I think less principled than Coq's approach.
>>>>>> That's a bit scary given that there was an inconsistency found in
>>>>>> the Coq termination checker just a couple of weeks ago :)
>>>>>> 
>>>>>> BTW, has anyone tried reproducing the bug in Agda?
>>>>>> 
>>>>>> 
>>>>>> Cody
>>>>> This message and any attachment are intended solely for the addressee
>>>>> and may contain confidential information. If you have received this
>>>>> message in error, please send it back to me, and immediately delete
>>>>> it. Please do not use, copy or disclose the information contained in
>>>>> this message or in any attachment. Any views or opinions expressed by
>>>>> the author of this email do not necessarily reflect the views of the
>>>>> University of Nottingham.
>>>>> 
>>>>> This message has been checked for viruses but the contents of an
>>>>> attachment
>>>>> may still contain software viruses which could damage your computer
>>>>> system, you are advised to perform your own checks. Email
>>>>> communications with the University of Nottingham may be monitored as
>>>>> permitted by UK legislation.
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>> _______________________________________________
>>>> Agda mailing list
>>>> Agda at lists.chalmers.se
>>>> https://lists.chalmers.se/mailman/listinfo/agda
> 


More information about the Agda mailing list