It may be inefficient from a system-wide perspective (due to higher overall costs), but it's not inefficient from the aspect of the individual credit card user. To the degree that I use a credit card and gain the advantage of a rebate, and the higher exchange costs are transferred (by the merchant) to those paying cash, my transactions are more efficient (for me) than they'd otherwise be. That is--I get more goods for the money spent.
Finish that last sentence: I get more goods for the money spent ... than the poor sucker paying cash.
I didn't even do a FIFY though it was tempting.