Message Boards Message Boards

1
|
3150 Views
|
3 Replies
|
4 Total Likes
View groups...
Share
Share this post:

How do I get Exp[x + y] to be transformed into Exp[x] * Exp[y]?

Posted 11 years ago

Starting with:

In[109]:= Exp[x] Exp[y]

Out[109]= E^(x + y)

I've tried the following (amongst others things) to return to the original form:

In[110]:= ExpandAll[%]

Out[110]= E^(x + y)

In[111]:= Expand[%]

Out[111]= E^(x + y)

In[112]:= PowerExpand[%]

Out[112]= E^(x + y)

In[113]:= Simplify[%]

Out[113]= E^(x + y)

In[114]:= Complicate[%]

Out[114]= Complicate[E^(x + y)]

In[115]:= ComplexExpand[E^(x + y)]

Out[115]= E^(x + y)

In[116]:= Factor[%]

Out[116]= E^(x + y)

In[117]:= ClickYourHealsTogetherThreeTimesDorothy[%]

Out[117]= ClickYourHealsTogetherThreeTimesDorothy[E^(x + y)]

Thanks!

POSTED BY: Craig Richmond
3 Replies

You may experiment with the new Inactive function:

Exp[x + y + z] //. E^HoldPattern[Plus[fcts__]] :> Inactive[Times] @@ Map[Exp, {fcts}]

I am not familiar with Inactive yet.

POSTED BY: Gianluca Gorni
Posted 11 years ago

Excellent! That also solves the issue I've had with the Log function:

Log[x y z] //.Log[HoldPattern[Times[fcts__]]] :> Inactive[Plus] @@ Map[Log, {fcts}]

which gets me

   Log[x]+Log[y]+Log[z]

Thanks to both of you!

POSTED BY: Jim Baldwin
Posted 11 years ago

Thank you,

POSTED BY: Craig Richmond
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract