25 lines
706 B
Text
25 lines
706 B
Text
structure Bijection ( U V : Type ) :=
|
||
( morphism : U → V )
|
||
( inverse : V → U )
|
||
( witness_1 : ∀ u : U, inverse (morphism u) = u )
|
||
( witness_2 : ∀ v : V, morphism (inverse v) = v )
|
||
|
||
class Finite ( α : Type ) :=
|
||
( cardinality : nat )
|
||
( bijection : Bijection α (fin cardinality) )
|
||
|
||
lemma empty_exfalso (x : false) : empty := begin exfalso, trivial end
|
||
|
||
instance empty_is_Finite : Finite empty := {
|
||
cardinality := 0,
|
||
bijection := begin
|
||
split,
|
||
intros,
|
||
induction u,
|
||
intros,
|
||
induction v,
|
||
trace_state,
|
||
cases v_is_lt,
|
||
repeat {admit}
|
||
end
|
||
}
|