A Unified Tensorial Framework for Selection Theory: Generalizing the Price Equation with Applications to Natural, Sexual, and Multistage Selection Dynamics

Sourav Kundu
KSG Research Foundation
Knowledge Solutions Group Inc., Japan
Email: sourav.kundu@ksgcorp.org
Abstract. We present a comprehensive tensorial generalization of the Price equation that provides a unified mathematical framework for selection processes across biological, cultural, and artificial domains. Building on Price's original vision of a "general theory of selection" analogous to Shannon's communication theory, we develop a coordinate-free tensor formulation that handles multiple traits, multiple selection criteria, and nonlinear frequency-dependent selection. Our framework decomposes selection into natural, sexual, cultural, and subset selection components through appropriate tensor operators, while maintaining the exactness of the original Price equation for discrete generational changes. We establish precise connections to information geometry, revealing how the Fisher information metric emerges naturally in continuous limits while clarifying the limitations of geometric approaches for discrete selection processes. The theory is extended to multistage selection dynamics through discrete-time dynamical systems and integrated with Kalman filtering for uncertainty quantification. Numerical examples demonstrate the framework's applicability to sexual selection, multistage evolution, and selection under environmental stochasticity. This work moves significantly toward Price's envisioned "mathematical theory of selection," providing a rigorous foundation for analyzing complex selection systems across diverse fields.

1. Introduction

