Please explain what is wrong with my relativistic momentum problem

  • #101
Virous said:
This is not a failure. It should be like this, since the conservation law does not work for speeds >c.

Except that Mathematica treats the problem as an algebra problem, it doesn't "know" anything about "speeds>c". My contention was that the factorizations and reduction of like terms SHOULD have worked WITHOUT you having to add the conditions a,b<c.
 
Physics news on Phys.org
  • #102
No, because during the simplification you assumed, that \sqrt{a}^2=a and only a, while in fact there are other interpretations. If you take some random data, like c=15, a=20, b=25 and substitute it you`ll see, that it does not make momenta zero.
 
  • #103
Virous said:
No, because during the simplification you assumed, that \sqrt{a}^2=a and only a, while in fact there are other interpretations. If you take some random data, like c=15, a=20, b=25 and substitute it you`ll see, that it does not make momenta zero.

I ONLY used \sqrt{(1+a^2/c^2)^2}=1+a^2/c^2. This is ALWAYS true, you don't need to add the condition a<c.
 
Last edited:
  • #104
Did that for you :)

4d20f5d88547.png


You see
 
  • #105
Virous said:
Did that for you :)

4d20f5d88547.png


You see

That is the problem when you start EVALUATING expressions, I operated exclusively in SYMBOLIC algebra, never evaluated any of the expressions. The Mathematica coders need to do some work, their program is not quite at the level of human beings. This is not quite a Mathematica bug but it is a limitation.
 
Last edited:
  • #106
xox said:
I ONLY used \sqrt{(1+a^2/c^2)^2}=1+a^2/c^2. This is ALWAYS true, you don't need to add the condition a<c.
No, this is not always true.

Mathematica is correct in this case. You cannot generally simplify ##\sqrt{x^2}=x##. That is an incorrect SYMBOLIC substitution for general x. Similarly with ##\sqrt{(1+x^2)^2}=1+x^2##.

There are cases where Mathematica does not simplify as well as humans do, but this is not one of them. If you give correct assumptions for a and c then Mathematica will correctly simplify it, but if you do not give any assumptions then it assumes that they can have any value, including complex values, and then the simplification is not valid.
 
Last edited:
  • #107
Virous, btw, I didn't follow this thread all the way, but I do have some simple Mathematica code for doing special relativity exercises. It is based on 4-vectors, so it is rather convenient to use for momentum and other similar problems.
 
  • #108
DaleSpam said:
No, this is not always true.

Mathematica is correct in this case. You cannot generally simplify ##\sqrt{x^2}=x##. That is an incorrect SYMBOLIC substitution for general x. Similarly with ##\sqrt{(1+x^2)^2}=1+x^2##.

There are cases where Mathematica does not simplify as well as humans do, but this is not one of them. If you give correct assumptions for a and c then Mathematica will correctly simplify it, but if you do not give any assumptions then it assumes that they can have any value, including complex values, and then the simplification is not valid.

The point was that Mathematica did the correct job (replicating the one that I did) only AFTER Vitrous inserted the condition a<c, so it had nothing to do with the claim that Mathematica couldn't evaluate ##\sqrt{x^2}=\pm x##. The real problem was that Mathematica got stuck on ANOTHER expression, \sqrt{1-a^2/c^2} and it needed a little "prodding" by being "told" that a<c.
 
Last edited:
  • #109
It didn't get stuck, it gave a correct simplification given the (lack of) assumptions.
 
  • #110
DaleSpam said:
It didn't get stuck, it gave a correct simplification given the (lack of) assumptions.

The correct result (produced by a human) is zero. Mathematica stopped way short of that, actually several steps short, leading Virous to the conclusion that the momentum was not conserved (turns out that it is). The reason could be traced to Mathematica's insistence in looking under the square root for reasons I cannot fathom. This is not a bug per se but it is definitely a shortcoming.
 
Last edited:
  • #111
It is correct behavior. It is not a bug and it is not a shortcoming. If it were to not look under the square root, as you suggest, then it would be mathematically wrong.

In general, ##\sqrt{x^2} \ne x##, and Mathematica correctly recognizes that fact by not making that substitution in general. If you place conditions on x such that the expression is true, then Mathematica will simplify it.

It is true that Simplify and FullSimplify are not perfect, but this particular thing that you are mentioning is not a flaw. One problem that it has is that it counts "leafs" to evaluate which expression is more complicated than another, and sometimes an expression with more "leafs" is judged by a human to be simpler.
 
  • #112
DaleSpam said:
It is correct behavior. It is not a bug and it is not a shortcoming. If it were to not look under the square root, as you suggest, then it would be mathematically wrong.

In general, ##\sqrt{x^2} \ne x##, and Mathematica correctly recognizes that fact by not making that substitution in general. If you place conditions on x such that the expression is true, then Mathematica will simplify it.

