exoverse · project paper · July 2026

The Worlds Surveys Don’t See

A physics-validated synthetic exoplanet population for measuring what transit surveys and future observatories miss

Populations 1,007,083 systems, 2,212,734 planets Instruments TESS · Kepler · JWST · Roman · HWO Status working prototype, v0.3

Abstract

Every exoplanet catalog is the output of a filter: survey geometry, instrument noise, and observing baselines decide which worlds become data points and which remain invisible. exoverse inverts the problem. Instead of starting from what was detected, it generates the full spectrum of plausible planetary systems bottom-up — from stellar physics and measured occurrence statistics — then observes each world with modeled instruments, real and future. Version 0.3 makes the synthetic universe an explicit sample of the real one: distances follow the Galactic thin disk’s vertical structure with an absolute density normalization (~5.2 million systems truly exist within 300 pc), the main population grows to 1,000,000 systems (a 19% sample of that reality), and a companion population is a 1:1 analog of the actual solar neighborhood — 7,083 systems within 30 pc, so mission yields read as absolute predictions. Reflected-light albedos are now drawn per planet from temperature-dependent distributions spanning the measured range, from nearly-black hot Jupiters to Venus-bright cloud decks. In this universe, 99% of habitable-zone rocky planets remain invisible to every transit survey modeled, purely by geometry; the Habitable Worlds Observatory images 209 planets, including 19 habitable-zone Earth-size candidates — just below its Astro2020 goal of 25 — and its exo-Earth yield turns out to be limited almost entirely by inner working angle, not by contrast floor or host brightness: halving the 60 mas working angle quintuples the yield, while a 3× deeper floor gains nothing. The full model — every distribution, stability rule, noise term, and detection threshold — is specified in §3, and both populations regenerate bit-for-bit from two integer seeds.

1,007,083
systems — a 19% sample of the ~5.2M real systems within 300 pc, plus a 1:1 solar neighborhood
99%
of HZ rocky planets invisible to transit surveys
19 vs 25
exo-Earths HWO images in the 1:1 neighborhood — an absolute yield vs the Astro2020 goal
5×
exo-Earth yield from halving the inner working angle; a 3× deeper contrast floor gains zero

1Motivation

Nearly 6,000 exoplanets are confirmed, and most were found the same way: a planet crossed the face of its star and dimmed it for a few hours. The transit method is spectacularly productive and spectacularly biased. It requires an orbital plane aligned with our line of sight — a coin-flip a planet at 1 AU around a Sun-like star wins less than half a percent of the time — and it favors big planets on short orbits around quiet, bright stars. The catalog we reason from is not the population that exists; it is the population that geometry and noise let through.

Astronomers correct for this with completeness models fitted to each survey. exoverse takes the complementary route: build the underlying population first. If you can generate stellar systems that are physically self-consistent and statistically faithful to known occurrence rates, you can push them through modeled instruments and watch the selection function act on individual worlds — not as an abstract correction factor, but as a named planet, with a mass and a sky position, that a given telescope does or does not see.

2Goals and approach

The project has three standing goals:

Three design commitments shape everything. First, plausibility is first-class output: every approximation carries a severity-graded flag. Hard physics violations (denser than pure iron, above the deuterium-burning mass limit, dynamically unstable pairs) are rejected and resampled; questionable-but-possible regimes are kept and labeled, because “plausible but uncertain” is exactly where the interesting science lives. Second, every world is reproducible: a system regenerates bit-for-bit from its random seed, so light curves are never stored — they are re-derived on demand. Third, the database is the product: over a million systems, each individually inspectable through a CLI and a web interface, with full metadata down to limb-darkening coefficients, per-planet albedos, and cloud-suppression factors.

2.1  Two populations, calibrated to the real sky

How many systems should a 300 pc population contain? Anchoring the local density on the RECONS 10 pc census and Gaia’s Catalogue of Nearby Stars (0.065 main-sequence systems per pc³) and letting density fall off vertically with the thin disk’s ~300 pc scale height, the answer is ≈5.2 million — the earlier 100,000-system run sampled just 2% of them. Version 0.3 therefore (a) replaces the uniform-density distance draw with the disk-structure one, (b) grows the main population tenfold to 1,000,000 systems — a 19% random sample of reality, and a bit-exact prefix of a future full 5.2-million run, since seeds form a stream — and (c) reports in every stats output what fraction of reality a population represents.

The companion population goes further: within 30 pc the same density model expects 7,083 systems, so the neighborhood dataset is generated at exactly that count. It is a 1:1 analog of the real solar neighborhood — when the modeled Habitable Worlds Observatory images 19 exo-Earth candidates there, that number is an absolute yield estimate, no scaling required.

3The generative model

This section specifies the model at the level a collaborator would need to audit it: every distribution, threshold, and instrument assumption behind the numbers in §4–§5. The generator is ~2,900 lines of core Python (NumPy for the physics, SQLite for persistence), organized as a pipeline — star → planets → dynamical stability → geometry → stellar noise → atmospheres → observatories — in which each stage consumes draws from a single per-system random stream (§3.8). No parameter below was tuned to produce the findings; each traces either to the cited literature or to a named calibration choice, and the flag framework (§3.3) records where the model stands on thin ice. Generation runs at ~2,000 fully validated systems per second on a laptop, so the million-system population regenerates in about nine minutes.

