algorithmic lemma 3842813