Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Abstract generated by NotebookLM

Open In Colab

Abstract generated by NotebookLM

This text proposes a mathematical formalism to analyze the labor embodied in commodities, a central idea in econophysics that treats the economy statistically. It begins by defining labor content as the sum of direct labor hours and the proportional fraction of labor contained in products used in production. Through a series of matrix equations, the author constructs tools to model production, consumption, and, crucially, the allocation of labor between workers and other social classes. The objective is to quantify the distribution of labor contained in net production, revealing how a portion is appropriated by other sectors of society, as exemplified in the analysis of capitalist versus worker appropriation."

Measure of Content Labor

Although the focus of my work involves the use of microscopic models to investigate complex systems, econophysics is not limited to this. Among some of the works considered seminal in the field, the books by Farjoun and Machover stand out: Laws of Chaos: A Probabilistic Approach to Political Economy and How Labor Powers the Global Economy. The main idea in these works is that the economy should be treated statistically.

The text of this chapter is taken from the appendix of the book How Labor Powers the Global Economy, where we aim to develop mathematical tools to analyze the labor embodied in commodities. Therefore, we are not presenting a model or law here, only a mathematical formalism for conducting analyses.

To begin, we need to define some properties of labor content (my translation of Labor Content):

  • The labor content of a collection of products is equal to the total number of hours of labor directly invested in their production, plus the proportional fraction of labor contained in the products involved in their production process.

  • The labor content of the net production of an entire economy, over a given period, is equal to the total number of hours worked during that period.

Evidently, the second property is a consequence of the first, since, when we consider the entire net production of society, we necessarily also consider all production that was used in the production process. In this way, we are taking into account the production of society as a whole.

Let us consider an economy with mm production units that are able, over a certain period of time (one year, for example), to produce a collection of products BB. A part BIB_{I} of these products will be consumed during the production process itself, thus resulting in a net product BL=BBIB_{L}=B-B_{I}.

From the net product, a portion BTB_{T} is allocated to workers—assuming that the other part of the net product BCB_{C} is allocated to capitalists, so that BL=BT+BCB_{L}=B_{T}+B_{C}. The labor LTL_{T} contained in BTB_{T} will, in the same way, be a part of the total labor LL contained in the net product. Analogously, we can suppose that the remainder LCL_{C} of the labor contained in the net product is the labor embodied in the products allocated to capitalists, so that L=LT+LCL=L_{T}+L_{C}. We will call this the partition of labor, which will be denoted as:

λ=LTL\lambda=\frac{L_{T}}{L}

In other words, only the fraction λ\lambda of the labor content in the net product is embodied in the product allocated to workers; the rest is appropriated by other sectors of society. Let us now classify all products into dd distinct types. We can then construct a vector b=(b1,,bd)\boldsymbol{b}=\left(b_{1},\dots,b_{d}\right) that records the quantity of each type of product that makes up the net product. If we define a vector c=(c1,,cd)\boldsymbol{c}=\left(c_{1},\dots,c_{d}\right) that describes the labor content per unit of each type of product, we can then calculate the total labor content in the net product as follows:

L=cbL=\boldsymbol{c}\cdot\boldsymbol{b}

If we construct a vector w\boldsymbol{w} that represents the quantity of net products distributed to the workforce divided by the total labor employed by society, we have bTL=w\frac{\boldsymbol{b}_{T}}{L}=\boldsymbol{w}, where bT\boldsymbol{b}_{T} is the vector representing the portion of the net product allocated to workers. Evidently, the labor content in the net product allocated to workers will be:

LT=cbT=cwLL_{T}=\boldsymbol{c}\cdot\boldsymbol{b}_{T}=\boldsymbol{c}\cdot\boldsymbol{w}L

Recall that c\boldsymbol{c} does not depend on the quantity of goods in a given collection of goods, so:

λ=LTL=cwLL=cw\lambda=\frac{L_{T}}{L}=\frac{\boldsymbol{c}\cdot\boldsymbol{w}L}{L}=\boldsymbol{c}\boldsymbol{w}

Now let us connect the products distributed to the workforce with the products produced across the mm distinct production units. Let us consider that firm ii employs xix_{i} hours of labor directly in a given year, and let ai\boldsymbol{a}_{i} be a vector specifying the quantity of each type of product used per hour of labor directly employed by the firm. Then the products consumed by a firm over the year are aixi\boldsymbol{a}_{i}x_{i}. For example, if we have only two products, we would have for a firm ii:

ai=(a1i,a2i),bIi=xiai=(xiai1,xiai2)\boldsymbol{a}_{i}=\left(a_{1i},a_{2i}\right),\quad\boldsymbol{b}_{I_{i}}=x_{i}\boldsymbol{a}_{i}=\left(x_{i}a_{i1},x_{i}a_{i2}\right)

We can then construct a matrix AA where each column jj is a column vector ai\boldsymbol{a}_{i} indicating the consumption of products by firm ii per hour of labor employed. That is, row ii indicates the consumption of product ii by each firm, and column jj indicates the consumption of each product by firm jj. For example, if we have two firms with two types of products, then:

A=[a1a2]=[a11a12a21a22]\boldsymbol{A}=\left[\begin{array}{cc} \boldsymbol{a}_{1} & \boldsymbol{a}_{2}\end{array}\right]=\left[\begin{array}{cc} a_{11} & a_{12}\\ a_{21} & a_{22} \end{array}\right]

Thus, we can obtain the vector bI\boldsymbol{b}_{I} representing the basket of products consumed during the production process over the course of a year by using a matrix with components aija_{ij}:

Ax=[a11a12a21a22][x1x2]=[a11x1+a12x2,a21x1+a22x2]=[a11x1,a21x1]+[a12x2,a22x2]=[a11,a21]x1+[a12,a22]x2=a1x1+a2x2=bI\begin{align} \boldsymbol{A}\boldsymbol{x} & =\left[\begin{array}{cc} a_{11} & a_{12}\\ a_{21} & a_{22} \end{array}\right]\left[\begin{array}{c} x_{1}\\ x_{2} \end{array}\right]\\ & =\left[a_{11}x_{1}+a_{12}x_{2},a_{21}x_{1}+a_{22}x_{2}\right]\\ & =\left[a_{11}x_{1},a_{21}x_{1}\right]+\left[a_{12}x_{2},a_{22}x_{2}\right]\\ & =\left[a_{11},a_{21}\right]x_{1}+\left[a_{12},a_{22}\right]x_{2}\\ & =\boldsymbol{a}_{1}x_{1}+\boldsymbol{a}_{2}x_{2}\\ & =\boldsymbol{b}_{I} \end{align}