3.1  Stars and the local density normalization

Host masses follow the Kroupa (2001) broken power-law initial mass function, dN/dM ∝ M−1.3 below 0.5 M☉ and M−2.3 above it, sampled by analytic inverse-CDF over 0.08–2.2 M☉. The truncation is a deliberate scope choice — transit surveys overwhelmingly target FGKM dwarfs, and more massive stars are rare, short-lived, and poor transit hosts — recorded as an INFO flag on every star. Luminosity and radius come from piecewise main-sequence scaling relations, L/L☉ = 0.23 M2.3 (M < 0.43), M4.0 (0.43 ≤ M < 2.0), 1.4 M3.5 above, and R/R☉ = M0.9 below 1 M☉, M0.6 above — each with lognormal scatter (10% in L, 5% in R) standing in for age and metallicity spread. Effective temperature follows from the Stefan–Boltzmann law; main-sequence lifetime is tMS ≈ 10 (M/L) Gyr, with age drawn uniformly on [0.5, min(12, tMS)] Gyr and stars in the last 10% of their lifetime flagged QUESTIONABLE (turnoff radius inflation is not modeled). Metallicity is the local thin-disk distribution, [Fe/H] ~ N(−0.1, 0.2) clipped to [−1.0, +0.5] (Hayden et al. 2015).

Observables are derived, not drawn: bolometric magnitude from L; V-band bolometric corrections from the Flower (1996) polynomials with the Torres (2010) coefficient corrections (Sun: BCV ≈ −0.07, test-enforced); TESS-band and J magnitudes via V−Ic and V−J colors interpolated on the Pecaut & Mamajek (2013) dwarf sequence (±0.1 mag class accuracy, INFO-flagged); and quadratic limb-darkening coefficients (u1, u2) as a coarse fit in Teff to the Claret & Bloemen (2011) Kepler-band tabulations.

Distances are where the synthetic universe is pinned to the real one. Systems are placed with uniform density in the Galactic plane and an exponential vertical falloff exp(−|z|/h) with scale height h = 300 pc, observer at the midplane. Averaging that profile over spheres gives a closed-form cumulative count,

N(<d)  =  4π n0 h [ d2/2 − h2(1 − (1 + d/h) e−d/h) ], which recovers the uniform-density d3/3 as h → ∞; at 300 pc the sphere-averaged density is ~71% of midplane.

The absolute normalization n0 = 0.065 main-sequence systems per pc³ is anchored on the RECONS 10 pc census (Henry et al. 2018) and the Gaia Catalogue of Nearby Stars (Gaia Collaboration 2021), and is uncertain at the ±20% level. It implies ≈5.20 million systems within 300 pc and 7,083 within 30 pc — the numbers that make the two populations of §2.1 a 19% sample and a 1:1 analog of reality, respectively. Each star consumes exactly one uniform draw for distance, inverted through this CDF by bisection; capping the volume at a different dmax therefore reshapes only the distance (and apparent magnitudes), never the rest of the random stream.

3.2  Planetary systems: occurrence, masses, orbits

Each star targets a truncated-Poisson number of planets (mean 2.2, maximum 7; cf. Zhu et al. 2018), with candidate periods drawn by accept–reject so that occurrence rises as dN/dlnP ∝ P1.5 inside 10 days and is flat per log-interval from 10 to 640 days (Petigura et al. 2013); candidates closer than a period ratio of 1.2 to an existing planet are rediscarded before any physics is drawn.

Small-planet radii are a bimodal lognormal mixture — 45% super-Earths centered at 1.3 R⊕ (σln = 0.20) and 55% sub-Neptunes at 2.4 R⊕ (σln = 0.25) — producing the photoevaporation valley near 1.9 R⊕ (Fulton et al. 2017), with the whole branch sliding as (P/10 d)−0.05 so the valley moves to smaller radii at longer periods, in the spirit of the measured slope (Van Eylen et al. 2018). A planet is instead drawn on the giant branch with probability p = 0.10 · 101.2[Fe/H] · min(M★/M☉, 1.5), clipped to [0.005, 0.30] — the Fischer & Valenti (2005) metallicity correlation with a stellar-mass factor. Giant radii sit on a lognormal plateau near 1 RJup (σln = 0.12) with an empirical irradiation-inflation factor of up to ~1.6 switched on above Teq = 1000 K.

Masses follow probabilistic mass–radius relations in the spirit of Chen & Kipping (2017) and Wolfgang et al. (2016): rocky (R < 1.6 R⊕) M = R3.7 with 25% lognormal scatter; volatile-rich (1.6–8 R⊕) M = 2.7 R1.3 with 35–40% scatter; giants get masses drawn nearly independently of radius (the degenerate-EOS plateau), lognormal around 0.9 MJup and clipped at 15 MJup so the deuterium-burning rule of §3.3 can act. Eccentricities distinguish architecture: single planets draw from the Kipping (2013) Beta(0.867, 3.03) distribution, while members of multis draw from a dynamically cold Rayleigh(0.05), matching the observed single–multi eccentricity dichotomy (Xie et al. 2016). Each system takes one isotropic plane orientation (uniform in cos i), and each planet a Rayleigh(1.5°) mutual inclination about it with random sign (Fabrycky et al. 2014). Inclinations are deliberately not reflected into [0°, 90°]: values beyond 90° are geometrically equivalent mirror transits, and clipping them would pile impact parameters up at b = 0.

