Exercise 1: Classifying f(1)=p, f(2)=q, f(3)=p, f(4)=q — Possible Solution ==================================================================== CHECKING INJECTIVE ------------------------------ Injective requires that different inputs always produce different outputs. Checking: f(1) = p and f(3) = p - two different inputs (1 and 3) produce the SAME output (p). This single collision is enough to break injectivity. f is NOT injective. CHECKING SURJECTIVE ------------------------------ Surjective requires that every element of the codomain B = {p, q} actually gets hit by at least one input. Checking: p is hit (by both 1 and 3). q is hit (by both 2 and 4). Both elements of B are accounted for, so f IS surjective. CHECKING BIJECTIVE ------------------------------ Bijective requires both injective and surjective at once. Since f already fails injective, it cannot be bijective, regardless of the surjective result. SUMMARY ------------------------------ f is surjective, but not injective, and therefore not bijective. WHY THIS RESULT ALSO FOLLOWS FROM THIS CHAPTER'S OWN CARDINALITY REASONING ------------------------------ Per this chapter, "if |A| > |B|, no injective function from A to B can exist at all." Here |A| = 4 (the set {1,2,3,4}) and |B| = 2 (the set {p,q}) - since 4 > 2, no function from A to B could ever be injective in the first place, regardless of how it's defined. The specific collision found above (f(1)=f(3)=p) is simply one concrete instance of a mismatch that was already guaranteed to exist by the size difference alone. WHY THIS WORKS AS AN ANSWER ------------------------------ It checks injectivity and surjectivity directly against the given function's own mapping, correctly concludes bijectivity fails because injectivity already failed, and connects the result back to this chapter's own cardinality principle to show the outcome wasn't arbitrary - it was guaranteed in advance by the relative sizes of the two sets.