終局判定

コンピュータ囲碁のプログラミングをしようとすると、囲碁はつくづく条件判定ではなくて、定理の世界だと思います。
将棋の終局は究極はどちらかの玉が取られた時です。ところが、囲碁の終局は、互いにそれ以上打っても得にならない時終局します。セキや死活など、その後続くであろう対局の損得を理解した上で終局です。
囲碁には巨大墓場の問題があって、それは以下のような局面です。

その局面、黒は一眼しかないので死んでいます。普通、白盤面161目勝ち。
でも、それは抜き後に黒から打ち込まれた後、すべてを取り切ることができたとしての話。

取り切るのは無理ですね。
取られても生き石が生じるなら、日本囲碁規約としては活き石です。だから最初の局面の黒は活き石。ただし、実戦解決が優先されるので、地の損得から行ったらこの黒を活き石と認めるよりは白は実際に黒を取って、その後九路盤を一局打つことになる。白1が何目の勝ちがあるかわかりませんが、双方最善で盤面黒6目ぐらいですか。最初の白のアゲハマ80目も加えると、白74目勝ちです。
何目勝ちか結論を出す必要はなく、打ち上げた瞬間大差だから終局する。これをプログラムするには、アゲハマ以上に地を作ることはできないという条件を入れ込む必要があります。
大差ならいいが、石の下ならどうするか。取らず三目はどうするか。
原理的な規則でどこかに収束する訳ではないので、こういう条件をもれなく汲み尽くす必要が出てくる気がします。
何か理解が間違っている?
どういう条件で終局判定をコードにできるのでしょうか?