Equilibrium temperature assumes albedo 0.3 with full heat redistribution; insolation is L/a2 in Earth units. Habitable-zone membership uses the conservative (runaway-greenhouse to maximum-greenhouse) limits in a simplified Kopparapu et al. (2013) form — effective fluxes 1.11 and 0.36 with mild Teff corrections — which places the Sun’s conservative zone at 0.95–1.67 AU (test-enforced to contain Earth).

3.3  Hard validity rules and the plausibility ladder

Plausibility is enforced by rejection sampling against typed, severity-graded rules. INVALID means the draw violates physics or a robust empirical limit: the generator resamples, and no INVALID object ever reaches the database (asserted by the test suite). QUESTIONABLE means allowed-but-weakly-modeled: the object is kept and the doubt is stored as a queryable flag with a literature citation. INFO records honest scope simplifications. The hard rules:

INVALID rules — violations are resampled, never persisted
RuleCriterionPhysical basis
Deuterium burningM > 13 MJup Above this the object is a brown dwarf, not a planet.
Denser than ironR < 0.78 M 0.27 (Earth units) Pure-iron mass–radius curve (Zeng et al. 2016); no formation channel exceeds it.
Super-puff floorρ < 0.03 g cm⁻³ Below even the most extreme confirmed super-puffs.
Roche limita(1−e) < 2.44 R★(ρ★/ρp)1/3 Fluid Roche limit — the planet would be tidally shredded.
Grazes stara(1−e) < 1.5 R★ Periastron inside 1.5 stellar radii.
Orbit crossingaout(1−eout) ≤ ain(1+ein) Adjacent radial excursions overlap.
Hill instabilityΔ < 2√3 mutual Hill radii Gladman (1993) analytic two-planet instability criterion.

The Hill separation uses Δ = (aout − ain)/RH with RH = [(min+mout)/3M★]1/3 (ain+aout)/2. Pairs with Δ ∈ [2√3, 9) survive but are flagged QUESTIONABLE, since Gyr survival of packed multis typically requires Δ ≳ 9–12 (Pu & Wu 2015). Other QUESTIONABLE regimes — kept because “plausible but uncertain” is product, not error — include super-puff densities (0.03–0.1 g cm⁻³, cf. Kepler-51), inflated giants without strong irradiation, hot-Neptune-desert occupants (P < 1 d, R > 2 R⊕; Mazeh et al. 2016), giants around late M dwarfs (the GJ 3512 b regime), rocky planets above 10 M⊕ (mega-Earths), ultra-hot atmospheres (Teq > 2500 K), near-turnoff hosts, and metal-poor hosts. Every flag is a row in a queryable table keyed by a dotted rule id, so “show me all super-puffs” is a one-line SQL query.

3.4  Stellar photometric noise

Every star carries an astrophysical noise state, because detectability against a quiet photon budget is the wrong question for most real stars. Four components are modeled, each reduced to its effective white-noise contribution on a transit-depth measurement of duration T14: granulation, anchored at the solar ~40 ppm per hour and scaled as (νmax,☉/νmax)0.6 with νmax ∝ g/√Teff (Kallinger et al. 2014), averaging down slowly (∝ T14−0.35) because it is correlated; p-mode oscillations at 3 ppm (L/M)0.9 (Kjeldsen & Bedding 1995), incoherent over hours and averaging as white noise; rotational spot variability, with rotation from gyrochronology (Prot = 24.5 d · √(age/4.57 Gyr) · M−0.6), an activity index declining as exp(−age/τ) where τ = 1, 2.5, and 5 Gyr for earlier-than-K, early-M, and fully convective stars respectively (M dwarfs stay active longer), and variability semi-amplitudes spanning the quiet-Sun ~300 ppm to the ~20,000 ppm of young active stars (McQuillan et al. 2014) — of which the residual trend over one transit window plus a 5% spot-crossing term contaminate the depth; and flares, an extra stochastic term for active stars below 0.5 M☉.

Spots and flares are contrast effects and weaken toward the red: each observatory band applies a chromatic factor of 1.0 (blue optical / Kepler), 0.75 (TESS), or 0.40 (JWST/Roman near-IR), following Rackham et al. (2018). The total noise on any transit measurement is then σtot² = σinstr²/T14 + σ★² — stellar noise enters every observatory’s budget in quadrature, and it is why bright-but-active hosts can be worse targets than fainter quiet ones. The coefficients are population-level Kepler calibrations: adequate for demographics, not for fitting any individual star (an explicit limitation, §6).

3.5  Atmospheres and per-planet albedos

Atmosphere class follows bulk properties plus an escape criterion. Giants and Neptunians keep primary H/He envelopes (μ = 2.3); sub-Neptunes split by bulk density into H/He-rich (ρ < 2 g cm⁻³, μ = 3.5) and steam worlds (μ = 18) — a genuinely degenerate call, flagged as such. Rocky planets face the cosmic shoreline (Zahnle & Catling 2017): an atmosphere survives when the received insolation stays below