This calculation can be easily generalized for any number dd of product types and mm firms, where x\boldsymbol{x} is a column vector of dimension mm, and AA is a matrix of dimension d×md\times m:

Ax=[a11a1mad1adm][x1xm]\boldsymbol{A}\boldsymbol{x}=\left[\begin{array}{ccc} a_{11} & \dots & a_{1m}\\ \vdots & \ddots & \vdots\\ a_{d1} & \dots & a_{dm} \end{array}\right]\left[\begin{array}{c} x_{1}\\ \vdots\\ x_{m} \end{array}\right]

If q\boldsymbol{q} is the vector denoting gross production in a year, then it is easy to see that:

b=qbIq=bAx\boldsymbol{b}=\boldsymbol{q}-\boldsymbol{b}_{I}\rightarrow\boldsymbol{q}=\boldsymbol{b}-\boldsymbol{A}\boldsymbol{x}

Denoting the vector of products produced by firm ii over the year as qi=[qi1,,qid]\boldsymbol{q}_{i}=\left[q_{i1},\dots,q_{id}\right], we define that firm ii produces pijqjp_{ij}q_{j} units of type jj, i.e., qij=pijqjq_{ij}=p_{ij}q_{j}, where pijp_{ij} is the proportion in which firm ii contributes to the total production of product jj in the entire economy, given by the component qjq_{j} of the vector q\boldsymbol{q}. For example, if firm ii produces 100% of product jj, then simply pij=1p_{ij}=1 and qji=qjq_{ji}=q_{j}, and for any other firm different from ii we have qji=pij=0q_{ji}=p_{ij}=0.

A firm ii directly employs xix_{i} units of labor to produce did_{i} different types of products. Then the quantity lij=xi/qijl_{ij}=x_{i}/q_{ij} gives the number of hours of labor that must be directly employed by firm ii to produce one unit of product type jj. We can also rewrite lij=xi/(pijqj)l_{ij}=x_{i}/\left(p_{ij}q_{j}\right). We can rewrite this as:

xi=lijpijqj.x_{i}=l_{ij}p_{ij}q_{j}.

Then, if we sum over all products jj that firm ii produces, we would have jlijpijqj=dixi\sum_{j}l_{ij}p_{ij}q_{j}=d_{i}x_{i}, since firm ii produces did_{i} products. We can also write:

xi=1dijlijpijqjx_{i}=\frac{1}{d_{i}}\sum_{j}l_{ij}p_{ij}q_{j}

We will use all of this to construct a matrix L\boldsymbol{L} with elements lijpijdi\frac{l_{ij}p_{ij}}{d_{i}}:

x=[x1xm]=[jl1jp1jqjd1jlmjpmjqjdm]=[l11p11d1l1dp1dd1lm1pm1dmlmdpmddm][q1qd]=Lq\boldsymbol{x}=\left[\begin{array}{c} x_{1}\\ \vdots\\ x_{m} \end{array}\right]=\left[\begin{array}{c} \sum_{j}\frac{l_{1j}p_{1j}q_{j}}{d_{1}}\\ \vdots\\ \frac{\sum_{j}l_{mj}p_{mj}q_{j}}{d_{m}} \end{array}\right]=\left[\begin{array}{ccc} \frac{l_{11}p_{11}}{d_{1}} & \dots & \frac{l_{1d}p_{1d}}{d_{1}}\\ \vdots & \ddots & \vdots\\ \frac{l_{m1}p_{m1}}{d_{m}} & \dots & \frac{l_{md}p_{md}}{d_{m}} \end{array}\right]\left[\begin{array}{c} q_{1}\\ \vdots\\ q_{d} \end{array}\right]=\boldsymbol{L}\boldsymbol{q}

Thus, the pair of matrices (A,L)\left(\boldsymbol{A},\boldsymbol{L}\right) describes the technical conditions of production. We can combine the results:

b=qAx=qALq=(IAL)q\begin{align} \boldsymbol{b} & =\boldsymbol{q}-\boldsymbol{A}\boldsymbol{x}\\ & =\boldsymbol{q}-\boldsymbol{A}\boldsymbol{L}\boldsymbol{q}\\ & =\left(\boldsymbol{I}-\boldsymbol{A}\boldsymbol{L}\right)\boldsymbol{q} \end{align}

Then, in order to have a net production greater than zero, we depend on AL\boldsymbol{AL}[^1]. We can rewrite everything in a single expression:

[b0]=[IdALIm][qx]\left[\begin{array}{c} \boldsymbol{b}\\ \boldsymbol{0} \end{array}\right]=\left[\begin{array}{cc} \boldsymbol{I}_{d} & -\boldsymbol{A}\\ -\boldsymbol{L} & \boldsymbol{I}_{m} \end{array}\right]\left[\begin{array}{c} \boldsymbol{q}\\ \boldsymbol{x} \end{array}\right]

Here we are indicating, for example, that if u=(u1,u2)\boldsymbol{u}=\left(u_{1},u_{2}\right) and v=(v1,v2)\boldsymbol{v}=\left(v_{1},v_{2}\right), then in a concise notation we write (u,v)=(u1,u2,v1,v2)\left(\boldsymbol{u},\boldsymbol{v}\right)=\left(u_{1},u_{2},v_{1},v_{2}\right). Furthermore, 0\boldsymbol{0} is a vector of zero values, and In\boldsymbol{I}_{n} is an identity matrix of size n×nn\times n. This is necessary because for the multiplication of matrices n×mn\times m and j×kj\times k, we need m=jm=j, that is, the number of columns of the first matrix must equal the number of rows of the second. Then, Id\boldsymbol{I}_{d} is a d×dd\times d matrix in order to multiply the vector q\boldsymbol{q} of size dd. Since A\boldsymbol{A} is a d×md\times m matrix, the number of columns in the whole matrix is d+m=nd+m=n. L\boldsymbol{L} is an m×dm\times d matrix, so the number of rows is also n=m+dn=m+d, which perfectly complements the last identity matrix Im\boldsymbol{I}_{m} that multiplies the vector x\boldsymbol{x} of dimension mm. Thus, the column vector also has dimension n=m+dn=m+d.

If we apply the inverse matrix:

[IdALIm]1[b0]=[qx]\begin{align} \left[\begin{array}{cc} \boldsymbol{I}_{d} & -\boldsymbol{A}\\ -\boldsymbol{L} & \boldsymbol{I}_{m} \end{array}\right]^{-1} \left[\begin{array}{c} \boldsymbol{b}\\ \boldsymbol{0} \end{array}\right] & =\left[\begin{array}{c} \boldsymbol{q}\\ \boldsymbol{x} \end{array}\right]\\ \end{align}

