code 41521;
real procedure FISHER(X, DF1, DF2); value X, DF1, DF2;
    real X, DF1, DF2;
begin real IB;

      if DF1 ≤ 0 then
           FISHER:= STATAL3 ERROR(“FISHER”,2,DF1)
      else
      if DF2 ≤ 0 then
           FISHER:= STATAL3 ERROR(“FISHER”,3,DF2)
      else
      if X ≤ 0 then FISHER:= 0
      else
      begin IB:= INCOMPLETE BETA(DF2/(DF2 + DF1 × X)
           , DF2/2,DF1/2,10-12);
           if IB < 0 then IB:= 0
           else if IB > 1 then IB:= 1;
           FISHER:= 1 - IB
      end
end FISHER;
eop