Flat_cover
In algebra, a flat cover of a module M over a ring is a surjective homomorphism from a flat module F to M that is in some sense minimal. Any module over a ring has a flat cover that is unique up to (non-unique) isomorphism. Flat covers are in some sense dual to injective hulls, and are related to projective covers and torsion-free covers.