import math, json def figure(id,title,xlabel,ylabel,x,series,caption): return dict(id=id,title=title,kind='analytical_curve',x_label=xlabel,y_label=ylabel,x=dict(name=xlabel,values=x),series=[dict(name=n,values=v)for n,v in series],caption=caption) def close(a,b,tol=1e-10): assert abs(a-b)<=tol*max(1,abs(a),abs(b)),(a,b) alphas=[0,.25,.5,.75,1,1.5,2,3] risk=[a*a for a in alphas] # A finite symmetric moment control has same zero mean/unit variance needed for MSE. for a,r in zip(alphas,risk): errors=[(a*p)**2 for p in [-1,1]] close(sum(errors)/2,r) for v1 in [.1,1,10]: for v2 in [.1,1,10]: post=1/(1+1/v1+1/v2);single=1/(1+1/v1) assert post