This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Quantifying Community Evolution in Developer Social Networks: Proof of Indices’ Properties

Liang Wang [email protected] 0000-0001-5444-748X State Key Laboratory for Novel Software Technology, Nanjing University163 Xianlin Ave.NanjingChina Ying Li [email protected] 0000-0002-4637-1742 State Key Laboratory for Novel Software Technology, Nanjing University163 Xianlin Ave.NanjingChina Jierui Zhang [email protected] 0000-0002-7290-790X State Key Laboratory for Novel Software Technology, Nanjing University163 Xianlin Ave.NanjingChina  and  Xianping Tao [email protected] 0000-0002-5536-3891 State Key Laboratory for Novel Software Technology, Nanjing University163 Xianlin Ave.NanjingChina
Abstract.

The document provides the proof to properties of community evolution indices including community split and shrink in paper: Liang Wang, Ying Li, Jierui Zhang, and Xianping Tao. 2022. QuantifyingCommunity Evolution in Developer Social Networks. InProceedings of the30th ACM Joint European Software Engineering Conference and Symposiumon the Foundations of Software Engineering (ESEC/FSE ’22), November 14–18, 2022, Singapore, Singapore.ACM, New York, NY, USA, 12 pages. https://doi.org/10.1145/3540250.3549106. Proof to properties of community merge and expand is similar.

Proof of Properties, Online Material
copyright: nonejournal: ONLINEccs: Software and its engineering Programming teamsccs: Software and its engineering Open source modelccs: General and reference Metrics

1. Brief Introduction to the Properties of Community Split and Shrink Indices

Let ct,iψ\mathcal{I}^{\psi}_{c_{t,i}} and ct,iη\mathcal{I}^{\eta}_{c_{t,i}} denote the community split and shrink indices, respectively. Without loss of generality, we assume m1m\geq 1. The properties of the two indices are as follows.

P-1. ct,iψ\mathcal{I}^{\psi}_{c_{t,i}} and ct,iη\mathcal{I}^{\eta}_{c_{t,i}} are strictly monotonic increasing functions of mm, given 0<ηi<10<\eta_{i}<1, and ψ^i,j=1m,j=1,2,,m\hat{\psi}_{i,j}=\frac{1}{m},j=1,2,\cdots,m.

P-2. ct,iψ\mathcal{I}^{\psi}_{c_{t,i}} / ct,iη\mathcal{I}^{\eta}_{c_{t,i}} is a strictly monotonic decreasing / increasing function of ηi\eta_{i}, respectively, for ηi>0\eta_{i}>0, given m>1m>1, and member migration distribution ψ^i,j,j=1,2,,m\hat{\psi}_{i,j},j=1,2,\cdots,m with ct,i>0\mathcal{H}_{c_{t,i}}>0.

P-3. Given mm and ηi\eta_{i}, the maximum split index ct,iψ=(1ηi)tt+1\mathcal{I}^{\psi}_{c_{t,i}}=(1-\eta_{i})\mathcal{H}^{*}_{t\rightarrow t+1} is obtained when the members of ct,ic_{t,i} migrate to the communities detected in the next step with a even distribution, i.e., when we have ψ^i,j=1m,j=1,2,,m\hat{\psi}_{i,j}=\frac{1}{m},j=1,2,\cdots,m. And the minimum split index ct,iψ=0\mathcal{I}^{\psi}_{c_{t,i}}=0 is obtained when m=1m=1 or all the members of ct,ic_{t,i} who stay in the project migrate to a single community in the next step, i.e., there exists a jj^{\prime}-th community in time t+1t+1 that ψ^i,j=1\hat{\psi}_{i,j^{\prime}}=1 and ψ^i,j=0,jj\hat{\psi}_{i,j}=0,\forall j\neq j^{\prime}, resulting in ct,i=0\mathcal{H}_{c_{t,i}}=0 and ct,iψ=0\mathcal{I}^{\psi}_{c_{t,i}}=0.

