Re: Why can't FullSimplify give more uniform output?
- To: mathgroup at smc.vnet.net
- Subject: [mg119747] Re: Why can't FullSimplify give more uniform output?
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Mon, 20 Jun 2011 08:05:28 -0400 (EDT)
- Reply-to: hanlonr at cox.net
Simplify and FullSimplify provide the simplest form that they find within their time constraints. Given different starting forms for an expression, there is no guarantee that they will arrive at identical forms.
$Assumptions = {u > 0, c > u};
T1 = (t1 - ((u x1)/c^2))/Sqrt[1 - (u^2/c^2)];
T2 = (t2 - ((u x2)/c^2))/Sqrt[1 - (u^2/c^2)];
dT = T2 - T1;
expr1 = FullSimplify[dT]
(c^2*(-t1 + t2) + u*(x1 - x2))/
(c*Sqrt[(c - u)*(c + u)])
s = (t2 - t1 - ((u/c^2)*(x2 - x1)))/Sqrt[1 - ((u^2)/(c^2))];
s == dT // Simplify
True
expr2 = FullSimplify[s]
(c*(-t1 + t2 + (u*(x1 - x2))/c^2))/
Sqrt[(c - u)*(c + u)]
expr3 = FullSimplify[Expand[s]]
(c^2*(-t1 + t2) + u*(x1 - x2))/
(c*Sqrt[(c - u)*(c + u)])
expr3 is identical to expr1
expr1 === expr3
True
Bob Hanlon
---- Jacare Omoplata <walkeystalkey at gmail.com> wrote:
=============
Hello,
I ask this question just out of curiosity.
Below is my input and output. The expressions "s" and "dT" are equal,
as can be seen by Out[17]. But the output from FullSimplify is
different for those two as can be seen by Out[12] and Out[15]. Why
can't they be simplified to expressions that look alike?
Thanks.
(PS. Also please tell me if my code is inefficient. I'm still learning
Mathematica)
In[1]:= Element[{x1, x2, t1, t2, u, c}, Reals]
Out[1]= (x1 | x2 | t1 | t2 | u | c) \[Element] Reals
In[7]:= $Assumptions = {u > 0, c > u}
Out[7]= {u > 0, c > u}
In[9]:= T1 = (t1 - ((u x1)/c^2))/Sqrt[1 - (u^2/c^2)]
Out[9]= (t1 - (u x1)/c^2)/Sqrt[1 - u^2/c^2]
In[10]:= T2 = (t2 - ((u x2)/c^2))/Sqrt[1 - (u^2/c^2)]
Out[10]= (t2 - (u x2)/c^2)/Sqrt[1 - u^2/c^2]
In[11]:= dT = T2 - T1
Out[11]= -((t1 - (u x1)/c^2)/Sqrt[1 - u^2/c^2]) + (
t2 - (u x2)/c^2)/Sqrt[1 - u^2/c^2]
In[12]:= FullSimplify[dT]
Out[12]= (c^2 (-t1 + t2) + u (x1 - x2))/(c Sqrt[(c - u) (c + u)])
In[14]:= s = (t2 - t1 - ((u/c^2)*(x2 - x1)))/Sqrt[1 - ((u^2)/(c^2))]
Out[14]= (-t1 + t2 - (u (-x1 + x2))/c^2)/Sqrt[1 - u^2/c^2]
In[15]:= FullSimplify[s]
Out[15]= (c (-t1 + t2 + (u (x1 - x2))/c^2))/Sqrt[(c - u) (c + u)]
In[16]:= s - dT
Out[16]= (t1 - (u x1)/c^2)/Sqrt[1 - u^2/c^2] - (t2 - (u x2)/c^2)/Sqrt[
1 - u^2/c^2] + (-t1 + t2 - (u (-x1 + x2))/c^2)/Sqrt[1 - u^2/c^2]
In[17]:= FullSimplify[s - dT]
Out[17]= 0