Finiteness consequences of exact sequences #
This file records two elementary consequences of exactness at the middle term: finite-dimensional
outer vector spaces (over a division ring) force the middle vector space to be finite-dimensional,
and trivial outer types force the middle type to be trivial. The second carries no algebraic
structure at all beyond the zero of the target P, which is the one Function.Exact itself
refers to: exactness sends every element of N into the range of f, and a trivial M makes
that range trivial.
If M --f--> N --g--> P is exact at N and both M and P are finite-dimensional, then so
is N.
This is deduced from Module.Finite.of_exact, which asks the second map to be surjective, by
corestricting g to its range.
If M --f--> N --g--> P is exact at N and both M and P are trivial, then so is N.