Gamma distribution
Template:Short description Template:Infobox probability distribution 2
In probability theory and statistics, the gamma distribution is a versatile two-parameter family of continuous probability distributions.[1] The exponential distribution, Erlang distribution, and chi-squared distribution are special cases of the gamma distribution.[2] There are two equivalent parameterizations in common use:
- With a shape parameter Template:Mvar and a scale parameter Template:Mvar
- With a shape parameter and a rate parameter Template:Tmath
In each of these forms, both parameters are positive real numbers.
The distribution has important applications in various fields, including econometrics, Bayesian statistics, life testing.[3] In econometrics, the (α, θ) parameterization is common for modeling waiting times, such as the time until death, where it often takes the form of an Erlang distribution for integer α values. Bayesian statisticians prefer the (α,λ) parameterization, utilizing the gamma distribution as a conjugate prior for several inverse scale parameters, facilitating analytical tractability in posterior distribution computations. The probability density and cumulative distribution functions of the gamma distribution vary based on the chosen parameterization, both offering insights into the behavior of gamma-distributed random variables. The gamma distribution is integral to modeling a range of phenomena due to its flexible shape, which can capture various statistical distributions, including the exponential and chi-squared distributions under specific conditions. Its mathematical properties, such as mean, variance, skewness, and higher moments, provide a toolset for statistical analysis and inference. Practical applications of the distribution span several disciplines, underscoring its importance in theoretical and applied statistics.[4]
The gamma distribution is the maximum entropy probability distribution (both with respect to a uniform base measure and a base measure) for a random variable Template:Mvar for which Template:Math is fixed and greater than zero, and Template:Math is fixed (Template:Mvar is the digamma function).[5]
Definitions
The parameterization with Template:Mvar and Template:Mvar appears to be more common in econometrics and other applied fields, where the gamma distribution is frequently used to model waiting times. For instance, in life testing, the waiting time until death is a random variable that is frequently modeled with a gamma distribution. See Hogg and Craig[6] for an explicit motivation.
The parameterization with Template:Mvar and Template:Mvar is more common in Bayesian statistics, where the gamma distribution is used as a conjugate prior distribution for various types of inverse scale (rate) parameters, such as the Template:Mvar of an exponential distribution or a Poisson distribution[7] – or for that matter, the Template:Mvar of the gamma distribution itself. The closely related inverse-gamma distribution is used as a conjugate prior for scale parameters, such as the variance of a normal distribution.
If Template:Mvar is a positive integer, then the distribution represents an Erlang distribution; i.e., the sum of Template:Mvar independent exponentially distributed random variables, each of which has a mean of Template:Mvar.
Characterization using shape α and rate λ
The gamma distribution can be parameterized in terms of a shape parameter Template:Math and an inverse scale parameter Template:Math, called a rate parameter. A random variable Template:Mvar that is gamma-distributed with shape Template:Mvar and rate Template:Mvar is denoted
The corresponding probability density function in the shape-rate parameterization is
where is the gamma function. For all positive integers, .
The cumulative distribution function is the regularized gamma function:
where is the lower incomplete gamma function.
If Template:Mvar is a positive integer (i.e., the distribution is an Erlang distribution), the cumulative distribution function has the following series expansion:[8]
Characterization using shape α and scale θ
A random variable Template:Mvar that is gamma-distributed with shape Template:Mvar and scale Template:Mvar is denoted by

The probability density function using the shape-scale parametrization is
Here Template:Math is the gamma function evaluated at Template:Mvar.
The cumulative distribution function is the regularized gamma function:
where is the lower incomplete gamma function.
It can also be expressed as follows, if Template:Mvar is a positive integer (i.e., the distribution is an Erlang distribution):[8]
Both parametrizations are common because either can be more convenient depending on the situation.
Properties
Mean and variance
The mean of gamma distribution is given by the product of its shape and scale parameters: The variance is: The square root of the inverse shape parameter gives the coefficient of variation:
Skewness
The skewness of the gamma distribution only depends on its shape parameter, Template:Mvar, and it is equal to
Higher moments
The Template:Mvar-th raw moment is given by:
Median approximations and bounds

