Module docstring
{"# Pi types of modules
This file defines constructors for linear maps whose domains or codomains are pi types.
It contains theorems relating these to each other, as well as to LinearMap.ker.
Main definitions
- pi types in the codomain:
LinearMap.piLinearMap.single
- pi types in the domain:
LinearMap.projLinearMap.diag
","### Bundled versions of Matrix.vecCons and Matrix.vecEmpty
The idea of these definitions is to be able to define a map as x ↦ ![f₁ x, f₂ x, f₃ x], where
f₁ f₂ f₃ are already linear maps, as f₁.vecCons <| f₂.vecCons <| f₃.vecCons <| vecEmpty.
While the same thing could be achieved using LinearMap.pi ![f₁, f₂, f₃], this is not
definitionally equal to the result using LinearMap.vecCons, as Fin.cases and function
application do not commute definitionally.
Versions for when f₁ f₂ f₃ are bilinear maps are also provided.
"}