Types that are empty #
In this file we define a typeclass IsEmpty, which expresses that a type has no elements.
Main declaration #
IsEmpty: a typeclass that expresses that a type is empty.
theorem
Function.Surjective.isEmpty
{α : Sort u}
{β : Sort v}
[IsEmpty α]
{f : α → β}
(hf : Surjective f)
:
IsEmpty β
subtypes of an empty type are empty
subtypes by an all-false predicate are false.
subtypes by false are false.
Non-dependent version of IsEmpty.elim. Helpful if the elaborator cannot elaborate h.elim a
correctly.