theorem 2.10 implemented