Reference · Sets
rainbow.math.sets.range-surjective
Characterize surjections by their universal ranges.
set/range-subset-universal
set/range-subset-universal.{u, v} :
(A : Type u) (B : Type v) (mapping : A → B)
→ set/subset B (set/range A B mapping) (set/universal B)set/universal-subset-range-of-surjective
set/universal-subset-range-of-surjective.{u, v} :
(A : Type u) (B : Type v) (mapping : A → B)
(surjection-evidence : ∀ (target : B), proposition/existence A (fun source => mapping source = target))
→ set/subset B (set/universal B) (set/range A B mapping)= = equality/Eq
set/range-universal-mutual-subset-of-surjective
set/range-universal-mutual-subset-of-surjective.{u, v} :
(A : Type u) (B : Type v) (mapping : A → B)
(surjection-evidence : ∀ (target : B), proposition/existence A (fun source => mapping source = target))
→ proposition/conjunction (subset) (subset₁)
where subset := set/subset B (set/range A B mapping) (set/universal B)
where subset₁ := set/subset B (set/universal B) (set/range A B mapping)= = equality/Eq
function/surjective-equivalent-range-universal-mutual-subset
function/surjective-equivalent-range-universal-mutual-subset.{u, v} :
(A : Type u) (B : Type v) (mapping : A → B)
→ proposition/conjunction ((∀ (target : B), proposition/existence A (fun source => mapping source = target)) → conjunction) (conjunction → (∀ (target : B), proposition/existence A (fun source => mapping source = target)))
where conjunction := proposition/conjunction (set/subset B (set/range A B mapping) (set/universal B)) (set/subset B (set/universal B) (set/range A B mapping))= = equality/Eq