Re: Resolve[Exists[i,{-1,0,2,-3,4,0}>0],Integers] does not work
- To: mathgroup at smc.vnet.net
- Subject: [mg85437] Re: [mg85409] Resolve[Exists[i,{-1,0,2,-3,4,0}>0],Integers] does not work
- From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
- Date: Sun, 10 Feb 2008 05:21:24 -0500 (EST)
- References: <200802090919.EAA16976@smc.vnet.net>
On 9 Feb 2008, at 10:19, janos wrote: > Resolve[Exists[x, a x^2 + b x + c == 0 && x > 0], Reals] > > (taken from the Help) works fine. However, > > Resolve[Exists[i, Part[{-1, 0, 2, -3, 4, 0}, i] > 0], Integers] > > does not work. > My guess is that Part is evaluated differently from Equal, > but I do not know how to fix the problem. > > Thank you. > > Janos > The problem is that Quanitifer Elimination , which is the algorithm that is being used here, works only with polynomial equations and inequalities and only over the real or complex numbers. So obviously you can't use Part or any other programming (rather than algebraic) construct. That's the main reason why this sort of thing won't work at all. But in addition, no known general quantifier elimination algorithm works over the integers so only very simple special cases have been implmented in Mathematica. For example: Resolve[Exists[i, Element[i, Integers], i^2 == 2]] False works, but the more complicated: Resolve[ForAll[i, Element[i, Integers], Exists[j, Element[j, Integers], j^2 == i]]] ForAll[i, Element[i, Integers], Exists[j, Element[j, Integers], j^2 == i]] doesn't, while over the reals there is no problem: Resolve[ForAll[i, Element[i, Reals], Exists[j, Element[j, Reals], j^2 == i]]] False and Resolve[ForAll[i, Element[i, Reals] && i >= 0, Exists[j, Element[j, Reals], j^2 == i]]] True and so on. Andrzej Kozlowski
- References:
- Resolve[Exists[i,{-1,0,2,-3,4,0}>0],Integers] does not work
- From: janos <janostothmeister@gmail.com>
- Resolve[Exists[i,{-1,0,2,-3,4,0}>0],Integers] does not work