P-4. Given m>1m>1 and ηi\eta_{i}, the maximum shrink index ct,iη=ηitt+1\mathcal{I}^{\eta}_{c_{t,i}}=\eta_{i}\mathcal{H}^{*}_{t\rightarrow t+1} is obtained when the corresponding split index is minimized, i.e., all stayed members of community ct,ic_{t,i} migrate to a single community in the next step. And the minimum shrink index ct,iη=ηi2tt+1\mathcal{I}^{\eta}_{c_{t,i}}=\eta_{i}^{2}\mathcal{H}^{*}_{t\rightarrow t+1} is obtained when the members of ct,ic_{t,i} migrate evenly to communities in time t+1t+1. For the special case of m=1m=1, the shrink index is only determined by ηi\eta_{i}.

Refer to caption
Figure 1. Curves of the split and shrink indices under different conditions specified by mm, ηi\eta_{i}, and ψ^i,j\hat{\psi}_{i,j}. The even distribution corresponds to case ψ^i,j=1m,j=1,,m\hat{\psi}_{i,j}=\frac{1}{m},j=1,\cdots,m. The random distribution is obtained by randomly assigning ψ^i,j\hat{\psi}_{i,j}’s values.

Fig. 1 illustrates the curves of the split and shrink indices under different conditions, from which we can find correspondence to the above properties.

2. Proof of The Properties

The proof of the above four properties are as follows.

P-1. ct,iψ\mathcal{I}^{\psi}_{c_{t,i}} and ct,iη\mathcal{I}^{\eta}_{c_{t,i}} are strictly monotonic increasing functions of mm, given 0<ηi<10<\eta_{i}<1, and ψ^i,j=1m,j=1,2,,m\hat{\psi}_{i,j}=\frac{1}{m},j=1,2,\cdots,m.

Proof. First, for community split index ct,iψ\mathcal{I}^{\psi}_{c_{t,i}}, take the partial derivative of ct,iψ\mathcal{I}^{\psi}_{c_{t,i}} with respect to mm gives us:

(1) ct,iψm=(1ηi)ct,im=(1ηi)ct,im.\frac{\partial\mathcal{I}^{\psi}_{c_{t,i}}}{\partial m}=\frac{\partial(1-\eta_{i})\mathcal{H}_{c_{t,i}}}{\partial m}=(1-\eta_{i})\frac{\partial\mathcal{H}_{c_{t,i}}}{\partial m}.

When ψ^i,j=1m,j=1,2,,m\hat{\psi}_{i,j}=\frac{1}{m},j=1,2,\cdots,m, we have ct,i=j=1mψ^i,jlog2(ψ^i,j)=log21m\mathcal{H}_{c_{t,i}}=-\sum_{j=1}^{m}\hat{\psi}_{i,j}\log_{2}(\hat{\psi}_{i,j})=-\log_{2}\frac{1}{m}. As a result, we have

(2) ct,im=1mln(2).\frac{\partial\mathcal{H}_{c_{t,i}}}{\partial m}=\frac{1}{m\ln(2)}.

Substitute Eq. (2) into Eq. (1), we have

(3) ct,iψm=1ηimln(2).\frac{\partial\mathcal{I}^{\psi}_{c_{t,i}}}{\partial m}=\frac{1-\eta_{i}}{m\ln(2)}.

We can see from Eq. (3) that ct,iψm>0\frac{\partial\mathcal{I}^{\psi}_{c_{t,i}}}{\partial m}>0, for m1m\geq 1, and 0ηi<10\leq\eta_{i}<1.

As a result, the community split index ct,iψ\mathcal{I}^{\psi}_{c_{t,i}} is a strictly monotonic increasing function of mm, for m1m\geq 1, 0ηi<10\leq\eta_{i}<1, and ψ^i,j=1m,j=1,2,,m\hat{\psi}_{i,j}=\frac{1}{m},j=1,2,\cdots,m.

For the case of ηi=1\eta_{i}=1, we always have ct,iψ=0,m1\mathcal{I}^{\psi}_{c_{t,i}}=0,\forall m\geq 1, and regardless the distribution of ψ^i,j,j=1,2,,m\hat{\psi}_{i,j},j=1,2,\cdots,m, which is intuitively correct that a community cannot split if all of its members leaves the project.

Next, for community shrink index ct,iη\mathcal{I}^{\eta}_{c_{t,i}}, we also take its partial derivative with respect to mm, which is

