Does MathLib support Double Precision?

If so, how can I access that for a program I wrote? This program calculates Fibonacci numbers the standard way and then uses a formula to calculate the same number. The difference is that the formula lets you calculate a specific number in the series without calculating all the preceeding oned the way the standard version does. Problem is that after som number of successful computations with small Fibonacci numbers, it starts to fail. Double ptrcision would let me use it to solve most useful problems on the PalmPilot.

The output fails at sequence number 24, see below.

--------------------------------

// FIBONACCI.c

/*#define fib_index=((int)(z=(log(FIB[j])+log(5)/2)/log (golden)+0.00));*/

main()

{

int FIB[256];

int i,j,k,kk,x;

float z, golden,zz;

clear();

golden=1.6180340;//39; these last digits are not used by PocketC

zz=1-0.065646318;

puts(zz+"\n");

k=317811;j=28;

z=(pow(golden,j)-pow((1-golden),j))/sqrt(5.0);

i=z+0.9; // this rounds up for the integer comparison (shouldnt need)

puts(z +"--"+i+"--"+k+"\n");

for(i=0;i<=255;i++)FIB[i]=0;

i=0;

FIB[i]=0;

FIB[i++]=1;

for(j=2; j<=255; j++)

{//begin for j

FIB[j]=FIB[j-1] + FIB[j-2];//Standard formula

k=(int)(((log10(FIB[j])+0.349485002)/0.20858764)+0.04);//new formula

puts("\n#"+(j-1)+"-F"+FIB[j]+"-#"+k+"+x=");

for

(x=FIB[j-1]+1;x<=FIB[j];x++)

{//begin for x

kk=(int)(((log10(x*zz)+0.349485002)/0.20858764)+0.04);

if(kk== k)

{puts(x+"dif="+(FIB[j]-x));break;}

//f(x==FIB[j-1])

//{puts(x+"=F[j-1]"+FIB[j-1]);}

}//end for x

//if(x-1==FIB[j])

{puts(" "+(x-1)+"="+FIB[j]);}

if(FIB[j]>=100000000)break;

}//end for

}

------------------------------

Output:

------------------------------

FIB SEQUENCE 1-27

#1-F-1-#-1+x=1dif=0

#2-F-1-#-1+x=

#3-F-2-#-3+x=2dif=0

#4-F-3-#-4+x=3==3

#5-F-5-#-5+x=5==5

#6-F-8-#-6+x=8==8

#7-F-13-#-7+x=13==13

#8-F-21-#-8+x=21==21

#9-F-34-#-9+x=34==34

#10-F-55-#-10+x=55==55

#11-F-89-#-11+x=89==89

#12-F-144-#-12+x=144==144

#13-F-233-#-13+x=233==233

#14-F-377-#-14+x=377==377

#15-F-610-#-15+x=610==610

#16-F-987-#-16+x=987==987

#17-F-1597-#-17+x=1597==1597

#18-F-2584-#-18+x=2584==2584

#19-F-4181-#-19+x=4181==4181

#20-F-6765-#-20+x=6765==6765

#21-F-10946-#-21+x=10946==10946

#22-F-17711-#-22+x=17711==17711

#23-F-28657-#-23+x=28657==28657

#24-F-46368-#-24+x=46341dif=27

#25-F-75025-#-25+x=74912dif=113

#26-F-121393-#-26+x=121099dif=294

#27-F-196418-#-27+x=195762dif=656

#28-F-317811-#-28+x=