In "set of reasons that" what does *that* modify?

Suppose that there is a survey of people asking them their reasons for thinking or behaving a certain way. While analyzing the survey results, a researcher may discuss all the different reasons the respondents put forth, and compare reasons that were shared by multiple people. The researcher then writes:

There is a common set of reasons that are compelling.

But I have a quibble with this: the sentence starts out with the singular subject set (thus the matching there is), but surprises the reader by making that modify reasons instead of set, as clearly indicated through the use of are instead of is that would match the singular set.

Are my instincts correct? If so, what rule of grammar is this violating?

Bonus: please suggest a good title. It's hard to come up with a title when I don't know the answer, yet. I realized that "Sentence grammaticality" is not a good title, but I don't know if the current one is an improvement.


There is nothing grammatically wrong with the sentence. Let's parse it logically:

There is a set.

The set contains reasons.

The reasons are compelling.

The grammar tracks the logic:

There is [singular copular verb agreeing with singular predicate nominative set] a common set [singular predicate nominative] of reasons [prepositional phrase modifying set] that [beginning of a restrictive clause modifying reasons] are [plural copular verb agreeing with the actual subject, reasons] compelling.

Simply put, the set isn't compelling. The reasons are.

TITLE: Should a verb agree in number with a collective noun or its subparts?