The inverse cdfbet function seems to be wrong on Linux 32 bits. Try the following script:
a = 1;
b = 2;
p = 0;
q = 1-p;
x = cdfbet("XY",a,b,p,q)
On Linux 32 bits with Scilab 5.3.2, it returns:
-->x = cdfbet("XY",1,2,0,1)
x =
5.000D-51
But Octave (where the calling sequence is X = betainv(P,A,B)) returns :
octave:1> betainv(0,1,2)
ans = 0
Zero is the exact result. To convince us, let us use the direct function:
a = 1;
b = 2;
x = 0;
y = 1-x;
[p,q] = cdfbet("PQ",x,y,a,b)
The previous script returns:
-->[p,q] = cdfbet("PQ",x,y,a,b)
q =
1.
p =
0.