Why is Cronbach’s alpha a lower bound to reliability?

One of the questions that every now and then a curious student asks me is why is the assumption of parallel or tau-equivalent tests (with uncorrelated residuals) needed for Cronbach’s alpha to be an accurate estimate of reliability. We learn by repeating over and over again that alpha is a lower bound to reliability (assuming unidimensionality, uncorrelated residuals and a whole bunch of other stuff) but we never really learn why alpha is a lower bound to the true reliability. Just that it is.

In any case, just as a quick reference I thought it would be nice to start the ‘proof’ section of the page by showing that alpha underestimates reliability under the congeneric test model. The proof that I’m showing is shown on Lord & Novick (1968) but the book is hard to find nowadays (and expanding a few steps would make things a lot clearer to be honest) so here is where we start.

Assume X_{1}, X_{2}, X_{3},...X_{n} are measurements, each with distinct true scores T_{1}, T_{2}, T_{3},...T_{n}. Define the composite score C = X_{1} + X_{2} + X_{3} + ... + X_{n}. Then it follows that:

\rho_{CC}\geq \frac{n}{n-1}\left[1-\frac{\sum_{i=1}^{n}\sigma^{2}(X_{i})}{\sigma^{2}(C)}\right]=\alpha

Let us start by taking two arbitrary true score variances, \sigma^{2}(T_{i}) and \sigma^{2}(T_{j}). Because we are dealing with variances (so they’re always positive) the following inequality must hold. I’m just gonna expand it using basic rules of covariance algebra:

\sigma^{2}(T_{i}-T_{j})\geq 0

\sigma^{2}(T_{i}) + \sigma^{2}(T_{j}) - 2\sigma(T_{i},T_{j})\geq 0

\sigma^{2}(T_{i}) + \sigma^{2}(T_{j})\geq 2\sigma(T_{i},T_{j})

Now, because we’re assuming all the usual assumptions of Classical Test Theory (uncorrelated errors, errors uncorrelated with true scores, … basically, nothing that we dislike correlates with anything. That’s why assumptions are so awesome. you get to go crazy with them!) we can just sum across all different variances of true scores. For i \neq j:

\sum_{i \neq j}\sum_{i \neq j}[\sigma^{2}(T_{i})+ \sigma^{2}(T_{j})] \geq 2\sum_{i \neq j}\sum_{i \neq j}\sigma(T_{i},T_{j})

Here’s where things start getting a tad bit tricky because we’re gonna do some summation magic to cough up the terms that we want where we want them. We start our little sorcery by looking at the following relationships:

\sum_{i =1}^{n}\sum_{j=1}^{n}[\sigma^{2}(T_{i})+ \sigma^{2}(T_{j})]=

\sum_{i =1}^{n}[n\sigma^{2}(T_{i})+\sum_{j=1}^{n}\sigma^2(T_{j})]=

n\sum_{i =1}^{n}\sigma^{2}(T_{i})+n\sum_{j=1}^{n}\sigma^2(T_{j})=2n\sum_{i=1}^{n}\sigma^{2}(T_{i})

Ok, I know that this looks like an incredibly convoluted way to show that summing the same thing two-n times is the same as multiplying it times 2-n. But these will become incredibly useful when we start placing everything together.

Now, the next one is a tad bit trickier to follow:

\sum_{i =1}^{n}\sum_{j=1}^{n}[\sigma^{2}(T_{i})+ \sigma^{2}(T_{j})]=

\sum_{i =j}^{n}\sum_{i=j}^{n}[\sigma^{2}(T_{i})+ \sigma^{2}(T_{j})] + \sum_{i\neq j}^{n}\sum_{i\neq j}^{n}[\sigma^{2}(T_{i})+ \sigma^{2}(T_{j})]

2\sum^{n}_{i=1}\sigma^{2}(T_{i})+\sum_{i\neq j}^{n}\sum_{i\neq j}^{n}[\sigma^{2}(T_{i})+ \sigma^{2}(T_{j})]

In general, all we are doing here is splitting the first term into adding everything that’s similar alongside with everything that’s different in terms of the indices. If you first sum over all the instances where i=j and then all the instances where i \neq j you end up summing over ALL instances. And that is what the first term of the expression says (i.e. sum over everything).

Now we have the final ingredients to put everything together, which is basically just equating the two results we derived before:

