Fintype instances for pi types #
Given for all a : α a finset t a of δ a, then one can define the
finset Fintype.piFinset t of all functions taking values in t a for all a. This is the
analogue of Finset.pi where the base finset is univ (but formally they are not the same, as
there is an additional condition i ∈ Finset.univ in the Finset.pi definition).
Equations
Instances For
Alias of the reverse direction of Fintype.piFinset_nonempty.
Alias of Fintype.filter_piFinset_of_notMem.
pi #
A dependent product of fintypes, indexed by a fintype, is a fintype.
Equations
There are finitely many embeddings between finite types.
This instance used to be computable (using DecidableEq arguments), but
it makes things a lot harder to work with here.
Equations
Equations
Diagonal #
Constructors for Set.Finite #
Every constructor here should have a corresponding Fintype instance in the previous section
(or in the Fintype module).
The implementation of these constructors ideally should be no more than Set.toFinite,
after possibly setting up some Fintype and classical Decidable instances.