Perfectly Competitive Markets in Math

June 26, 2020 · 5:53 am · EconMath

Perfect Competition, or as I like to abbreviate it, Perfekt, is your standard paired Supply vs Demand market graph along with a firm graph where Marginal Revenue = Demand = Average Revenue = Price.

You can interact with it below: (See this page to interact with only this applet)


pmkt=60p_{mkt} =60

peq=60.85119791515859p_{eq} =60.85119791515859

pmin=55.14677965740265p_{min} =55.14677965740265

Profit per unit: peqpmkt=0.8511979151585933p_{eq} - p_{mkt} = 0.8511979151585933

Economic state? Approximately Normal Profit

Should the firm shutdown in the short run? No.


CS=S(0)C_S = S(0) is the intersection between SS and the y-axis.

CD=D(0)C_D = D(0) is the intersection between DD and the y-axis.

CMCC_{MC} is an arbitrary constant that shifts MCMC up or down.

pmktp_{mkt} is the market price.

peqp_{eq} is the profit-maximizing price.

pminp_{min} is the minimum of AVCAVC.

The default MCMC function is awfully complicated!!

Yup, I was having trouble finding a decent function such that all of the cool things like the intersection between PP and ATCATC and PmktP_{mkt} and AVCAVC, so I asked Taiga to engineer one using Desmos:

The final function is very cursed:

MC(q)=4.4(0.134q+4.7)212(0.134q+4.7)+503.2(0.134q+4.7)13.148.4125MC(q) = \frac{4.4(0.134q + 4.7)^2 - 12(0.134q + 4.7) + 50}{3.2(0.134q + 4.7) - 13.14} 8.4 - 125

Thought Process

The equation was written so that it could be manipulated as easily as possible. We already knew the general shape was going to have a sharp descent from the positive y-axis, and then slowly “climb up”. The “climb up” part could be approximated by a function that has a slant asymptote. Therefore, we began with a rational function with a quotient whose degree was 1 for a nice linear asymptote. This is why the numerator looks like a quadratic function (think of 0.134q+4.70.134q + 4.7 as XX) and the denominator looks linear. Then, to perform linear transformations, we replaced XX with mq+bmq + b for horizontal stretching/squishing and shifting and took the entire function and replaced it with MR+BMR + B for vertical stretching/squishing and shifting.


As I was watching Matt Pedlow’s AP Microeconomics series for this year’s exam, I noticed that we can actually define many of the relationships between quantity and price using discrete calculus. So I thought it would be interesting to talk about how that would span out.

Also, it’s always nice to be able to have an interactive visualization of things, and I haven’t seen anything for microeconomics anywhere else.

Mathematical Formalization

Let me show you how some of these functions are calculated from MCMC.

Defining TCTC in terms of MCMC

The definition of Marginal Cost (MCMC) is the difference in the Total Cost (TCTC) of producing the currenth nnth good minus the TCTC of producing the last good, (n1)(n-1)th. Using notation from my post on discrete derivatives, we can define MCMC as so:

MC(q)TC(q)TC(q1)=ΔTC(q1)MC(q+1)=ΔTC(q)MC(q+1)ΔI(q)=ΔTC(q)q=0qMC(q+1)ΔI(q)=q=0qΔTC(q)=TC(q)TC(0)TC(q)=TC(0)+q=0qMC(q+1)ΔI(q)\begin{aligned} MC(q) &\coloneqq TC(q) - TC(q - 1) \\ &= \Delta TC(q-1) \\ MC(q + 1) &= \Delta TC(q) \\ MC(q+1) \Delta I(q) &= \Delta TC(q) \\ \sum_{q = 0}^q MC(q + 1) \Delta I(q) &= \sum_{q = 0}^q \Delta TC(q) \\ &= TC(q) - TC(0) \\ TC(q) &= TC(0) + \sum_{q = 0}^q MC(q + 1) \Delta I(q) \\ \end{aligned}

By the way, both MCMC and TCTC map QPQ \to P, where QQ is the set of nonnegative integers,1 and PP is the set of reals with a unit of economic value, such as dollars.2 (In the app above, QQ has a different meaning: the domain that will be plotted in the graph.)

As a side note, we define a special case for MC(0)TC(0)MC(0) \coloneqq TC(0) since the general definition results in a term TC(1)TC(-1), even though 1Q-1 \notin Q.

Defining ATCATC in terms of MCMC

We can define Average Total Cost (ATCATC) similarly, but beware that since it is calculated with respect to the quantity of goods, its domain is actually Q{0}Q - \{0\}. That is, it doesn’t make sense to talk about the average cost per good when no goods have been produced. So, ATC ⁣:Q{0}PATC \colon Q-\{0\} \to P, and

ATC(q)TC(q)qATC(q) \coloneqq \frac{TC(q)}{q}

We can also define MCMC in terms of ATCATC:

ATC(q)=TC(q)qqATC(q)=TC(q)Δ[qATC](q)=ΔTC(q)qΔATC(q)=MC(q+1)MC(q)=(q+1)ΔATC(q+1)\begin{aligned} ATC(q) &= \frac{TC(q)}{q} \\ q \cdot ATC(q) &= TC(q) \\ \Delta [q \cdot ATC](q) &= \Delta TC(q) \\ q \Delta ATC(q) &= MC(q + 1) \\ MC(q) &= (q + 1) \Delta ATC(q + 1) \\ \end{aligned}

Market Price

Since algebraically finding the market price is hard, this approximates by finding the closest quantity qmktq_{mkt} such that

pmktS(qmkt)=D(qmkt).p_{mkt} \coloneqq S(q_{mkt}) = D(q_{mkt}).

And if

peqMC(qeq)=ATC(qeq)p_{eq} \coloneqq MC(q_{eq}) = ATC(q_{eq})

is close enough to pmktp_{mkt}, about 11 unit, then we’ll say the firm is making approximately normal profit.

Normally, the firm tries to produce at the price pc=MR(qc)=MC(qc)p_c = MR(q_c) = MC(q_c). For Perfekt firms, MR(q)=pmktMR(q) = p_{mkt}; that is, they are price takers. So,

pc=pmkt=MC(qc).p_c = p_{mkt} = MC(q_c).

We can compare peqp_{eq} and pcp_c to find the sign of the economic profit the firm is making:

ComparisonEconomic State
pc<peqp_c < p_{eq}Economic Loss
pc=peqp_c = p_{eq}Normal Profit
pc>peqp_c > p_{eq}Economic Profit

Shutdown Point

If the firm is making an economic loss, we can also find

pminminqQ(AVC(q))p_{min} \coloneqq \min_{q \in Q} (AVC(q))

and compare pcp_{c} and pminp_{min} like so:

ComparisonShould the firm shutdown?
pmin<pcp_{min} < p_{c}No
pmin=pcp_{min} = p_{c}Doesn’t Matter3
pmin>pcp_{min} > p_{c}Yes

  1. The visualization connects points with consecutive quantities with a line segment, which is why the curves look continuous.
  2. Note that this definition is not formal.
  3. With respect to loss minimization.

Streaming direct thought dumps from Yuto Nishida.
Connect with me on LinkedIn! I'm currently listening to: