Is there any program or algorithm that determines conclusively whether or not a person at severe material disadvantage can claim a win on time?
This question got me thinking about precise parameters needed for flagging. I noticed that bishop vs queen can't flag for a win, and neither can bishop vs rook, or bishop vs. rook and queen. The friendly piece blocking the king can always interpose. Then I saw bishop vs two pawns and rook and queen had a case where it happened:
8/8/8/5R2/3k1KQ1/5PP1/3b4/8 w - - 0 1
However, this doesn't seem to work so well when the pawns aren't connected. Put one on the b-file and one on the g-file, and it's a draw. My rough proof was this:
- Black King guards a maximum of 3 squares
- Black bishop checks and guards a maximum of 2 squares--but if the King guards 3 squares, that overlaps with the bishop. The King guards two adjacent corners in the other King's possible moves, but the bishop guards two opposite ones.
- White thus needs to have 4 pieces to block the way out
However, in this case, white can underpromote to a bishop then cooperate. So clearly it's not immediately trivial to tell off-hand if there is a win.
Plus if White has just one less pawn but it's a rook pawn, this disaster can always happen, if the queen and rook wander off.
5k1K/7P/5b2/8/8/8/Q7/1R6 w - - 0 1
Time forfeits could thus cause some arguments over whether a position with overwhelming material disadvantage is possible to win.
So is there an established and relatively quick set of rules to determine this? Or is there an actual program that calculates everything? I imagine it's doable with brute force and, so said brute force doesn't take forever, guesswork. Just wondering about the level of complexity.