Skip to content
Free public beta until December 4, 2026: every course is open, no card needed. After that, the first chapter of each course stays free and full access is a one-time $39 ($19 for up to 100 founding members chosen for helpful feedback). Your progress is kept. How the beta works

Recipe

Find the equivalence classes of a relation

Use when: you have a confirmed equivalence relation on a set and need to sort every element into its class

Goal: every equivalence class the relation produces, each one written exactly rather than by a partial sample

Taught in Equivalence classes

  1. 1

    Choose any element of the set that hasn't already landed inside a class you've already found.

    Example

    On \{1,2,3,4,5,6\} with "same remainder mod 3," nothing is classified yet, so start with 1.

    Why: every element belongs to exactly one class, so starting from any unplaced element is always safe.

  2. 2

    Test the relation's defining condition against the rest of the set, or reason directly from the condition, to find every element related to the one you picked.

    Example

    For 1 under "same remainder mod 3": 4 also leaves remainder 1, so 4 joins 1's class; 2,3,5,6 do not.

    Why: the class of an element is, by definition, exactly the set of everything equivalent to it.

  3. 3

    State the class as the exact set it is: a full listing when the underlying set is finite, or an explicit rule when it isn't.

    Example

    Here, [1]=\{1,4\}, a finite listing. On \mathbb{Z} with "same remainder mod 4," the class of 2 is instead \{4k+2 : k\in\mathbb{Z}\}, a rule, not a short list like \{2,6\}.

    • the underlying set is finite — list every member found in the previous step directly.
    • the underlying set is infinite — express the class with its defining rule instead of a handful of members.

    Why: a few members of an infinite class only look complete; the rule or full listing is the only description that actually is the whole class.

  4. 4

    Pick a fresh element that hasn't landed in any class yet and repeat the steps above; stop once every element belongs to some already-recorded class.

    Example

    After placing 1 and 4, move to 2: its class is \{2,5\}. Then 3: its class is \{3,6\}. Now every element from 1 to 6 is covered.

    • an unplaced element remains — repeat from the first step with that element.
    • every element already sits inside a found class — the classes are complete.

    Why: since the classes partition the set, continuing until nothing is left over guarantees none was missed and none was found twice.

Common mistakes

  • Listing only a few members of an infinite class and calling it finished, instead of giving the defining rule.
  • Restarting from an element that's already inside a found class, which only re-derives a class already recorded under a new label.
  • Leaving one element of a finite set unchecked, so its class never gets recorded.
  • Assuming two classes are different just because they came from different starting elements, without checking whether those elements are actually equivalent.