Name: Vladyslav Shtabovenko Date: 09/19/15-10:01:32 PM Z


The fix is now in the repository.

Essentially one can now supply Assumptions as an option to Calc
or PowerSimplify which will be then internally passed to PowerExpand
inside PowerSimplify.

Please check the Options section in

https://reference.wolfram.com/language/ref/PowerExpand.html#

on using Assumptions with PowerExpand.

The default value in FeynCalc is “True”, which means that PowerExpand
will not make any possibly wrong expansions.

Therefore,

Calc[Sqrt[x - 1],Assumptions->{x>1}]

returns the correct result. Please note that here the assumptions must
be supplied this way, as PowerExpand doesn’t use $Assumptions, e.g.

$Assumptions = {x < 0};
PowerExpand[Sqrt[x^2]]

still returns x, contrary to

PowerExpand[Sqrt[x^2], Assumptions -> x < 0]

that returns -x. This is standard Mathematica behavior.

Furthermore, I’ve also added an option to disable PowerExpand
altogether, via

Calc[Sqrt[x - 1], PowerExpand->False]

Cheers,
Vladyslav

Am 16.09.2015 um 00:44 schrieb Vladyslav Shtabovenko:
> Dear all,
>
> sorry for the late reply, at the moment I’m a bit busy finishing one
> important calculation.
>
> As Rolf wrote, Calc uses PowerSimplify which uses PowerExpand. The
> latter can either assume that everything is real (default behaviour) or
> use general expansion formulas if the arguments might be complex (which
> we have now). Unfortunately, in this case PowerExpand doesn’t take
> $Assumptions into account.
>
> I think that the simplest solution would be to make Calc and
> PowerSimplify accept the Assumptions option which will be then passed to
> PowerExpand. Then it will be up to the user to specify the assumptions.
>
> As a workaround for now,
>
> Sqrt[x - 1] // Calc // Simplify
>
> returns the correct result, as Simplify always honors $Assumptions.
>
> I’ll fix this soon.
>
> Cheers,
> Vladyslav
>
>
>
> Am 14.09.2015 um 10:58 schrieb Rolf Mertig:
>> This is due to me. Sorry.
>>
>> Somehwere internally PowerSimplify is used which assumes all variables are real. Maybe this assumption is not correct in general, of course. I mentioned this to Vladyslav and he will look into how to fix this. Sorry, but I have no time right now.
>>
>