mercurial.hierarchy.coupling module

Cross‑level adjacency optimization (LADDER F.1, Definition 3.5).

class mercurial.hierarchy.coupling.LevelCoupling(baseline_coupling: float = 0.1, decay_length: float = 1.0)[source]

Bases: object

Implements hierarchical coupling strength between levels: K_ij = K_0 * exp(-|i - j| / l_adj)

Where: - i, j are LADDER level indices (0-18) - K_0 is baseline coupling strength - l_adj is adjacency decay length (typically 1.0-2.0)

Methods

coupling_matrix(levels)

Compute full coupling matrix for a list of levels.

coupling_strength(level_i, level_j)

Compute K_ij = K_0 * exp(-|i - j| / ℓ_adj).

effective_similarity(base_similarity, ...)

Combine base isomorphism with hierarchical coupling.

__init__(baseline_coupling: float = 0.1, decay_length: float = 1.0)[source]
Parameters:
baseline_couplingfloat

K_0, maximum coupling when i = j.

decay_lengthfloat

ℓ_adj, characteristic distance for exponential decay.

coupling_matrix(levels: List[int]) ndarray[source]

Compute full coupling matrix for a list of levels.

coupling_strength(level_i: int, level_j: int) float[source]

Compute K_ij = K_0 * exp(-|i - j| / ℓ_adj).

effective_similarity(base_similarity: float, level_i: int, level_j: int) float[source]

Combine base isomorphism with hierarchical coupling. Used as σ_eff = σ_base * K_ij.