Is there a reason MuPad doesn't find the obvious cancellation?

I have:
f := 1/2* sqrt( 16-x^2 )
df := diff( f, x )
simplify( f * sqrt( 1 + df^2 ) )
mupad doesn't find the obvious cancellation (sqrt( 16-x^2 ) should go away)
Why not? Is there an algebraic reason I'm missing, or am I using the simplify function incorrectly, or is it something else?

 Akzeptierte Antwort

Matt Tearle
Matt Tearle am 17 Jun. 2011
I'm guessing it's something to do with assumptions about squares and square roots, and maybe denominators. Wouldn't swear to it, though. If you want it to do what you'd probably do by hand, you can try this:
Simplify(f * sqrt( 1 + df^2 ),IgnoreAnalyticConstraints)
(Note the capital S)

1 Kommentar

Thank you, this is a very nice feature (capital S- Simplify)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 17 Jun. 2011

0 Stimmen

In particular sqrt(t) * sqrt(1/t) does not cancel if t is 0. Or in your case, if x = +/- 4

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by