09/05/2011, 01:07 PM
(This post was last modified: 11/21/2011, 09:33 PM by sheldonison.)

(09/05/2011, 05:05 AM)sheldonison Wrote:I wasn't able to reproduce the error you saw, but I think I know what the problem is. sqrt(2)<eta, which is a special case for the program. The problem I suspect you're having is that I changed the code in this last round of optimizations, so that the superf/isuperf routines now use a power series, but the power series for the superfunction and inverse superfunction only gets calculated when you calculate the kneser mapping, which didn't used to be the case. I forgot that you were using the program the code only for the superfunctions, and not to generate a kneser mapping. I realize you have no interest in the esoteric kneser mapping I calculate for the sqrt(2) base, but it only takes a few seconds to caulcate. The fix for your problem is probably to execute the "loop;" command after init(sqr(2)). Then the graphs I generated for exp2(-2,t) and exp2(+2,t), worked fine.(09/04/2011, 08:16 PM)JmsNxn Wrote: Sheldon, I'm wondering if I'm doing something wrong here, but whenever I try to plot anything with this function:I'll take a look.... you're probably using base sqrt(2), which has two different superfunction solutions and fixed points of 2 and 4. I'll post some more after I do some experiments for base sqrt(2), along with your routine.

Code:`V(a,b,t) = {`

if (real(t)<1, return(exp2(t,exp2(-t,a)+exp2(-t,b))));

if (real(t)>=1, return(exp2(t,exp2(-t,a)+exp2(-1,b))));

}

exp2(t, a) = {

if (a==2, return(2));

if (a == 4, return(4));

if (real(a)>2, return(superf(isuperf(a)+t)), return(superf2(isuperf2(a)+t)));

}

I repeatedly get a cryptic Win32 error:

Code:`gp 4852 child_copy: linked dll data write copy failed`

This is my proposed "natural" extension to the Ackermann function, I'm confused as to why it won't plot.

I appreciate any help you can give me, thanks.

- Shel

- Shel

Code:

`\r kneser.gp`

init(sqrt(2));

loop;

exp2(t, a) = {

if (a==2, return(2));

if (a == 4, return(4));

if (real(a)>2, return(superf(isuperf(a)+t)), return(superf2(isuperf2(a)+t)));

}

ploth(t=1.5,5,z=exp2(2,t);[real(z),imag(z)]);

ploth(t=1.5,5,z=exp2(-2,t);[real(z),imag(z)]);