syzygy wrote:UCI does not allow outputting "tablebase win after 3 moves".
Uh? How about "info string tablebase win after 3 moves"
This seems to be too confusing for most people, so I might change this to simply report very high values. The user will then not know the distance to the win, but stop complaining.
Indeed, I think this is better. A tablebase score is similar in character to a mate score, but you could report mate in 10000+x, rather than 50+x. The latter is too close to something real, and is not even an upper limit, as you very well might have to pass through multiple tablebases, as well as spend more than 50 moves in the same tablebase (if all P-slices are considered belonging to the same tablebase, as is usual).
Note that it quite usual that engines report mate scores that are not the fastest mate (for over-the-horizon mates, discovered by hash grafting), so I don't know why that would confuse the end user more than any other mate score. Mate scores always mean 'mate in at most ...'.
Houdini wrote:What is the value of knowing that the current position has a DTZ of 8, or 5, or 22? I suggest that it's a fairly meaningless statistic, wouldn't you agree?
I don't think so. It tells you when to expect progress. When it says DTC = 22 it is obvious that it will be tedious and I'd brew a cup of tea, when it says DTZ = 3, I can wait for 3 moves to see if the DTZ changes into a mate score, or what the new DTZ will be.
I would have WinBoard print DTC's reported by the engine with the other engine output...
Anyway, it seems to me that it is more an interface decision whether to show this to the user, and that the engine should dutifully report it. The enfine can pirnt
info dtc N ....
as PV info (which should be ignored by UCI-compliant interfaces that don't know what dtc means), or, more conservatively
info string dtc N
just before the PV info.