user2000: For research purposes, I would like to have a chess engine hooked up to a tablebase where I can be guaranteed that the chess engine is looking at ALL moves and calls the tablebase in real time in small positions. Chess engines may discard some moves on the way to calling the tablebase later, and I need to avoid that, for my purposes. At the very least I have to know that no moves, no matter how silly, have been discarded. Can anyone advise me as to what the best available setup is for this purpose? Or whether some code should be added to an open source engine? 

user2001: 
I would like to have a chess engine hooked up to a tablebase where I can be guaranteed that the chess engine is looking at ALL moves and calls the tablebase in real time in small positions.

I thought that chess engines are already hooked up to tablebases? Also, to make sure what moves the engine looks like, there should be a "verbose" mode for engines?

Chess engines may discard some moves on the way to calling the tablebase later, and I need to avoid that, for my purposes.

Chess engines probably discard moves according to their search algorithm, in order to limit their searching time. But exactly which moves that are discarded probably varies between engines. Yet, engines should have an "exhaustive" mode that takes longer time and checks more moves?

At the very least I have to know that no moves, no matter how silly, have been discarded.

You could write a script that keeps track of "all possible moves" and then compare it against the moves that the engine has considered. Thus, you get the list of all discarded moves.

Can anyone advise me as to what the best available setup is for this purpose? Or whether some code should be added to an open source engine?

I would advice some sort of wrapper around a Linux command line engine. Write the engine verbose output to a file. Have a script that keeps generating the "all possible moves" list at every point in the game. Then, compare against this list. Also, handle the tablebases as needed, perhaps the engine gives some nice options for this. I haven't done anything like this before, so these are my best guesses on how to set this up and make it work!

user3118: You might find some luck looking to chess problem solvers. In chess compositions, a problem is 'cooked' if it has more than one solution (usually) or any solution that is unintended. If possible, problems are listed as C+ if they are proven by a computer to have only the intended solution(s). Obviously, these solvers do not throw away any moves to make such a proof.
Popeye Solver is one such solver. You can find more information about it on Wikipedia and the web.
You weren't very clear on what you were trying to accomplish though (this would have been important), so I'm not sure if it will work for you or not. Typically, with a program such as popeye it has a position, a stipulation, and a set of conditions. For example, a FEN position, "mate in 5", and "orthodox chess" (or perhaps varying rules).

2000: <p>For research purposes, I would like to have a chess engine hooked up to a tablebase where I can be guaranteed that the chess engine is looking at ALL moves and calls the tablebase in real time in small positions. Chess engines may discard some moves on the way to calling the tablebase later, and I need to avoid that, for my purposes. At the very least I have to know that no moves, no matter how silly, have been discarded. Can anyone advise me as to what the best available setup is for this purpose? Or whether some code should be added to an open source engine? </p>
 2001: <blockquote>
  <p>I would like to have a chess engine hooked up to a tablebase where I can be guaranteed that the chess engine is looking at ALL moves and calls the tablebase in real time in small positions.</p>
</blockquote>

<p>I thought that chess engines are already hooked up to tablebases? Also, to make sure what moves the engine looks like, there should be a "verbose" mode for engines?</p>

<blockquote>
  <p>Chess engines may discard some moves on the way to calling the tablebase later, and I need to avoid that, for my purposes.</p>
</blockquote>

<p>Chess engines probably discard moves according to their search algorithm, in order to limit their searching time. But exactly which moves that are discarded probably varies between engines. Yet, engines should have an "exhaustive" mode that takes longer time and checks more moves?</p>

<blockquote>
  <p>At the very least I have to know that no moves, no matter how silly, have been discarded.</p>
</blockquote>

<p>You could write a script that keeps track of "all possible moves" and then compare it against the moves that the engine has considered. Thus, you get the list of all discarded moves.</p>

<blockquote>
  <p>Can anyone advise me as to what the best available setup is for this purpose? Or whether some code should be added to an open source engine?</p>
</blockquote>

<p>I would advice some sort of wrapper around a Linux command line engine. Write the engine verbose output to a file. Have a script that keeps generating the "all possible moves" list at every point in the game. Then, compare against this list. Also, handle the tablebases as needed, perhaps the engine gives some nice options for this. I haven't done anything like this before, so these are my best guesses on how to set this up and make it work!</p>
 3118: <p>You might find some luck looking to chess problem solvers. In chess compositions, a problem is 'cooked' if it has more than one solution (usually) or any solution that is unintended. If possible, problems are listed as C+ if they are proven by a computer to have only the intended solution(s). Obviously, these solvers do not throw away any moves to make such a proof.</p>

<p><a href="http://sourceforge.net/projects/popeye-chess/" rel="nofollow">Popeye Solver</a> is one such solver. You can find more information about it on <a href="http://en.wikipedia.org/wiki/Software_for_handling_chess_problems#Popeye" rel="nofollow">Wikipedia</a> and the web.</p>

<p>You weren't very clear on what you were trying to accomplish though (this would have been important), so I'm not sure if it will work for you or not. Typically, with a program such as popeye it has a position, a stipulation, and a set of conditions. For example, a FEN position, "mate in 5", and "orthodox chess" (or perhaps varying rules).</p>
