As Jain points out by example, superstitions live at a level of behavior more complex than simple numeric errors.
Heretical as this may seem, not everything is about economics.
I understand the point about player perception. Behavior that's too complex
looks random, which means boring gameplay since one tactic/strategy is as good as another.
Again, though, consider the options in the poll that started this thread. Only one option is a high frequency of correlating actions with consequences, where NPCs will indeed believe a lot of dumb things. The other options are for tighter reasoning, with at most only the occasional error of causal belief. That's hardly the same thing as being bad at math, and not likely to generate the same kinds of erroneous behaviors.
A behavior of deciding to buy or not buy something based on a math error is not in the same class as behaviors such as (and this is only one quick example) never shooting at a freighter because you shot at one once and it turned out to be an undercover police ship.
Not always reasoning perfectly does not mean appearing completely broken. A reasonable amount of mildly faulty reasoning could as easily lead players to say, "Hmm, that's unexpected but not completely bizarre... I wonder why he did that? Does he know something I should know?" and want to investigate.
I see that as making a game with complex NPCs more fun, not less fun.
But let's turn this around: how would you make NPCs rationally infallible, incapable of ever incorrectly linking something they do with an observed phenomenon that happens right after they act? Is that even possible?