Difference between social choice function and mechanism outcome function Mas-Colell, Whinston and Green's Microeconomic Theory (3rd edition) defines the social choice function as the following:



Later, the mechanism outcome function is also defined:



The relationship between a social choice function and a mechanism is then stated as:



What is the difference between a social choice function and a mechanism outcome function?
A social choice function presumes the individuals' preference parameters $\theta_i$'s are observable, whereas in a mechanism, such knowledge is not presupposed. Therefore, in a mechanism, the arguments of the outcome function are strategies of the players, which are observable, not their preference parameters, which, although indirectly determine the players' strategies, are not observable. 

As an example, suppose $3$ individuals are either rich or pool ($\Theta_i=\{R,P\}$ for $i=1,2,3$) and there are two policies, $X=\{A,B\}$. Assume rich people prefer $A$ and the poor prefer $B$. A social choice function would take a profile of the three people's wealth status and produce a policy outcome, for instance, 
\begin{equation}
f(R,R,P)=A,\quad\text{or}\quad f(P,P,R)=B.
\end{equation}
However, if individual wealth status is private information which cannot be directly observed, and the policy must be chosen by a simple majority voting mechanism, then each individual's strategy space would be $S_i=\{A,B\}$ and their strategy $s_i:\Theta_i\to X$ would map from their own type to a policy choice. The mechanism outcome function would turn a profile of the strategies into a policy outcome, e.g. 
\begin{equation}
g(A,B,A)=A,\quad\text{or}\quad g(A,B,B)=B.
\end{equation}

There is a special mechanism: when each player's strategy space is also their type space, i.e. $S_i=\Theta_i$, and the mechanism's outcome function is the same as the social choice function $g(\theta)=f(\theta)$, we have what's known as a direct mechanism.