Section in_imfset.
Variable (key : unit) (K : choiceType).
Implicit Types (A B : {fset K}) (a b : K).
Hint Resolve fsubset_refl : core.
Definition fincl A B (AsubB : A `<=` B) (a : A) : B :=
[` (fsubsetP AsubB) _ (valP a)].
Definition fsub B A : {set B} := [set x : B | val x \in A].
Hint Resolve fsub_inj : core.
Hint Resolve fsubsetIl fsubsetIr fsubsetDl fsubD1set : core.
(* cardinal lemmas for fsets *)
(* other inclusions *)
Arguments fsetIidPl {A B}.

Lemma fsubsetD1P A B x : reflect (A `<=` B /\ x \notin A) (A `<=` B `\ x).