Augment the definitions of surjection and homomorphism.
A surjection is an "onto" mapping. The function maps elements of a set "onto" the entirety of elements in a set B. The elements of the set B are "fully recruited" in the action of the surjection on set A.
A possible alternative description for a surjection is a "fully range-engaged mapping" as we are engaging the totality of the function's range in the action of the mapping.
A homomorphism is a function that maps a "binary combo" of elements in the "domain", to the "binary combo" of the mapped or modified ("homomorphism-applied") elements in the range.
If this homomorphism captures the entirety of the range-set, it is surjective. A little bit of thought will assure the PyCryptonista that surjectivity in homomorphisms is quite a desirable property.