Originally posted by GregMAll modern engines can access Nalimov tablebases because while it may take a few lines to implement KBNK it would take a lot to implement KRPKR or similar. And to be honest, implementing a tablebase lookup is really really basic. It's a simple matter of:
Perhaps tablebases aren't installed (you don't want your engine to get killed when for some reason it can't find its tablebases), or perhaps the author didn't want to go to the trouble to implement tablebase access (basic endgame knowledge like KBNK takes only a few lines of code), or perhaps its a slightly more complex game, like an endgame where pawns can be ...[text shortened]... ue that engines are often worse than humans at understanding long-term factors in endgames.
Is current position in the tablebases?
If so, what move do the tablebases say to make?
If not, continue as normal.
Originally posted by rubberjaw30Yes, Kramnik is the GM and current World Champion that overlooked a mate in one.
isn't Kramnik the GM that overloked a mate in one threat from his opponent?
i heard about that, but just thought my friends were lying to try and make the point that i should never resign
A better lesson than "never resign" to take from this though is don't get so focused on your own plans that you overlook what your opponent is doing.
Originally posted by bosintangHere is my most recent example of exactly that. In Game 3135368 I had clawed my way to an "easy" win against the French when I played 21. Rc7 intending 21. ... Qb8 22. Nc6 winning the queen but "forgot" about the decisive reply 21. QXf2+ and mate in 2.
Yes, Kramnik is the GM and current World Champion that overlooked a mate in one.
A better lesson than "never resign" to take from this though is don't get so focused on your own plans that you overlook what your opponent is doing.
The irony is I had seen his move much earlier but as soon as I got the "win" I totally forgot about all his attacking chances.
We all do it - it is the mark of humanity.
Originally posted by XanthosNZindeed. it would be very bad programming to clutter the loop which such silly special cases as KNB. slower, messy, ugly coding. something an amateur would think of, but never a pro if he could avoid it.
All modern engines can access Nalimov tablebases because while it may take a few lines to implement KBNK it would take a lot to implement KRPKR or similar. And to be honest, implementing a tablebase lookup is really really basic. It's a simple matter of:
Is current position in the tablebases?
If so, what move do the tablebases say to make?
If not, continue as normal.
well, there's the case of the gigantic windows switch, but it's still a stupid idea...