Conversation
|
Does that impact the generated code? It looks to me like |
|
You're right, it doesn't look like MAlonzo is able to erase |
|
But maybe this is still the 'right' |
|
Would marking |
|
Mikan has dropped support for erasure, so that would somewhat defeat the purpose. That being said, I agree with @JacquesCarette: this non-regular parameter is a bit dubious. Unfortunately, it seems like Barras' thesis has bit-rotted off the internet, but I don't see a way to use his encoding to construct an index that forcing analysis would be able to erase. (I actually don't even know if his encoding works for higher-order datatypes like |
|
I did a not really scientific benchmark of actually running a program that heavily uses |
Suggested by @TOTBWF during my investigation on Mikan compatibility. This makes induction proofs pass Mikan's termination checker, and doesn't seem to break anything with Agda.