Icrit  =  10.5 (vesc/vesc,⊕)4 in Earth insolation units — normalized through Mars, the solar-system body that sits on the empirical line. Normalizing through Earth instead would put Earth itself on the knife’s edge; with the Mars anchor, Earth retains its atmosphere with an order-of-magnitude margin while the Moon and Mercury strip.

Retained rocky atmospheres are secondary CO₂/N₂ (μ = 33); stripped ones are airless. Rocky planets around M dwarfs are flagged QUESTIONABLE either way — whether they hold atmospheres at all is exactly what JWST is currently testing on TRAPPIST-1. Transmission signals use the scale height H = kTeq/(μmHg): one scale height subtends δ1H = 2HRp/R★², a feature spans two scale heights, and a cloud/haze suppression factor drawn uniformly on [0.15, 1.0] is applied — clouds being the dominant, and genuinely unpredictable, uncertainty. TSM and ESM follow Kempton et al. (2018, eqs. 1 and 4) with the published per-radius-bin scale factors. JWST feature detectability converts each instrument’s white-light precision into an effective per-feature noise via a √5 penalty (features are fit across the full band, not read off one spectral bin; the value is calibrated so K2-18 b-class targets need ~2–3 transits, matching published results), adds a stellar-contamination floor proportional to the host’s variability amplitude (the transit-light-source effect of Rackham et al. 2018), and reports transits-to-5σ, with >25 scored impractical.

For reflected-light imaging, every planet draws a V-band geometric albedo from class- and temperature-dependent distributions spanning the measured range — a factor of ~20, where the classic yield-study convention is a flat 0.2:

Per-planet geometric-albedo distributions (V band)
ClassDistributionAnchors
H/He envelopes Teq-interpolated mean (0.47→0.52→0.65→0.30→0.12→0.06→0.10→0.30 at 50/110/250/400/700/1000/1500/2200 K), lognormal ×1.4 scatter, clip [0.02, 0.85] Sudarsky et al. (2000) cloud sequence bracketed by measurement: Jupiter 0.52, Saturn 0.47; hot Jupiters are dark (Kepler/CHEOPS population 0.03–0.11, TrES-2b < 0.04); ultra-hot silicate clouds recover ~0.3 (Kepler-7b 0.35).
H/He-richas above ×0.9 Metal-enriched envelopes run slightly darker.
Steam0.30 lognormal (σln 0.30), clip [0.08, 0.60] No measurements exist; water clouds plausibly bright, hazes dark.
Secondary CO₂/N₂78%: N(0.24, 0.08); 22%: Venus branch N(0.65, 0.07) Earth’s measured 0.24; a Venus-like global cloud deck nearly triples the reflected signal (Venus ≈ 0.7).
AirlessN(0.12, 0.05); below 200 K, 15% icy branch N(0.55, 0.15) Regolith: Moon 0.07, Mercury 0.14, Mars 0.17; ice: Europa 0.67, Enceladus > 1.

The draw consumes exactly two random deviates for every class (a branch selector and a scatter deviate), preserving the stream layout that determinism requires. Albedos are stored per planet and used directly by the HWO model of §3.7; §5.4 quantifies how much they matter.

3.6  Transit geometry and light curves

Geometry follows Winn (2010) throughout, including full eccentricity corrections: the impact parameter is b = (a/R★) cos i · (1−e²)/(1+e sin ω), a planet transits when |b| < 1+k (with k = Rp/R★), the a-priori transit probability carries the same eccentricity factor, and the T14/T23 durations use Winn’s eqs. 14–16. The light-curve model integrates the quadratic limb-darkening law I(μ) = 1 − u1(1−μ) − u2(1−μ)² over annuli spanning only the radial band [z−k, z+k] the planet actually covers, so fractional accuracy is independent of planet size — a fixed whole-disk grid, the obvious implementation, was measured to err by ~20% for Earth-size planets and rejected. Against the analytic uniform-source depth the integrator is exact to ~10−13 at mid-transit and better than 10−4 along the chord, and the limb-darkened depth is internally converged at the sub-ppm level — equivalent to the Mandel & Agol (2002) model, with no external dependencies.

3.7  Observatory models and detection rules

Every transiting planet is scored against six transit instruments, and every planet — transiting or not — against HWO imaging. Transit noise budgets combine the instrument precision scaled to the transit duration with the star’s astrophysical noise in the appropriate band (§3.4); folded surveys multiply the per-transit SNR by √Ntransits over the mission baseline and duty cycle.