We can now relate the quantity of products allocated to the workforce to the products it produces. If L=ixiL=\sum_{i}x_{i} is the total number of hours of labor directly employed by the firms over the year, then if we write a vector of size mm where all elements are 1 as 1\boldsymbol{1}, we have 1x=ixi=L\boldsymbol{1}\cdot\boldsymbol{x}=\sum_{i}x_{i}=L. Thus:

bT=wL=w(1x)=w[01][qx]=w[01][IdALIm]1[b0]\begin{align} \boldsymbol{b}_{T} & =\boldsymbol{w}L\\ & =\boldsymbol{w}\left(\boldsymbol{1}\boldsymbol{x}\right)\\ & =\boldsymbol{w}\left[\begin{array}{cc} \boldsymbol{0} & \boldsymbol{1}\end{array}\right]\left[\begin{array}{c} \boldsymbol{q}\\ \boldsymbol{x}\end{array}\right]\\ & =\boldsymbol{w}\left[\begin{array}{cc} \boldsymbol{0} & \boldsymbol{1}\end{array}\right]\left[\begin{array}{cc} \boldsymbol{I}_{d} & -\boldsymbol{A}\\ -\boldsymbol{L} & \boldsymbol{I}_{m} \end{array}\right]^{-1}\left[\begin{array}{c} \boldsymbol{b}\\ \boldsymbol{0} \end{array}\right] \end{align}

An inverse matrix H1\boldsymbol{H}^{-1} is one for which H1H=I\boldsymbol{H}^{-1}\boldsymbol{H}=\boldsymbol{I}. Writing:

H=[IdALIm],H1=[α11α12α21α22]\begin{align} \boldsymbol{H}=\left[\begin{array}{cc} \boldsymbol{I}_{d} & -\boldsymbol{A}\\ -\boldsymbol{L} & \boldsymbol{I}_{m} \end{array}\right],\quad\boldsymbol{H}^{-1}= & \left[\begin{array}{cc} \alpha_{11} & \alpha_{12}\\ \alpha_{21} & \alpha_{22} \end{array}\right] \end{align}

We want to determine the components αij\alpha_{ij}. For now, we will keep this notation.

bT=w[01][α11α12α21α22][b0]=w[1α211α22][b0]=w1α21b\begin{align} \boldsymbol{b}_{T} & =\boldsymbol{w}\left[\begin{array}{cc} \boldsymbol{0} & \boldsymbol{1}\end{array}\right]\left[\begin{array}{cc} \alpha_{11} & \alpha_{12}\\ \alpha_{21} & \alpha_{22} \end{array}\right]\left[\begin{array}{c} \boldsymbol{b}\\ \boldsymbol{0} \end{array}\right]\\ & =\boldsymbol{w}\left[\begin{array}{cc} \boldsymbol{1}\alpha_{21} & \boldsymbol{1}\alpha_{22}\end{array}\right]\left[\begin{array}{c} \boldsymbol{b}\\ \boldsymbol{0} \end{array}\right]\\ & =\boldsymbol{w}\boldsymbol{1}\alpha_{21}\boldsymbol{b} \end{align}

Defining W=w1α21\boldsymbol{W}=\boldsymbol{w}\boldsymbol{1}\alpha_{21}, we then have a relationship between the net production allocated to workers and the net production overall:

bT=Wb\boldsymbol{b}_{T}=W\boldsymbol{b}

Now we want the component α21\alpha_{21} of the inverse matrix. Let us calculate the inverse explicitly—recalling that in this notation, each element of the matrix H\boldsymbol{H} is itself a matrix. Therefore, the elements on the right-hand side of the equality are also matrices (zero and identity). The identity matrix on the right must be n×nn\times n overall, but we have some flexibility in choosing the dimensions of the identity sub-matrices. Defining them with orders n1×n1n_{1}\times n_{1} and n2×n2n_{2}\times n_{2}, as long as n=n1+n2n=n_{1}+n_{2}, and the zero matrices being of the necessary size to maintain the full square matrix.

We then choose n1=dn_{1}=d and n2=mn_{2}=m. In this way, the zero matrices need to have the dimensions of A\boldsymbol{A} and L\boldsymbol{L}:

[α11α12α21α22][IdALIm]=[Id0A0LIm][α11Idα12Lα11A+α12Imα21Idα22Lα21A+α22Im]=[Id0A0LIm]\begin{align} \left[\begin{array}{cc} \alpha_{11} & \alpha_{12}\\ \alpha_{21} & \alpha_{22} \end{array}\right]\left[\begin{array}{cc} \boldsymbol{I}_{d} & -\boldsymbol{A}\\ -\boldsymbol{L} & \boldsymbol{I}_{m} \end{array}\right] & =\left[\begin{array}{cc} \boldsymbol{I}_{d} & \boldsymbol{0}_{A}\\ \boldsymbol{0}_{L} & \boldsymbol{I}_{m} \end{array}\right]\\ \left[\begin{array}{cc} \alpha_{11}\boldsymbol{I}_{d}-\alpha_{12}\boldsymbol{L} & -\alpha_{11}\boldsymbol{A}+\alpha_{12}\boldsymbol{I}_{m}\\ \alpha_{21}\boldsymbol{I}_{d}-\alpha_{22}\boldsymbol{L} & -\alpha_{21}\boldsymbol{A}+\alpha_{22}\boldsymbol{I}_{m} \end{array}\right] & =\left[\begin{array}{cc} \boldsymbol{I}_{d} & \boldsymbol{0}_{A}\\ \boldsymbol{0}_{L} & \boldsymbol{I}_{m} \end{array}\right] \end{align}

We can note that by definition, the elements αi1\alpha_{i1} must have dd columns to multiply Id\boldsymbol{I}_{d} and A\boldsymbol{A}, analogous to αi2\alpha_{i2} which must have mm columns to multiply L\boldsymbol{L} and Im\boldsymbol{I}_{m}. Thus:

[α11α12Lα11A+α12α21α22Lα21A+α22]=[Id0A0LIm]\left[\begin{array}{cc} \alpha_{11}-\alpha_{12}\boldsymbol{L} & -\alpha_{11}\boldsymbol{A}+\alpha_{12}\\ \alpha_{21}-\alpha_{22}\boldsymbol{L} & -\alpha_{21}\boldsymbol{A}+\alpha_{22} \end{array}\right]=\left[\begin{array}{cc} \boldsymbol{I}_{d} & \boldsymbol{0}_{A}\\ \boldsymbol{0}_{L} & \boldsymbol{I}_{m} \end{array}\right]