Unlike the mode and the mean, which have readily calculable formulas based on the parameters, the median does not have a closed-form equation. The median for this distribution is the value such that
A rigorous treatment of the problem of determining an asymptotic expansion and bounds for the median of the gamma distribution was handled first by Chen and Rubin, who proved that (for ) where is the mean and is the median of the distribution.[9] For other values of the scale parameter, the mean scales to , and the median bounds and approximations would be similarly scaled by Template:Mvar.
K. P. Choi found the first five terms in a Laurent series asymptotic approximation of the median by comparing the median to Ramanujan's function.[10] Berg and Pedersen found more terms:[11]


Partial sums of these series are good approximations for high enough Template:Mvar; they are not plotted in the figure, which is focused on the low-Template:Mvar region that is less well approximated.
Berg and Pedersen also proved many properties of the median, showing that it is a convex function of Template:Mvar,[12] and that the asymptotic behavior near is (where Template:Mvar is the Euler–Mascheroni constant), and that for all the median is bounded by .[11]
A closer linear upper bound, for only, was provided in 2021 by Gaunt and Merkle,[13] relying on the Berg and Pedersen result that the slope of is everywhere less than 1: for (with equality at ) which can be extended to a bound for all by taking the max with the chord shown in the figure, since the median was proved convex.[12]
An approximation to the median that is asymptotically accurate at high Template:Mvar and reasonable down to or a bit lower follows from the Wilson–Hilferty transformation: which goes negative for .
In 2021, Lyon proposed several approximations of the form . He conjectured values of Template:Mvar and Template:Mvar for which this approximation is an asymptotically tight upper or lower bound for all .[14] In particular, he proposed these closed-form bounds, which he proved in 2023:[15]
is a lower bound, asymptotically tight as is an upper bound, asymptotically tight as
Lyon also showed (informally in 2021, rigorously in 2023) two other lower bounds that are not closed-form expressions, including this one involving the gamma function, based on solving the integral expression substituting 1 for : (approaching equality as ) and the tangent line at where the derivative was found to be : (with equality at ) where Ei is the exponential integral.[14][15]
Additionally, he showed that interpolations between bounds could provide excellent approximations or tighter bounds to the median, including an approximation that is exact at (where ) and has a maximum relative error less than 0.6%. Interpolated approximations and bounds are all of the form where is an interpolating function running monotonially from 0 at low Template:Mvar to 1 at high Template:Mvar, approximating an ideal, or exact, interpolator : For the simplest interpolating function considered, a first-order rational function the tightest lower bound has and the tightest upper bound has The interpolated bounds are plotted (mostly inside the yellow region) in the log–log plot shown. Even tighter bounds are available using different interpolating functions, but not usually with closed-form parameters like these.[14]
Summation
If Template:Math has a Template:Math distribution for Template:Math (i.e., all distributions have the same scale parameter Template:Mvar), then
provided all Template:Math are independent.
For the cases where the Template:Math are independent but have different scale parameters, see Mathai [16] or Moschopoulos.[17]
The gamma distribution exhibits infinite divisibility.
Scaling
If
then, for any Template:Math,
by moment generating functions,
or equivalently, if
(shape-rate parameterization)
Indeed, we know that if Template:Mvar is an exponential r.v. with rate Template:Mvar, then Template:Math is an exponential r.v. with rate Template:Math; the same thing is valid with Gamma variates (and this can be checked using the moment-generating function, see, e.g.,these notes, 10.4-(ii)): multiplication by a positive constant Template:Mvar divides the rate (or, equivalently, multiplies the scale).
Exponential family
The gamma distribution is a two-parameter exponential family with natural parameters Template:Math and Template:Math (equivalently, Template:Math and Template:Math), and natural statistics Template:Mvar and Template:Math.
If the shape parameter Template:Mvar is held fixed, the resulting one-parameter family of distributions is a natural exponential family.
Logarithmic expectation and variance
One can show that
or equivalently,
where Template:Mvar is the digamma function. Likewise,
where is the trigamma function.
This can be derived using the exponential family formula for the moment generating function of the sufficient statistic, because one of the sufficient statistics of the gamma distribution is Template:Math.
Information entropy
The information entropy is
In the Template:Mvar, Template:Mvar parameterization, the information entropy is given by
Kullback–Leibler divergence

