There is a lot of talk in the media at the moment about when and how to withdraw US troops from Iraq. Here's a suggestion - the US army should gradually withdraw as the Iraqi army grows (in size and capability), and when the size of the Iraqi army reaches the size of the number of (US + Iraqi) soldiers currently in Iraq, there should be no US soldiers left. The US soldiers should train the Iraqi soldiers to take over the jobs that they are currently performing. They should give the weapons and equipment necessary to do these jobs.
Of course, the danger then is that this new super-duper Iraqi army might then be so big and powerful that (if they wanted to) Iraq could then turn around and invade the US.