Answers.Body: <p>TL;DR DTM &amp; DTZ measure different things and one cannot be deduced from the other.</p>
  <p>DTZ measures the shortest distance to zero the position (zeroing = pawn move, capture or checkmate), without compromising the Win/Draw/Loss status. If White only has just sufficient material to mate, then any zeroing is likely to be useful, but if White has way more material than is necessary, White may try to sacrifice its own unit, and Black may try to refuse the sacrifice!</p>
  <p>Since DTZ does not compromise on WDL status, and since zeroing the position can only be done a finite number of times in the game, it definitely does progress the game, but it may be an inefficient way of doing so.</p>
  <p>Syzygy uses a thing called DTZ50, which is a refinement of DTZ which keeps track not just of 3-valued WDL status but 5-valued status as shown here in the table at the top right of the Syzygy page <a href="https://syzygy-tables.info/metrics" rel="nofollow noreferrer">https://syzygy-tables.info/metrics</a>. So following DTZ50 will additionally ensure that any path does not just progress the game, but also does not fall foul of any 50M traps, even those lurking ahead after several simplifications.</p>
  <p>It is not possible to deduce the DTM value from a DTZ value. Sibling nodes may share the same DTZ value but have different DTM values. And vice versa. (Of course if you give the full set of DTZ information in the form of a tree, then someone could throw away the DTZ data, and reconstruct the DTM from the tree!)</p>
  <p>Syzygy does provide DTM if there's 5 or fewer pieces on the board. One can experiment with this to see how the concepts differ. For example <a href="https://syzygy-tables.info/?fen=7k/8/7K/4P2R/8/8/8/8_b_-_-_0_1" rel="nofollow noreferrer">https://syzygy-tables.info/?fen=7k/8/7K/4P2R/8/8/8/8_b_-_-_0_1</a> leads immediately to a simple position with DTZ=1 &amp; DTM=3. But White can only achieve one of these. After Black makes the forced move, White can either DTZ=0 (with DTM=16) or DTZ=2 (with DTM from 2 to 20).</p>
  <p>I think the answer is a concept called DTM50, but this is more complex to compute, and I don't know of any existing databases.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-08-05T11:26:48.697Z
Answers.LastActivityDate: 2022-08-07T03:11:32.613Z
Answers.LastEditDate: 2022-08-07T03:11:32.613Z
Answers.UserDisplayName: Laska
Answers.Body: <p><strong>No</strong>. It's <strong>not</strong> possible. People use Gaviota tablebase if they want to do DTM or the old Nalimov.</p>
  
  <p>Syzygy tablebase is the most popular tablebase algorithm because it doesn't do DTM, better compression. You can't get both - information and size.</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2018-02-20T09:40:33.460Z
Answers.LastActivityDate: 2018-02-20T09:40:33.460Z
Answers.UserDisplayName: SmallChess
Body: <p>This is a programming question related to chess endgame tables.</p>
  <p>As far as I know syzygy tables allow me to get WDL and <a href="https://chess.stackexchange.com/q/28520/26335">Depth to Zeroing (DTZ)</a> information for a given position. Is it possible to somehow (without access to chess engine) extract <a href="https://chess.stackexchange.com/q/28520/26335">Depth to Mate (DTM)</a> information of a position from these tables?</p>
  <p>Based on what I understood from <a href="http://python-chess.readthedocs.io/en/latest/syzygy.html" rel="nofollow noreferrer">python chess</a> documentation, that minimaxing the DTZ will give you a win, but it does not guarantee the quickest win:</p>
  <blockquote>
  <p>Minmaxing the DTZ values guarantees winning a won position (and
  drawing a drawn position), because it makes progress keeping the win
  in hand. However the lines are not always the most straightforward
  ways to win.</p>
  </blockquote>
  
Tags: <engines><endgame><tablebases>
Title: Is it possible to get DTM of a position from sygyzy tables?
ThreadText: # Is it possible to get DTM of a position from sygyzy tables?
  
  (Asked by: username_0 on 2018-02-20)
  
  This is a programming question related to chess endgame tables.
  
  As far as I know syzygy tables allow me to get WDL and [Depth to Zeroing (DTZ)](https://chess.stackexchange.com/q/28520/26335) information for a given position. Is it possible to somehow (without access to chess engine) extract [Depth to Mate (DTM)](https://chess.stackexchange.com/q/28520/26335) information of a position from these tables?
  
  Based on what I understood from [python chess](http://python-chess.readthedocs.io/en/latest/syzygy.html) documentation, that minimaxing the DTZ will give you a win, but it does not guarantee the quickest win:
  
  > Minmaxing the DTZ values guarantees winning a won position (and
  > drawing a drawn position), because it makes progress keeping the win
  > in hand. However the lines are not always the most straightforward
  > ways to win.
  
  **Tags:** engines, endgame, tablebases
  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_2 on 2018-02-20. Score: 6 | Accepted answer
  
  **No**. It's **not** possible. People use Gaviota tablebase if they want to do DTM or the old Nalimov.
  
  Syzygy tablebase is the most popular tablebase algorithm because it doesn't do DTM, better compression. You can't get both - information and size.
  
  
  ---
  
  ### Answer by username_1 on 2022-08-05. Score: 3
  
  TL;DR DTM & DTZ measure different things and one cannot be deduced from the other.
  
  DTZ measures the shortest distance to zero the position (zeroing = pawn move, capture or checkmate), without compromising the Win/Draw/Loss status. If White only has just sufficient material to mate, then any zeroing is likely to be useful, but if White has way more material than is necessary, White may try to sacrifice its own unit, and Black may try to refuse the sacrifice!
  
  Since DTZ does not compromise on WDL status, and since zeroing the position can only be done a finite number of times in the game, it definitely does progress the game, but it may be an inefficient way of doing so.
  
  Syzygy uses a thing called DTZ50, which is a refinement of DTZ which keeps track not just of 3-valued WDL status but 5-valued status as shown here in the table at the top right of the Syzygy page <https://syzygy-tables.info/metrics>. So following DTZ50 will additionally ensure that any path does not just progress the game, but also does not fall foul of any 50M traps, even those lurking ahead after several simplifications.
  
  It is not possible to deduce the DTM value from a DTZ value. Sibling nodes may share the same DTZ value but have different DTM values. And vice versa. (Of course if you give the full set of DTZ information in the form of a tree, then someone could throw away the DTZ data, and reconstruct the DTM from the tree!)
  
  Syzygy does provide DTM if there's 5 or fewer pieces on the board. One can experiment with this to see how the concepts differ. For example <https://syzygy-tables.info/?fen=7k/8/7K/4P2R/8/8/8/8_b_-_-_0_1> leads immediately to a simple position with DTZ=1 & DTM=3. But White can only achieve one of these. After Black makes the forced move, White can either DTZ=0 (with DTM=16) or DTZ=2 (with DTM from 2 to 20).
  
  I think the answer is a concept called DTM50, but this is more complex to compute, and I don't know of any existing databases.
  
  
  ---
  
  