public static function PMF(int $x, int $r, float $p) : float
{
Support::checkLimits(self::LIMITS, ['x' => $x, 'r' => $r, 'p' => $p]);
$ₓ₋₁Cᵣ₋₁ = Combinatorics::combinations($x - 1, $r - 1);
$pʳ = pow($p, $r);
$⟮1 − p⟯ˣ⁻ʳ = pow(1 - $p, $x - $r);
return $ₓ₋₁Cᵣ₋₁ * $pʳ * $⟮1 − p⟯ˣ⁻ʳ;
}