Any scientist who thinks that a lie detector detects lies is an idiot. A lie detector detects stress pure and simple. If you are clever enough, it is possible to devise a series of questions which COULD be stressful for the criminal, but not for an innocent, but that still does not mean it detects lies... It is still just detecting stress.
So you have a dead tomato found in you kitchen. What did you have for breakfast... No stress no response... Ask did you throw the tomato = stress.
For it to work, you would have to ask a question that only the perp new was contentious... The experts probably do just that, but it is incredibly hairy... And I just wish they would call it a stress test, not a lie detection test.