When do I use GenerateConditions and Assumptions with Integrate or Sum?
Integrate
and Sum
evaluations return generic solutions. These are usually correct for general cases, but may not apply for specific parameter values (see Generic and Non-Generic Cases).
For example, this summation is unbounded if x
is greater than or equal to 1:
In[1]:= Sum[x^n, {n, 0, Infinity}]
Out[1]= 1 / (1 - x)
The GenerateConditions
->True option tells the function to state when the solution is valid.
Now we confirm that the result applies only for Abs[x]<1
:
In[2]:= Sum[x^n, {n, 0, Infinity}, GenerateConditions -> True]
Out[2]= ConditionalExpression[1/(1 - x), Abs[x] < 1]
If any condition is known already, the Assumptions
option can be used to tell Sum
about it. This gives a simple output suitable for later use in the code. The explicit condition used here will need to be remembered when the result is used:
In[3]:= Sum[x^n, {n, 0, Infinity}, Assumptions -> {-1 < x && x < 1}]
Out[3]= 1/(1 - x)
Assumptions can also be passed using the Assuming
function or $Assumptions
:
In[4]:= Integrate[1/(x + a), {x, 0, 1}]
Out[4]= ConditionalExpression[-Log[a] + Log[1 + a],
Re[a] > 0 || Re[a] < -1 || NotElement[a, Reals]
In[5]:= Assuming[a > 0, Integrate[1/(x + a), {x, 0, 1}]]Out[5]= Log[1 + 1/a]
In[6]:= $Assumptions = a > 0;
Integrate[1/(x + a), {x, 0, 1}]Out[7]= Log[1 + 1/a]
This resets $Assumptions
to its default:
In[8]:= $Assumptions =. ;
Entre em contato com o Suporte
Caso tenha alguma dúvida sobre cobrança, ativação ou suporte técnico, estamos a sua total disposição.
1-800-WOLFRAM (+1-217-398-0700 para chamadas internacionais)
Suporte ao consumidor
Segunda–Sexta
8:00–17:00 Horário Central dos EUA
- Registro ou ativação do produto
- Informações de pré-venda e pedidos
- Ajuda com instalação e início
Suporte técnico avançado (para clientes habilitados)
Segunda–Quinta
8:00–19:00 Horário Central dos EUA
FSexta
8:30–10:00 & 11:00–17:00 Horário Central dos EUA
- Suporte técnico prioritário
- Assistência com especialistas da Wolfram
- Ajuda com a programação da Wolfram Language
- Suporte avançado de instalação