Re: Replace each f in f^n to different variables

• To: mathgroup at smc.vnet.net
• Subject: [mg126034] Re: Replace each f in f^n to different variables
• From: Ray Koopman <koopman at sfu.ca>
• Date: Fri, 13 Apr 2012 04:52:39 -0400 (EDT)
• Delivered-to: l-mathgroup@mail-archive0.wolfram.com
• References: <jm64ff\$6kn\$1@smc.vnet.net>

```On Apr 12, 1:41 am, Yi Wang <tririverwan... at gmail.com> wrote:
> Hi, all,
>
> I want to replace *each* f in f^n to a different variable, say
>
> f^n -> var1 * var2 * ... * varn
>
> Naively, if I try
>
> f^n /. f:>Unique[],
>
> Mathematica simply returns (a unique variable)^n, instead of the above behaviour.
>
> Is there a simple way to get the f's into different variables?
>
> Thanks!
> Yi
>
> PS:
>
> (1) I know there are ways to transform Power to a list by hand, and then do something in it. For example,
>
> Times[((f^3)[[1]]*Table[1, {(f^3)[[2]]}]) /. f :> Unique[]]
>
> However, eventually I will be dealing with a large expression, with all kinds of terms, instead of a single term. This method quickly becomes very complicated.
>
> (2) I want to do such "strange" things, because a product of functions in position space f(x)^n becomes F(k1)F(k2)...F(k_{n-1})F(-k1-k2...) in momentum space.

r := _^n_Integer?Positive :> Times@@Table[Unique[],{n}]

f^3 /. r

\$1 \$2 \$3

```

• Prev by Date: Re: What characters are allowed in mathematica variable names? i.e. how
• Next by Date: Re: Replace a vertical line in ListPlot
• Previous by thread: Re: Replace each f in f^n to different variables
• Next by thread: Re: Replace each f in f^n to different variables