The Kullback–Leibler divergence (KL-divergence), of Template:Math ("true" distribution) from Template:Math ("approximating" distribution) is given by[18]
Written using the Template:Mvar, Template:Mvar parameterization, the KL-divergence of Template:Math from Template:Math is given by
Laplace transform
The Laplace transform of the gamma PDF, which is the moment-generating function of the gamma distribution, is
(where is a random variable with that distribution).
Related distributions
General
- Let be independent and identically distributed random variables following an exponential distribution with rate parameter λ, then where n is the shape parameter and Template:Mvar is the rate, and .
- If Template:Math (in the shape–rate parametrization), then Template:Mvar has an exponential distribution with rate parameter Template:Mvar. In the shape-scale parametrization, Template:Math has an exponential distribution with rate parameter Template:Math.
- If Template:Math (in the shape–scale parametrization), then Template:Mvar is identical to Template:Math, the chi-squared distribution with Template:Mvar degrees of freedom. Conversely, if Template:Math and Template:Mvar is a positive constant, then Template:Math.
- If Template:Math, one obtains the Schulz-Zimm distribution, which is most prominently used to model polymer chain lengths.
- If Template:Mvar is an integer, the gamma distribution is an Erlang distribution and is the probability distribution of the waiting time until the Template:Mvar-th "arrival" in a one-dimensional Poisson process with intensity Template:Math. If
- then
- If Template:Mvar has a Maxwell–Boltzmann distribution with parameter Template:Mvar, then
- If Template:Math, then follows an exponential-gamma (abbreviated exp-gamma) distribution.[19] It is sometimes referred to as the log-gamma distribution.[20] Formulas for its mean and variance are in the section #Logarithmic expectation and variance.
- If Template:Math, then follows a generalized gamma distribution with parameters Template:Math, Template:Math, and Template:Citation needed.
- More generally, if Template:Math, then for follows a generalized gamma distribution with parameters Template:Math, Template:Math, and .
- If Template:Math with shape Template:Mvar and scale Template:Mvar, then Template:Math (see Inverse-gamma distribution for derivation).
- Parametrization 1: If are independent, then , or equivalently,
- Parametrization 2: If are independent, then , or equivalently,
- If Template:Math and Template:Math are independently distributed, then Template:Math has a beta distribution with parameters Template:Mvar and Template:Mvar, and Template:Math is independent of Template:Math, which is Template:Math-distributed.
- If and , then converges in distribution to defined under parametrization 2.
- If Template:Math are independently distributed, then the vector (Template:Math, where Template:Math, follows a Dirichlet distribution with parameters Template:Math.
- For large Template:Mvar the gamma distribution converges to normal distribution with mean Template:Math and variance Template:Math.
- The gamma distribution is the conjugate prior for the precision of the normal distribution with known mean.
- The matrix gamma distribution and the Wishart distribution are multivariate generalizations of the gamma distribution (samples are positive-definite matrices rather than positive real numbers).
- The gamma distribution is a special case of the generalized gamma distribution, the generalized integer gamma distribution, and the generalized inverse Gaussian distribution.
- Among the discrete distributions, the negative binomial distribution is sometimes considered the discrete analog of the gamma distribution.
- Tweedie distributions – the gamma distribution is a member of the family of Tweedie exponential dispersion models.
- Modified Half-normal distribution – the Gamma distribution is a member of the family of Modified half-normal distribution.[21] The corresponding density is , where denotes the Fox–Wright Psi function.
- For the shape-scale parameterization , if the scale parameter where denotes the Inverse-gamma distribution, then the marginal distribution where denotes the Beta prime distribution.
Compound gamma
If the shape parameter of the gamma distribution is known, but the inverse-scale parameter is unknown, then a gamma distribution for the inverse scale forms a conjugate prior. The compound distribution, which results from integrating out the inverse scale, has a closed-form solution known as the compound gamma distribution.[22]
If, instead, the shape parameter is known but the mean is unknown, with the prior of the mean being given by another gamma distribution, then it results in K-distribution.
Weibull and stable count
The gamma distribution can be expressed as the product distribution of a Weibull distribution and a variant form of the stable count distribution. Its shape parameter can be regarded as the inverse of Lévy's stability parameter in the stable count distribution: where is a standard stable count distribution of shape , and is a standard Weibull distribution of shape .
Statistical inference
Parameter estimation
Maximum likelihood estimation
The likelihood function for Template:Mvar iid observations Template:Math is
from which we calculate the log-likelihood function
Finding the maximum with respect to Template:Mvar by taking the derivative and setting it equal to zero yields the maximum likelihood estimator of the Template:Mvar parameter, which equals the sample mean divided by the shape parameter Template:Mvar:
Substituting this into the log-likelihood function gives
We need at least two samples: , because for , the function increases without bounds as . For , it can be verified that is strictly concave, by using inequality properties of the polygamma function. Finding the maximum with respect to Template:Mvar by taking the derivative and setting it equal to zero yields
where Template:Mvar is the digamma function and is the sample mean of Template:Math. There is no closed-form solution for Template:Mvar. The function is numerically very well behaved, so if a numerical solution is desired, it can be found using, for example, Newton's method. An initial value of Template:Mvar can be found either using the method of moments, or using the approximation
If we let
then Template:Mvar is approximately
which is within 1.5% of the correct value.[23] An explicit form for the Newton–Raphson update of this initial guess is:[24]
At the maximum-likelihood estimate , the expected values for Template:Mvar and agree with the empirical averages:
Caveat for small shape parameter
For data, , that is represented in a floating point format that underflows to 0 for values smaller than , the logarithms that are needed for the maximum-likelihood estimate will cause failure if there are any underflows. If we assume the data was generated by a gamma distribution with cdf , then the probability that there is at least one underflow is: This probability will approach 1 for small Template:Mvar and large Template:Mvar. For example, at , and , . A workaround is to instead have the data in logarithmic format.
In order to test an implementation of a maximum-likelihood estimator that takes logarithmic data as input, it is useful to be able to generate non-underflowing logarithms of random gamma variates, when . Following the implementation in scipy.stats.loggamma, this can be done as follows:[25] sample and independently. Then the required logarithmic sample is , so that .
Closed-form estimators
There exist consistent closed-form estimators of Template:Mvar and Template:Mvar that are derived from the likelihood of the generalized gamma distribution.[26]
The estimate for the shape Template:Mvar is
and the estimate for the scale Template:Mvar is
Using the sample mean of Template:Mvar, the sample mean of Template:Math, and the sample mean of the product Template:Math simplifies the expressions to:
If the rate parameterization is used, the estimate of .
These estimators are not strictly maximum likelihood estimators, but are instead referred to as mixed type log-moment estimators. They have however similar efficiency as the maximum likelihood estimators.
Although these estimators are consistent, they have a small bias. A bias-corrected variant of the estimator for the scale Template:Mvar is
A bias correction for the shape parameter Template:Mvar is given as[27]
Bayesian minimum mean squared error
With known Template:Mvar and unknown Template:Mvar, the posterior density function for theta (using the standard scale-invariant prior for Template:Mvar) is
Denoting
Integration with respect to Template:Mvar can be carried out using a change of variables, revealing that Template:Math is gamma-distributed with parameters Template:Math, Template:Math.
The moments can be computed by taking the ratio (Template:Mvar by Template:Math)
which shows that the mean ± standard deviation estimate of the posterior distribution for Template:Mvar is
Bayesian inference
Conjugate prior
In Bayesian inference, the gamma distribution is the conjugate prior to many likelihood distributions: the Poisson, exponential, normal (with known mean), Pareto, gamma with known shape Template:Mvar, inverse gamma with known shape parameter, and Gompertz with known scale parameter.
The gamma distribution's conjugate prior is:[28]
where Template:Mvar is the normalizing constant with no closed-form solution. The posterior distribution can be found by updating the parameters as follows:
where Template:Mvar is the number of observations, and Template:Math is the Template:Mvar-th observation.
Occurrence and applications
Consider a sequence of events, with the waiting time for each event being an exponential distribution with rate Template:Mvar. Then the waiting time for the Template:Mvar-th event to occur is the gamma distribution with integer shape . This construction of the gamma distribution allows it to model a wide variety of phenomena where several sub-events, each taking time with exponential distribution, must happen in sequence for a major event to occur.[29] Examples include the waiting time of cell-division events,[30] number of compensatory mutations for a given mutation,[31] waiting time until a repair is necessary for a hydraulic system,[32] and so on.
In biophysics, the dwell time between steps of a molecular motor like ATP synthase is nearly exponential at constant ATP concentration, revealing that each step of the motor takes a single ATP hydrolysis. If there were n ATP hydrolysis events, then it would be a gamma distribution with degree n.[33]
The gamma distribution has been used to model the size of insurance claims[34] and rainfalls.[35] This means that aggregate insurance claims and the amount of rainfall accumulated in a reservoir are modelled by a gamma process – much like the exponential distribution generates a Poisson process.
The gamma distribution is also used to model errors in multi-level Poisson regression models because a mixture of Poisson distributions with gamma-distributed rates has a known closed form distribution, called negative binomial.
In wireless communication, the gamma distribution is used to model the multi-path fading of signal power;Template:Citation needed see also Rayleigh distribution and Rician distribution.
In oncology, the age distribution of cancer incidence often follows the gamma distribution, wherein the shape and scale parameters predict, respectively, the number of driver events and the time interval between them.[36][37]
In neuroscience, the gamma distribution is often used to describe the distribution of inter-spike intervals.[38][39]
In bacterial gene expression where protein production can occur in bursts, the copy number of a given protein often follows the gamma distribution, where the shape and scale parameters are, respectively, the mean number of bursts per cell cycle and the mean number of protein molecules produced per burst.[40]
In genomics, the gamma distribution was applied in peak calling step (i.e., in recognition of signal) in ChIP-chip[41] and ChIP-seq[42] data analysis.
In Bayesian statistics, the gamma distribution is widely used as a conjugate prior. It is the conjugate prior for the precision (i.e. inverse of the variance) of a normal distribution. It is also the conjugate prior for the exponential distribution.
In phylogenetics, the gamma distribution is the most commonly used approach to model among-sites rate variation[43] when maximum likelihood, Bayesian, or distance matrix methods are used to estimate phylogenetic trees. Phylogenetic analyzes that use the gamma distribution to model rate variation estimate a single parameter from the data because they limit consideration to distributions where Template:Math. This parameterization means that the mean of this distribution is 1 and the variance is Template:Math. Maximum likelihood and Bayesian methods typically use a discrete approximation to the continuous gamma distribution.[44][45]
Random variate generation
Given the scaling property above, it is enough to generate gamma variables with Template:Math, as we can later convert to any value of Template:Mvar with a simple division.
Suppose we wish to generate random variables from Template:Math, where n is a non-negative integer and Template:Math. Using the fact that a Template:Math distribution is the same as an Template:Math distribution, and noting the method of generating exponential variables, we conclude that if Template:Mvar is uniformly distributed on (0, 1], then Template:Math is distributed Template:Math (i.e. inverse transform sampling). Now, using the "Template:Mvar-addition" property of gamma distribution, we expand this result:
where Template:Math are all uniformly distributed on (0, 1] and independent. All that is left now is to generate a variable distributed as Template:Math for Template:Math and apply the "Template:Mvar-addition" property once more. This is the most difficult part.
Random generation of gamma variates is discussed in detail by Devroye,[46]Template:Rp noting that none are uniformly fast for all shape parameters. For small values of the shape parameter, the algorithms are often not valid.[46]Template:Rp For arbitrary values of the shape parameter, one can apply the Ahrens and Dieter[47] modified acceptance-rejection method Algorithm GD (shape Template:Math), or transformation method[48] when Template:Math. Also see Cheng and Feast Algorithm GKM 3[49] or Marsaglia's squeeze method.[50]
The following is a version of the Ahrens-Dieter acceptance–rejection method:[47]
- Generate Template:Mvar, Template:Mvar and Template:Mvar as iid uniform (0, 1] variates.
- If then and . Otherwise, and .
- If then go to step 1.
- Template:Mvar is distributed as Template:Math.
A summary of this is where is the integer part of Template:Mvar, Template:Mvar is generated via the algorithm above with Template:Math (the fractional part of Template:Mvar) and the Template:Math are all independent.
While the above approach is technically correct, Devroye notes that it is linear in the value of Template:Mvar and generally is not a good choice. Instead, he recommends using either rejection-based or table-based methods, depending on context.[46]Template:Rp
For example, Marsaglia's simple transformation-rejection method relying on one normal variate Template:Mvar and one uniform variate Template:Mvar:[25]
- Set and .
- Set .
- If and return , else go back to step 2.
With generates a gamma distributed random number in time that is approximately constant with Template:Mvar. The acceptance rate does depend on Template:Mvar, with an acceptance rate of 0.95, 0.98, and 0.99 for α = 1, 2, and 4. For Template:Math, one can use to boost Template:Mvar to be usable with this method.
In Matlab numbers can be generated using the function gamrnd(), which uses the α, θ representation.
References
External links
- Template:Springer
- Template:MathWorld
- ModelAssist (2017) Uses of the gamma distribution in risk modeling, including applied examples in Excel Template:Webarchive.
- Engineering Statistics Handbook
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite journal
- ↑ Template:Cite book
- ↑ Template:Cite arXiv
- ↑ 8.0 8.1 Papoulis, Pillai, Probability, Random Variables, and Stochastic Processes, Fourth Edition
- ↑ Jeesen Chen, Herman Rubin, Bounds for the difference between median and mean of gamma and Poisson distributions, Statistics & Probability Letters, Volume 4, Issue 6, October 1986, Pages 281–283, Template:Issn, [4] Template:Webarchive.
- ↑ Choi, K. P. "On the Medians of the Gamma Distributions and an Equation of Ramanujan" Template:Webarchive, Proceedings of the American Mathematical Society, Vol. 121, No. 1 (May, 1994), pp. 245–251.
- ↑ 11.0 11.1 Template:Cite journal
- ↑ 12.0 12.1 Berg, Christian and Pedersen, Henrik L. "Convexity of the median in the gamma distribution" Template:Webarchive.
- ↑ Template:Cite journal
- ↑ 14.0 14.1 14.2 Template:Cite journal
- ↑ 15.0 15.1 Template:Cite journal
- ↑ Template:Cite journal
- ↑ Template:Cite journal
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite journal
- ↑ Template:Cite journal
- ↑ Template:Cite web
- ↑ Template:Cite journal
- ↑ 25.0 25.1 Template:Cite journal
- ↑ Template:Cite journal
- ↑ Template:Cite journal
- ↑ Fink, D. 1995 A Compendium of Conjugate Priors. In progress report: Extension and enhancement of methods for setting data quality objectives. (DOE contract 95‑831).
- ↑ Template:Cite book
- ↑ Template:Cite journal
- ↑ Template:Cite journal
- ↑ Template:Cite journal
- ↑ Template:Cite journal
- ↑ p. 43, Philip J. Boland, Statistical and Probabilistic Methods in Actuarial Science, Chapman & Hall CRC 2007
- ↑ Template:Cite journal
- ↑ Template:Cite journal
- ↑ Template:Cite journal
- ↑ J. G. Robson and J. B. Troy, "Nature of the maintained discharge of Q, X, and Y retinal ganglion cells of the cat", J. Opt. Soc. Am. A 4, 2301–2307 (1987)
- ↑ M.C.M. Wright, I.M. Winter, J.J. Forster, S. Bleeck "Response to best-frequency tone bursts in the ventral cochlear nucleus is governed by ordered inter-spike interval statistics", Hearing Research 317 (2014)
- ↑ N. Friedman, L. Cai and X. S. Xie (2006) "Linking stochastic dynamics to population distribution: An analytical framework of gene expression", Phys. Rev. Lett. 97, 168302.
- ↑ DJ Reiss, MT Facciotti and NS Baliga (2008) "Model-based deconvolution of genome-wide DNA binding", Bioinformatics, 24, 396–403
- ↑ MA Mendoza-Parra, M Nowicka, W Van Gool, H Gronemeyer (2013) "Characterising ChIP-seq binding patterns by model-based peak shape deconvolution" Template:Webarchive, BMC Genomics, 14:834
- ↑ Template:Cite journal
- ↑ Template:Cite journal
- ↑ Template:Cite journal
- ↑ 46.0 46.1 46.2 Template:Cite book See Chapter 9, Section 3.
- ↑ 47.0 47.1 Template:Cite journal. See Algorithm GD, p. 53.
- ↑ Template:Cite journal
- ↑ Template:Cite journal
- ↑ Marsaglia, G. The squeeze method for generating gamma variates. Comput, Math. Appl. 3 (1977), 321–325.