packages feed

apple-0.3.0.0: math/chisqcdf.apple

λk.λx.
{
  -- lower incomplete gamma
  𝛾 ← λa.λx.
    {
      f11 ← λa.λb.λz.
      {
        rf ← [(*)/ₒ 1 (𝒻 x (x+y-1) (⌊y))]; fact ← rf 1;
        Σ ← λN.λa. (+)/ₒ 0 (a'(⍳ 0 N 1));
        term ← λn. {nn⟜ℝ n; ((rf a nn)%(rf b nn))*((z^n)%(fact nn))};
        Σ 50 term
      };
      ((x**a)%a)*f11 a (1+a) (_x)
    };
  Γ ← λz.
    {
      zz ⟜ z-1;
      c0 ← 0.999999999999997092;
      𝛾 ← 607%128;
      coeffs ← ⟨ 57.1562356658629235
               , _59.5979603554754912
               , 14.1360979747417471
               , _0.491913816097620199
               , 0.339946499848118887e-4
               , 0.465236289270485756e-4
               , _0.983744753048795646e-4
               , 0.158088703224912494e-3
               , _0.210264441724104883e-3
               , 0.217439618115212643e-3
               , _0.164318106536763890e-3
               , 0.844182239838527433e-4
               , _0.261908384015814087e-4
               , 0.368991826595316234e-5
               ⟩;
      ss ← (+)/ ([y%(zz+ℝ x)]`(⍳ 1 14 1) coeffs);
      e:((((zz+0.5)*(_.(zz+𝛾+0.5)))-(zz+𝛾+0.5))+_.((√(2*𝜋))*(c0+ss)))
    };
  𝛾 (k%2) (x%2)%Γ(k%2)
}