Built with Claude · Life Sciences — Research Track

Coevolution without a common ancestor

The standard way to read how two proteins evolve together needs a shared family tree. Humans and their pathogens have none. We found the co-evolutionary signal that survives anyway — readable from the strain sequences surveillance already collects.

A host–pathogen protein-interaction study · 101,132 pairs · 13-species benchmark · two AlphaFold-3 pilots
0/8
host–pathogen complexes with zero shared taxa
more strain variation at the interface (p=1×10⁻⁴)
0/8
systems carry the signal — real, not universal
0
interaction pairs assembled & benchmarked
The problem

The best tool for the job assumes something host–pathogen biology forbids.

Direct-coupling analysis reads which residues co-evolve by lining up two proteins across a shared species tree and watching them change together. A human receptor and the viral or bacterial protein that grips it share no such tree. Across eight experimentally solved complexes, seven share zero taxa — the paired alignment cannot even be built. A positive control on co-speciating proteins recovers contacts at AUC 0.61, proving the method works; it is the missing shared history that breaks it.

“The method was not broken. Its founding assumption was never true here — so we went looking for a signal that doesn't need it.”

— the pivot that reorganized the project

The signal that survives

The interface remembers the arms race.

A pathogen under pressure to bind — or to escape immunity at — a host receptor concentrates its variation at the contact residues. That variation is visible across strains of a single species, so it needs no host tree, no paired alignment, and no mutational-scanning experiment. For SARS-CoV-2, ACE2-contact residues vary 4.2× more than the rest of the domain (permutation p = 1×10⁻⁴). Two clean negatives keep it honest: strain covariation does not predict 3D contact (ρ=−0.04), and the host side is invariant — the selection is one-sided.

Interface strain-variation signal
Interface residues carry strain entropy 0.43 vs 0.10 for the rest of the domain — one signal, shown against both baselines.
The evidence

Real — but pathogen-specific, and honestly evaluated.

We tested the signal across kingdoms, asked whether it improves prediction, and pushed it into structure. Every result is shown with its caveat, including a negative from our newest AlphaFold-3 pilot.

Generality

Significant in 3 of 8 systems across viral and bacterial pathogens. Fold-change alone misleads — Yersinia hits 9.4× on near-zero entropy — so we gate on an absolute-entropy floor. HIV is null: it shields its receptor site.

3 / 8 systems

Cross-species transfer

A species-balanced leave-one-species-out benchmark (13 species, 9,172 pairs) shows transfer tracks phylogenetic proximity: chance for isolated species, strong when a relative is in training. A lightweight arms-race feature helps 8/13, viral-biased.

0.49 → 0.80 AUC

Structure (a negative)

Our newest pilot: AlphaFold-3 interface confidence does not discriminate true from decoy pairs for an isolated pathogen (pooled AUC 0.50). A pilot, with a shallow-MSA caveat — but a result that tells the next study where not to look.

AUC 0.50 · honest null
What it unlocks

Two applications that are real today.

Not roadmap promises — both are demonstrated on the data.

Application 01

Escape-residue early warning

The signal runs on exactly the data pandemic genomic surveillance already produces — strain sequences plus a structure. It flags which interface residues are under active diversifying selection before they are annotated as escape mutations, recovering the known SARS-CoV-2 escape geography and deployable prospectively on new pathogens.

Demonstrated
Application 02

An honest cross-species benchmark

The species-balanced, leave-one-species-out protocol is a reusable instrument that exposes the phylogenetic-leakage failure mode pooled metrics hide. It corrected our own earlier artifact — an apparent 0.485 "chance" transfer that was really two oversized folds — down to an honest 0.57.

Demonstrated
Code & data

Reproducible — run it yourself.

A Jupyter notebook regenerates every headline number from the saved result data. No GPU, no re-training — just numpy pandas scipy matplotlib.

reproduce_results.ipynb

Loads the out-of-fold predictions and metric tables and recomputes the balanced-benchmark AUCs, the coevolution lift, and the AlphaFold-3 no-relative negative — matching the paper to 4 decimals.

Open the notebook →
data/

The result files behind every claim: oof_balanced.npz (9,172 pairs), the per-species transfer table, the balanced metrics, and the AF3 ipTM scores.

Browse the data →
GitHub repository

Everything in one place — the report, figures, notebook, data, and this site. Clone it, open the notebook, and reproduce the results.

View the repo →

Read the full study.

The complete scientific report — background, hypotheses, methods, results, and conclusion — with every figure and 20 verified references.

Report