Binary symmetric channel
Jump to navigation
Jump to search
This article includes a list of references , but its sources remain unclear because it has insufficient inline citations . Please help to improve this article by introducing more precise citations. (March 2013) ( Learn how and when to remove this template message )
A binary symmetric channel (or BSC) is a common communications channel model used in coding theory and information theory . In this model, a transmitter wishes to send a bit (a zero or a one), and the receiver receives a bit. It is assumed that the bit is usually transmitted correctly, but that it will be “flipped” with a small probability (the “crossover probability”). This channel is used frequently in information theory because it is one of the simplest channels to analyze.
- 1 Description
- 2 Definition
- 2.1 Capacity of BSCp
- 3 Shannon’s channel capacity theorem for BSCp
- 3.1 Noisy coding theorem for BSCp
- 4 Converse of Shannon’s capacity theorem
- 5 Codes for BSCp
- 6 Forney’s code for BSCp
- 6.1 Decoding error probability for C*
- 7 See also
- 8 Notes
- 9 References
- 10 External links
Description[ edit ]
The BSC is a binary channel; that is, it can transmit only one of two symbols (usually called 0 and 1). (A non-binary channel would be capable of transmitting more than 2 symbols, possibly even an infinite number of choices.) The transmission is not perfect, and occasionally the receiver gets the wrong bit.
This channel is often used by theorists because it is one of the simplest noisy channels to analyze. Many problems in communication theory can be reduced to a BSC. Conversely, being able to transmit effectively over the BSC can give rise to solutions for more complicated channels.
Definition[ edit ]
A binary symmetric channel with crossover probability
denoted by BSCp, is a channel with binary input and binary output and probability of error
; that is, if
is the transmitted random variable and
the received variable, then the channel is characterized by the conditional probabilities
It is assumed that
, then the receiver can swap the output (interpret 1 when it sees 0, and vice versa) and obtain an equivalent channel with crossover probability
Capacity of BSCp[ edit ]
The channel capacity of the binary symmetric channel is
is the binary entropy function .
Proof: The capacity is defined as the maximum mutual entropy between input and output for all possible input distributions
The mutual information can be reformulated as
where the first and second step follows from the definition of mutual information and conditional entropy respectively. The entropy at the output for a given and fixed input symbol (
) equals the binary entropy function, which leads to the third line and this can be further simplified.
In the last line, only the first term
depends on the input distribution
. And one knows, that the entropy of a binary variable is at maximum one, and reaches this only if its probability distribution is uniform. This case (uniform distribution of
) can only be reached by a uniform distribution at the input
, which is because of the symmetry of the channel. So one finally gets
Shannon’s channel capacity theorem for BSCp[ edit ]
Shannon’s noisy coding theorem is general for all kinds of channels. We consider a special case of this theorem for a binary symmetric channel with an error probability p.
Noisy coding theorem for BSCp[ edit ]
is a random variable consisting of n independent random bits (n is defined below) where each random bit is a
. We indicate this by writing “
- Theorem 1. For all all , all sufficiently large (depending on and ), and all , there exists a pair of encoding and decoding functions and respectively, such that every message has the following property:
What this theorem actually implies is, a message when picked from
, encoded with a random encoding function
, and sent across a noisy
, there is a very high probability of recovering the original message by decoding, if
or in effect the rate of the channel is bounded by the quantity stated in the theorem. The decoding error probability is exponentially small.
Proof of Theorem 1. First we describe the encoding function and decoding functions used in the theorem. We will use the probabilistic method to prove this theorem. Shannon’s theorem was one of the earliest applications of this method.
Encoding function: Consider an encoding function
that is selected at random. This means that for each message
, the value
is selected at random (with equal probabilities).
Decoding function: For a given encoding function
, the decoding function
is specified as follows: given any received codeword
, we find the message
such that the Hamming distance
is as small as possible (with ties broken arbitrarily). This kind of a decoding function is called a maximum likelihood decoding (MLD) function.
Ultimately, we will show (by integrating the probabilities) that at least one such choice
satisfies the conclusion of theorem; that is what is meant by the probabilistic method.
The proof runs as follows. Suppose
are fixed. First we show, for a fixed
chosen randomly, the probability of failure over
noise is exponentially small in n. At this point, the proof works for a fixed message
. Next we extend this result to work for all
. We achieve this by eliminating half of the codewords from the code with the argument that the proof for the decoding error probability holds for at least half of the codewords. The latter method is called expurgation. This gives the total process the name random coding with expurgation.
A high level proof: Fix
. Given a fixed message
, we need to estimate the expected value of the probability of the received codeword along with the noise does not give back
on decoding. That is to say, we need to estimate:
be the received codeword. In order for the decoded codeword
not to be equal to the message
, one of the following events must occur:
does not lie within the Hamming ball of radius centered at . This condition is mainly used to make the calculations easier.
- There is another message
such that . In other words, the errors due to noise take the transmitted codeword closer to another encoded message.
We can apply Chernoff bound to ensure the non occurrence of the first event. By applying Chernoff bound we have,
This is exponentially small for large
As for the second event, we note that the probability that
is the Hamming ball of radius
centered at vector
is its volume. Using approximation to estimate the number of codewords in the Hamming ball, we have
. Hence the above probability amounts to
. Now using union bound , we can upper bound the existence of such an
, as desired by the choice of
A detailed proof: From the above analysis, we calculate the probability of the event that the decoded codeword plus the channel noise is not the same as the original message sent. We shall introduce some symbols here. Let
denote the probability of receiving codeword
given that codeword
was sent. Let
We get the last inequality by our analysis using the Chernoff bound above. Now taking expectation on both sides we have,
by appropriately choosing the value of
. Since the above bound holds for each message, we have
Now we can change the order of summation in the expectation with respect to the message and the choice of the encoding function
Hence in conclusion, by probabilistic method, we have some encoding function
and a corresponding decoding function
At this point, the proof works for a fixed message
. But we need to make sure that the above bound holds for all the messages
simultaneously. For that, let us sort the
messages by their decoding error probabilities. Now by applying Markov’s inequality , we can show the decoding error probability for the first
messages to be at most
. Thus in order to confirm that the above bound to hold for every message
, we could just trim off the last
messages from the sorted order. This essentially gives us another encoding function
with a corresponding decoding function
with a decoding error probability of at most
with the same rate. Taking
to be equal to
we bound the decoding error probability to
. This expurgation process completes the proof of Theorem 1.
Converse of Shannon’s capacity theorem[ edit ]
The converse of the capacity theorem essentially states that
is the best rate one can achieve over a binary symmetric channel. Formally the theorem states:
then the following is true for every encoding and decoding function
For a detailed proof of this theorem, the reader is asked to refer to the bibliography. The intuition behind the proof is however showing the number of errors to grow rapidly as the rate grows beyond the channel capacity. The idea is the sender generates messages of dimension
, while the channel
introduces transmission errors. When the capacity of the channel is
, the number of errors is typically
for a code of block length
. The maximum number of messages is
. The output of the channel on the other hand has
possible values. If there is any confusion between any two messages, it is likely that
. Hence we would have
, a case we would like to avoid to keep the decoding error probability exponentially small.
Codes for BSCp[ edit ]
Very recently, a lot of work has been done and is also being done to design explicit error-correcting codes to achieve the capacities of several standard communication channels. The motivation behind designing such codes is to relate the rate of the code with the fraction of errors which it can correct.
The approach behind the design of codes which meet the channel capacities of
have been to correct a lesser number of errors with a high probability, and to achieve the highest possible rate. Shannon’s theorem gives us the best rate which could be achieved over a
, but it does not give us an idea of any explicit codes which achieve that rate. In fact such codes are typically constructed to correct only a small fraction of errors with a high probability, but achieve a very good rate. The first such code was due to George D. Forney in 1966. The code is a concatenated code by concatenating two different kinds of codes. We shall discuss the construction Forney’s code for the Binary Symmetric Channel and analyze its rate and decoding error probability briefly here. Various explicit codes for achieving the capacity of the binary erasure channel have also come up recently.
Forney’s code for BSCp[ edit ]
Forney constructed a concatenated code
to achieve the capacity of Theorem 1 for
. In his code,
- The outer code
is a code of block length and rate over the field , and . Additionally, we have a decoding algorithm for which can correct up to fraction of worst case errors and runs in time.
- The inner code
is a code of block length , dimension , and a rate of . Additionally, we have a decoding algorithm for with a decoding error probability of at most over and runs in time.
For the outer code
, a Reed-Solomon code would have been the first code to have come in mind. However, we would see that the construction of such a code cannot be done in polynomial time. This is why a binary linear code is used for
For the inner code
we find a linear code by exhaustively searching from the linear code of block length
, whose rate meets the capacity of
, by Theorem 1.
which almost meets the
capacity. We further note that the encoding and decoding of
can be done in polynomial time with respect to
. As a matter of fact, encoding
. Further, the decoding algorithm described takes time
as long as
Decoding error probability for C*[ edit ]
A natural decoding algorithm for
Note that each block of code for
is considered a symbol for
. Now since the probability of error at any index
is at most
and the errors in
are independent, the expected number of errors for
is at most
by linearity of expectation. Now applying Chernoff bound , we have bound error probability of more than
errors occurring to be
. Since the outer code
can correct at most
errors, this is the decoding error probability of
. This when expressed in asymptotic terms, gives us an error probability of
. Thus the achieved decoding error probability of
is exponentially small as Theorem 1.
We have given a general technique to construct
. For more detailed descriptions on
please read the following references. Recently a few other codes have also been constructed for achieving the capacities. LDPC codes have been considered for this purpose for their faster decoding time. 
See also[ edit ]
- Z channel
Notes[ edit ]
- ^ Thomas M. Cover, Joy A. Thomas. Elements of information theory, 2nd Edition. New York: Wiley-Interscience, 2006.
ISBN 978-0-471-24195-9 .
- ^ Richardson and Urbanke
References[ edit ]
- David J. C. MacKay. Information Theory, Inference, and Learning Algorithms Cambridge: Cambridge University Press, 2003. ISBN 0-521-64298-1
- Thomas M. Cover, Joy A. Thomas. Elements of information theory, 1st Edition. New York: Wiley-Interscience, 1991. ISBN 0-471-06259-6 .
- Atri Rudra’s course on Error Correcting Codes: Combinatorics, Algorithms, and Applications (Fall 2007), Lectures 9 , 10 , 29 , and 30 .
- Madhu Sudan’s course on Algorithmic Introduction to Coding Theory (Fall 2001), Lecture 1 and 2 .
- G. David Forney. Concatenated Codes . MIT Press, Cambridge, MA, 1966.
- Venkat Guruswamy’s course on Error-Correcting Codes: Constructions and Algorithms , Autumn 2006.
- A mathematical theory of communication C. E Shannon, ACM SIGMOBILE Mobile Computing and Communications Review.
- Modern Coding Theory by Tom Richardson and Rudiger Urbanke., Cambridge University Press
External links[ edit ]
// http://oscar.iitb.ac.in/availableProposalsAction1.do?type=av&id=534&language=english A Java applet implementing Binary Symmetric Channel
- Coding theory
- Articles lacking in-text citations from March 2013
- All articles lacking in-text citations
- This page was last edited on 15 October 2018, at 16:04 (UTC).
- Text is available under the Creative Commons Attribution-ShareAlike License ;
- About Wikipedia
- Contact Wikipedia
- Cookie statement
- Mobile view