Skip to content
BetterDL

ON-set and OFF-set

Also called: ON-set, OFF-set, DC-set, on-set, off-set, dc-set, onset and offset

The ON-set of a function is the set of rows where it is 1, and the OFF-set the rows where it is 0. Don't-care rows form the DC-set.

These are names for the three groups of truth-table rows:

  • ON-set: rows where F must be 1. This is the Σm list.
  • OFF-set: rows where F must be 0. This is the ΠM list.
  • DC-set: don't-care rows, listed in d(…).

For a completely specified function the DC-set is empty, and the ON-set and OFF-set are complements: together they cover all 2ⁿ rows with no overlap. That is why converting between Σm and ΠM is just "take the other rows"; see canonical form conversion.

With don't-cares, the rows split three ways. The sizes always add up to 2ⁿ.

The sets give a clean way to state what a correct implementation must do: be 1 on the whole ON-set, 0 on the whole OFF-set, and anything on the DC-set. An implicant is a product term that never touches the OFF-set.

The complement F′ simply swaps the ON-set and the OFF-set.

Worked example

Example

Splitting the rows

F(A, B, C) = Σm(1, 2, 7) + d(5). Find the three sets.

  1. 1.

    ON-set: {1, 2, 7}.

  2. 2.

    DC-set: {5}.

  3. 3.

    OFF-set: everything else, {0, 3, 4, 6}.

  4. 4.

    Check: 3 + 1 + 4 = 8 = 2³. In product form, F = ΠM(0, 3, 4, 6) · d(5).

Common mistakes

  • Treating the OFF-set as "every row not in the ON-set" when there are don't-cares. Don't-care rows are in neither.

  • Forgetting that the three sets must add up to 2ⁿ rows.

Practice ON-set and OFF-set

Interactive questions with instant feedback and a worked solution for every wrong answer.

Learn it step by step

ON-set and OFF-set is taught in Boolean Simplification.