I want Mathematica to solve the following by assuming the part within the Log function, which is ((P - T) (L - P0))/((L - P) (P0 - T)), to be positive and give a result that is not a conditional expression. How do I add assumptions to the Solve command?

Clear[k, P, t, T, L, P0]
Solve[L/(L - T) (Log[((P - T) (L - P0))/((L - P) (P0 - T))]) == k*t,

Any suggestion is much appreciated. Thanks

  • 2
    $\begingroup$ Welcome to Mathematica.SE @MathHelpNeeded! I suggest: 1) You take the introductory Tour now! 2) When you see good questions and answers, vote them up by clicking the gray triangles, because the credibility of the system is based on the reputation gained by users sharing their knowledge. Also, please remember to accept the answer, if any, that solves your problem, by clicking the checkmark sign! 3) As you receive help, try to give it too, by answering questions in your area of expertise. $\endgroup$ – Verbeia Apr 28 '15 at 6:50
  • $\begingroup$ @MathHelpNeeded I converted my previous comment to your question into an answer. If you find that it useful, I would appreciate it if you would officially accept it. Thanks! $\endgroup$ – MarcoB Apr 28 '15 at 23:27

The ConditionalExpression output by Solve in your case does not really depend on the whole argument of the Log function in your original equation, but only on the following expression:

-π < Im[(k t (L - T))/L] ≤ π

If it is possible in your case to make assumptions on the values of those parameters, you could then try to Simplify the output of Solve using the Assuming function.

For instance, if your parameters are real numbers, and L is positive, you could write:

  { {k, t, L, T, P} \[Element] Reals, L > 0},
    Solve[L/(L - T) (Log[((P - T) (L - P0))/((L - P) (P0 - T))]) == k*t, P]

The result of that last command no longer depends on a ConditionalExpression.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.