from research import *
s=begin(853,'Derive the complete paired gain field','Where does the anchor dependence enter the forward construction?',{},['C852; inherited one-pass gain definition'])
f=json.loads((ROOT/'model/inverse_paired_field.json').read_text());out=[]
for x in f:
    n,c=x['routes']['Nativity'],x['routes']['Conquest'];gn=n['endpoint']-x['source_BC'];gc=c['endpoint']-x['source_BC']
    out.append({'name':x['name'],'n':n['duration']//10,'gain_N':gn,'gain_C':gc,'delta':c['endpoint']-n['endpoint']})
a=artifact('model/inverse_gain_field.json',json.dumps(out,indent=2)+'\n')
finish(s,{'gains':a,'paired_delta':[x['delta'] for x in out],'identity':'A+I(D−A)=D+g(D−A), with g(s)=I(s)−s'},'All anchor dependence resides in the gain of the original selected duration. The32 differences are one generated field, not32 adjustable translations.','Derive the long-core no-borrow and borrow branches from digit positions.',{'gain_difference':all(x['delta']==x['gain_C']-x['gain_N'] for x in out),'anchor_gap':all(x['routes']['Conquest']['anchor']-x['routes']['Nativity']['anchor']==1400 for x in f)})