Instrument models — 1-hour precision σ(m) in ppm, and detection rules
Instrument1-hr precision modelDetection rule
TESS (1 sector) 100.267 T + 0.04 ⊕ 60 floor SNR ≥ 7.1, ≥ 2 transits in 27.4 d; saturates T < 4. Fit to Stassun et al. (2018): ~150 ppm at T = 8, ~6,000 at T = 14.
Kepler (4 yr, archival) 30·100.2(Kp−12)·√6.5 ⊕ 20 floor SNR ≥ 7.1, ≥ 3 transits; 92% duty over 4 yr; Kp ≈ V; saturates Kp < 6. Photon-scaled from the 6.5-h CDPP of 30 ppm at Kp = 12.
JWST NIRISS SOSS 20·100.2(J−8) ⊕ 10 floor Single targeted transit, SNR ≥ 5; saturates J < 6.5. Anchored to ERS program performance.
JWST NIRSpec Prism 12·100.2(J−11) ⊕ 10 floor Single targeted transit, SNR ≥ 5; saturates J < 10.5.
Ground 1-m survey 2000 ⊕ 1000 correlated floor SNR ≥ 7, ≥ 3 transits, depth > 1 mmag; 90 nights at 33% duty.
Roman GBTDS (2027+) 700·100.2(F146−16) ⊕ 200 floor SNR ≥ 7.1, ≥ 3 transits; 6 seasons × 72 d; usable 8 < F146 < 21 (F146 ≈ J proxy). Calibrated to reproduce the Wilson et al. (2023) yield regime.
HWO imaging (2040s) contrast floor 3×10⁻¹¹ · 100.2 max(V−7, 0) Host V < 11 and d < 30 pc; quadrature separation within [60, 500] mas; reflected contrast above the floor.

(⊕ denotes addition in quadrature.) The HWO model computes each planet’s reflected contrast at quadrature from its own stored albedo,

C  =  Ag Φ(90°) (Rp/a)²,   Φ(90°) = 1/π (Lambertian), with angular separation a/d; the contrast floor is systematics-limited at 3×10⁻¹¹ on bright hosts and degrades photon-limited beyond V ≈ 7.

Two honesty clauses attach to the future instruments. Roman’s survey points at ~2 deg² of Galactic bulge while our systems are local, so every Roman row answers the counterfactual “if this system sat in a Roman field” — flagged in the observation note. And the HWO detection rule has no integration-time budget: a planet outside the working angles or below the floor is undetectable at any exposure, but a planet above both is scored detected regardless of how long that detection would take. That asymmetry is why §5.4 finds yields geometry-limited — and why those results speak to detectability, not survey scheduling. Both models are requirement-era and expected to drift; the project maintains dated, sourced assumption logs per instrument (docs/OBSERVATORIES.md).

3.8  Determinism, reproducibility, and tests

One system is one seed: all draws — star, planets, stability retries, inclinations, noise state, atmospheres, albedos — come in fixed order from a single numpy PCG64 stream, so a stored world regenerates bit-for-bit from its (seed, name) pair. Light curves are therefore never stored; the CLI and the web interface re-simulate them on demand and are guaranteed the identical world. Population seeds come from a SeedSequence stream, which makes any N-system population an exact prefix of every larger run: the million-system population is bit-for-bit the first million systems of the eventual full-reality run (N = 5,199,422). The distance cap consumes exactly one draw and the albedo exactly two per planet, preserving stream alignment across model variants.

The test suite pins the physics to known values rather than to itself: the Sun’s bolometric correction (−0.07), Earth’s transit depth and duration across the Sun (84 ppm, ~13 h) and its geometric transit probability (<1%), Jupiter’s ~1% depth, the conservative habitable zone containing Earth, Venus–Earth dynamical separation (Δ > 25 mutual Hill radii), GJ 1214 b-class TSM values, and an Earth twin’s HWO contrast at 10 pc. A pipeline test asserts the INVALID invariant end-to-end: no hard-rule violator is ever persisted.

4Validation against the real catalog

Before trusting conclusions from synthetic worlds, the generator is audited against 8,240 confirmed planets (snapshot of 2026-07-02; NASA Exoplanet Archive TAP when healthy, The Extrasolar Planets Encyclopaedia as automatic fallback, provenance recorded in the snapshot). The audit runs in both directions: real planets are pushed through exoverse’s physical-validity rules, and the synthetic detectable population is compared against real transit discoveries.

The rule audit asks a falsifiable question: would our INVALID rules reject real planets? A generator whose validity rules exclude confirmed worlds has wrong rules. Catalog data are noisy in specific, known ways, so the audit filters for evidential strength before charging a violation: mass rules consider only transiting planets whose masses are measured at >2σ (M sin i lower limits cannot prove a deuterium-limit violation, and the fallback catalog silently mixes upper limits into its mass column — the provenance filter catches both).

Physics-rule audit — real planets vs exoverse validity rules
RuleViolationsInterpretation
Deuterium-burning mass limit54 / 1,420  (3.8%) Real transiting brown dwarfs that catalogs file alongside planets — a regime exoverse excludes by design.
Denser than pure iron14 / 513  (2.7%) Catalog entries with low-signal mass measurements; reflects measurement error, not physics.
Below super-puff density floor0 / 513 Clean.
Orbit grazes the star0 / 3,005 Clean.

No real planet violates a rule for a reason the generator can’t account for — the two nonzero rows are known catalog artifacts, and their rates are stable from the 10,000-system era through 1,000,000. The deuterium-limit violators are the familiar transiting brown dwarfs (the CoRoT-3 b / KELT-1 b class) that catalogs file alongside planets and exoverse excludes by definition; the iron-limit violators are planets whose low-SNR masses scatter above the physical bound.