In his posthumously published manuscript, George R. Price [1] argued for a general mathematical theory of selection, analogous to Shannon's theory of communication [4]. Price observed that selection operates not only in genetics but in chemistry, linguistics, psychology, economics, and beyond, yet no unified formalism existed to describe it. He proposed a general selection model (Fig. 4 of [1]) in which a pre-selection set \(P\) of entities with amounts \(w_i\) and properties \(x_i\) is transformed into a corresponding set \(P'\) with amounts \(w_i'\) and properties \(x_i'\), such that the \(w_i'\) are non-randomly related to the \(x_i\). From this, Price derived the now-famous Price equation [2,3]:

\[ \Delta \bar{x} = \frac{\operatorname{Cov}(w,x)}{\bar{w}} + \frac{\mathbb{E}(w\Delta x)}{\bar{w}}, \]

where the first term represents selection (covariance between fitness \(w\) and trait \(x\)) and the second term represents transmission or property change.

Despite its generality, the classical Price equation remains primarily algebraic and scalar in form. It does not explicitly handle multiple traits, nonlinear interactions, or the composition of different selection mechanisms—such as natural selection (differential survival/reproduction) and sexual selection (differential mating success). Price himself noted that "selection theory is a theory waiting to be born" and called for a more abstract, mathematical treatment akin to Shannon's information theory.

In this work, we answer Price's call by reformulating selection theory in the language of tensors—multilinear maps between vector spaces that are invariant under coordinate changes. Tensors provide a natural framework for describing how traits, fitness, and selective pressures interact in high-dimensional phenotype spaces. We define a selection tensor \(\mathcal{S}\) that generalizes the covariance term of the Price equation to multiple traits and selective forces, and a transmission tensor \(\mathcal{T}\) that generalizes the expectation term. Together, they form a tensorial Price equation:

\[ \Delta \bar{\mathbf{x}} = \mathcal{S}\cdot \bar{\mathbf{x}} + \mathcal{T}\cdot \bar{\mathbf{x}}, \]

where \(\bar{\mathbf{x}}\) is a trait vector and \(\cdot\) denotes appropriate tensor contraction.

This formulation allows us to:

  1. Unify different selection modes (natural, sexual, subset, cultural) as special cases of tensor operators.
  2. Model multiple, possibly interacting traits and selective pressures.
  3. Incorporate nonlinear and frequency-dependent selection via curvature terms in the trait manifold.
  4. Compose selection processes via tensor products, reflecting Price's insight that selection can be multistage (Fig. 6a of [1]).
  5. Clarify the relationship between selection and entropy via connections to information geometry.
  6. Handle both discrete generational changes (exactly) and continuous-time limits (approximately).

We begin by reviewing Price's general selection model and its limitations (Section 2), then develop the tensorial framework (Section 3), derive special cases for different selection modes (Section 4), develop dynamical systems for multistage selection (Section 5), integrate Kalman filtering for uncertainty quantification (Section 6), present numerical examples (Section 7), and discuss implications for a general "mathematical theory of selection" (Section 8).

2. Price's General Selection Model and the Need for Tensors

Price's model [1, Fig. 4] represents selection as a mapping from a pre-selection population \(P = \{(w_i, x_i)\}\) to a post-selection population \(P' = \{(w_i', x_i')\}\), with a one-to-one correspondence between elements. The selection coefficient is \(s_i = w_i' / w_i\), and selection is defined as a non-random relationship between \(s_i\) and \(x_i\). The model accommodates:

Price noted that the covariance form \(\Delta \bar{x} = \operatorname{Cov}(w,x)/\bar{w}\) emerges naturally from this model, but he also identified complexities not captured by the scalar equation:

  1. Multiple traits: Real selection acts on many traits simultaneously, possibly with correlations.
  2. Multiple selection criteria: Sexual selection, natural selection, and artificial selection may act concurrently.
  3. Nonlinear interactions: Fitness may depend nonlinearly on traits or trait combinations.
  4. Property change during transmission: Offspring differ from parents in complex ways.

These observations suggest moving from scalar \(x\) and \(w\) to vectors \(\mathbf{x} \in \mathbb{R}^n\) and \(\mathbf{w} \in \mathbb{R}^m\), and from covariance to a multilinear map. Tensors provide precisely this structure.

3. Tensorial Formulation of the Price Equation

3.1 Trait and Fitness Spaces

Let the population consist of \(N\) individuals. Each individual \(i\) has:

The population mean trait vector is

\[ \bar{\mathbf{x}} = \frac{\sum_{i=1}^N W_i \mathbf{x}_i}{\sum_{i=1}^N W_i}. \]

3.2 The Selection Tensor

Definition 1 (Selection Tensor). The selection tensor \(\mathcal{S}\) of type \((1,1)\) (a linear map from traits to trait changes) is defined as: \[ \mathcal{S} = \frac{1}{\bar{W}} \operatorname{Cov}(\mathbf{w},\mathbf{x}) = \frac{1}{\bar{W}} \mathbb{E}[(\mathbf{w} - \bar{\mathbf{w}}) \otimes (\mathbf{x} - \bar{\mathbf{x}})], \] where \(\otimes\) is the outer product, and the covariance is interpreted as a matrix (or more generally, a 2D tensor) with components: \[ S_k^j = \frac{1}{\bar{W}} \sum_{i=1}^N (w_i^{(k)} - \bar{w}^{(k)})(x_i^j - \bar{x}^j) \frac{W_i}{\sum_i W_i}. \] Here, \(k\) indexes fitness components, \(j\) indexes trait components.

Contracting \(\mathcal{S}\) with \(\bar{\mathbf{x}}\) yields the selection-induced change:

\[ \Delta_{\text{sel}} \bar{\mathbf{x}} = \mathcal{S} \cdot \bar{\mathbf{x}} \quad (\text{in components: } \Delta \bar{x}^j = \sum_{k=1}^m S_k^j \bar{x}^k). \]

3.3 The Transmission Tensor

Definition 2 (Transmission Tensor). Property change from parent to offspring (including mutation, recombination, cultural change) is encoded in a transmission tensor \(\mathcal{T}\) of type \((1,1)\): \[ \mathcal{T} = \frac{1}{\bar{W}} \mathbb{E}[W_i \Delta \mathbf{x}_i \otimes \mathbf{x}_i], \] where \(\Delta \mathbf{x}_i = \mathbf{x}_i' - \mathbf{x}_i\) is the change in trait vector for lineage \(i\).

Contracting \(\mathcal{T}\) with \(\bar{\mathbf{x}}\) gives the transmission-induced change:

\[ \Delta_{\text{trans}} \bar{\mathbf{x}} = \mathcal{T} \cdot \bar{\mathbf{x}}. \]

3.4 The Tensorial Price Equation

Theorem 1 (Tensorial Price Equation). For a population with trait vectors \(\mathbf{x}_i\), fitness vectors \(\mathbf{w}_i\), and trait changes \(\Delta \mathbf{x}_i\), the change in the mean trait vector is: \[ \Delta \bar{\mathbf{x}} = \mathcal{S} \cdot \bar{\mathbf{x}} + \mathcal{T} \cdot \bar{\mathbf{x}} = (\mathcal{S} + \mathcal{T}) \cdot \bar{\mathbf{x}}, \] where \(\mathcal{S}\) is the selection tensor and \(\mathcal{T}\) is the transmission tensor defined above.

This is a coordinate-free, multilinear generalization of the scalar Price equation.

3.5 Discrete vs. Continuous Formulations

Theorem 2 (Exactness for Discrete Changes). The tensorial Price equation is exact for any finite population undergoing discrete generational changes, regardless of the distribution of traits or the functional form of fitness.

In contrast, information geometric approaches typically require continuous distributions and smooth fitness landscapes. The continuous-time limit emerges under specific assumptions:

Theorem 3 (Continuous-Time Limit). Under the assumptions of:
  1. Smooth trait distributions (e.g., Gaussian);
  2. Differentiable fitness functions;
  3. Small per-generation changes (\(|\Delta \mathbf{x}_i| \ll \sqrt{\operatorname{Var}(\mathbf{x})}\));
the tensorial Price equation reduces to: \[ \frac{d\bar{\mathbf{x}}}{dt} = \mathbf{G} \boldsymbol{\beta}, \] where \(\mathbf{G}\) is the genetic covariance matrix and \(\boldsymbol{\beta} = \nabla \ln \bar{w}\) is the selection gradient (Lande equation).

3.6 Metric Structure and Information Geometry

The trait space \(\mathcal{X}\) can be equipped with a metric tensor \(g_{ij}\), defining an inner product \(\langle \mathbf{u}, \mathbf{v} \rangle = g_{ij} u^i v^j\). This allows us to define the selection gradient as:

\[ \beta^k = g^{kj} \frac{\partial \bar{W}}{\partial \bar{x}^j}, \]

and relate it to the selection tensor via \(\mathcal{S} = \boldsymbol{\beta} \otimes \bar{\mathbf{x}}\) in the case of linear selection.

The Fisher information metric provides a natural choice for \(g_{ij}\):

Definition 3 (Fisher Information Metric). For a parametric family of trait distributions \(p(\mathbf{x}|\boldsymbol{\theta})\), the Fisher information metric is: \[ g_{ij}(\boldsymbol{\theta}) = \mathbb{E}\left[ \frac{\partial \log p(\mathbf{x}|\boldsymbol{\theta})}{\partial \theta^i} \frac{\partial \log p(\mathbf{x}|\boldsymbol{\theta})}{\partial \theta^j} \right]. \]
Theorem 4 (Selection-Information Inequality). For selection acting on traits with Fisher information \(I(\mathbf{x})\): \[ \langle \Delta_{\text{sel}} \bar{\mathbf{x}}, \Delta_{\text{sel}} \bar{\mathbf{x}} \rangle \leq \bar{W} \cdot I(\mathbf{x}), \] where the inner product is taken with respect to the Fisher metric.

4. A Unified Selection Model: Natural, Sexual, and Beyond

4.1 Natural Selection Tensor \(\mathcal{S}_N\)

Natural selection acts on viability and fertility. Let \(\mathbf{w}_N\) be the fitness component due to survival and reproduction. Then:

\[ \mathcal{S}_N = \frac{1}{\bar{W}} \operatorname{Cov}(\mathbf{w}_N, \mathbf{x}). \]

4.2 Sexual Selection Tensor \(\mathcal{S}_S\)

Sexual selection arises from mate choice or competition. Let \(\mathbf{w}_S\) be the fitness component due to mating success. We model this via a preference tensor \(\mathcal{P}\):

\[ w_S^{(i)} = \sum_{j,k} \mathcal{P}_{jk}^i x_{\text{chooser}}^j x_{\text{chosen}}^k. \]

The sexual selection tensor becomes:

\[ \mathcal{S}_S = \frac{1}{\bar{W}} \operatorname{Cov}(\mathbf{w}_S, \mathbf{x}). \]

4.3 Subset Selection Tensor \(\mathcal{S}_B\)

Subset selection (e.g., choosing apples, books) is a special case where \(w_i' \in \{0,1\}\). Then:

\[ \mathcal{S}_B = \frac{1}{\bar{W}} \operatorname{Cov}(\mathbf{w}_B, \mathbf{x}). \]

4.4 Cultural Selection Tensor \(\mathcal{S}_C\)

Cultural selection (ideas, behaviors) may involve imitation bias, modeled via an imitation tensor \(\mathcal{I}\):

\[ \mathcal{S}_C = \frac{1}{\bar{W}} \operatorname{Cov}(\mathbf{w}_C, \mathbf{x}). \]

4.5 Composite Selection Tensor

When multiple selection processes act simultaneously, the total selection tensor is the sum:

\[ \mathcal{S}_{\text{total}} = \mathcal{S}_N + \mathcal{S}_S + \mathcal{S}_B + \mathcal{S}_C + \cdots \]

4.6 Transmission Tensor \(\mathcal{T}\)

Transmission includes:

Then:

\[ \mathcal{T} = \frac{1}{\bar{W}} \mathbb{E}[W_i (\mathcal{M} + \mathcal{R} + \mathcal{L}) \cdot (\mathbf{x}_i \otimes \mathbf{x}_i)]. \]

5. Dynamical System for Multistage Selection

Price's Fig. 6a shows multistage selection with alternating property change and selection. In our framework, this is a discrete-time dynamical system:

\[ \bar{\mathbf{x}}_{t+1} = \bar{\mathbf{x}}_t + (\mathcal{S}_t + \mathcal{T}_t) \cdot \bar{\mathbf{x}}_t. \]

If selection and transmission tensors are time-dependent (frequency-dependent, density-dependent, or environmentally driven), this becomes a nonlinear dynamical system. The continuous-time approximation is:

\[ \frac{d\bar{\mathbf{x}}}{dt} = (\mathcal{S}(t) + \mathcal{T}(t)) \cdot \bar{\mathbf{x}}. \]

6. Integration with Kalman Filtering for Uncertain Dynamics

6.1 Kalman Filter Recap

The Kalman filter [5] provides optimal state estimation for linear dynamical systems with Gaussian noise. For a state vector \(\mathbf{z}_t\):

\begin{align*} \text{Prediction:} & \quad \hat{\mathbf{z}}_{t|t-1} = F_t \hat{\mathbf{z}}_{t-1}, \\ & \quad P_{t|t-1} = F_t P_{t-1} F_t^T + Q_t, \\ \text{Update:} & \quad K_t = P_{t|t-1} H_t^T (H_t P_{t|t-1} H_t^T + R_t)^{-1}, \\ & \quad \hat{\mathbf{z}}_t = \hat{\mathbf{z}}_{t|t-1} + K_t (\mathbf{y}_t - H_t \hat{\mathbf{z}}_{t|t-1}), \\ & \quad P_t = (I - K_t H_t) P_{t|t-1}. \end{align*}

6.2 Selection-Kalman Model

The state vector comprises the mean trait vector and its covariance:

\[ \mathbf{z}_t = \begin{bmatrix} \bar{\mathbf{x}}_t \\ \operatorname{vec}(\Sigma_t) \end{bmatrix}, \]

where \(\Sigma_t = \operatorname{Cov}(\mathbf{x}, \mathbf{x})\) is the trait covariance matrix.

The prediction step corresponds to redistribution (mutation, recombination): \(F_t = I + \mathcal{T}_t\).

The update step incorporates selection based on fitness observations: \(H_t = \nabla_{\bar{\mathbf{x}}} \ln \bar{w}(\bar{\mathbf{x}}_t, \Sigma_t)\).

7. Numerical Examples

7.1 Sexual Selection in 2D Trait Space

Consider two traits: body size (\(x_1\)) and ornamentation (\(x_2\)). Fitness has components:

\begin{align*} w_N(\mathbf{x}) &= \exp\left(-\frac{(x_1 - \theta_1)^2}{2\sigma_N^2}\right) \quad \text{(natural selection)},\\ w_S(\mathbf{x}, \bar{\mathbf{x}}) &= \frac{\beta}{1 + \kappa (x_2 - \bar{x}_2)^2} \quad \text{(frequency-dependent sexual selection)}. \end{align*}

Simulation shows rapid evolution of ornamentation due to sexual selection while body size stabilizes at the viability optimum.

7.2 Multistage Selection with Uncertainty

We simulate a population undergoing alternating selection and redistribution phases with environmental noise. The Selection-Kalman filter accurately tracks trait evolution while quantifying uncertainty.

Body size Ornamentation Generation
Figure 1: Simulated trait evolution under natural and sexual selection.

8. Discussion

Price envisioned a "mathematical theory of selection" akin to Shannon's communication theory. Our tensor-based formalism moves toward that goal by providing a coordinate-free, multilinear language for selection, capable of describing everything from chemical selection to cultural evolution. The selection tensor \(\mathcal{S}\) and transmission tensor \(\mathcal{T}\) form the building blocks of a general selection calculus.

Limitations: While powerful, our framework has limitations: computational complexity (\(O(n^2)\) parameters), data requirements, and Gaussian assumptions in the Kalman filter. Future work could address these via sparse tensors, Bayesian methods, particle filters, and connections to evolutionary game theory.

9. Conclusion

We have developed a comprehensive tensorial generalization of the Price equation that provides a unified mathematical framework for selection processes. This framework generalizes Price's model to multiple traits, incorporates sexual and cultural selection, clarifies the selection-entropy relationship, provides dynamical systems for multistage selection, and integrates Kalman filtering for uncertainty quantification. Price wrote that "selection theory is a theory waiting to be born." With this tensorial formulation, we take a significant step toward its birth.

Appendix A. Mathematical Preliminaries on Tensors

Let \(V\) be an \(n\)-dimensional vector space over \(\mathbb{R}\) with basis \(\{\mathbf{e}_i\}\). A tensor of type \((p,q)\) is an element of \(V^{\otimes p} \otimes (V^*)^{\otimes q}\). In components, a tensor \(T\) is written as \(T_{j_1 \dots j_q}^{i_1 \dots i_p}\). Contraction is summing over one upper and one lower index, e.g., \(T_j^i v^j\). The outer product \(\mathbf{u} \otimes \mathbf{v}\) has components \(u^i v^j\).

Appendix B. Derivation of the Tensorial Price Equation

Starting from the scalar Price equation for each trait component \(x^j\):

\[ \Delta \bar{x}^j = \frac{\operatorname{Cov}(W, x^j)}{\bar{W}} + \frac{\mathbb{E}(W \Delta x^j)}{\bar{W}}, \]

and noting \(W = \sum_k w^{(k)}\), we have \(\operatorname{Cov}(W, x^j) = \sum_k \operatorname{Cov}(w^{(k)}, x^j)\). Thus:

\[ \Delta \bar{x}^j = \sum_k \frac{\operatorname{Cov}(w^{(k)}, x^j)}{\bar{W}} \bar{x}^k + \frac{\mathbb{E}(W \Delta x^j)}{\bar{W}}. \]

Identifying \(S_k^j = \operatorname{Cov}(w^{(k)}, x^j) / \bar{W}\) and \(T^j = \mathbb{E}(W \Delta x^j) / \bar{W}\) gives the tensorial form.

Appendix C. Special Cases and Examples

C.1 Single trait, single fitness component: If \(n=m=1\), then \(\mathcal{S} = \operatorname{Cov}(w,x)/\bar{W}\) and \(\mathcal{T} = \mathbb{E}(w\Delta x)/\bar{W}\), reducing to the classical Price equation.

C.2 Linear selection gradient: Under \(W(\mathbf{x}) = \alpha + \boldsymbol{\beta}\cdot\mathbf{x}\), we have \(\mathcal{S} = \boldsymbol{\beta}\otimes\bar{\mathbf{x}}\).

C.3 Price's Fig. 5 example: For gene frequency \(x\), \(\mathcal{S}\) captures covariance between fecundity/survival and gene frequency, \(\mathcal{T}\) captures recombination/mutation.

Appendix D. Connection to Information Geometry

The Fisher information metric on a statistical manifold of trait distributions is

\[ g_{ij}(\boldsymbol{\theta}) = \mathbb{E}\left[ \frac{\partial \log p(\mathbf{x}|\boldsymbol{\theta})}{\partial \theta^i} \frac{\partial \log p(\mathbf{x}|\boldsymbol{\theta})}{\partial \theta^j} \right]. \]

The selection gradient \(\boldsymbol{\beta}\) is the natural gradient of mean fitness. The selection-information inequality follows from the Cramér-Rao bound.

Appendix E. Selection-Kalman Algorithm Pseudocode

Algorithm: Selection-Kalman Filter
Input: Initial mean x̄₀, covariance Σ₀, noise Q, R
Output: Trajectory {x̄_t, Σ_t}

t ← 0
while t < T:
    # Prediction (redistribution)
    x̄_{t|t-1} ← (I + T_t) x̄_t
    Σ_{t|t-1} ← (I + T_t) Σ_t (I + T_t)^T + Q_t

    # Update (selection)
    H_t ← ∇_{x̄} ln w̄(x̄_{t|t-1}, Σ_{t|t-1})
    K_t ← Σ_{t|t-1} H_t^T (H_t Σ_{t|t-1} H_t^T + R_t)^{-1}
    w_obs ← measurement + noise
    x̄_{t+1} ← x̄_{t|t-1} + K_t (w_obs - w̄)
    Σ_{t+1} ← (I - K_t H_t) Σ_{t|t-1}
    t ← t+1

Appendix F. MATLAB Code for Selection-Kalman Filter

classdef selection_kalman < handle
    properties
        n_dim; x_mean; x_cov; price_tensor; Q; R;
        history_mean; history_cov; generation;
    end
    methods
        function obj = selection_kalman(n, x0, cov0, price, Q, R)
            obj.n_dim = n; obj.x_mean = x0; obj.x_cov = cov0;
            obj.price_tensor = price; obj.Q = Q; obj.R = R;
            obj.history_mean = x0; obj.history_cov = cov0; obj.generation = 0;
        end
        function step(obj, redist_func, fitness_func)
            % Prediction
            [x_pred, J] = redist_func(obj.x_mean, obj.x_cov);
            cov_pred = J * obj.x_cov * J' + obj.Q;
            % Update
            H = obj.fitness_gradient(x_pred, cov_pred, fitness_func);
            S = H * cov_pred * H' + obj.R;
            K = cov_pred * H' / S;
            w_obs = fitness_func(x_pred, cov_pred) + mvnrnd(zeros(obj.n_dim,1), obj.R)';
            obj.x_mean = x_pred + K * (w_obs - fitness_func(x_pred, cov_pred));
            obj.x_cov = (eye(obj.n_dim) - K*H) * cov_pred;
            % Store
            obj.history_mean = [obj.history_mean; obj.x_mean'];
            obj.history_cov = cat(3, obj.history_cov, obj.x_cov);
            obj.generation = obj.generation + 1;
        end
    end
end

References

[1] Price, G. R. (1995). The nature of selection. Journal of Theoretical Biology, 175(3), 389–396.

[2] Price, G. R. (1970). Selection and covariance. Nature, 227(5257), 520–521.

[3] Price, G. R. (1972). Extension of covariance selection mathematics. Annals of Human Genetics, 35(4), 485–490.

[4] Shannon, C. E. (1948). A mathematical theory of communication. Bell System Technical Journal, 27(3), 379–423.

[5] Kalman, R. E. (1960). A new approach to linear filtering and prediction problems. Journal of Basic Engineering, 82, 35–45.

[6] Amari, S. (1985). Differential-geometrical methods in statistics. Springer.

[7] Amari, S., & Nagaoka, H. (2000). Methods of information geometry. American Mathematical Society.

[8] Frank, S. A. (2009). Natural selection maximizes Fisher information. Journal of Evolutionary Biology, 22(2), 231–244.

[9] Lande, R. (1979). Quantitative genetic analysis of multivariate evolution. Evolution, 33, 402–416.

© 2025 Sourav Kundu et al. All rights reserved.