161-A5.1
In this module, you have learned that it is possible to synthesize extremal channels from multiple copies of a given binary-input channel. In particular, the binary erasure channel (BEC) has the property that all synthesized channels are equivalent to BECs.
Task Description
Your task in Module 5 is simple: given the erasure probability of a BEC, you are to count the number of synthetic channels with erasure probability that is better (lower) than the original BEC.
You need to write a function count_bad_channels
which will take two arguments:
blocklength
- anint
that is a power of two, denoting the blocklength or, equivalently, the number of synthetic channels produced via the polar transform.erasure_prob
- afloat
, a positive real number between 0 and 1, indicating the erasure probability of the original BEC.
The function must return an int
corresponding to the number of synthetic BECs with erasure probabilities strictly less than erasure_prob
.
Expected Output
1 | 1 | 4 | 39 | 7291 | |
1 | 1 | 6 | 86 | 20158 | |
1 | 3 | 11 | 193 | 51758 |