You need to go back and read the thread, Mathematica got stuck on a totally different type of expression, \sqrt{1-a^2/c^2}, \sqrt{1-b^2/c^2}. It got unstuck only after Virous "taught it" that a,b<c. ##\sqrt{x^2} \ne x## is not the issue, never was.
 
  • #113
Sorry, I didn't read the thread in detail. Which post was this?

What was the problem with ##\sqrt{1-a^2/c^2}##? That doesn't and shouldn't simplify further.
 
  • #114
DaleSpam said:
Sorry, I didn't read the thread in detail. Which post was this?

Well, you need to go back and read the thread, I will provide you with the exact post.

What was the problem with ##\sqrt{1-a^2/c^2}##? That doesn't and shouldn't simplify further.

Correct, it has nothing to do with any simplification, it has to do with Mathematica's inability to complete some symbolic computations when it encounters an expression that may be EITHER real OR imaginary.
 
  • #115
You need to g o back to post 90 and to start reading from there on. Virous has attached the offending Mathematica code as well as his "fix".
 
  • #116
xox said:
Correct, it has nothing to do with any simplification, it has to do with Mathematica's inability to complete some symbolic computations when it encounters an expression that may be EITHER real OR imaginary.
What is the specific symbolic computation that you are claiming that it does not complete and should?
 
  • #117
DaleSpam said:
What is the specific symbolic computation that you are claiming that it does not complete and should?

It needs to bring the expression to a simpler form and to execute a subsequent reduction of like terms. The correct answer is "zero". Mathematica doesn't operate either the simplification, nor the reduction of like terms.
 
  • #118
That is not a specific symbolic computation, that is a general complaint.

I put in the expression in post 100, and without the assumption you get terms under the square root that could be negative. So the behavior is correct.
 
  • #119
DaleSpam said:
I put in the expression in post 100, and without the assumption you get terms under the square root that could be negative.

Yes, this is EXACTLY the problem, there is NO reason to check the terms under the square root.
 
  • #120
Sure there is. You want to see if they simplify. If it didn't check the terms under the square root then you would complain that it didn't simplify things under square roots.
 
  • #121
DaleSpam said:
Sure there is. You want to see if they simplify. If it didn't check the terms under the square root then you would complain that it didn't simplify things under square roots.

Do me a favor, please do the calculation in post 100 by hand, it is not very complicated. To make things easier, calculate ONLY the y component of the momentum, no need to do the x component. This halves the number of terms. Post the LaTeX. Please point out where you needed to "check the terms under the square roots".
 
Last edited:
  • #122
If you don't look under the square roots then you get:

$$-\frac{2 a m}{\left(B^2+1\right) g}+\frac{b m}{\left(1-B^2\right) g y}-\frac{b
m}{\left(B^2+1\right) h y}$$

Where y and B are defined as in post 100 and $$g=\sqrt{1-\frac{b^2}{\left(1-B^2\right)^2 c^2 y^2}}$$ and $$ h= \sqrt{1-\frac{\frac{4 a^2}{\left(B^2+1\right)^2}+\frac{b^2}{\left(B^2+1\right)^2
y^2}}{c^2}}$$

So you need to check the terms under the square roots pretty quick.
 
  • #123
DaleSpam said:
If you don't look under the square roots then you get:

$$-\frac{2 a m}{\left(B^2+1\right) g}+\frac{b m}{\left(1-B^2\right) g y}-\frac{b
m}{\left(B^2+1\right) h y}$$

Where y and B are defined as in post 100 and $$g=\sqrt{1-\frac{b^2}{\left(1-B^2\right)^2 c^2 y^2}}$$ and $$ h= \sqrt{1-\frac{\frac{4 a^2}{\left(B^2+1\right)^2}+\frac{b^2}{\left(B^2+1\right)^2
y^2}}{c^2}}$$

So you need to check the terms under the square roots pretty quick.

Please prove that I need "to check the terms under the square root", this is all I asked. You did not finish the calculations, I did and I did not have to check any radicand.
 
  • #124
Prove what? I thought we were looking at the results of FullSimplify.
 
  • #125
DaleSpam said:
Prove what?

that one needs to check any of the radicands for being positive.
 
  • #126
They don't simplify otherwise.
 
  • #127
DaleSpam said:
They don't simplify otherwise.

Continue the calculations, show that this is the case.
 
  • #128
Continue what calculations? I finished and posted it. That is as simple as the expression goes without additional information.
 
  • #129
DaleSpam said:
I do have some simple Mathematica code for doing special relativity exercises. It is based on 4-vectors, so it is rather convenient to use for momentum and other similar problems.
Here is a copy of the code. Use at your own risk :smile:
 

Attachments

Back
Top