maths.special_numbers.bell_numbers¶
Bell numbers represent the number of ways to partition a set into non-empty subsets. This module provides functions to calculate Bell numbers for sets of integers. In other words, the first (n + 1) Bell numbers.
For more information about Bell numbers, refer to: https://en.wikipedia.org/wiki/Bell_number
Functions¶
|
Calculate the binomial coefficient C(total_elements, elements_to_choose) |
|
Calculate Bell numbers for the sets of lengths from 0 to max_set_length. |
Module Contents¶
- maths.special_numbers.bell_numbers._binomial_coefficient(total_elements: int, elements_to_choose: int) int ¶
Calculate the binomial coefficient C(total_elements, elements_to_choose)
- Args:
total_elements (int): The total number of elements. elements_to_choose (int): The number of elements to choose.
- Returns:
int: The binomial coefficient C(total_elements, elements_to_choose).
Examples: >>> _binomial_coefficient(5, 2) 10 >>> _binomial_coefficient(6, 3) 20
- maths.special_numbers.bell_numbers.bell_numbers(max_set_length: int) list[int] ¶
Calculate Bell numbers for the sets of lengths from 0 to max_set_length. In other words, calculate first (max_set_length + 1) Bell numbers.
- Args:
max_set_length (int): The maximum length of the sets for which Bell numbers are calculated.
- Returns:
list: A list of Bell numbers for sets of lengths from 0 to max_set_length.
Examples: >>> bell_numbers(0) [1] >>> bell_numbers(1) [1, 1] >>> bell_numbers(5) [1, 1, 2, 5, 15, 52]