### Related

##### distrib-fullratsimp-ratsimp-xthru

a: 1/(c-d)-c/(c^2-d^2...

xthru(a);

b:ratsimp(a);

Calculate

numer:true;

m:12;

Calculate

nsolve(cdf_normal(1, ...

Calculate

expand(pdf_noncentral...

pdf_chi2(x,n);

Calculate

integrate(pdf_chi2(x,...

Calculate

##### distrib-expand-multthru

distrib ((a+b) * (c+d));

multthru ((a+b) * (c...

distrib (1/((a+b) * ...

Calculate

u:0;

sigma:1;

Calculate

kill(all);

mu: n^2*0.85;

Calculate

##### distrib-dontfactor-solve

eq1:V = F * ((C*(1 - ...

res:solve(eq1, Y);

dontfactor:[H, V, M, ...

Calculate

pdf_poisson(0,3),numer;

Calculate

### distrib

Run Example
```(%i1)load(distrib);
(%o1)     /usr/share/maxima/5.21.1/share/contrib/distrib/distrib.mac
(%i2)  n:10;
(%o2)                                 10
(%i3) p:1/6;
1
(%o3)                                  -
6
(%i4) versuche:1000 /* diese Anzahl sollte man variieren: 100,1000,10000,... die Ausführungsdauer steigt allerdings */;
(%o4)                                1000
(%i5) anzahl_6:random_binomial(n,p,versuche);
(%o5) [1, 1, 3, 2, 2, 3, 1, 3, 2, 2, 1, 0, 3, 3, 2, 4, 3, 2, 1, 1, 2, 2, 1, 1,
1, 3, 1, 1, 1, 0, 2, 1, 2, 1, 0, 0, 0, 3, 3, 1, 4, 1, 2, 4, 2, 1, 2, 2, 0, 2,
2, 4, 0, 2, 1, 0, 4, 2, 0, 1, 0, 0, 1, 3, 2, 3, 3, 2, 4, 0, 1, 6, 0, 2, 0, 1,
3, 2, 1, 0, 2, 1, 2, 2, 4, 2, 3, 1, 1, 3, 1, 2, 1, 2, 1, 2, 2, 1, 3, 1, 1, 2,
0, 0, 1, 0, 2, 1, 0, 2, 1, 3, 1, 2, 2, 0, 1, 2, 0, 0, 1, 3, 3, 1, 1, 1, 2, 0,
4, 0, 3, 1, 1, 2, 3, 4, 1, 0, 0, 1, 2, 2, 1, 2, 1, 1, 2, 3, 2, 1, 3, 1, 0, 2,
1, 1, 1, 1, 4, 3, 0, 1, 0, 1, 2, 2, 3, 2, 0, 0, 1, 2, 4, 2, 1, 2, 0, 1, 4, 1,
4, 2, 0, 2, 1, 0, 3, 3, 2, 1, 3, 2, 2, 1, 1, 3, 1, 2, 3, 2, 0, 4, 2, 0, 2, 5,
3, 1, 1, 5, 2, 2, 2, 4, 0, 1, 2, 1, 0, 3, 1, 1, 1, 1, 4, 4, 0, 2, 1, 1, 0, 3,
0, 1, 3, 2, 2, 1, 0, 2, 4, 2, 2, 1, 4, 3, 3, 0, 1, 1, 5, 2, 4, 1, 2, 2, 1, 2,
1, 0, 1, 0, 1, 2, 3, 2, 0, 3, 2, 1, 0, 0, 1, 2, 4, 1, 3, 3, 2, 1, 1, 0, 1, 0,
1, 2, 3, 0, 3, 1, 4, 2, 2, 1, 3, 1, 3, 1, 1, 1, 2, 3, 0, 1, 0, 2, 0, 1, 2, 2,
4, 1, 2, 1, 3, 1, 1, 0, 3, 2, 1, 0, 1, 1, 2, 1, 4, 1, 2, 1, 2, 0, 3, 2, 1, 3,
1, 1, 1, 1, 3, 3, 3, 2, 1, 4, 1, 2, 2, 3, 2, 2, 2, 3, 2, 0, 2, 4, 3, 0, 2, 3,
2, 2, 4, 2, 3, 1, 1, 2, 1, 0, 2, 0, 1, 2, 0, 1, 0, 0, 0, 1, 2, 1, 2, 2, 1, 1,
1, 1, 0, 1, 0, 0, 2, 1, 1, 2, 1, 2, 3, 0, 4, 1, 1, 3, 2, 2, 1, 1, 0, 1, 3, 1,
2, 2, 2, 3, 0, 4, 1, 4, 2, 2, 2, 2, 2, 1, 1, 1, 2, 1, 0, 2, 2, 0, 1, 0, 1, 5,
2, 0, 5, 1, 2, 0, 0, 2, 2, 2, 3, 1, 0, 3, 3, 2, 2, 2, 4, 3, 3, 1, 3, 0, 2, 1,
2, 2, 4, 3, 1, 0, 1, 2, 3, 2, 1, 1, 3, 2, 2, 3, 0, 1, 3, 3, 1, 2, 1, 0, 3, 3,
0, 1, 2, 1, 0, 4, 1, 2, 2, 4, 3, 2, 2, 1, 1, 0, 3, 3, 3, 1, 1, 3, 0, 0, 1, 1,
1, 0, 1, 1, 2, 2, 1, 0, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 0, 4, 2, 3, 1, 1, 2, 0,
3, 1, 1, 1, 1, 3, 0, 1, 2, 1, 1, 1, 1, 1, 2, 2, 3, 2, 2, 0, 3, 2, 5, 3, 3, 1,
3, 1, 0, 1, 3, 1, 3, 0, 4, 4, 1, 3, 4, 1, 2, 1, 2, 1, 2, 2, 0, 1, 2, 1, 3, 2,
1, 2, 0, 1, 3, 1, 2, 1, 1, 2, 0, 1, 2, 2, 2, 2, 2, 1, 2, 2, 2, 1, 2, 1, 2, 1,
2, 1, 2, 2, 3, 0, 3, 0, 3, 1, 0, 2, 1, 2, 2, 2, 1, 1, 2, 1, 2, 4, 0, 0, 1, 1,
0, 3, 1, 1, 3, 2, 1, 1, 2, 1, 3, 0, 2, 2, 2, 1, 1, 1, 1, 1, 0, 4, 2, 0, 1, 2,
1, 0, 0, 3, 1, 2, 0, 0, 1, 0, 2, 4, 0, 2, 2, 4, 1, 3, 3, 3, 0, 2, 2, 2, 0, 3,
2, 3, 2, 3, 0, 2, 3, 1, 0, 1, 0, 1, 1, 2, 0, 2, 2, 2, 1, 0, 1, 3, 2, 1, 1, 1,
1, 3, 2, 2, 3, 2, 0, 1, 1, 3, 1, 1, 2, 2, 1, 0, 1, 5, 3, 1, 3, 1, 2, 1, 1, 2,
1, 3, 2, 1, 2, 3, 2, 1, 2, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 1, 2, 1, 1, 1, 0, 1,
2, 0, 0, 0, 4, 0, 2, 1, 1, 2, 1, 2, 1, 2, 4, 1, 3, 1, 1, 1, 0, 1, 3, 1, 1, 1,
1, 1, 1, 2, 2, 1, 3, 3, 2, 2, 1, 3, 2, 1, 1, 3, 1, 4, 2, 2, 2, 2, 1, 1, 0, 2,
1, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 3, 1, 2, 2, 2, 2, 0, 1, 2, 0, 0, 2, 2, 2, 1,
1, 4, 0, 0, 2, 1, 2, 1, 2, 1, 1, 1, 4, 3, 4, 2, 1, 1, 3, 1, 4, 2, 3, 1, 1, 1,
2, 1, 1, 2, 2, 1, 1, 0, 0, 1, 3, 1, 3, 1, 1, 1, 3, 1, 0, 0, 4, 2, 0, 2, 1, 2,
0, 3, 1, 0, 2, 0, 2, 1, 2, 5, 0, 0, 2, 2, 3, 3, 1, 0, 0, 2, 2, 3, 1, 0, 3, 3,
0, 1, 1, 2, 0, 1, 2, 2, 4, 2, 2, 2, 4, 3, 2, 3, 1, 3, 2, 1, 3, 2, 1, 2, 3, 0,
4, 0, 2, 1, 3, 1, 2, 1, 4, 0, 0, 1, 3, 1, 2, 1, 3, 1, 0, 1, 2, 2, 1, 1, 2, 1,
3, 1, 2, 1, 4, 3, 2, 2, 2, 2, 0, 1, 1, 2]
(%o6) /usr/share/maxima/5.21.1/share/contrib/descriptive/descriptive.mac
(%i7) gruppierung:discrete_freq(anzahl_6);
(%o7)       [[0, 1, 2, 3, 4, 5, 6], [155, 343, 294, 144, 55, 8, 1]]
(%i8)  X:gruppierung[1];
(%o8)                        [0, 1, 2, 3, 4, 5, 6]
(%i9)  H:gruppierung[2];
(%o9)                   [155, 343, 294, 144, 55, 8, 1]
(%i10) Verteilung: matrix( ["Anzahl der 6-er","Häufigkeit"],  [transpose(X),transpose(H)] );
[ Anzahl der 6-er  H?ufigkeit ]
[                             ]
[      [ 0 ]        [ 155 ]   ]
[      [   ]        [     ]   ]
[      [ 1 ]        [ 343 ]   ]
[      [   ]        [     ]   ]
[      [ 2 ]        [ 294 ]   ]
(%o10)                  [      [   ]        [     ]   ]
[      [ 3 ]        [ 144 ]   ]
[      [   ]        [     ]   ]
[      [ 4 ]        [ 55  ]   ]
[      [   ]        [     ]   ]
[      [ 5 ]        [  8  ]   ]
[      [   ]        [     ]   ]
[      [ 6 ]        [  1  ]   ]
(%i11) plot2d([discrete, X, H]);
plotP:H/1000;
31   343   147  18   11    1    1
(%o12)               [---, ----, ---, ---, ---, ---, ----]
200  1000  500  125  200  125  1000
(%i13)    emp:[discrete,X,P];
31   343   147  18   11    1    1
(%o13) [discrete, [0, 1, 2, 3, 4, 5, 6], [---, ----, ---, ---, ---, ---, ----]]
200  1000  500  125  200  125  1000
(%i14)  plot2d(emp);
plotW(k):=binomial(n,k)*p**k*(1-p)**(n-k);
k        n - k
(%o15)              W(k) := binomial(n, k) p  (1 - p)
(%i16) B:makelist(W(k),k,0,n);
9765625   9765625   1953125  390625    546875    21875    21875
(%o16) [--------, --------, -------, -------, --------, -------, --------,
60466176  30233088  6718464  2519424  10077696  1679616  10077696
625      125       25        1
-------, -------, --------, --------]
2519424  6718464  30233088  60466176
(%i17)  k:makelist(i,i,0,n);
(%o17)                [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
(%i18) liste:[discrete,k,B];
(%o18) [discrete, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
9765625   9765625   1953125  390625    546875    21875    21875      625
[--------, --------, -------, -------, --------, -------, --------, -------,
60466176  30233088  6718464  2519424  10077696  1679616  10077696  2519424
125       25        1
-------, --------, --------]]
6718464  30233088  60466176
(%i19) plot2d(liste);
plotplot2d(emp);
plot```
Run Example
```load(distrib);
(%o1)     /usr/share/maxima/5.21.1/share/contrib/distrib/distrib.mac
(%o2)            /usr/share/maxima/5.21.1/share/draw/draw.lisp
(%o3) /usr/share/maxima/5.21.1/share/contrib/descriptive/descriptive.mac
(%i4) l1: makelist(random(10),k,1,50);
(%o4) [5, 2, 2, 3, 4, 1, 8, 9, 0, 9, 9, 9, 4, 8, 7, 2, 2, 5, 1, 0, 7, 4, 6, 2,
8, 7, 1, 9, 2, 8, 8, 4, 9, 6, 9, 5, 8, 5, 7, 9, 4, 1, 8, 5, 6, 0, 0, 2, 7, 1]
(%i5) l2: makelist(random(10),k,1,100);
(%o5) [6, 4, 4, 1, 5, 6, 6, 1, 4, 8, 5, 9, 2, 3, 7, 1, 3, 3, 1, 4, 0, 8, 3, 3,
0, 6, 9, 2, 3, 3, 8, 6, 8, 2, 8, 5, 1, 4, 8, 8, 9, 9, 7, 0, 7, 1, 3, 6, 5, 0,
4, 0, 6, 9, 2, 7, 5, 9, 4, 8, 6, 8, 4, 5, 2, 0, 1, 3, 5, 3, 9, 1, 5, 0, 2, 3,
5, 0, 4, 3, 8, 5, 8, 5, 3, 7, 7, 1, 1, 2, 6, 6, 0, 1, 4, 8, 7, 1, 4, 6]
(%i6) wxbarsplot(l1, l2);
(%o6) wxbarsplot([5, 2, 2, 3, 4, 1, 8, 9, 0, 9, 9, 9, 4, 8, 7, 2, 2, 5, 1, 0,
7, 4, 6, 2, 8, 7, 1, 9, 2, 8, 8, 4, 9, 6, 9, 5, 8, 5, 7, 9, 4, 1, 8, 5, 6, 0,
0, 2, 7, 1], [6, 4, 4, 1, 5, 6, 6, 1, 4, 8, 5, 9, 2, 3, 7, 1, 3, 3, 1, 4, 0,
8, 3, 3, 0, 6, 9, 2, 3, 3, 8, 6, 8, 2, 8, 5, 1, 4, 8, 8, 9, 9, 7, 0, 7, 1, 3,
6, 5, 0, 4, 0, 6, 9, 2, 7, 5, 9, 4, 8, 6, 8, 4, 5, 2, 0, 1, 3, 5, 3, 9, 1, 5,
0, 2, 3, 5, 0, 4, 3, 8, 5, 8, 5, 3, 7, 7, 1, 1, 2, 6, 6, 0, 1, 4, 8, 7, 1, 4,
6])
(%i7) ```
Run Example
```load(distrib);
(%o1)     /usr/share/maxima/5.21.1/share/contrib/distrib/distrib.mac
(%i2) trufas(brotes):=block(    if brotes <
= 2.5 then brotes    else min(2+(brotes-2)*2,20));
(%o2) trufas(brotes) := block(if brotes <= 2.5 then brotes
else min(2 + (brotes - 2) 2, 20))
(%i3) total(n,k,d,esp,p):=block([i,sum:0,r,tiempo1,tiempo,tiempo_parcial,tiempo_total1,tiempo_total,ntruf1,prsano1,ntruf,prsano],    tiempo_parcial:(k-1)*d+k,    tiempo_vuelta1:n+tiempo_parcial,    tiempo_vuelta:esp+tiempo_parcial,    if tiempo_vuelta1 >
2000 then return("Te has pasado de tiempo"),    r:floor((2000-tiempo_vuelta1)/tiempo_vuelta),    tiempo_final:2000-tiempo_vuelta1-r*tiempo_vuelta,    for i:1 thru k do(        tiempo_parcial:(i-1)*d+i,        tiempo1:n+tiempo_parcial,        tiempo:esp+tiempo_parcial+tiempo_vuelta1-tiempo1,        ntruf1:trufas(mean_binomial(tiempo1,p)),        prsano1:bfloat(cdf_binomial(14,tiempo1,p)),        ntruf:trufas(mean_binomial(tiempo,p)),        prsano:bfloat(cdf_binomial(14,tiempo,p)),        sum: sum + ntruf1*prsano1 + ntruf*prsano1*(sum(prsano^i,i,1,r)),        if esp+tiempo_parcial <
= tiempo_final then sum: sum + ntruf*prsano1*prsano^(r+1)    ),    sum);
(%o3) total(n, k, d, esp, p) := block([i, sum : 0, r, tiempo1, tiempo,
tiempo_parcial, tiempo_total1, tiempo_total, ntruf1, prsano1, ntruf, prsano],
tiempo_parcial : (k - 1) d + k, tiempo_vuelta1 : n + tiempo_parcial,
tiempo_vuelta : esp + tiempo_parcial, if tiempo_vuelta1 > 2000
2000 - tiempo_vuelta1
then return("Te has pasado de tiempo"), r : floor(---------------------),
tiempo_vuelta
tiempo_final : 2000 - tiempo_vuelta1 + (- r) tiempo_vuelta,
for i thru k do (tiempo_parcial : (i - 1) d + i, tiempo1 : n + tiempo_parcial,
tiempo : esp + tiempo_parcial + tiempo_vuelta1 - tiempo1,
ntruf1 : trufas(mean_binomial(tiempo1, p)),
prsano1 : bfloat(cdf_binomial(14, tiempo1, p)),
ntruf : trufas(mean_binomial(tiempo, p)),
prsano : bfloat(cdf_binomial(14, tiempo, p)),
i
sum : sum + ntruf1 prsano1 + ntruf prsano1 sum(prsano , i, 1, r),
if esp + tiempo_parcial <= tiempo_final
r + 1
then sum : sum + ntruf prsano1 prsano     ), sum)
(%i4) total(5,28,1,300,1/100);
(%o4)                         7.232309523156008b2
(%i5) total(5,28,1,325,1/100);
(%o5)                         7.932176896795823b2
(%i6) total(5,28+16,1,200,1/100);
(%o6)                         1.008918947728723b3
(%i7) ```

Help for Distrib