Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2004
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2004

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Reduce/Solve


andrzej <andrzej at akikoz.net> wrote in message news:<cfomtv$l1a$1 at smc.vnet.net>...
>

...deleted...
> 
> Not quite. You are forgetting limitations that are due to mathematics, 
> or algorithms that we know, which is what happens in this case.
> 

You seem to possess knowledge about the algorithm used by Wolfram for
Solve. Would you disclose what exactly it does, if that is not a trade
secret? Until that happens, I am leaning to claim a bug based on the
following.

In[1]:=Solve[{-Sin[t],Cos[t]}=={Sin[a],Cos[a]},{t}]

\!\(\*
RowBox[{\(Solve::"ifun"\), \(\(:\)\(\ \)\), "\<\"Inverse functions are
being used by \\!\\(
Solve\\), so some solutions may not be found; use Reduce for complete
\
solution information. \\!\\(\\*ButtonBox[\\\"More…\\\", \
ButtonStyle->\\\"RefGuideLinkText\\\", ButtonFrame->None, \
ButtonData:>\\\"Solve::ifun\\\"]\\)\"\>"}]\) 

Out[1]=
{{t->a}} 

Following the advice from the above warning, I tried Reduce.

In[2]:=Reduce[{{-Sin[t], Cos[t]} == {Sin[a], Cos[a]}, 0 < t < 2 Pi, 0
< a < 2 Pi}, {t}]

Out[2]=
\!\(1\/2 + a\/\(2\ &#65533;逅姉\) &#8713; Integers && \((&#65533;逅姉 < a
&#8804; 2\ &#65533;逅姉 && t == \(-2\)\
ArcTan[Tan[a\/2]] || 0 < a < &#65533;逅姉 && t == 2\ \((&#65533;逅姉 -
ArcTan[Tan[a\/2]])\))\) || a == &#65533;逅姉 && t == &#65533;逅姉\)

The result doesn't seem to be much useful, I would rather expect
simple {t->2*Pi-a}.

The behavior of Mathematica is somehow disappointing because the
solution of the original problem:

r[t_]:={a*Cos[t],b*Sin[t]}
dr[t_]:=Evaluate[D[r[t],t]]
q={k,l};
eq=dr[t]==lambda q
sol=Simplify[Solve[eq,{t,lambda}],{k\[Element]Reals,l\[Element]Reals}]

can be obtained trivially by hand

{{t -> ArcTan[k/a, l/b], lambda ->  1/Sqrt[(k/a)2 + (l/b)2]},
 {t -> ArcTan[k/a, l/b], lambda -> -1/Sqrt[(k/a)2 + (l/b)2]}} 

> What I meant in my reply was this: the only algorithms that exist for 
> solving this kind of equations  in general lead to phantom solutions as 
> well as "correct solutions. This is a feature of "mathematics" not 
> Mathematica.

That seems to be a very strong claim, unless I misunderstood 
the meaning of "mathematics". 

>

...deleted...

> 
> Andrzej
> 
> P.S. Of course this and anything I write may not be true in partiular 
> cases where bugs are involved, when my memory fails or when some new 
> discovieries have been made of which I am not aware. Fortunately, such 
> cases can be settled by "divine intervention", that is, a response form 
> Daniel Lichtblau ;-)

divine == relating to, or proceeding directly from God

You referred to bugs as acts of God. Now you apparently claim Mr.
Daniel Lichtblau is God. Are you saying that he is responsible for
bugs in Solve? :-)

AK

> 
> >

...deleted...

> >


  • Prev by Date: Re: Smallest enclosing circle
  • Next by Date: Magnetica
  • Previous by thread: Re: Re: Re: Reduce/Solve
  • Next by thread: Re: Re: Reduce/Solve