This article was ported from my old Wordpress blog here, If you see any issues with the rendering or layout, please send me an email. papadHard to believeSanjeev Arora and his coauthors consider it “a basic tool [that should be] taught to all algorithms students together with divide-and-conquer, dynamic programming, and random sampling.” Christos Papadimitriou calls it “so hard to believe that it