Solving elliptic curves