We are then left with 2 systems:

α11α12L=Idα21α22L=0Lα11A+α12=0Aα21A+α22=Im\begin{align} \alpha_{11}-\alpha_{12}\boldsymbol{L} & =\boldsymbol{I}_{d} & \alpha_{21}-\alpha_{22}\boldsymbol{L} & =\boldsymbol{0}_{L}\\ \alpha_{11}\boldsymbol{A}+\alpha_{12} & =\boldsymbol{0}_{A} & -\alpha_{21}\boldsymbol{A}+\alpha_{22} & =\boldsymbol{I}_{m} \end{align}

From the second system, and from the second row, we have:

α22=Im+α21A\begin{align} \alpha_{22} & =\boldsymbol{I}_{m}+\alpha_{21}\boldsymbol{A} \end{align}

Substituting into the first row:

α21α22L=0Lα21(Im+α21A)L=0Lα21ImLα21AL=0Lα21α21AL=0L+Lα21(IdAL)=L\begin{align} \alpha_{21}-\alpha_{22}\boldsymbol{L} & =\boldsymbol{0}_{L}\\ \alpha_{21}-\left(\boldsymbol{I}_{m}+\alpha_{21}\boldsymbol{A}\right)\boldsymbol{L} & =\boldsymbol{0}_{L}\\ \alpha_{21}-\boldsymbol{I}_{m}\boldsymbol{L}-\alpha_{21}\boldsymbol{A}\boldsymbol{L} & =\boldsymbol{0}_{L}\\ \alpha_{21}-\alpha_{21}\boldsymbol{A}\boldsymbol{L} & =\boldsymbol{0}_{L}+\boldsymbol{L}\\ \alpha_{21}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right) & =\boldsymbol{L} \end{align}

It is worth noting that AL\boldsymbol{AL} is a matrix of order d×md\times m multiplying a matrix of order m×dm\times d, resulting in a matrix of order d×dd\times d. That is, by multiplying the entire equality by its right inverse, we have:

α21=L(IdAL)1\alpha_{21}=\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}

And then:

W=w1α12=w1L(IdAL)1\begin{align} \boldsymbol{W} & =\boldsymbol{w}\boldsymbol{1}\alpha_{12}\\ & =\boldsymbol{w}\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1} \end{align}

The book calls W\boldsymbol{W} the worker allocation matrix. Recalling the equation bT=Wb\boldsymbol{b}_{T}=\boldsymbol{W}\boldsymbol{b}, it does not specify exactly how workers are allocated, but from the net production b\boldsymbol{b}, it tells us which part of the production is allocated to the workers bT\boldsymbol{b}_{T}. If we can write bT=Wb\boldsymbol{b}_{T}=\boldsymbol{W}\boldsymbol{b}, then:

λ=LTL=cWbcbλcb=cWbλcbcWb=0\begin{align} \lambda & =\frac{L_{T}}{L}\\ & =\frac{\boldsymbol{c\cdot Wb}}{\boldsymbol{c}\cdot\boldsymbol{b}}\\ \lambda\boldsymbol{c}\cdot\boldsymbol{b} & =\boldsymbol{c\cdot Wb}\\ \lambda\boldsymbol{c}\cdot\boldsymbol{b}-\boldsymbol{c\cdot Wb} & =0 \end{align}

If we recall that λ=cw\lambda=\boldsymbol{c}\cdot\boldsymbol{w}, this invites us to consider that λ\lambda is independent of b\boldsymbol{b}; that is, the partition of labor depends on certain technical aspects of the mode of production given by c\boldsymbol{c}, and not on the net production b\boldsymbol{b}. Thus:

λcbcWb=0(λccW)=0λc=cW(λc)T=(cW)TcTλ=WTcT0=(WTλI)cT\begin{align} \lambda\boldsymbol{c}\cdot\boldsymbol{b}-\boldsymbol{c\cdot Wb} & =0\\ \left(\lambda\boldsymbol{c}-\boldsymbol{cW}\right) & =0\\ \lambda\boldsymbol{c} & =\boldsymbol{cW}\\ \left(\lambda\boldsymbol{c}\right)^{T} & =\left(\boldsymbol{cW}\right)^{T}\\ \boldsymbol{c}^{T}\lambda & =\boldsymbol{W}^{T}\boldsymbol{c}^{T}\\ 0 & =\left(\boldsymbol{W}^{T}-\lambda\boldsymbol{I}\right)\boldsymbol{c}^{T} \end{align}

Recalling that by associativity we have c(Wb)=(cW)b\boldsymbol{c} \cdot (\boldsymbol{Wb}) = (\boldsymbol{cW}) \cdot \boldsymbol{b}, then λ\lambda is the eigenvalue given by det(WTλI)=0\det\left(\boldsymbol{W}^{T}-\lambda\boldsymbol{I}\right)=0. Since det(WTλI)=det(WλI)\det\left(\boldsymbol{W}^{T}-\lambda\boldsymbol{I}\right) = \det\left(\boldsymbol{W}-\lambda\boldsymbol{I}\right), we are simply looking for the eigenvalues of W\boldsymbol{W}. With W=w1L(IdAL)1\boldsymbol{W} = \boldsymbol{w} \boldsymbol{1} \boldsymbol{L} \left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}, then:

det(w1L(IdAL)1λI)=0\det\left(\boldsymbol{w}\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}-\lambda\boldsymbol{I}\right)=0

Using the matrix determinant lemma:

det(A+uvT)=(1+vTA1u)det(A)\begin{align} \det\left(A+uv^{T}\right) & =\left(1+v^{T}A^{-1}u\right)\det\left(A\right) \end{align}

Then, taking A=λIA=-\lambda\boldsymbol{I}, u=wu=\boldsymbol{w}, and vT=1L(IdAL)1v^{T}=\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}, we have:

det(WTλI)=(1+[1L(IdAL)1](λI)1w)det(λI)=(11L(IdAL)1Iwλ1)det(λI)=(11L(IdAL)1wλ1)(λ)ddet(I)=(11L(IdAL)1wλ1)(λ)d=(11L(IdAL)1wλ1)λd(1)d\begin{align} \det\left(\boldsymbol{W}^{T}-\lambda\boldsymbol{I}\right) & =\left(1+\left[\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}\right]\left(-\lambda\boldsymbol{I}\right)^{-1}\boldsymbol{w}\right)\det\left(-\lambda\boldsymbol{I}\right)\\ & =\left(1-\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}\boldsymbol{I}\boldsymbol{w}\lambda^{-1}\right)\det\left(-\lambda\boldsymbol{I}\right)\\ & =\left(1-\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}\boldsymbol{w}\lambda^{-1}\right)\left(-\lambda\right)^{d}\det\left(\boldsymbol{I}\right)\\ & =\left(1-\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}\boldsymbol{w}\lambda^{-1}\right)\left(-\lambda\right)^{d}\\ & =\left(1-\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}\boldsymbol{w}\lambda^{-1}\right)\lambda^{d}\left(-1\right)^{d} \end{align}

