[Date Index]
[Thread Index]
[Author Index]
Re: Re: Re: Re: Limit and Root Objects
*To*: mathgroup at smc.vnet.net
*Subject*: [mg72694] Re: [mg72668] Re: [mg72644] Re: [mg72620] Re: Limit and Root Objects
*From*: Andrzej Kozlowski <akoz at mimuw.edu.pl>
*Date*: Mon, 15 Jan 2007 05:55:47 -0500 (EST)
*References*: <NDBBJGNHKLMPLILOIPPOIEDOFFAA.djmp@earthlink.net>
As I already suggested: read
http://forums.wolfram.com/mathgroup/archive/2006/Dec/msg00496.html
and then think about what it says. (Obviously the issue concernst
each individual root being continuous).
I think I have written about this as much as I am willing to do.
Andrzej Kozlowski
On 14 Jan 2007, at 17:58, David Park wrote:
> Paul Abbot asked: "Again, ignoring root ordering, why
> isn't it possible for all these roots to maintain their identity
> and so
> be continuous functions of the parameter? And wouldn't such continuity
> be nicer than enforcing root ordering?"
>
> (I'm not certain if I exactly understand Paul's question. Does he
> mean that
> each individual root function, in the set of root functions, must be
> continuous, or does he allow global reindexing on the entire set to
> achieve
> continuity?)
>
> So, what exactly does your mathematical theorem say? Does it say
> that given
> a one-parameter finite order polynomial it is not possible to
> continuously
> reindex the set of root solutions so that the reindexed roots will
> vary
> continuously in the complex plane as a function of the parameter?
> Or that
> you can't do this when the polynomial contains a complex
> coefficient? If it
> says that, I don't believe it.
>
> It certainly is possible to arrange things so that the roots vary
> continuously, and it can even be useful.
>
> It reminds me of a Groucho Marx quip, something about: "Are you
> going to
> listen to me or are you going to go by what you see in front of
> your eyes?"
>
> David Park
> djmp at earthlink.net
> http://home.earthlink.net/~djmp/
>
>
>
> From: Andrzej Kozlowski [mailto:akoz at mimuw.edu.pl]
>
> I don't understand what you mean by "continuous enough" and why you
> think and animation can "disprove" a mathematical proof?
>
> Please read the argument:
>
> http://forums.wolfram.com/mathgroup/archive/2006/Dec/msg00496.html
>
> It is very simple. Remember the point is that you cannot define such
> a function that will be continuous over the entire 6 dimensional (3
> complex dimensions) space of polynomials of degree 3 with complex
> roots (we actually normally remove the discriminant from the space).
> You are using a smaller subspace ( you have just one complex
> parameter) and over a smaller subspace naturaly it is possible to
> have a continuous root.
> If you look carefully at Adam's argument you will be easily able to
> see what must go wrong over the entire space of complex cubics.
>
> This in fact is a good illustration of what a double edged weapon
> graphics and animations are in studying mathematics: they can just as
> easily mislead your intuition and lead you to wrong conclusions as to
> right ones. Which is one reason why I think one should never rely too
> much on such tools when teaching mathematics. Proofs are proofs and
> no number of "convincing animations" and "experimental mathematics"
> can replace them.
>
> Andrzej Kozlowski,
>
> Department of Mathematics, Informatics and Mechanics
> Warsaw University, Poland
>
>
> On 14 Jan 2007, at 01:54, David Park wrote:
>
>> This looks continuous enough to me, with and without complex
>> coefficients.
>>
>> Needs["Graphics`Animation`"]
>> Needs["Graphics`Colors`"]
>>
>> frame[a_] :=
>> Module[{roots = rootset[a], newroots, rootpermutations,
>> distances, pick,
>> locations},
>> If[memoryrootset === Null, newroots = roots,
>> rootpermutations = Permutations[roots];
>> distances =
>> Plus @@ Abs[Part[roots, #] - memoryrootset] & /@
>> basepermutations;
>> pick = Part[Position[distances, Min[distances], 1], 1, 1];
>> newroots = Part[roots, Part[basepermutations, pick]]];
>> memoryrootset = newroots;
>> locations = {Re[#], Im[#]} & /@ newroots;
>>
>> Show[Graphics[
>> {LightCoral, AbsolutePointSize[15],
>> Point /@ locations,
>> Black,
>> MapThread[Text[#1, #2] &, {Range[5], locations}],
>>
>> Text[SequenceForm["a = ",
>> NumberForm[a, {3, 2}, NumberPadding -> {" ", "0"}]],
>> Scaled[{0.1, 0.95}], {-1, 0}]}],
>>
>> AspectRatio -> Automatic,
>> TextStyle -> {FontFamily -> "Courier", FontSize -> 12,
>> FontWeight -> "Bold"},
>> Frame -> True,
>> PlotRange -> {{-3, 3}, {-3, 3}},
>> PlotLabel -> SequenceForm["Continuous Roots of" , displaypoly],
>> ImageSize -> 400]
>> ]
>>
>> Case 1
>>
>> polynomial = x^5 - a x - 1 == 0;
>> displaypoly = polynomial /. a -> HoldForm[a];
>> rootset[a_] = x /. Solve[polynomial, x]
>>
>> memoryrootset = Null;
>> basepermutations = Permutations[Range[5]];
>> Animate[frame[a], {a, -6, 10, 0.25}]
>> SelectionMove[EvaluationNotebook[], All, GeneratedCell]
>> FrontEndTokenExecute["OpenCloseGroup"]; Pause[0.5];
>> FrontEndExecute[{FrontEnd`SelectionAnimate[200,
>> AnimationDisplayTime -> 0.1,
>> AnimationDirection -> ForwardBackward]}]
>>
>> Case 2
>>
>> polynomial = x^5 + (1 + I) x^4 - a x - 1 == 0;
>> displaypoly = polynomial /. a -> HoldForm[a];
>> rootset[a_] = x /. Solve[polynomial, x];
>>
>> memoryrootset = Null;
>> basepermutations = Permutations[Range[5]];
>> Animate[frame[a], {a, -6, 10, 0.5}]
>> SelectionMove[EvaluationNotebook[], All, GeneratedCell]
>> FrontEndTokenExecute["OpenCloseGroup"]; Pause[0.5];
>> FrontEndExecute[{FrontEnd`SelectionAnimate[200,
>> AnimationDisplayTime -> 0.1,
>> AnimationDirection -> ForwardBackward]}]
>>
>> But this is a combinatoric algorithm and if there are too many
>> roots it
>> might begin to get costly. But it is perfectly practical for these
>> examples.
>>
>> David Park
>> djmp at earthlink.net
>> http://home.earthlink.net/~djmp/
>>
>> From: Andrzej Kozlowski [mailto:akoz at mimuw.edu.pl]
>>
>> On 12 Jan 2007, at 11:05, Paul Abbott wrote:
>>
>>> In article <em8jfr$pfv$1 at smc.vnet.net>,
>>> Andrzej Kozlowski <andrzej at akikoz.net> wrote:
>>>
>>>> What you describe, including the fact that the numbering or roots
>>>> changes is inevitable and none of it is not a bug. There cannot
>>>> exist
>>>> an ordering of complex roots that does not suffer from this
>>>> problem.
>>>> What happens is this.
>>>> Real root objects are ordered in the natural way. A cubic can have
>>>> either three real roots or one real root and two conjugate complex
>>>> ones. Let's assume we have the latter situation. Then the real root
>>>> will be counted as being earlier then the complex ones. Now suppose
>>>> you start changing the coefficients continuously. The roots will
>>>> start "moving in the complex plane", with the real root
>>>> remaining on
>>>> the real line the two complex roots always remaining conjugate
>>>> (symmetric with respect to the real axis). Eventually they may
>>>> collide and form a double real root. If this double real root is
>>>> now
>>>> smaller then the the "original real root" (actually than the
>>>> root to
>>>> which the original real root moved due the the changing of the
>>>> parameter), there will be a jump in the ordering; the former root
>>>> number 1 becoming number 3.
>>>> This is completely unavoidable, not any kind of bug, and I am not
>>>> complaining about it. It takes only elementary topology of
>>>> configuration spaces to prove that this must always be so.
>>>
>>> But is there a continuous root numbering if the roots are not
>>> ordered?
>>>
>>> What I mean is that if you compute the roots of a polynomial, which
>>> is a
>>> function of a parameter, then if you assign a number to each root,
>>> can
>>> you follow that root continuously as the parameter changes? Two
>>> examples
>>> are presented below.
>>>
>>> Here is some code to animate numbered roots using the standard root
>>> ordering, displaying the root numbering:
>>>
>>> rootplot[r_] := Table[ListPlot[
>>> Transpose[{Re[x /. r[a]], Im[x /. r[a]]}],
>>> PlotStyle -> AbsolutePointSize[10],
>>> PlotRange -> {{-3, 3}, {-3, 3}},
>>> AspectRatio -> Automatic,
>>> PlotLabel -> StringJoin["a=", ToString[PaddedForm[Chop[a], {2,
>>> 1}]]],
>>> Epilog -> {GrayLevel[1],
>>> MapIndexed[Text[#2[[1]], {Re[#1], Im[#1]}] & , x /. r[a]]}],
>>> {a, -6, 10, 0.5}]
>>>
>>> First, we have a polynomial with real coefficients:
>>>
>>> r1[a_] = Solve[x^5 - a x - 1 == 0, x]
>>>
>>> Animating the trajectories of the roots using
>>>
>>> rootplot[r1]
>>>
>>> we observe that, as you mention above, when the complex conjugate
>>> roots
>>> 2 and 3 coalesce, they become real roots 1 and 2 and root 1 becomes
>>> root
>>> 3. But, ignoring root ordering, why isn't it possible for these
>>> roots to
>>> maintain their identity (I realise that at coelescence, there is an
>>> arbitrariness)?
>>>
>>> Second, we have a polynomial with a complex coefficient:
>>>
>>> r2[a_] = Solve[x^5 + (1+I) x^4 - a x - 1 == 0, x]
>>>
>>> Animating the trajectories of the roots using
>>>
>>> rootplot[r2]
>>>
>>> we observe that, even though the trajectories of the roots are
>>> continuous, the numbering switches:
>>>
>>> 2 -> 3 -> 4
>>> 5 -> 4 -> 3
>>> 3 -> 4 -> 5
>>> 4 -> 3 -> 2
>>>
>>> and only root 1 remains invariant. Again, ignoring root ordering,
>>> why
>>> isn't it possible for all these roots to maintain their identity
>>> and so
>>> be continuous functions of the parameter? And wouldn't such
>>> continuity
>>> be nicer than enforcing root ordering?
>>>
>>> Cheers,
>>> Paul
>>>
>>> ____________________________________________________________________
>>> _
>>> _
>>> _
>>> Paul Abbott Phone: 61 8 6488
>>> 2734
>>> School of Physics, M013 Fax: +61 8 6488
>>> 1014
>>> The University of Western Australia (CRICOS Provider No
>>> 00126G)
>>> AUSTRALIA http://physics.uwa.edu.au/
>>> ~paul
>>
>>
>> In the cases of polynomials with real coefficients it is indeed
>> possible to define a continuous root. It is certianly not possible to
>> do so for polynomials with complex coefficients. For a proof see my
>> and Adam Strzebonski's posts in the same thread. Adam Strzebonski
>> gave a very elementary proof of the fact that a continuous root
>> cannot be defined on the space of complex polynomials of degree d. I
>> quoted a more powerful but not elementary theorem of Vassiliev, which
>> describes the minimum number of open sets that are needed to cover
>> the space of complex polynomials of degree d, so that there is a
>> continuous root defined on each open set. In fact, Vassiliev gives
>> the exact number only in the case when d is prime, in which case d
>> open sets are needed. For example, for polynomials of degree 3 at
>> least 3 sets are needed . If it were possible to define a continuous
>> root, then of course only one set would suffice. In the case when d
>> is not prime no simple formula seems to be known, but it is easy to
>> prove that that the number is >1, (e.g. by means of Adam
>> Strzebonski's proof).
>>
>> Andrzej Kozlowski
>>
>>
>
>
Prev by Date:
**simple modification of Solve**
Next by Date:
**Re: Re: Re: Re: Limit and Root Objects**
Previous by thread:
**Re: Re: Limit and Root Objects**
Next by thread:
**Re: Re: Re: Re: Limit and Root Objects**
| |