(4) ct,iηm=ηi(tt+1ct,iψ+σηi)m=ηi(tt+1mct,iψm).\frac{\partial\mathcal{I}^{\eta}_{c_{t,i}}}{\partial m}=\frac{\partial\eta_{i}(\mathcal{H}^{*}_{t\rightarrow t+1}-\mathcal{I}^{\psi}_{c_{t,i}}+\sigma_{\eta_{i}})}{\partial m}=\eta_{i}(\frac{\partial\mathcal{H}^{*}_{t\rightarrow t+1}}{\partial m}-\frac{\partial\mathcal{I}^{\psi}_{c_{t,i}}}{\partial m}).

Since tt+1m=log2(1m)m=1mln(2)\frac{\partial\mathcal{H}^{*}_{t\rightarrow t+1}}{\partial m}=\frac{\partial-\log_{2}(\frac{1}{m})}{\partial m}=\frac{1}{m\ln(2)}, and ct,iψm=1ηimln(2)\frac{\partial\mathcal{I}^{\psi}_{c_{t,i}}}{\partial m}=\frac{1-\eta_{i}}{m\ln(2)} following Eq. (3), we have

(5) ct,iηm=ηi2mln(2).\frac{\partial\mathcal{I}^{\eta}_{c_{t,i}}}{\partial m}=\frac{\eta_{i}^{2}}{m\ln(2)}.

From Eq. (5), we have ct,iηm>0\frac{\partial\mathcal{I}^{\eta}_{c_{t,i}}}{\partial m}>0 for m1m\geq 1, 0<ηi10<\eta_{i}\leq 1, and ψ^i,j=1m,j=1,2,,m\hat{\psi}_{i,j}=\frac{1}{m},j=1,2,\cdots,m.

For the case of ηi=0\eta_{i}=0, we always have ct,iη=0,m1\mathcal{I}^{\eta}_{c_{t,i}}=0,\forall m\geq 1, given any member migration distribution ψ^i,j,j=1,2,,m\hat{\psi}_{i,j},j=1,2,\cdots,m, which is reasonable because a community does not shrink if none of its members leave the project, regardless the number of communities detected in the next step (i.e., mm).

Combining the above two results, we show that: ct,iψ\mathcal{I}^{\psi}_{c_{t,i}} and ct,iη\mathcal{I}^{\eta}_{c_{t,i}} are strictly monotonic increasing functions of mm, given 0<ηi<10<\eta_{i}<1, and ψ^i,j=1m,j=1,2,,m\hat{\psi}_{i,j}=\frac{1}{m},j=1,2,\cdots,m.

\hfill\Box

P-2. ct,iψ\mathcal{I}^{\psi}_{c_{t,i}} / ct,iη\mathcal{I}^{\eta}_{c_{t,i}} is a strictly monotonic decreasing / increasing function of ηi\eta_{i}, respectively, for ηi>0\eta_{i}>0, given m>1m>1, and member migration distribution ψ^i,j,j=1,2,,m\hat{\psi}_{i,j},j=1,2,\cdots,m with ct,i>0\mathcal{H}_{c_{t,i}}>0.

Proof. First, we show that community split index ct,iψ\mathcal{I}^{\psi}_{c_{t,i}} is a strictly monotonic decreasing function of ηi\eta_{i} under the given conditions. The partial derivative of ct,iψ\mathcal{I}^{\psi}_{c_{t,i}} with respect to ηi\eta_{i} is

(6) ct,iψηi=(1ηi)ct,iηi=ct,i.\frac{\partial\mathcal{I}^{\psi}_{c_{t,i}}}{\partial\eta_{i}}=\frac{\partial(1-\eta_{i})\mathcal{H}_{c_{t,i}}}{\partial\eta_{i}}=-\mathcal{H}_{c_{t,i}}.

As a result, we have ct,iψηi<0\frac{\partial\mathcal{I}^{\psi}_{c_{t,i}}}{\partial\eta_{i}}<0, meaning that ct,iψ\mathcal{I}^{\psi}_{c_{t,i}} is a strictly monotonic decreasing function of ηi\eta_{i}, as long as ct,i>0\mathcal{H}_{c_{t,i}}>0.

We have ct,i=0\mathcal{H}_{c_{t,i}}=0 and thus ct,iψ=0,ηi[0,1]\mathcal{I}^{\psi}_{c_{t,i}}=0,\forall\eta_{i}\in[0,1] when only one of the ψ^i,j\hat{\psi}_{i,j}’s is one with rest of the ψ^i,j\hat{\psi}_{i,j}’s equal to zero (including the case that m=1m=1). Intuitively, this case means that a community is not regarded as splitting if all of its remaining members migrate to a single community in the next step, regardless the amount of members who leave the project.

