具有双射的两个“finType”的基数相等

时间:2018-06-08 15:33:12

标签: coq ssreflect

我有两个finType,他们之间有双射。目前,我需要他们有相同的基数。但是,我找不到这个引理,也找不到其他可以轻易证明该语句的引理。在我看来,证据不应该很难。

陈述是:

From mathcomp Require Import ssrfun ssrbool eqtype fintype.
Lemma bij_card_eq (T T' : finType) (f : T -> T') : bijective f -> #|T| = #|T'|.
Proof.
Admitted.

感谢任何帮助!

1 个答案:

答案 0 :(得分:3)

Cyril Cohen here提供了一个非常好的证据:

From mathcomp Require Import all_ssreflect.

Section BijCard.

Variables U V : finType.
Variable f : U -> V.

Lemma bij_card : bijective f -> #|U| = #|V|.
Proof.
move=> [g fgK gfK]; rewrite -(card_image (can_inj fgK)).
by apply/eq_card=> x; apply/imageP; exists (g x).
Qed.

End BijCard.