Then:

0=det(WTλI)0=(11L(IdAL)1wλ1)λd(1)d1=1L(IdAL)1wλλ=1L(IdAL)1w\begin{align} 0= & \det\left(\boldsymbol{W}^{T}-\lambda\boldsymbol{I}\right)\\ 0= & \left(1-\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}\boldsymbol{w}\lambda^{-1}\right)\lambda^{d}\left(-1\right)^{d}\\ 1= & \frac{\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}\boldsymbol{w}}{\lambda}\\ \lambda= & \boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}\boldsymbol{w} \end{align}

Returning then:

λc=cWc=1λcW=cwλ1L(IdAL)1\begin{align} \lambda\boldsymbol{c} & =\boldsymbol{cW}\\ \boldsymbol{c} & =\frac{1}{\lambda}\boldsymbol{cW}\\ & =\frac{\boldsymbol{c}\boldsymbol{w}}{\lambda}\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1} \end{align}

And as we saw, λ=cw\lambda = \boldsymbol{c} \boldsymbol{w}:

c=cwcw1L(IdAL)1=1L(IdAL)1\begin{align} \boldsymbol{c} & =\frac{\boldsymbol{c}\boldsymbol{w}}{\boldsymbol{c}\boldsymbol{w}}\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}\\ & =\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1} \end{align}

The labor content in any collection of products b\boldsymbol{b} can then be written as:

Lcb=1L(IdAL)1bL\equiv\boldsymbol{c}\boldsymbol{b}=\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}\boldsymbol{b}

It can be observed that the measure of labor content LL calculates the average labor spent across all production units and adds all the intermediate labor required at each stage of production. If we use the series expansion of a matrix in L=1L(IdAL)1bL = \boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}\boldsymbol{b}, we obtain:

L=(c0+c1+)bL=\left(\boldsymbol{c}_{0}+\boldsymbol{c}_{1}+\dots\right)\boldsymbol{b}

Where cn=1L(AL)n\boldsymbol{c}_{n} = \boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{A}\boldsymbol{L}\right)^{n} determines the labor required at the nn-th stage of production (counting backward from the end). In this way, LL accounts for all the labor necessary to produce a collection of products[^2].

Example

Let’s imagine a society with two production units (One and Two) that during a year produce Steel and Bananas. The total production in the year is 30 units of steel and 40 units of bananas, i.e., q=(30,40)\boldsymbol{q}=\left(30,40\right), of which half is net production b=(15,20)\boldsymbol{b}=\left(15,20\right) and approximately half of the net production is allocated to the workers bT=(5,10)\boldsymbol{b}_{T}=\left(5,10\right).

The two firms together employ L=250L=250 hours of annual labor. Let’s consider that Firm One employs 150h and Firm Two 100h, i.e., x=(150,100)\boldsymbol{x}=\left(150,100\right). The production that is internally consumed, as we defined, is half of the total production, i.e., bI=b=(15,20)\boldsymbol{b}_{I}=\boldsymbol{b}=\left(15,20\right). Considering that Firm One consumes 15 units of steel and 10 units of bananas, then bI1=(15,10)\boldsymbol{b}_{I_{1}}=\left(15,10\right). Firm Two consumes the remainder: 0 units of steel and 10 units of bananas, i.e., bI2=(0,10)\boldsymbol{b}_{I_{2}}=\left(0,10\right).

import numpy as np

bt = np.array([5, 10])
bc = np.array([10, 10])
b = bt + bc
bi = b
q = b + bi
Um = np.array([1,1])
x = np.array([150,100])
L = np.dot(x,Um)

print('Basket of commodities for workers:        bt =', bt)
print('Basket of commodities for capitalists:    bc =', bc)
print('Net basket of commodities:                 b =', b)
print('Basket of commodities used in production: bi =', bi)
print('Basket of gross products:                  q =', q)
print('Hours worked by each firm:                 x =', x)
print('Total hours worked in society:             L =', L)
Basket of commodities for workers:        bt = [ 5 10]
Basket of commodities for capitalists:    bc = [10 10]
Net basket of commodities:                 b = [15 20]
Basket of commodities used in production: bi = [15 20]
Basket of gross products:                  q = [30 40]
Hours worked by each firm:                 x = [150 100]
Total hours worked in society:             L = 250

We can also calculate the vector:

w=bTL=(5250,10250)=(0.02,0.04)\boldsymbol{w}=\frac{\boldsymbol{b}_{T}}{L}=\left(\frac{5}{250},\frac{10}{250}\right)=\left(0.02,0.04\right)

Since bIi=(xia1i,,xiadi)\boldsymbol{b}_{I_{i}}=\left(x_{i}a_{1i},\dots,x_{i}a_{di}\right), then bIjixi=aji\frac{b_{I_{ji}}}{x_{i}}=a_{ji}, i.e., for steel consumption of Firm One we have:

a11=15150=0.1a_{11}=\frac{15}{150}=0.1

Similarly:

a21=10150=115,a12=0100=0,a22=10100=0.1a_{21}=\frac{10}{150}=\frac{1}{15}, \quad a_{12}=\frac{0}{100}=0, \quad a_{22}=\frac{10}{100}=0.1

So we have:

a1=(0.1,1/15),a2=(0,0.1)\boldsymbol{a}_{1}=\left(0.1,1/15\right), \quad \boldsymbol{a}_{2}=\left(0,0.1\right)

Constructing the matrix A\boldsymbol{A}:

A=[0.101/150.1]bI=Ax=[0.101/150.1][150100]=[1520]\boldsymbol{A}=\left[\begin{array}{cc} 0.1 & 0\\ 1/15 & 0.1 \end{array}\right] \rightarrow \boldsymbol{b}_{I}=\boldsymbol{A}\boldsymbol{x}=\left[\begin{array}{cc} 0.1 & 0\\ 1/15 & 0.1 \end{array}\right]\left[\begin{array}{c} 150\\ 100 \end{array}\right]=\left[\begin{array}{c} 15\\ 20 \end{array}\right]
w = bt/L
A = np.zeros((2, 2))
bi1 = np.array([15,10])
bi2 = np.array([0,10])
for i in range(2):
    A[i, 0] = bi1[i]/x[0]
    A[i, 1] = bi2[i]/x[1]

