<< 28/37 >>
First Last

もうすこし落ち着いて考える - D0

D0(y) <- ((PM(y) & HP(y-1)) + HP(y-1)) ^ HP(y-1) | PM(y) | HN(y-1)
VP(y) <- HN(y-1) | ~(D0(y) | HP(y-1))
VN(y) <- D0(y) & HP(y-1)
HP(y) <- (VN(y) << 1) | ~(D0(y) | ((VP(y) << 1) | 1))
HN(y) <- D0(y) & ((VP(y) << 1) | 1)

PM(x,y)==1 の時は D0(x,y) は問答無用で 1 なので、この項は D0 に関係ない
PM(x-1,y)==0 の時は、この項は単に HP(y-1)^HP(y-1)==0 なので、この項は D0 に関係ない
PM(x-1,y)==1 でかつ、 HP(x-1,y-1)==1 の時というのは、 VN(x-1,y)==1 の時、つまり (x-1,y-1)=>(x-1,y) の遷移で1減るケース。この場合はさっきの右に遷移して1減るケースの逆で、これも D0(x,y) は0にならないといけない

["["["["["["["["["["["["["
", "", "o", "r", "e", "h", "a", "m", "o", "u", "t", "u", "k", "a", "r", "e", "t", "a"]
", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16"]
b", "1", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16"]
o", "2", "1", "2", "3", "4", "5", "6", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15"]
k", "3", "2", "2", "3", "4", "5", "6", "7", "7", "8", "9", "9", "10", "11", "12", "13", "14"]
u", "4", "3", "3", "3", "4", "5", "6", "7", "7", "8", "8", "9", "10", "11", "12", "13", "14"]
m", "5", "4", "4", "4", "4", "5", "5", "6", "7", "8", "9", "9", "10", "11", "12", "13", "14"]
o", "6", "5", "5", "5", "5", "5", "6", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14"]
u", "7", "6", "6", "6", "6", "6", "6", "6", "5", "6", "7", "8", "9", "10", "11", "12", "13"]
d", "8", "7", "7", "7", "7", "7", "7", "7", "6", "6", "7", "8", "9", "10", "11", "12", "13"]
a", "9", "8", "8", "8", "8", "7", "8", "8", "7", "7", "7", "8", "8", "9", "10", "11", "12"]
m", "10", "9", "9", "9", "9", "8", "7", "8", "8", "8", "8", "8", "9", "9", "10", "11", "12"]
e", "11", "10", "10", "09", "10", "09", "08", "08", "09", "09", "09", "09", "09", "10", "09", "10", "11"]