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