Let us suppose you are a teacher and you ask some student to solve an equation by hand.
Your student does the exercise and gives you the expressions of all the roots he hound.
You : « have you checked your solution ?»
The student: « No, but I’m very confident in the method I used to find it »
You : « I have no doubt about that, but without checking your solution is worthless »
Now you are still the teacher and the student has name Maple.
If Mr Maple has not checked its solution, then the latter is worthless.
If you consider, and I can follow you blindly on this point, that a solution has to be checked before to be delivered,
than you should admit that Mr Maple has done only a part of the job.
So, to illustrate that Maple doesn't always (?) check the roots, here are the results obtained on a slight variant of your toy example The function I want to find the roots when a=1 is f := a -> sqrt(x) - sqrt(a-x) - 1.
You will see that solve(f(1), x) and subs(a=1, [solve(f(a), x)]) do not provide the same results.
The second command has an extraneous solution Maple should have discarded had it have correctly done the job
Up to some extent I don't care of the inner algorithms or algebra Maple uses: if Maple returns a result it has to be verified, and if it doesn't it has to say it has failed (which is generally what happens).
When I have bought my Maple license I have also bought this, this trust or faith in the answers Maple returns.
I had found very peremptory and rude Mariusz’ sentence « I can only say that the Maple contains a huge amount of bugs, with cause that we can't trust the results. » (see his last reply on this same thread).
But your patronizing attitude to try and show me that I just don’t understand (a thing I’m not at all ashamed to admit)
is not sufficient to keep me convincing that Mariusz is wrong.
I have much respect for you and for the job you are doing here.
So, before the situation gets toxic, I will quote Mariusz on this same thread by saying "this is my final answer"
Thanks for your contribution