Next, we show that community shrink index ct,iη\mathcal{I}^{\eta}_{c_{t,i}} is a strictly monotonic increasing function of ηi\eta_{i} under the given conditions. Taking the partial derivative of ct,iη\mathcal{I}^{\eta}_{c_{t,i}} with respect to ηi\eta_{i} gives us

(7) ct,iηηi=ηi(tt+1ct,iψ+σηi)ηi=(tt+1ct,iψ+σηi)+ηi(tt+1ct,iψ+σηi)ηi=tt+1(1ηi)ct,i+σηi+ηict,iψηi+ηiσηiηi.\begin{split}\frac{\partial\mathcal{I}^{\eta}_{c_{t,i}}}{\partial\eta_{i}}&=\frac{\partial\eta_{i}(\mathcal{H}^{*}_{t\rightarrow t+1}-\mathcal{I}^{\psi}_{c_{t,i}}+\sigma_{\eta_{i}})}{\partial\eta_{i}}=(\mathcal{H}^{*}_{t\rightarrow t+1}-\mathcal{I}^{\psi}_{c_{t,i}}+\sigma_{\eta_{i}})+\eta_{i}\frac{\partial(\mathcal{H}^{*}_{t\rightarrow t+1}-\mathcal{I}^{\psi}_{c_{t,i}}+\sigma_{\eta_{i}})}{\partial\eta_{i}}\\ &=\mathcal{H}^{*}_{t\rightarrow t+1}-(1-\eta_{i})\mathcal{H}_{c_{t,i}}+\sigma_{\eta_{i}}+\eta_{i}\frac{\partial\mathcal{I}^{\psi}_{c_{t,i}}}{\partial\eta_{i}}+\eta_{i}\frac{\partial\sigma_{\eta_{i}}}{\partial\eta_{i}}.\end{split}

The forth term in Eq. (7) is ηict,iψηi=ηi(1ηi)ct,iηi=ηict,i\eta_{i}\frac{\partial\mathcal{I}^{\psi}_{c_{t,i}}}{\partial\eta_{i}}=\eta_{i}\frac{\partial(1-\eta_{i})\mathcal{H}_{c_{t,i}}}{\partial\eta_{i}}=-\eta_{i}\mathcal{H}_{c_{t,i}}. And the last term in Eq. (7) is ηiσηiηi=0.5ηi\eta_{i}\frac{\partial\sigma_{\eta_{i}}}{\partial\eta_{i}}=0.5\eta_{i} when m=1m=1, and ηiσηiηi=0\eta_{i}\frac{\partial\sigma_{\eta_{i}}}{\partial\eta_{i}}=0 when m>1m>1 following the definition of σηi\sigma_{\eta_{i}}.

For the case of m>1m>1, Eq. (7) can be written as

(8) ct,iηηi=tt+1(12ηi)ct,i.\frac{\partial\mathcal{I}^{\eta}_{c_{t,i}}}{\partial\eta_{i}}=\mathcal{H}^{*}_{t\rightarrow t+1}-(1-2\eta_{i})\mathcal{H}_{c_{t,i}}.

Because tt+1\mathcal{H}^{*}_{t\rightarrow t+1} is the maximum entropy, we have tt+1>0\mathcal{H}^{*}_{t\rightarrow t+1}>0, tt+1ct,i0\mathcal{H}^{*}_{t\rightarrow t+1}\geq\mathcal{H}_{c_{t,i}}\geq 0, and (12ηi)<1(1-2\eta_{i})<1 when ηi>0\eta_{i}>0. We then have ct,iηηi>0\frac{\partial\mathcal{I}^{\eta}_{c_{t,i}}}{\partial\eta_{i}}>0 for ηi>0\eta_{i}>0 and m>1m>1.

For the case of m=1m=1, we have σηi=ηiσηiηi=0.5ηi\sigma_{\eta_{i}}=\eta_{i}\frac{\partial\sigma_{\eta_{i}}}{\partial\eta_{i}}=0.5\eta_{i}, and tt+1=ct,i=0\mathcal{H}^{*}_{t\rightarrow t+1}=\mathcal{H}_{c_{t,i}}=0. Eq. (7) then becomes

