Converting comments to answer.
can there be a dialog or a popup asking the reason for down voting a post.
This already exists. When a user below 2000 rep downvotes a post, (s)he will get a popup asking for a comment. Of course, leaving a comment is still optional.
How can we know, if the down vote is judged properly ?
You don't. People can downvote for any reason they want including, (but not limited to):
- Having a bad hair day.
- Don't like you.
- Revenge for some other (unrelated) episode.
And there's nothing you can do about it. That's just the way it works.
However, when a post has a lot of upvotes and a small number of (unexplained) downvotes, it's usually a clear indication that the downvotes are "misjudged" in some way. But in such cases, the upvotes offset the downvotes anyway. So it's not a problem.
What are the parameters ?
There are automated scripts to catch and reverse obvious voting abuse. And moderators have extra tools to detect voting rings and such. How these work are all secret for good reason.