Perché quasi ogni domanda sul comportamento dei programmi è indecidibile. Per teorema di Rice , qualsiasi problema decisionale del modulo:
Some programs compute functions that have this property, other programs compute functions that don't have this property. Given a program P, does the function computed by P have the aforementioned property or not?
è indecidibile. Ad esempio, non è sempre possibile distinguere il codice che calcola il quadrato di un input dal codice che non lo fa. Sebbene in casi semplici, è spesso possibile dimostrare che una funzione lo fa o non lo fa, non esiste una procedura generale che funzioni per tutti i programmi.
Quasi ogni invariante comportamentale interessante cade sotto il teorema di Rice, dal momento che quelle dichiarazioni raramente (se mai) parlano di come il metodo appare internamente, solo ciò che ritorna e quali effetti collaterali provoca in risposta a determinati input.