from research import *
from algebra import Matrix
s=begin(1147,'Measure the information in the Lamech triple','What do the two stated differences24 and100 determine about the three source lives?',{},['File18 §4A.4','C1146'])
A=Matrix([[1,-1,0],[0,1,-1]]);rhs=Matrix([24,100]);v=Matrix([777,753,653])
a=artifact('model/Lamech_triple_constraints.json',json.dumps({'names':['MT','mainLXX','SP'],'matrix':A.tolist(),'rhs':[24,100],'rank':A.rank(),'kernel':clean(list(A.nullspace()[0])),'held_SP':653,'solution':[777,753,653],'dependent_difference':124,'claim':'conditional reconstruction from two supplied differences and one source life; structural support does not prove textual or historical derivation'},indent=2,default=str)+'\n')
finish(s,{'triple_constraints':a,'rank':A.rank(),'common_translation_freedom':True},'The24 and100 relations fix two differences but leave a common lifespan translation free. Holding653 reconstructs753 and777 conditionally; the124 comparison follows and adds no third independent relation.','Translate the cap result into remaining-year measurements to connect it to conserved-lifespan repartition.',{'equations':list(A*v)==list(rhs),'rank2':A.rank()==2,'dependent124':24+100==777-653})