(9) ct,iηηi=ηi.\frac{\partial\mathcal{I}^{\eta}_{c_{t,i}}}{\partial\eta_{i}}=\eta_{i}.

We also have ct,iηηi>0\frac{\partial\mathcal{I}^{\eta}_{c_{t,i}}}{\partial\eta_{i}}>0 for ηi>0\eta_{i}>0 and m=1m=1. As a result, ct,iη\mathcal{I}^{\eta}_{c_{t,i}} is a strictly monotonic increasing function of ηi\eta_{i} for ηi>0\eta_{i}>0, and m1m\geq 1.

Summarizing the above, we show that: ct,iψ\mathcal{I}^{\psi}_{c_{t,i}} / ct,iη\mathcal{I}^{\eta}_{c_{t,i}} is a strictly monotonic decreasing / increasing function of ηi\eta_{i}, respectively, for ηi>0\eta_{i}>0, given m>1m>1, and the distribution of member migration ψ^i,j,j=1,2,,m\hat{\psi}_{i,j},j=1,2,\cdots,m with ct,i>0\mathcal{H}_{c_{t,i}}>0.

\hfill\Box

P-3. Given mm and ηi\eta_{i}, the maximum split index ct,iψ=(1ηi)tt+1\mathcal{I}^{\psi}_{c_{t,i}}=(1-\eta_{i})\mathcal{H}^{*}_{t\rightarrow t+1} is obtained when the members of ct,ic_{t,i} migrate to the communities detected in the next step with a even distribution, i.e., when we have ψ^i,j=1m,j=1,2,,m\hat{\psi}_{i,j}=\frac{1}{m},j=1,2,\cdots,m. And the minimum split index ct,iψ=0\mathcal{I}^{\psi}_{c_{t,i}}=0 is obtained when m=1m=1 or all the members of ct,ic_{t,i} who stay in the project migrate to a single community in the next step, i.e., there exists a jj^{\prime}-th community in time t+1t+1 that ψ^i,j=1\hat{\psi}_{i,j^{\prime}}=1 and ψ^i,j=0,jj\hat{\psi}_{i,j}=0,\forall j\neq j^{\prime}, resulting in ct,i=0\mathcal{H}_{c_{t,i}}=0 and ct,iψ=0\mathcal{I}^{\psi}_{c_{t,i}}=0.

Proof. ct,iψ=(1ηi)ct,i\mathcal{I}^{\psi}_{c_{t,i}}=(1-\eta_{i})\mathcal{H}_{c_{t,i}} is a monotonic increasing function of ct,i\mathcal{H}_{c_{t,i}} for 0ηi10\leq\eta_{i}\leq 1. Referring to the properties of information entropy (Shannon, 1948), entropy ct,i=tt+1=log21m\mathcal{H}_{c_{t,i}}=\mathcal{H}^{*}_{t\rightarrow t+1}=-\log_{2}\frac{1}{m} is a maximum when ψ^i,j=1m,j=1,2,,m\hat{\psi}_{i,j}=\frac{1}{m},j=1,2,\cdots,m. And the minimum value of ct,i=0\mathcal{H}_{c_{t,i}}=0 is obtained when only one of the ψ^i,j\hat{\psi}_{i,j}’s equals to one and others equal to zero, which also includes the case of m=1m=1. As a result, the maximum split index is ct,iψ=(1ηi)tt+1=(1ηi)log21m\mathcal{I}^{\psi}_{c_{t,i}}=(1-\eta_{i})\mathcal{H}^{*}_{t\rightarrow t+1}=-(1-\eta_{i})\log_{2}\frac{1}{m} given ηi\eta_{i}. When ηi=0\eta_{i}=0, we have ct,iψ=log21m\mathcal{I}^{\psi}_{c_{t,i}}=-\log_{2}\frac{1}{m} being the maximum possible value for the split index, which is only determined by mm. And the minimum split index is ct,iψ=0\mathcal{I}^{\psi}_{c_{t,i}}=0.

\hfill\Box

