#!/usr/bin/env python3
"""
D3 — TWO CONSTRUCTIONS FOR OMEGA = f  (run log; uses d1_fstar.py machinery)
============================================================================
(a) Full f(kappa) curve, two balls, massless 3D vacuum, L=64:
    cliff at kappa ~ 2.2-2.3 (the negativity-sphere edge), then smooth
    rise to 1. Interpolated kappa* where f = 0.68:
        R=4: 2.459    R=6: 2.302
    One-parameter law fits both: kappa*(R) = 1.99 + 1.88/R — i.e.
    f = 0.68 at a CONSTANT GAP of ~1.9 UV lengths between patches
    (continuum reading: adjacent/touching causal patches, kappa -> 2).
    TWO data points; R = 3,5,8 runs required before this is a claim.
(b) Region vs complement (the observable-patch construction), pure cut:
    exact mini-theorem: distillable entanglement across a pure cut = S_1,
    account = MI = 2 S_1  =>  locked fraction = 1/2 EXACTLY, any region,
    any pure state. (E_N-version is negative: S_1/2 ~ 3.7 S_1 — pure-cut
    negativity is not a drainable-share proxy.)
STATUS: 0.68 sits between the two principled constructions —
patch-vs-beyond gives exactly 0.50; separated pairs give 0.83-1.00;
adjacent patches at cutoff-scale gap give 0.68 by construction-fitting.
The discriminating computation: continuum limit of f at fixed physical
gap -> 0, and the R=3,5,8 kappa* points.  Data: d3_constructions.json
"""
