Using essentially a guess-and-check approach ...
There is a chance if both (x - 1) and (7x^2 - 3) are perfect squares.
squares: {0, 1, 4, 9, 16, ...}
from x-1, try x values: {1, 2, 5, 10, 17, ...}
7x^2 - 3 values: {4, 25, 172, 697, ...}
x=1 works to make LHS rational, but it does not solve the equation:
LHS=5 but RHS=3
x=2 works; and it does solve the equation:
LHS=RHS=4
x=2 is a solution, though perhaps not the only solution.
If the two radical terms had opposite signs, there might be an x value that would allow them to cancel each other out, but since there is a negative sign in front of each √, this cannot happen without complex numbers.
Running the program below shows no other x values where the two radicals are integers
Checking Wolfram Alpha shows that x=2 is the only real solution; and there are 4 complex solutions which I did not attempt to solve for.
-----------------------
def issquare(n):
""" Input an integer, Returns True iff it is a perfect square. """
if round(n**0.5)**2 == n:
return True
else:
return False
xvalues = [i**2 + 1 for i in range(-100000,100000)]
xvalues = sorted(list(set(xvalues)))
for x in xvalues:
if issquare(7*x**2 - 3):
print(x, (x-1)**.5, (7*x**2 - 3)**.5)
print((x**2)*(7 -(7*x**2 - 3)**.5 - (x-1)**.5), x+2, '\n')