[GiNaC-devel] Power laws

Richard B. Kreckel kreckel at in.terlu.de
Thu Apr 9 01:51:09 CEST 2020


Hi Vladimir!

On 06.04.20 14:34, Vladimir V. Kisil wrote:
> 	Coming back to our previous discussion (with a long history) on
>    the power law (e^x)^a=e^(x*a). I am attaching a patch which does not
>    break the automatic simplification exp(x)/exp(x)=1.

Your new patch is much better since it doesn't break any existing test 
suite.

Playing around with it, it still seems to raise some fundamental 
questions: What justifies treating exp(x)^a fundamentally different than 
any other (b^x)^a with a (positive) base b? With the patch, there seems 
to be this discrimination: exp(x)^5 is rewritten to exp(5*x) but (b^x)^5 
is _not_ rewritten to b^(5*x).

It's a nice pastime to fancy consequences of this. Let y=b^x, then 
normal((y^2-1)/(y+1)) returns b^x-1. But if y=exp(x), the patch prevents 
the normalization to exp(x)-1. Ugh.

Or, consider this gedankenexperiment: If we didn't have exp(x) as a 
function but instead a symbol e, would it be justified to have special 
re-writing rules for (e^x)^a but not for (b^x)^a? I'm not sure...

Best wishes,
   -richy.
-- 
Richard B. Kreckel
<https://in.terlu.de/~kreckel/>


More information about the GiNaC-devel mailing list