Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Mate that every program will solve...

Author: Heiner Marxen

Date: 15:57:53 04/17/01

Go up one level in this thread


On April 17, 2001 at 18:17:43, Paul wrote:

>On April 17, 2001 at 17:46:51, Heiner Marxen wrote:
>
>>[D]R3Q3/5bPq/1rR5/2p2rnk/1Q3B2/4Nn2/1PBb1NQ1/2K5 w - -
>>and Chest does not find a mate in 5, here.  Here is its refutation table:
>>refu  1: Qxd2    Rxc6    [  4-]
>>solu          1: Bxe8    [  1+]
>>solu          2: Nxd2    [  1+]
>>solu         11: Nd4     [  1+]
>>solu         12: Ne5     [  2+]
>>solu         13: Ne1     [  1+]
>>solu         14: Ng1     [  1+]
>>solu         15: Qxg7    [  1+]
>>solu         16: Ra6     [  1+]
>>refu  2: Kd1     Rxc6    [  4-]
>>solu          3: Bxe8    [  1+]
>>solu          4: cxb4    [  1+]
>>solu          5: Bxb4    [  1+]
>>solu          6: Rxb4    [  1+]
>>solu         17: Ne4     [  1+]
>>solu         18: Rd5     [  1+]
>>solu         19: Nh3     [  1+]
>>solu         20: Ra6     [  1+]
>>refu  3: Kb1     Rxc6    [  4-]
>>solu          7: Bxe8    [  1+]
>>solu          8: cxb4    [  1+]
>>solu          9: Bxb4    [  1+]
>>solu         10: Rxb4    [  1+]
>>solu         21: Ne4     [  1+]
>>solu         22: Ra6     [  1+]
>>solu         23: Qxg7    [  1+]
>>
>>Hope this helps you to pin this down further.
>>
>>If you still find a short enough mate, here, please post it, and I will
>>answer with the variant Chest uses to refute it.  In the end we will see
>>who errs, when the mates become short enough that we poor humans see it
>>ourselves.
>>
>>Heiner
>
>Excuse me if I mingle into this conversation, but this is a point where Pretz
>also goes wrong. After Qxd2, it thinks that Rxf4 is the best defense, thereby
>overlooking Rxc6:
>
>Qxd2 Rxf4 Qxf7+ Nxf7 Bg6+ Qxg6 Qxg6+ Kh4 Ng2#
>
>With hashtables switched off it does find Rxc6:
>
>Qxd2 Rxc6 Qg4+ Kg6 Qxf5+ Kh5 Qexf7+ Rg6 Qg4+ Kh6 Nf5#
>
>Now, what to do next? Any hints Heiner, Tim? :)
>
>Paul

Well, that clearly is some bug on your side: turning on/off the hash table
should not change a mate-result.

Assuming that Chest is right, it follows that your program is ok without
hash table, and not ok with hash table on.
Sounds like a bug in the hash table code itself, or in the surrounding logic.

Now, turn on hash tables, and make your program verbose enough to see what it
believes that Qxd2 Rxc6 is worth.  Look, where that value is computed from.
Etc.

That is sort of a classic debugging job, and you should have some support
for it in your program (e.g. tracing activities to various degrees of detail).
Since this is very specific for every program I cannot be more specific ;-)

Good luck,

Heiner



This page took 0.02 seconds to execute

Last modified: Thu, 07 Jul 11 08:48:38 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.