=Bill & Rosemary Cordwell Is there an easy way to tell when a + b*sqrt(k) is a perfect square in the extension field Q(sqrt(k))? [...] I'm particularly interested in when a, b, k are integers...
For some value of "easy": With JHC's x=sqrt k, if a+bx = (c+dx)^2 then b=2cd, so first off b must be even, and then you could run through factorizations to see if any give you the right value of a=cc+kdd. Or maybe you could do something by implementing Newton's method in Q(x)? BTW I've shared RCS's interesting experience of the surprising messiness of such algorithms, such as determining whether p+qx < r+sx for signed p,q,r,s using only integer operations. Heck, I'd even pay $50 for an easy way to generate a+bx in increasing order for a,b >=0 (if you think you have one contact me to negotiate the definition of "easy"<;-).