# How can i know the full duplex does work from the Shannon's theorem?

There is a full duplex system below,two user are $$A$$ and $$B$$,according the definition of full duplex ,$$A$$ and $$B$$ have to transmit and receive the signal at the same time.that is, transmitted signal will become a noise for the received signal,and there are some formulas below to show the SNR

Let $$t_A$$ is the transmitted signal from $$A$$,and $$t_B$$ is the transmitted signal from $$B$$.

Now,$$A$$ receive the $$t_B$$ from $$B$$ and transmit $$t_A$$ to $$A$$.So the SNR for $$A$$ to receive the $$t_B$$ is

$$\text{SNR}_{A \text{ decode }t_B}=\frac{\text{power of } t_B }{\text{power of } t_A \ + \text{power of channel noise} + \text{decode noise}}\label{SNR}\tag 1$$

And according to the wiki: https://en.wikipedia.org/wiki/Shannon–Hartley_theorem How do i make sure that $$A$$ can do decode the $$t_B$$?

I know the $$C_A=\log_2(1+\text{SNR}_{A \text{ decode } t_B})$$, but in most of paper, they all also call $$C_A$$ as a rate, so I think $$C_A$$ will not be equal to $$R_A$$.

So how can I know $$C_A \ge R_A$$,so the $$A$$ can really receive and decode the $$t_B$$?

You think the Shannon-Hartley Theorem is in conflict with Full Duplex (in the sense you describe), and luckily it's not!

The problem really is that your $$\eqref{SNR}$$ formula isn't relevant for the Shannon-Hartley Theorem (SHT). With respect to the SHT, your $$t_A$$ isn't noise!

That's easy to explain. SHT makes a statement about the channel capacity $$C$$, i.e. the maximum mutual information between $$B$$ and $$A$$, given the best possible source symbol probability distribution:

$$\label{C} C= \max_{P(B)} I(B;A)$$

Mutual information between the information source $$B$$ and the information sink $$A$$ is, in the end, nothing but the statement

How much uncertainty about $$B$$ can I remove by observing $$A$$?

Now, even from reading that, you'll notice that in a perfect transceiver $$A$$, you simply don't add any uncertainty by adding your own transmission – you know what you're sending, and thus could simply subtract it from what you observe!

Formally, it's easy to show that

\begin{align} I(B;A) &= H(B) - H(B|A)\\ &=H(t_B) - H(t_B|r_A)\\ &=H(t_B) - H(t_B|t_B+Z+t_A)\text.\label{crucial}\tag{a} \end{align}

Now, that $$\eqref{crucial}$$ line is crucial – what's written there literally means

The amount of information you get about the transmit signal $$t_B$$ by observing the received signal $$r_a=t_B+Z+t_A$$ is exactly the expected amount of information (==entropy) of $$t_B$$, minus the remaining uncertainty about $$t_B$$ given that you've observed $$r_B$$, which is the sum of A's own signal $$t_A$$, independent noise $$Z$$ and our signal of interest, $$B$$'s $$t_B$$.

And that conditional entropy is what the influence of your noise it. Let's look at it a bit closer, $$r_A$$ be the receive signal at $$A$$

$$r_A=t_B + Z + t_A,$$

with $$Z$$ being your "true" noise.

And hence, since these three are independent:

$$H(r_A) = H(t_B) + H(Z) + H(t_A)\text.$$

Little problem: We're at the end $$A$$. So, there's nothing uncertain about $$t_A$$ (we're the one sending that!) and the formula reduces to

$$H(r_A)_A = H(t_B) + H(Z)\text.\tag{ö}\label{known}$$

(Read $$\eqref{known}$$ as "The entropy of the received signal $$r_A$$, being $$A$$, i.e. knowing $$t_A$$ already").

Automatically that means that $$\eqref{crucial}$$ also simplifies when we, as $$A$$, know our own transmit signal $$t_A$$:

\begin{align} I(B;A)_A &= H(t_B) - H(t_B|t_B+Z+t_A,t_A)\\ &= H(t_B) - H(t_B|t_B + Z)\label{read}\tag{r}\\ &= H(t_B) - H(Z)\\ &= H(B) - H(Z)&\rule{0.5em}{0.5em} \end{align}

The trick is that in line $$\eqref{read}$$, the second term is "the amount of uncertainty about one element of a sum, given the value of the sum", and that simply reduces to the amount of uncertainty in the other element.

When you look at that, you'll notice that your Full-Duplex mutual information formula is the same as your (normal) simplex mutual information formula. Hence, the capacity is the same.

In other words: For Shannon-Hartley, any operation that you can mathematically reverse as the receiver, like adding a signal you know, makes absolutely no difference for the channel capacity. Yay!

The fact that there's nevertheless a lot of things to calculate for the Full Duplex use case is because adding a strong signal to a received signal is typically not fully reversible, because the two amplitudes physically don't add up exactly, due to imperfections of the real world (receive amplifier saturation, changed quantization noise, feedback path uncertainties…). But: Your simple SNR mode $$\eqref{SNR}$$ can't describe that, so it's neither suitable for the ideal case I described above, nor suitable for the non-ideal case. So, if you want to understand in detail why Full Duplex works, and what the limitations are: You'll need to learn quite a bit about information theory!

• why isn't $t_A$ a noise? $A$ wants to $t_B$,not $t_A$.So although $t_A$ is a signal,it is still a noise for $A$ when $A$ want to receive only $t_A$ Aug 3 '19 at 23:58
• I answered exactly why $t_A$ isn't noise like your actual noise. Please re-read my answer! Can you please pinpoint where my explanation wasn't clear to you? Maybe I can improve my answer. Aug 4 '19 at 0:00
• according to explanation,do u know is there any method to let us know $A$ can do receive and decode the code. i mean,because the $t_A$,the SINR for receiving $t_B$ become smaller,how can we know in this smaller SINR,the $A$ can do receive and decode the code? Aug 4 '19 at 0:35
• because it seems that Shannon-Hartley Theorem can not let us know $A$ can still decode the $t_B$ ,even in this smaller SINR Aug 4 '19 at 0:36
• so, Shannon-Hartley doesn't tell you anything about implementation, ever. It's an existence proof that says: "In theory, a method exists that can transport so and so many bits from B to A per second with arbitrarily low error probability". It doesn't state a method of achieving that; in fact, it even implies that the channel code to achieve that will become infinitely complex... So, no, the SHT doesn't give us a way of knowing tB. It's not what it does. In your simplistic model, you'd just subtract tA from A's receive signal, done. Aug 4 '19 at 9:00