print('w                                     =',w)
print('Commodities consumed by Firm One: bi1 =',bi1)
print('Commodities consumed by Firm One: bi2 =',bi2)
print('Matrix A:\n',A)
print('Check:                       bi = A.x =',np.dot(A,x))
w                                        = [0.02 0.04]
Commodities consumed by Firm One: bi1    = [15 10]
Commodities consumed by Firm One: bi2    = [ 0 10]
Matrix A:
 [[0.1        0.        ]
 [0.06666667 0.1       ]]
Check:                          bi = A.x = [15. 20.]

Now regarding gross production, considering that Firm One produces all the steel and half of the bananas, we have q1=(30,20)\boldsymbol{q}_{1}=\left(30,20\right), so Firm Two must produce the remainder q2=(0,20)\boldsymbol{q}_{2}=\left(0,20\right), with the sum of both clearly giving the total gross production q=q1+q2\boldsymbol{q}=\boldsymbol{q}_{1}+\boldsymbol{q}_{2} as defined at the beginning.

Another way to put this is by saying that Firm One is responsible for producing 100% of the steel (p11=1p_{11}=1 and p21=0p_{21}=0), and regarding bananas, each firm produces half (p12=p22=0.5p_{12}=p_{22}=0.5).

Since Firm One produces two products d1=2d_{1}=2 and Firm Two only one d2=1d_{2}=1, we can calculate the terms lijl_{ij} through both paths, for example l12l_{12} (related to Firm One’s banana production):

l12=x1q12=15020=7.50l12=x1p12q2=1500.540=15020=7.50\begin{align} l_{12} & =\frac{x_{1}}{q_{12}}=\frac{150}{20}=7.50\\ l_{12} & =\frac{x_{1}}{p_{12}q_{2}}=\frac{150}{0.5\cdot40}=\frac{150}{20}=7.50 \end{align}

In other words, Firm One requires 7.50 hours to produce one unit of bananas. For the other products:

l11=x1q11=15030=5.00l21=x2q21=1000limx01000=l22=x2q22=10020=5.00\begin{align} l_{11} & =\frac{x_{1}}{q_{11}}=\frac{150}{30}=5.00\\ l_{21} & =\frac{x_{2}}{q_{21}}=\frac{100}{0}\approx\lim_{x\rightarrow0}\frac{100}{0}=\infty\\ l_{22} & =\frac{x_{2}}{q_{22}}=\frac{100}{20}=5.00 \end{align}

It is interesting to note here that for l21l_{21} I used an approximation which indicates that Firm Two would require infinite hours to produce steel, since it does not produce it. It is worth noting that we are not directly defining how the future gross production of each firm is divided between internal consumption for production and net production, nor how the products consumed by the firm are distributed among its net products.

Now we are able to construct the matrix L\boldsymbol{L}:

L=[l11p11d1l12p12d1l21p21d2l22p22d2]=[527.50.52050.5]=[2.51.87502.5]\boldsymbol{L}=\left[\begin{array}{cc} \frac{l_{11}p_{11}}{d_{1}} & \frac{l_{12}p_{12}}{d_{1}}\\ \frac{l_{21}p_{21}}{d_{2}} & \frac{l_{22}p_{22}}{d_{2}} \end{array}\right]=\left[\begin{array}{cc} \frac{5}{2} & \frac{7.5\cdot0.5}{2}\\ 0 & 5\cdot0.5 \end{array}\right]=\left[\begin{array}{cc} 2.5 & 1.875\\ 0 & 2.5 \end{array}\right]

Note: To keep the notation adopted in the book, whenever we encounter the indeterminate form limpij0lijpij\lim_{p_{ij}\rightarrow0} l_{ij} p_{ij}, we assign it a value of 0. We also can recover x\boldsymbol{x}:

x=Lq=[2.51.87502.5][3040]=[150100]\boldsymbol{x}=\boldsymbol{L}\boldsymbol{q}=\left[\begin{array}{cc} 2.5 & 1.875\\ 0 & 2.5 \end{array}\right]\left[\begin{array}{c} 30\\ 40 \end{array}\right]=\left[\begin{array}{c} 150\\ 100 \end{array}\right]

In other words, we can obtain the net production by doing:

b=(IAL)q=([1001][0.101/150.1][2.51.87502.5])[3040]=([1001][0.250.18752.5/150.375])[3040]=[0.750.18752.5/150.625][3040]=[1520]\begin{align} \boldsymbol{b} & =\left(\boldsymbol{I}-\boldsymbol{A}\boldsymbol{L}\right)\boldsymbol{q}\\ & = \left(\left[\begin{array}{cc} 1 & 0\\ 0 & 1 \end{array}\right]-\left[\begin{array}{cc} 0.1 & 0\\ 1/15 & 0.1 \end{array}\right]\left[\begin{array}{cc} 2.5 & 1.875\\ 0 & 2.5 \end{array}\right]\right)\left[\begin{array}{c} 30\\ 40 \end{array}\right]\\ & = \left(\left[\begin{array}{cc} 1 & 0\\ 0 & 1 \end{array}\right]-\left[\begin{array}{cc} 0.25 & 0.1875\\ 2.5/15 & 0.375 \end{array}\right]\right)\left[\begin{array}{c} 30\\ 40 \end{array}\right]\\ & =\left[\begin{array}{cc} 0.75 & -0.1875\\ -2.5/15 & 0.625 \end{array}\right]\left[\begin{array}{c} 30\\ 40 \end{array}\right]\\ & =\left[\begin{array}{c} 15\\ 20 \end{array}\right] \end{align}
q1=np.array([30,20])
q2=np.array([0,20])
L = np.zeros((2, 2))
p = np.array([[q1[0]/q[0],q1[1]/q[1]],
              [q2[0]/q[0],q2[1]/q[1]]])
d1 = 2; d2 = 1
I = np.eye(2)

for i in range(2):
  L[0,i] = (x[0]/d1)*(1/q[i]) if (p[0,i]>0) else 0
  L[1,i] = (x[1]/d2)*(1/q[i]) if (p[1,i]>0) else 0


print('Gross product by Firm One: q1 =',q1)
print('Gross product by Firm Two: q2 =',q2)
print('Firm One makes             d1 =',d1,'products')
print('Firm Two makes             d2 =',d2,'products')
print('Check:                 x = Lq =',np.dot(L,q))
print('Check:            b = (I-AL)q =',np.dot(I-np.dot(A,L),q))
Gross product by Firm One: q1 = [30 20]
Gross product by Firm Two: q2 = [ 0 20]
Firm One makes             d1 = 2 products
Firm Two makes             d2 = 1 products
Check:                 x = Lq = [150. 100.]
Check:            b = (I-AL)q = [15. 20.]

