The following code,
Resolve[Exists[{n1, n2, n3}, {n1, n2, n3} \[Element]
NonNegativeIntegers,
1/2 (1 + n1 + n2 - n3) \[Element] NonPositiveIntegers]]
gives output True but if I run LaunchKernels[] and then rerun the exact same code above then the output is
Exists[{n1, n2, n3}, Element[n1 | n2 | n3, Integers] &&
n1 >= 0 && n2 >= 0 && n3 >= 0,
Element[(1 + n1 + n2 - n3)/2, Integers] &&
(1 + n1 + n2 - n3)/2 <= 0]
So is this a bug of Mathematica?
Moreover, I also tried to evaluate a similar code.
Resolve[Exists[{n1, n2, n3}, {n1, n2, n3} \[Element]
NonNegativeIntegers,
1/2 (1 + n1 - n2 + n3) \[Element] NonPositiveIntegers]]
where n2 and n3 is swapped. But then the output is True both before and after LaunchKernels[].
So what is the precise reason for this abnormal behavior? Any idea how to solve it?
Note: If we use Reduce instead of Resolve, it will not help.
"12.1.1 for Microsoft Windows (64-bit) (June 19, 2020)". Most likely a bug that you can report to Wolfram (see https://mathematica.stackexchange.com/questions/106227/how-to-report-a-bug-in-mathematica). – anderstood Nov 03 '20 at 12:12