Given a context-free grammar in Chomsky normal form, is it decidable whether that grammar has any useless rules? By "useless", I mean a rule that can be omitted from the grammar without changing the language.
Note this is not the same as asking whether the grammar has the minimum possible number of rules to generate the language, since we can imagine two grammars with different number of rules, none of which are useless, generating the same language.
For the general case of an arbitrary context-free grammar (i.e. not necessarily in Chomsky normal form), it is definitely undecidable whether any of the rules are useless (proving this is given as problem 5.36b in Sipser 3rd edition). Of course, we cannot just use the general result as a "subroutine" here, since converting to Chomsky normal form drastically changes the rules (even if not the language).
A related question asks if grammars in Chomsky normal form can have useless rules, and the answer is clearly yes.
S -> A C | B C
,C -> c
, and $A$ and $B$ have disjoint sets of nonterminals in their derivations. Now you need to check if $L(A) \subseteq L(B)$ or $L(B) \subseteq L(A)$, which is undecidable. Am I missing something? $\endgroup$