The fare buckets work much more often like that in the Y region where the lower buckets are a subset of the higher, although there are exceptions as noted.
A bigger problem is with the first class fares, where I actually see fairly often situations where it is P2A0G1 so if you have an A fare you're screwed. A always seems to be a subset of P but the G can pop up when the others aren't available. I also see domestic routes with intl flight numbers where I or Z has inventory but no D.
Either way, it still doesn't fix the problem where the SDC rules hose pax sitting up front unless they have a full F.