Finally, we can calculate the workers’ allocation matrix:

W=w1L(IdAL)1=w1LM1\boldsymbol{W}=\boldsymbol{w}\boldsymbol{1}\boldsymbol{L}\left(\boldsymbol{I}_{d}-\boldsymbol{A}\boldsymbol{L}\right)^{-1}=\boldsymbol{w}\boldsymbol{1}\boldsymbol{L}\boldsymbol{M}^{-1}

As we can see, M\boldsymbol{M} is the matrix we just calculated in b=Mq\boldsymbol{b}=\boldsymbol{M}\boldsymbol{q}. Therefore, we can compute its inverse by doing:

M1M=I[a11a12a21a22][0.750.18752.5/150.625]=[1001][0.75a11a122.5/150.1875a11+a120.6250.75a21a222.5/150.1875a21+a220.625]=[1001]\begin{align} \boldsymbol{M}^{-1}\boldsymbol{M} & =\boldsymbol{I}\\ \left[\begin{array}{cc} a_{11} & a_{12}\\ a_{21} & a_{22} \end{array}\right]\left[\begin{array}{cc} 0.75 & -0.1875\\ -2.5/15 & 0.625 \end{array}\right] & = \left[\begin{array}{cc} 1 & 0\\ 0 & 1 \end{array}\right]\\ \left[\begin{array}{cc} 0.75a_{11}-a_{12}2.5/15 & -0.1875a_{11}+a_{12}0.625\\ 0.75a_{21}-a_{22}2.5/15 & -0.1875a_{21}+a_{22}0.625 \end{array}\right] & = \left[\begin{array}{cc} 1 & 0\\ 0 & 1 \end{array}\right] \end{align}

We then have:

0.75a11a122.5/15=10.75a21a222.5/15=00.1875a11+a120.625=00.1875a21+a220.625=1\begin{align} 0.75a_{11}-a_{12}2.5/15 & =1 & 0.75a_{21}-a_{22}2.5/15 & =0\\ -0.1875a_{11}+a_{12}0.625 & =0 & -0.1875a_{21}+a_{22}0.625 & =1 \end{align}

This time we need to solve both systems. Working with the bottom row of the left system and the top row of the right system:

a11+a120.6250.1875=0a21a222.5150.75=0a11=a120.6250.1875a21=a222.511.25\begin{align} -a_{11}+a_{12}\frac{0.625}{0.1875} & =0 & a_{21}-a_{22}\frac{2.5}{15\cdot0.75} & =0\\ a_{11} & =a_{12}\frac{0.625}{0.1875} & a_{21} & =a_{22}\frac{2.5}{11.25} \end{align}

Substituting into the other row:

0.75a11a122.515=10.1875a21+a220.625=10.75(a120.6250.1875)a122.515=10.1875(a222.511.25)+a220.625=1a12(0.468750.18752.515)=1a22(0.4687511.25+0.625)=12.3333a12=10.58333a22=1a12=2.3333a22=10.58333a12=0.42857a22=1.71429\begin{align} 0.75a_{11}-a_{12}\frac{2.5}{15} & =1 & -0.1875a_{21}+a_{22}0.625 & =1\\ 0.75\left(a_{12}\frac{0.625}{0.1875}\right)-a_{12}\frac{2.5}{15} & =1 & -0.1875\left(a_{22}\frac{2.5}{11.25}\right)+a_{22}0.625 & =1\\ a_{12}\left(\frac{0.46875}{0.1875}-\frac{2.5}{15}\right) & =1 & a_{22}\left(-\frac{0.46875}{11.25}+0.625\right) & =1\\ 2.3333a_{12} & =1 & 0.58333a_{22} & =1\\ a_{12} & =2.3333 & a_{22} & =\frac{1}{0.58333}\\ a_{12} & =0.42857 & a_{22} & =1.71429 \end{align}

We can calculate the remaining elements:

a11=a120.6250.1875a21=a222.511.25a11=0.428570.6250.1875a21=1.714292.511.25a11=1.42856a21=0.38095\begin{align} a_{11} & =a_{12}\frac{0.625}{0.1875} & a_{21} & =a_{22}\frac{2.5}{11.25}\\ a_{11} & =0.42857\cdot\frac{0.625}{0.1875} & a_{21} & =1.71429\cdot\frac{2.5}{11.25}\\ a_{11} & =1.42856 & a_{21} & =0.38095 \end{align}

Then:

M1=[a11a12a21a22]=[1.428570.428570.380951.71429]\boldsymbol{M}^{-1}=\left[\begin{array}{cc} a_{11} & a_{12}\\ a_{21} & a_{22} \end{array}\right]=\left[\begin{array}{cc} 1.42857 & 0.42857\\ 0.38095 & 1.71429 \end{array}\right]
MI=np.linalg.inv(I-np.dot(A,L))
print("The inverse matrix of \nM = (I - A L) is \n", MI)
The inverse matrix of 
M = (I - A L) is 
 [[1.42857143 0.42857143]
 [0.38095238 1.71428571]]

Agora se fazemos:

W=w1LM1=[0.020.04][11][2.51.87502.5][1.428570.428570.380951.71429]=[0.020.04][11][4.285714.285720.952374.28573]=[0.020.04][5.23088.57144]\begin{align} \boldsymbol{W} & =\boldsymbol{w}\boldsymbol{1}\boldsymbol{L}\boldsymbol{M}^{-1}\\ & =\left[\begin{array}{c} 0.02\\ 0.04 \end{array}\right]\left[\begin{array}{cc} 1 & 1\end{array}\right]\left[\begin{array}{cc} 2.5 & 1.875\\ 0 & 2.5 \end{array}\right]\left[\begin{array}{cc} 1.42857 & 0.42857\\ 0.38095 & 1.71429 \end{array}\right]\\ & =\left[\begin{array}{c} 0.02\\ 0.04 \end{array}\right]\left[\begin{array}{cc} 1 & 1\end{array}\right]\left[\begin{array}{cc} 4.28571 & 4.28572\\ 0.95237 & 4.28573 \end{array}\right]\\ & =\left[\begin{array}{c} 0.02\\ 0.04 \end{array}\right]\left[\begin{array}{cc} 5.2308 & 8.57144\end{array}\right] \end{align}

Ou seja:

W=[0.104760.171430.209520.34286]\boldsymbol{W}=\left[\begin{array}{cc} 0.10476 & 0.17143\\ 0.20952 & 0.34286 \end{array}\right]

