The United States isn't going to stop the violence in Iraq, but that was never really a debate. The hope was that eventually the Iraqi government would be strong enough to take control of the country. It is clear now that the Iraqi government isn't going to be able to control Iraq in the far distant future, if ever. It is more fractured by the day, and its constituents are at each other's throats. There is even Shia-Shia infighting, with Al Sadr's militia fighting the Iranian-backed Badr Brigade (who have infested the police force).
What now? A complete withdrawal is a bad idea, because it is almost sure to drag Iraq's neighbors into a regional conflict (ie, quite literally WW3). Partition is a bad idea, because huge areas of the country are mixed in population; ethnic cleansing would certainly follow. The best idea is to withdraw to friendly Kurdistan, and let the Sunni and Shia Arabs fight it out. It would be important for us to negotiate a peace between the Kurds and the Turks. Further, our presence in the north would prevent Iraq's neighbors from getting involved. Finally, even though we won't physically be occupying Baghdad and other places, we'll still have an enormous amount of diplomatic leverage. We can use that power to try to negotiate a peace between the warring Arab factions.
It is mind boggling, the sheer stupidity of this entire adventure. Why the Bush administration found that a secular Arab dictator who was at odds with both Al Qaeda and Iran was an enemy worth removing is beyond me. In four years, Rumsfeld has failed to make any progress in Iraq, yet Bush still thinks he is doing a good job. We should drop them both in the middle of Baghdad, and be on our way.
But I might settle for impeachment.