fixing definition of Pure and adding some lemmas.