All developer estimates are considered too big because developers are considered slackers or simply lazy.
Managers can't realize if the estimates have too much slack or too little, so they always cut the time by half.
If the new estimate is achieved, then the manager considers he has done a great job, because he has actually reduced the cost in half.
If the new estimate is not achieved, then the manager considers he has done a great job, because the developer has hurried up. The logic is that if the developer hurries up obviously the cost will be smaller.
Therefore
Even managers know to ask for twice the time required to do any task, so that exactly the time required is scheduled by upper management. If a reduced estimate is ever met, the next time the reduction will be even larger. This dynamic system goes over and over.