The population comparison is deliberately selection-matched: raw synthetic worlds must never be compared against a raw catalog, because the catalog is the output of survey filters the raw population has not passed. Instead, synthetic planets are filtered to those detectable by the modeled Kepler — the deepest long-baseline instrument modeled, hence the best analog of the real transit census — and compared against real transit-discovered planets:

Selection-matched comparison — 25,121 synthetic Kepler detections vs ~4,800 real transit discoveries
QuantityKS DSynthetic medianReal medianReading
log₁₀ period (days)0.0770.980.90 Close agreement: occurrence shaping + geometric and SNR selection reproduce the real detected period distribution.
log₁₀ radius (R⊕)0.2140.3140.394 Partial agreement. The real detected sample runs larger, with a much heavier giant tail (90th percentile 1.10 vs 0.54 dex) — partly ground-based hot-Jupiter surveys folded into “transit-discovered,” partly two known model gaps (§6): the intrinsic radius distribution lacks a resolved valley dip, and giant occurrence is not period-structured.
host Teff (K)0.5783,5955,574 Fails by construction: real surveys target FGK stars; exoverse samples the true, M-dwarf-dominated mass function. This row exists to prove the selection is modeled, not inherited.

One statistical note at this scale: with 25,000 detections, KS p-values collapse to zero for even trivial differences, so the D statistic — not p — is the meaningful health metric. The regression watchlist is specific: a period-D drift means the occurrence shaping broke; a synthetic radius median drifting off ~0.31 dex means the radius valley or mass–radius relations broke. A third validation axis — system-level architecture, where disagreement is the point — is deferred to §5.5, where the synthetic population serves as an explicit null model.

5Findings

5.1  Scale makes rare regimes measurable

At a million systems, regimes that were statistical noise at 10,000 are now populations in their own right: 6,787 ultra-short-period planets, 390 mega-Earths, 188 ultra-hot worlds, and 37 super-puffs exist in queryable numbers, each with named, inspectable members. Detection counts continue to scale linearly with population size, and the Kepler-detectable radius median sits at 0.31 dex on a 25,121-planet detected sample. (The v0.3 physics changes — disk-structure distances and per-planet albedos — regenerated every world; within v0.3, the million systems are a bit-exact prefix of any future, larger run.)

Detections by observatory — 1,000,000-system population
Planets recovered per modeled instrument, of 32,096 transiting (2,197,155 total)
View data as table
ObservatoryDetections
Figure 1. The same synthetic universe seen through seven instruments. Long-baseline space photometry (Roman, Kepler) and targeted JWST spectroscopy recover tens of thousands; a single TESS sector recovers 852. The Habitable Worlds Observatory recovers 27 — not because the model is broken, but because a 300 pc survey volume contains almost no stars within its ~30 pc imaging reach. That mismatch is what the 1:1 neighborhood population of §5.3 fixes.
The habitable-zone blind spot
Habitable-zone rocky planets in the 1,000,000-system population, on a shared linear scale
View data as table
StagePlanets
Figure 2. Of 171,701 habitable-zone rocky planets that exist in the synthetic universe, 1,705 (1.0%) happen to transit, and 1,500 (0.9%) are recoverable by any modeled transit instrument. The bars are drawn to a common scale deliberately: the sliver is the finding — 99% of the most interesting worlds are geometrically invisible to the method that built our catalogs.

5.2  Transit surveys are blind to 99% of habitable-zone rocky worlds

Figure 2 states the project’s central result at population scale. The transit method’s geometric filter removes 99.0% of habitable-zone rocky planets before noise or cadence even enter the picture, and instrument thresholds remove a further sliver. Statements like “transit probability is low” are textbook; what a synthetic population adds is the ability to hold the missing 170,000 worlds in a database — each with a name, a host star, an atmosphere class, and the specific reason it was missed. And because the population is now normalized to the real stellar density, the statement extends to the sky itself: within 300 pc of the Sun, the model implies roughly 900,000 habitable-zone rocky planets exist, of which transit geometry offers up fewer than 9,000.

5.3  An exo-Earth budget for the Habitable Worlds Observatory

HWO — NASA’s planned flagship for the 2040s — will not use transits at all. It will directly image reflected starlight, and its Astro2020 charge is to characterize at least 25 potentially habitable exo-Earths (National Academies 2021). exoverse models it with a coronagraphic contrast floor of 3×10−11 that degrades photon-limited for hosts fainter than V≈7, working angles of 60–500 mas, and reflected-light contrast computed from each planet’s own geometric albedo. Where v0.2 assigned one fixed albedo per atmosphere class, v0.3 draws Ag per planet from temperature-dependent distributions spanning the measured range: clear alkali-absorbing hot Jupiters are nearly black (the Kepler/CHEOPS population sits at 0.03–0.11, TrES-2b below 0.04), cold ammonia-cloud giants reflect ~0.5, secondary atmospheres center on Earth’s re-measured 0.24 with a 22% Venus-like branch near 0.65, and cold airless worlds get an icy-bright branch (Europa-class). The classic yield-study convention is a flat 0.2 for everything; the real range spans a factor of ~20.

