Finiteness of fun_like
types #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
We show a type F
with a fun_like F α β
is finite if both α
and β
are finite.
This corresponds to the following two pairs of declarations:
fun_like.fintype
is a definition stating allfun_like
s are finite if their domain and codomain are.fun_like.finite
is a lemma stating allfun_like
s are finite if their domain and codomain are.fun_like.fintype'
is a non-dependent version offun_like.fintype
andfun_like.finite
is a non-dependent version offun_like.finite
, because dependent instances are harder to infer.
You can use these to produce instances for specific fun_like
types.
(Although there might be options for fintype
instances with better definitional behaviour.)
They can't be instances themselves since they can cause loops.
All fun_like
s are finite if their domain and codomain are.
This is not an instance because specific fun_like
types might have a better-suited definition.
See also fun_like.finite
.
All fun_like
s are finite if their domain and codomain are.
Non-dependent version of fun_like.fintype
that might be easier to infer.
This is not an instance because specific fun_like
types might have a better-suited definition.
Equations
All fun_like
s are finite if their domain and codomain are.
Non-dependent version of fun_like.finite
that might be easier to infer.
Can't be an instance because it can cause infinite loops.