Varför bryter politiker löften?

caplanBryan Caplan har en suggestiv teori:

If politicians did exactly what voters say they want, the results would be bad, and the politician would get blamed. Under the circumstances, politicians who want to get elected promise to do as the people command, then ”betray” them for their own good. Making the promises helps politicians attract popular support before they get in office. Breaking the promises helps politicians avoid losing popular support after they get in office.

Det finns uppenbarligen något att förklara. Finns andra förklaringar än Caplans?