2n\sum_{i=1}^{n}\sigma^{2}(T_{i})=2\sum^{n}_{i=1}\sigma^{2}(T_{i})+\sum_{i\neq j}^{n}\sum_{i\neq j}^{n}[\sigma^{2}(T_{i})+ \sigma^{2}(T_{j})]

2n\sum_{i=1}^{n}\sigma^{2}(T_{i})-2\sum^{n}_{i=1}\sigma^{2}(T_{i})=\sum_{i\neq j}^{n}\sum_{i\neq j}^{n}[\sigma^{2}(T_{i})+ \sigma^{2}(T_{j})]

(2n-2)\sum_{i=1}^{n}\sigma^{2}(T_{i})=\sum_{i\neq j}^{n}\sum_{i\neq j}^{n}[\sigma^{2}(T_{i})+ \sigma^{2}(T_{j})]

And we can back-substitute this on the original inequality we were working on!

\sum_{i \neq j}\sum_{i \neq j}[\sigma^{2}(T_{i})+ \sigma^{2}(T_{j})] \geq 2\sum_{i \neq j}\sum_{i \neq j}\sigma(T_{i},T_{j})

(2n-2)\sum_{i=1}^{n}\sigma^{2}(T_{i}) \geq 2\sum_{i \neq j}\sum_{i \neq j}\sigma(T_{i},T_{j})

\sum_{i=1}^{n}\sigma^{2}(T_{i}) \geq \frac{\sum_{i \neq j}\sum_{i \neq j}\sigma(T_{i},T_{j})}{n-1}

Things are starting to take some shape now, aren’t they? I think it is possible to see now where the ubiquitous Cronbach’s alpha is gonna show up very soon. Because we’re dealing with an inequality, let’s add something to both sides:

\sum_{i=1}^{n}\sigma^{2}(T_{i})+\sum_{i \neq j}\sum_{i \neq j}\sigma(T_{i},T_{j}) \geq \frac{\sum_{i \neq j}\sum_{i \neq j}\sigma(T_{i},T_{j})}{n-1}+\sum_{i \neq j}\sum_{i \neq j}\sigma(T_{i},T_{j})

By adding all of the variances and all of the covariances among the true scores on the left hand side we are able to obtain \sigma^{2}(T), or the total true score variance of the composite score. The other term we just need to simplify further so things end up looking like:

\sigma^{2}(T) \geq (\frac{n}{n-1})\sum_{i \neq j}\sum_{i \neq j}\sigma(T_{i},T_{j})

The next step requires one to remember that, from the assumptions of Classical Test Theory follows that the covariances among observed measurements equal the covariances of their true scores (remember that the errors correlate with nothing), so the following holds true:

\sum_{i \neq j}\sum_{i \neq j}\sigma(T_{i},T_{j})=\sum_{i \neq j}\sum_{i \neq j}\sigma(X_{i},X_{j})

And, moreover, if from the variance of the initially-defined composite C we subtract the sum of the variances among its constituting elements we are left with:

\sigma^{2}(C) - \sum_{i=1}^{n}\sigma^{2}(X_{i})= \sum_{i \neq j}\sum_{i \neq j}\sigma(X_{i},X_{j})

We are now ready to wrap everything up by dividing both sides of the inequality we were working on previously by \sigma^{2}(C):

\sigma^{2}(T) \geq (\frac{n}{n-1})\sum_{i \neq j}\sum_{i \neq j}\sigma(T_{i},T_{j})

\sigma^{2}(T) \geq (\frac{n}{n-1})\sum_{i \neq j}\sum_{i \neq j}\sigma(X_{i},X_{j})

\sigma^{2}(T) \geq (\frac{n}{n-1}) \sigma^{2}(C) - \sum_{i=1}^{n}\sigma^{2}(X_{i})

\frac{\sigma^{2}(T)}{\sigma^{2}(C)} \geq (\frac{n}{n-1}) \frac{\sigma^{2}(C) - \sum_{i=1}^{n}\sigma^{2}(X_{i})}{\sigma^{2}(C)}

\frac{\sigma^{2}(T)}{\sigma^{2}(C)} \geq (\frac{n}{n-1}) [1-\frac{\sum_{i=1}^{n}\sigma^{2}(X_{i})}{\sigma^{2}(C)}

Now it is very easy to recognize the first term as the definition of reliability and the second term is just the definition of Cronbach’s alpha, so that we can finally claim that:

\rho_{CC} \geq \alpha

And that completes the proof.