Find all integers N for which the expression:
√(N+70710678√173) - √(N-70710678√173)
has an integer value.
Let √(N+70710678√173) = a + b*√173
N+70710678√173 = (a^2 + 173b^2) + 2*a*b*√173
N = a^2 + 173b^2
2*a*b = 2 * 35355339
a*b = 35355339
So consider all factors, 'f', of 35355339. Then either a or b could be f or 35355339/f.
Then N = a^2 + 173b^2
for example, if a = 14713, b = 2403
N = 14713^2 + 173*2403^2 = 1215445126
then the expression becomes 29426
The following table is a printout from the program below:
(the first two appeared in scientific format, so I manually recalculated those two in a full precision calculator; and I did the same for some of the next 7 which showed results slightly greater or less than an integer. But for the last 7, the full precision calculator confirmed the non-integer values. I cannot explain why these were not all integers.)
a b N expression
1 35355339 2.1624999927425133e+17 2.0
3 11785113 2.4027777697139044e+16 6.0
9 3928371 2669753077459974.0 18.00000000745058
27 1309457 296639230829606.0 53.99999999627471
89 397251 27300845769094.0 178.00000000093132
267 132417 3033427378086.0 534.0
801 44139 337048120134.0 1602.0
2403 14713 37455494246.0 4806.0
14713 2403 1215445126.0 29426.0
44139 801 2059248294.0 21071.020193621378
132417 267 17546594886.0 7023.673397873805
397251 89 157809727334.0 2341.224465957959
1309457 27 1714677760966.0 710.2591076502576
3928371 9 15432098727654.0 236.75303588341922
11785113 3 138888888424326.0 78.91767862811685
35355339.0 1 1249999995805094.0 26.30589286983013
corrected and showing only the integer values:
a b N expression
1 35355339 216249999274251334 2
3 11785113 24027777697139046 6
9 3928371 2669753077459974 18
27 1309457 296639230829606 54
89 397251 27300845769094 178
267 132417 3033427378086 534
801 44139 337048120134 1602
2403 14713 37455494246 4806
14713 2403 1215445126 29426
Since I cannot explain the non-integer results, I am reluctant to call this a full solution. Also, other avenues of approach, such as a brute force search, might yield unrelated solutions. I also cannot be certain about the accuracy of the full precision calculator at mathsisfun.com
---------------------
def factors(n):
""" for integer n, return a list of all the factors including 1 and n """
ans = [1,n]
for i in range(2,2+int(n**.5)):
if n%i == 0:
ans.append(i)
ans.append(int(n/i))
ans = sorted(list(set(ans)))
return (ans)
def expression(a):
b = 35355339/a
k = 70710678 * (173)**.5
N = a**2 + 173*b**2
return (N+k)**.5 - (N-k)**.5
allfactors = factors(70710678/2)
for f in allfactors:
print(f, int(35355339/f), f**2 + 173*(35355339/f)**2, expression(f))
|
Posted by Larry
on 2023-12-21 19:01:02 |