from research import *
s=begin(842,'Separate scale, order and accumulation','Which operations commute, and which change the internal chronological field?',{},['File58 declared order and×7; C839–841'])
v=json.loads((ROOT/'model/festival_forward_path.json').read_text())['weights']
prefix=lambda x:[sum(x[:k]) for k in range(1,len(x)+1)]
left=prefix([7*x for x in v[::-1]]);right=[7*x for x in prefix(v[::-1])]
finish(s,{'scale_order_commutes':[7*x for x in v][::-1]==[7*x for x in v[::-1]],'scale_accumulation_commutes':left==right,'forward_prefix_years':[7*x for x in prefix(v)],'reverse_prefix_years':left},'Scaling commutes with both declared reordering and accumulation. Reordering preserves the total but changes the intermediate prefix field; that distinction is the same one needed for genealogical and Rounded paths.','Construct the complete sex-by-purity measurement table for Esau’s ledger.',{'linear_scaling':left==right,'total_preserved':sum(v)==sum(v[::-1]),'internal_change':prefix(v)!=prefix(v[::-1])})
