Module docstring
{"# Orzech property of rings
In this file we define the following property of rings:
OrzechProperty Ris a type class stating thatRsatisfies the following property: for any finitely generatedR-moduleM, any surjective homomorphismf : N → Mfrom a submoduleNofMtoMis injective. It was introduced in papers by Orzech [orzech1971], Djoković [djokovic1973] and Ribenboim [ribenboim1971], under the namesΠ-ring orΠ₁-ring. It implies the strong rank condition (that is, the existence of an injective linear map(Fin n → R) →ₗ[R] (Fin m → R)impliesn ≤ m) if the ring is nontrivial (seeMathlib/LinearAlgebra/InvariantBasisNumber.lean).
It's proved in the above papers that
- a left Noetherian ring (not necessarily commutative) satisfies the 
OrzechProperty, which in particular includes the division ring case (seeMathlib/RingTheory/Noetherian.lean); - a commutative ring satisfies the 
OrzechProperty(seeMathlib/RingTheory/FiniteType.lean). 
References
- [Orzech, Morris. Onto endomorphisms are isomorphisms][orzech1971]
 - [Djoković, D. Ž. Epimorphisms of modules which must be isomorphisms][djokovic1973]
 - [Ribenboim, Paulo. Épimorphismes de modules qui sont nécessairement des isomorphismes][ribenboim1971]
 
Tags
free module, rank, Orzech property, (strong) rank condition, invariant basis number, IBN
"}