Zulip Chat Archive
Stream: general
Topic: mutual inductives
Chris Hughes (Nov 03 2018 at 23:23):
What's the "canonical" proof that the Types A and B are empty. I proved it by reference to the auxiliary A._mut_
. Is there a nicer way?
mutual inductive A, B with A : Type | mk : B → A with B : Type | mk : A → B
Kenny Lau (Nov 03 2018 at 23:28):
mutual inductive A, B with A : Type | mk : B → A with B : Type | mk : A → B def A.to_sort (l : Sort*) : A → l | (A.mk (B.mk x)) := A.to_sort x
Chris Hughes (Nov 03 2018 at 23:28):
Of course.
Chris Hughes (Nov 03 2018 at 23:35):
Are there any recursors that look a bit like this?
def AB.reca : Π {Ca : A → Sort*} {Cb : B → Sort*} (ha : Π a : A, Ca a → Cb (B.mk a)) (hb : Π b : B, Cb b → Ca (A.mk b)) (a : A), Ca a
Kenny Lau (Nov 03 2018 at 23:37):
you can write one
Last updated: Dec 20 2023 at 11:08 UTC