In the 7,083-system population — a 1:1 analog of the real solar neighborhood — HWO images 209 planets. Crucially, 19 of them are exo-Earth candidates — habitable-zone planets of 0.8–1.4 Earth radii. Because the population is no longer an arbitrary sample size, that count needs no scaling: it is the model’s yield estimate, and it lands just below the mission’s ≥25 goal from independent physics, with no tuning toward that number. The shortfall itself is informative, as §5.4 shows: the yield is sitting on the steep part of the inner-working-angle curve.

Where the exo-Earths go
862 HZ Earth-size planets in the 1:1 neighborhood, by HWO outcome
Detected exo-Earth hosts by spectral type
All 19 detections orbit F, G, or K stars
View data as table
CategoryPlanets
Figure 3. The exo-Earth loss budget. Left: 79% of habitable-zone Earth-size planets within 30 pc orbit hosts too faint to image (V ≥ 11 — overwhelmingly M dwarfs), and another 19% sit inside the 60 mas inner working angle, where an M dwarf’s close-in habitable zone hides. Right: the survivors orbit K, G, and F stars — independently reproducing the FGK-dominated target lists real HWO planning has converged on (Tuchow et al. 2025).

The loss accounting explains why M dwarfs — the most common stars — contribute nothing: their habitable zones are angularly too small to resolve and their photospheres too faint to post-process against, a conclusion that emerges here from the noise model rather than from an imposed target list. The per-planet albedo leaves its own fingerprint: only 3 of 400 airless worlds are ever imaged, while cloudy steam and secondary-atmosphere worlds dominate the detections (183 of 209) — and Venus-branch cloud decks are over-represented among the imaged secondaries (27%, against 22% in the population), the reflected-light analog of a selection effect.

5.4  The exo-Earth yield is an inner-working-angle problem

Because every planet’s contrast and separation are stored, HWO’s three design levers — inner working angle, post-processed contrast floor, and host-brightness envelope — can be swept over the same 1:1 neighborhood. The result is one-sided: over the plausible trade space, the yield responds only to the working angle. Deepening the contrast floor threefold (3×10−11 → 1×10−11) adds zero candidates; relaxing the host limit from V < 11 to 12.5 adds zero (the fainter hosts’ habitable zones are unresolvable anyway — those two loss modes are the same stars); and the detected planets clear the floor by a median factor of 12. But every milliarcsecond of working angle opens new K-dwarf habitable zones: 60 → 45 mas takes the yield from 19 to 48, and 30 mas reaches 99.

Exo-Earth yield vs inner working angle
HWO-imaged HZ 0.8–1.4 R⊕ planets in the 1:1 neighborhood; contrast floor and V limit held at requirement values (varying them changes nothing)
View data as table
Inner working angleExo-Earths
Figure 4. The 25-exo-Earth goal is a working-angle requirement in disguise. At the 60 mas requirement-era IWA the model yields 19; the goal is crossed between 60 and 45 mas. A smaller IWA at fixed wavelength means a larger aperture (60 mas ≈ 3λ/D for ~6.5 m at V; 30 mas needs ~13 m or a more aggressive coronagraph mode) — exactly the class of trade Phase-A studies must settle. Caveat: this detection model has no integration-time budget; in a real mission, albedo and floor margins buy shorter exposures and thus more targets per year, so “gains nothing” applies to detectability, not survey efficiency.

The same sweep quantifies the albedo question this version set out to test: replacing every drawn albedo with the conventional flat Ag = 0.2 changes the exo-Earth count by zero at every working angle, and the total imaged count by 1% (207 vs 209). Within this model’s envelope, reflected-light detectability is geometry-limited for any Ag ≳ 0.15 — albedo uncertainty instead moves each target’s contrast margin, i.e. how characterizable it is once found. The widened albedo range matters most at the bright end (Venus-branch worlds at 3–4× the contrast of an Earth twin) and for the darkest hot giants, which drop out entirely.

5.5  What the real sky has that the null universe lacks

exoverse deliberately omits formation and migration physics: radii are drawn independently within a system, spacings are shaped only by stability, and nothing depletes the hot-Neptune desert. That makes the synthetic detected population a null model — identical selection, no formation memory — so differences from the real detected population isolate astrophysics that selection cannot explain. Four architecture metrics, computed on 25,121 synthetic Kepler detections against 4,800 real transit discoveries:

Architecture null-model comparison — synthetic (no formation physics) vs real detections
MetricNull universeReal skyReading
Peas in a pod: median |Δlog R| of adjacent pairs 0.1790.121 Real neighbor planets are ~30% more size-uniform than independent draws under identical selection — formation memory (Weiss et al. 2018), quantified against an explicit null.
Adjacent pairs just wide of 3:2 resonance 6.6%11.4% A near-2× pileup near first-order resonances that smooth, stability-only spacing cannot produce: the fingerprint of migration and resonance capture.
Adjacent pairs just wide of 2:1 resonance 4.0%7.6%
Observed singles per multi (Kepler dichotomy) 4.44.1 Unexpected direction: the null produces MORE singles than reality. Size uniformity makes real companions co-detectable, so the classic “excess of singles” cannot be read as inclination dispersion alone.
Hot-Neptune desert occupancy (P < 4 d, 3–8 R⊕) 3.8%2.1% The real photoevaporation/tidal sink removes roughly half of the would-be desert detections the null predicts.

