Let $A$ be a menu and $R$ be a complete and transitive binary relation. Define choice correspondence generated by $R$:

$$c_R(A)=\{x\in A|| xRy \ \forall y\in A\}.$$

Theorem (from Kreps 1988): for any correspondence $c$, the following conditions are equivalent:

  1. $c$ satisfies WARP
  2. There exists a transitive and complete $R$ such that $c=c_R$.

Given $A$ is finite and $c=c_R$, it is obvious that $c$ can be represent by a utility function. Then why do we need SARP/GARP to rationalize a choice correspondence with a utility function? What was wrong with my logics?

  • $\begingroup$ Is Kreps (1988) the book titled Notes on the Theory of Choice? I don't think the book mentions WARP as such. Can you give a precise statement of the theorem in Kreps (1988)? $\endgroup$
    – Herr K.
    May 14, 2019 at 21:35

1 Answer 1


In Notes on the Theory of Choice (assuming this is what you refer to by "Kreps (1988)"), Kreps does not appear to mention WARP as such. But he does refer to "Houthakker's axiom" (Houthakker 1950, Economica), which is actually SARP, not WARP.

Your conditions 1 and 2 are equivalent if there are only two goods. If there are more than two goods, WARP in condition 1 must be replaced by SARP to preserve the equivalence. Jehle and Reny (2011) have an intuitive explanation for this:

[W]ith two goods, the pairwise ranking of bundles implied through revealed preference turns out to have no intransitive cycles. [...] And when this is so, there will be a utility representation generating the choice function.

SARP basically posits conditions that explicitly rule out intransitive cycles in revealed preferences with a general $n$-good environment.

WARP/SARP differ from GARP in that the former presumes the availability of infinitely many choice data to build a choice function with, whereas GARP only requires a finite set of choice data.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.