To be honest I don't think omitting an instance because you don't believe the type should be used at all is a useful strategy.
If we want to have a discussion on the merit of allowing Ratio a to be overloaded at all I think that is a worthy discussion. Perhaps Ratio a should go away and just become Rational, but I think that is a very separate proposal.