P-4. Given m>1m>1 and ηi\eta_{i}, the maximum shrink index ct,iη=ηitt+1\mathcal{I}^{\eta}_{c_{t,i}}=\eta_{i}\mathcal{H}^{*}_{t\rightarrow t+1} is obtained when the corresponding split index is minimized, i.e., all stayed members of community ct,ic_{t,i} migrate to a single community in the next step. And the minimum shrink index ct,iη=ηi2tt+1\mathcal{I}^{\eta}_{c_{t,i}}=\eta_{i}^{2}\mathcal{H}^{*}_{t\rightarrow t+1} is obtained when the members of ct,ic_{t,i} migrate evenly to communities in time t+1t+1. For the special case of m=1m=1, the shrink index is only determined by ηi\eta_{i}.

Proof. Given m>1m>1 and ηi\eta_{i}, the community shrink index ct,iη=ηi(tt+1ct,iψ+σηi)\mathcal{I}^{\eta}_{c_{t,i}}=\eta_{i}(\mathcal{H}^{*}_{t\rightarrow t+1}-\mathcal{I}^{\psi}_{c_{t,i}}+\sigma_{\eta_{i}}) is a monotonic decreasing function of the community split index ct,iψ\mathcal{I}^{\psi}_{c_{t,i}}. Referring to Property 3 presented above, we have the shrink index maximized when the split index is minimized, i.e., ct,i=0\mathcal{H}_{c_{t,i}}=0. The maximum shrink index is given by ct,iη=ηitt+1=ηilog21m\mathcal{I}^{\eta}_{c_{t,i}}=\eta_{i}\mathcal{H}^{*}_{t\rightarrow t+1}=-\eta_{i}\log_{2}\frac{1}{m}. And the minimum shrink index ct,iη=ηi2tt+1=ηi2log21m\mathcal{I}^{\eta}_{c_{t,i}}=\eta_{i}^{2}\mathcal{H}^{*}_{t\rightarrow t+1}=-\eta_{i}^{2}\log_{2}\frac{1}{m} when ct,iψ=(1ηi)tt+1\mathcal{I}^{\psi}_{c_{t,i}}=(1-\eta_{i})\mathcal{H}^{*}_{t\rightarrow t+1}.

In the above analysis we have σηi=0\sigma_{\eta_{i}}=0 because we assume m>1m>1. When m=1m=1, we have σηi=0.5ηi\sigma_{\eta_{i}}=0.5\eta_{i}, and tt+1=ct,i=0\mathcal{H}^{*}_{t\rightarrow t+1}=\mathcal{H}_{c_{t,i}}=0. The shrink index is ct,iη=0.5ηi2\mathcal{I}^{\eta}_{c_{t,i}}=0.5\eta_{i}^{2}, which is only determined by ηi\eta_{i}.

Following the above analysis, if we consider the change of ηi\eta_{i}, we can find that the maximum and minimum possible value of the shrink index is ct,iη=log21m\mathcal{I}^{\eta}_{c_{t,i}}=-\log_{2}\frac{1}{m} when ηi=1\eta_{i}=1, and ct,iη=0\mathcal{I}^{\eta}_{c_{t,i}}=0 when ηi=0\eta_{i}=0, respectively.

\hfill\Box

From properties P-3 and P-4 we can further see that given m>1m>1, the community split and shrink indices vary in the same range given by ct,iψ[0,log21m]\mathcal{I}^{\psi}_{c_{t,i}}\in[0,-\log_{2}\frac{1}{m}], and ct,iη[0,log21m]\mathcal{I}^{\eta}_{c_{t,i}}\in[0,-\log_{2}\frac{1}{m}], with different values of ηi\eta_{i} and the distribution of member migration specified by ψ^i,j,j=1,2,,m\hat{\psi}_{i,j},j=1,2,\cdots,m. As a result, it is feasible for us to draw meaningful results, such as the community shows a stronger trend of splitting / shrinking, by directly comparing the values of community split and shrink indices.

Acknowledgements.
We thank all the reviewers for their efforts in improving the paper. This work is supported by the National Key R&D Program of China No. 2018AAA0102302, NSFC No. 62172203, Fundamental Research Funds for the Central Universities, and the Collaborative Innovation Center of Novel Software Technology and Industrialization.

References

  • (1)
  • Shannon (1948) Claude Elwood Shannon. 1948. A mathematical theory of communication. The Bell system technical journal 27, 3 (1948), 379–423.