Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2001
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2001

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Re: Automatic expansion of Log[a^n] for a,n explicit positive integers?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg28241] Re: [mg28229] Re: [mg28180] Automatic expansion of Log[a^n] for a,n explicit positive integers?
  • From: Chris Johnson <cjohnson at shell.faradic.net>
  • Date: Fri, 6 Apr 2001 01:52:50 -0400 (EDT)
  • Sender: owner-wri-mathgroup at wolfram.com

Harald,

You could use this function:

lg[z_?IntegerQ] := Plus @@ Apply[#2 Log[#1] &, FactorInteger[z], 2]

I tried to incorporate this into the definition of Log by:

Unprotect[Log];
Log[z_?IntegerQ] := Plus @@ Apply[#2Log[#1] &, FactorInteger[z], 2];
Protect[Log];

But I get a recursion error.  I hope someone else might be able to suggest
a way to avoid this.  Putting Hold around the Log in the pure function
leaves the Hold in the output.  I hoped I could first define

Log[z_?PrimeQ] := Log[z] 

to catch the Prime case, but this also leads to recursion.

Chris

On Thu, 5 Apr 2001, Tomas Garza wrote:

> If you are only concerned about powers of 2, then you may define the
> functiion lg and use it always instead of Log:
> 
> In[1]:=
> lg[n_] := If[Mod[n, 2] == 0, IntegerExponent[n, 2]*Log[2], Log[n]]
> 
> Then, e.g.,
> 
> In[1]:=
> {lg[2], lg[4], lg[8], lg[16], lg[32], lg[3]}
> Out[1]=
> {Log[2], 2 Log[2], 3 Log[2], 4 Log[2], 5 Log[2], Log[3]}
> 
> Tomas Garza
> Mexico City
> ----- Original Message -----
> From: "Harald Anlauf" <anlauf at hep.tu-darmstadt.de>
To: mathgroup at smc.vnet.net
> To: mathgroup at smc.vnet.net
> Subject: [mg28241] [mg28229] [mg28180] Automatic expansion of Log[a^n] for a,n explicit positive
> integers?
> 
> 
> > Hi,
> >
> > is there a way to force Mathematica 4.0 to always expand expressions like
> >
> > Log[4], Log[8], Log[16], etc. to 2*Log[2] etc.
> >
> > automatically?
> >
> > It is very annoying to have such logarithms expanded manually each
> > time they pop up again...
> >
> > PowerExpand[] apparently does not help/work.
> >
> > --
> > Ciao,
> > -ha
> >
> 
> 



  • Prev by Date: Re: Re: Automatic expansion of Log[a^n] for a,n explicit positive integers?
  • Next by Date: Re: Patterns Problem
  • Previous by thread: Re: Re: Automatic expansion of Log[a^n] for a,n explicit positive integers?
  • Next by thread: Change of variables in integration