Algorithmic Number Theory Efficient Algorithms