Reference. David Johnson: Galactic Algorithms [lipton2013]