Lembrando que L=1x=[11][150100]=150+100=250L=\boldsymbol{1}\boldsymbol{x}=\left[\begin{array}{cc} 1 & 1\end{array}\right]\left[\begin{array}{c} 150\\ 100 \end{array}\right]=150+100=250.Podemos conferir fazendo:

bT=Wb=[0.104760.171430.209520.34286][1520]=[510]\boldsymbol{b}_{T}=W\boldsymbol{b}=\left[\begin{array}{cc} 0.10476 & 0.17143\\ 0.20952 & 0.34286 \end{array}\right]\left[\begin{array}{c} 15\\ 20 \end{array}\right]=\left[\begin{array}{c} 5\\ 10 \end{array}\right]
# Up to this point, we let Python identify the vector automatically
# But it will perform a dot product between two vectors
# We need to specify explicitly when we have:

w = w.reshape(-1, 1)                          # Column vector (n x 1)
T = np.dot(Um, np.dot(L, MI)).reshape(1, -1)  # Row vector (1 x m)

# Multiplication: column vector x row vector → matrix
W = np.dot(w, T)

print("The allocation matrix is \n", W)
The allocation matrix is 
 [[0.1047619  0.17142857]
 [0.20952381 0.34285714]]

We can interpret each term WijW_{ij} as the fraction of net product ii that is allocated to the workers for each unit of net product jj. For example, W110.1W_{11} \approx 0.1 indicates that for every 10 units of steel of net product produced, 1 unit of steel is allocated to the workers (0.115=1.50.1 \cdot 15 = 1.5), and W120.17W_{12} \approx 0.17 similarly indicates that for each unit of banana of net product, 0.17 unit of steel is allocated to the workers (0.17203.50.17 \cdot 20 \approx 3.5), resulting in a total of 5 units of steel produced for the workers for this net production b\boldsymbol{b}.

We can now calculate the vector c\boldsymbol{c}:

c=1LM1=[11][2.501.860.002.50][1.430.430.381.70]=[5.238.57]\boldsymbol{c}=\boldsymbol{1}\boldsymbol{L}\boldsymbol{M}^{-1}=\left[\begin{array}{cc} 1 & 1\end{array}\right]\left[\begin{array}{cc} 2.50 & 1.86\\ 0.00 & 2.50 \end{array}\right]\left[\begin{array}{cc} 1.43 & 0.43\\ 0.38 & 1.70 \end{array}\right]=\left[\begin{array}{cc} 5.23 & 8.57\end{array}\right]

We can then recover the total hours worked in our example:

L=[1L(IAL)1]b=[5.238.57][1520]=250L=\left[\boldsymbol{1}\boldsymbol{L}\left(I-\boldsymbol{A}\boldsymbol{L}\right)^{-1}\right]\boldsymbol{b}=\left[\begin{array}{cc} 5.23 & 8.57\end{array}\right]\left[\begin{array}{c} 15\\ 20 \end{array}\right]=250

With this, we can calculate the labor allocation:

λ=1LM1w=cw=[5.238.57][0.020.04]=0.4476\lambda=\boldsymbol{1}\boldsymbol{L}\boldsymbol{M}^{-1}\boldsymbol{w}=\boldsymbol{c}\boldsymbol{w}=\left[\begin{array}{cc} 5.23 & 8.57\end{array}\right]\left[\begin{array}{c} 0.02\\ 0.04 \end{array}\right]=0.4476
c = np.dot(Um, np.dot(L, MI))
lamb = np.dot(c, w)
Li = np.dot(c, b)

print('The average number of hours required to produce each commodity is c =', c)
print('Check:                                                   L = 1.L.MI =', Li)
print('The labor allocation is                                      lambda =', lamb[0])
The average number of hours required to produce each commodity is c = [5.23809524 8.57142857]
Check:                                                   L = 1.L.MI = 250.0
The labor allocation is                                      lambda = 0.44761904761904764

Let’s interpret these results. Each unit of steel requires on average 5.23 hours of work to be produced, and each unit of banana requires 8.57 hours, so c=(5.23,8.57)\boldsymbol{c} = \left(5.23, 8.57\right).

Then, the labor contained in the net production is L=cb=5.2315+8.5720250L = \boldsymbol{c} \cdot \boldsymbol{b} = 5.23 \cdot 15 + 8.57 \cdot 20 \approx 250,
and the labor contained in the production allocated to workers is LT=cbT=5.235+8.5710112L_T = \boldsymbol{c} \cdot \boldsymbol{b_T} = 5.23 \cdot 5 + 8.57 \cdot 10 \approx 112,
so the labor partition is given by λ=112/2500.45\lambda = 112 / 250 \approx 0.45, approximately the same result found previously.

This means that 45% of the hours employed by workers directly in the productive system of this society are contained in the products allocated to the working class, while the remaining 55% is appropriated by another class that is not directly involved in the production system. This is still a division by class; it is important to remember that typically the working class is much larger than the capitalist class. Considering a proportion of 10 workers for each capitalist, it means that the 45% of labor contained and allocated to workers is distributed among 10 times more people than the 55% appropriated by capitalists.

We can now calculate labor per capita, that is, if there are NN capitalists, and 55% of production is appropriated by capitalists, on average each capitalist appropriates 55N%\frac{55}{N}\% of the production. Doing the same for the workers, but considering that there are 10N10N workers, each worker appropriates 4510N%\frac{45}{10N}\% of the production. Now calculating the ratio, that is, how many times more a capitalist appropriates the production compared to a worker, we have:

55N%4510N%=55N10N45=5504512\frac{\frac{55}{N}\%}{\frac{45}{10N}\%}=\frac{55}{N}\frac{10N}{45}=\frac{550}{45}\approx 12

In this case, a capitalist appropriates 12 times more of the production than a worker. If we consider that there are 100 workers for each capitalist, then this capitalist appropriates more than 122 times the production compared to a worker. This considers a capitalist who extracts profits simply from owning the means of private production.

Lt = np.dot(c, bt)
cap = 10
ratio = cap * (1 - lamb) / lamb

print(f'Labor content allocated to workers: lambdaT = c.bt = {Lt:.2f}')
print(f'Check:                               lambda = Lt/L = {Lt/Li:.2f}')
print(f'If there are {cap} times more capitalists than workers, then each capitalist appropriates {ratio[0]:.2f} times more of the production than a worker.')
Labor content allocated to workers: lambdaT = c.bt = 111.90
Check:                               lambda = Lt/L = 0.45
If there are 10 times more capitalists than workers, then each capitalist appropriates 12.34 times more of the production than a worker.