Two of these are known results reproduced against a cleaner null — that is the tool working as intended. The third is the outside-the-box dividend: because the null has no formation correlations, it shows the “Kepler dichotomy” and “peas-in-a-pod” are not independent observations — a population with correlated sizes and no extra inclination component would already shift the singles ratio in the observed direction. Disentangling the two requires exactly the kind of joint forward model this population provides.

That disentangling has since been carried out: a DR25-conditioned decomposition study — the same generator run through the real Kepler target list over a grid of size-correlation (σR) and inclination-dispersion (σi) architectures — shows the two effects decouple cleanly under DR25 conditioning. The dominant population is consistent with coplanarity (σi ≤ 0.44° at 95%), sibling radii are strongly correlated (ρ ≈ 0.29), and a small dynamically hot fraction (fhot ≈ 0.1) remains statistically required. Full methods and results are in paper/dichotomy_section.md.

6Limitations and model scope

Every simplification below is deliberate, documented at the object level by an INFO or QUESTIONABLE flag where applicable, and listed here so a reader can judge which conclusions it could touch.

7Future directions

The findings above are demonstrations of an instrument — a population you can point at questions. Below are the directions where that instrument appears most valuable to the wider community, based on a survey of current literature.

7.1  Yield forecasting for missions now launching

ESA’s PLATO launches in late 2026, and yield studies built on population synthesis are already shaping its strategy — recent work forward-models ~13,000 expected detections across the Galactic thin disk, thick disk, and halo (Boettner et al. 2024). Roman’s bulge survey is predicted to find 60,000–200,000 transiting planets via pixel-level simulation (Wilson et al. 2023). exoverse’s contribution to this class of work is speed and inspectability: at ~2,000 fully-validated systems per second, survey trade studies (cadence, baseline, magnitude limits) can be re-run interactively, with every gained or lost detection traceable to a specific named world.

7.2  HWO target selection and design trades

The HWO community is actively assembling prioritized target lists — the 2025 Target Stars and Systems catalog (Tuchow et al. 2025), the ExEP Mission Star List (NASA ExEP 2023), and new stellar-activity catalogs aimed squarely at reducing yield uncertainty. Published yield analyses identify the occurrence rate of Earth-like planets (η⊕) and exozodiacal dust as the dominant unknowns, and ask which design changes would protect the 25-exo-Earth goal (Dietrich et al. 2026). A synthetic neighborhood population complements this directly — and §5.4 now delivers the first such trade quantitatively: over this model’s envelope the exo-Earth yield responds only to inner working angle, crossing the 25-planet goal between 60 and 45 mas. The natural next refinements are an integration-time budget (where albedo and contrast margin buy survey efficiency rather than detectability), exozodi levels, and multi-visit scheduling — each one grafts onto the same stored per-planet contrasts and separations.

7.3  Demographic inference and η⊕

Occurrence-rate studies must invert the selection function to recover the true population from the observed one. A generative population where the truth is known by construction is the natural test harness for those inversion methods: inject a synthetic universe, apply a modeled survey, hand the “detections” to an occurrence-rate pipeline, and check whether it recovers the input. This closed-loop validation is difficult with real data — the answer is unknown — and is a standing gap the community fills with per-survey injection–recovery exercises that don’t transfer between instruments. The absolute density normalization added in v0.3 strengthens this use: occurrence rates inferred from the modeled surveys can now be compared against the generator’s truth in physical units (planets per star, planets per pc³), not just in shape. The architecture null model of §5.5 extends the same idea to system-level statistics — any inference method that claims to measure mutual inclinations or intra-system correlations can be handed the null universe first, where the right answer is “none.”

7.4  Training corpora for machine-learning detection

Deep-learning vetting models now routinely triage transit candidates at ~97% precision, and several groups report that models trained on combined real and synthetic light curves outperform those trained on real data alone (Lo & Lo 2025; Cuéllar et al. 2022). exoverse generates limb-darkened light curves with realistic stellar noise (granulation, spots, flares) and perfect ground-truth labels — including the hard negatives that matter: grazing transits, active hosts, and depths straddling detection thresholds. A pipeline exporting labeled light-curve corpora would be a small extension with a direct user base.

7.5  An open, explorable universe

Because every world is individually inspectable — with plausibility flags that say why a value is uncertain and citations for every approximation — the database doubles as a teaching instrument for selection effects, observational bias, and instrument design. Deploying the read-only web interface publicly, alongside downloadable populations, is the lowest-effort path to community use. On the modeling roadmap: N-body verification of tightly-packed systems, binary hosts, transit-timing variations, and radiative-transfer spectra to replace scale-height heuristics.

8References

Full modeling assumptions, sources, and volatility notes for each observatory — including which numbers are requirement-era and expected to change — are maintained in the project’s docs/OBSERVATORIES.md. Populations regenerate deterministically: exoverse generate --n 1000000 --seed 42 reproduces every world in this paper bit-for-bit (and --n 7083 --seed 137 --dmax 30 the neighborhood).