Use of $Assumptions [duplicate] This question already has an answer here: I don't really understand the behaviour and the usage of $Assumption. For instance, when I set $Assumptions = λ > 0, I expect that TrueQ[λ > 0]  or at least  Reduce[ TrueQ[λ > 0]]  return True, but both return False. Then I was wondering how to make more assumptions: $Assumptions = λ > 0 && c > 0 && a < 0 && λ ∈ Reals && a ∈ Reals && c ∈ Reals &&
n ∈ Integers && n > 0


Now, if I try to Reduce the following,

Reduce[Product[1 + (λ + c)/f[x],x] <= (a ((λ + c)/λ))^n]


The condition (a (c + λ))/λ)^n ∈ Reals is not obvious, and

TrueQ[((a (c + λ))/λ)^n ∈ Reals]
(* False *)


I read the documentation but I don't understand the problem.

-

marked as duplicate by Jens, m_goldberg, Michael E2, R. M.♦Aug 3 '13 at 1:21

@Nasser Why? I plan to use many expression using the same assumptions, so I decided to assume them globally... – altroware Aug 2 '13 at 17:02
Only a small number of Mathematica functions make use of assumptions. You need to read this documentation page, which gives the list and will give you a better understanding of when and how Mathematica makes use of assumptions. – m_goldberg Aug 2 '13 at 22:36

Perhaps you misunderstood the usage of TrueQ. It doesn't make use of assumptions, and neither does Reduce. Replace it by Simplify everywhere to make use of the $Assumptions: $Assumptions = λ > 0

(* ==> λ > 0 *)

Simplify[λ > 0]

(* ==> True *)

\$Assumptions = λ > 0 && c > 0 &&
a < 0 && λ \[Element] Reals && a \[Element] Reals &&
c \[Element] Reals && n \[Element] Integers && n > 0;

Simplify[((a (c + λ))/λ)^n \[Element] Reals]

(* ==> True *)


The larger expression

Reduce[Product[1 + (λ + c)/f[x],x] <= (a ((λ + c)/λ))^n]


can't be simplified because neither f[x] nor n on the left-hand side of the equation are defined. n is probably meant to be the number of terms in the product, but you're using Product without limits.

-