TITLE: Trigonometry when to divide and times
QUESTION [0 upvotes]: OK, so I am revising for an upcoming test and am a bit confused. I have previously learn Trigonometry, however that was around a year ago, and i have completely forgotten it now. I went on to MathsWatch, which is an online revision website. I am currently going through the three trigonometry clips on there (Clips 147a, 147b and 147c). On clip 147a they teach a divisible method
However, on Clip 147b they teach it using a multiplication method, as follows:
I cannot, for the life of me, remember as to why two different methods are used. Any explanations?

REPLY [1 votes]: They use the same equation. What is causing the confusion is the way they depict the formulas. In the first pic, the triangle "shows" the equation as
Equation 1: $A$ = $\cos c$ $*$$H$
while the second pic says:
Equation 2: $\cos c$ = $A$$\div$$H$
Since you are trying to find side A, you have to re-arrange the formulas to solve for A.
In the first pic your equation is already solving for side A so you dont need to rearrange Equation 1.
For the second pic, you have to re-arrange Equation 2 to solve for A.
Equation 2: $\cos$ c = $A$$\div$$H$
$\cos c$ $*$ $H$ = $A$$\div$$H$ * $H$   Multiplying both sides by H
$A$ = $\cos c$ $*$ $H$ <--This is the same as Equation 1


TITLE: Prove that $C^1([a,b];X)$ is a Banach space
QUESTION [1 upvotes]: Let $X$ be a Banach space with norm $\|\cdot\|$. I want to show that $C^1([a,b];X)$ (the space of continuously differentiable functions on $[a,b]$ with values in $X$) provided with the norm $$\|u\|_{C^1([a,b];X)}:=\max_{t\in[a,b]}(\|u(t)\|+\|u'(t)\|)$$
is a Banach space.
I think I need to show that any given Cauchy sequence converges in $C^1([a,b];X)$. But how do I begin? I havent got too comfortable with Banach spaces yet.

REPLY [0 votes]: So let $(f_n)$ be an arbitrary Cauchy sequence in $C^1([a,b]:X)$. Since $X$ is complete $(f_n)$ converges in $C^0([a,b]);X)$ with the uniform norm to $f$.
Similarly, $(f'_n)$ converges in $C^0([a,b]);X)$ with the uniform to a function $g$.
We observe that $$\int g =\int \lim f'_n=\lim \int f'_n=\lim f_n =f$$
Hence, $g=f'$ and we can conclude that $f'\in C^0([a,b];X)$.
Is my proof right? If so, where do I make us of the norm that I mentioned in my question?


TITLE: Transition Matrix involving bases
QUESTION [0 upvotes]: What is the transition matrix from the basis $\{(0,1,2)^T,(1,2,0)^T,(2,0,1)^T\}$
to the basis $\{(9,0,0)^T,(0,9,0)^T,(0,0,9)^T\}$ of $\mathbb{R}^3$?
I calculated the inverse matrix of $\{(9,0,0)^T,(0,9,0)^T,(0,0,9)^T\}$ and multiplied it by the matrix $\{(0,1,2)^T,(1,2,0)^T,(2,0,1)^T\}$ but my answer was still wrong. I'm assuming i've made an arithmetic error somewhere. Could someone please walk me through this?
Thanks

REPLY [0 votes]: Hint:
You are searching a matrix
$$
M=\begin{bmatrix}
a_1&b_1&c_1\\
a_2&b_2&c_2\\
a_3&b_3&c_3\\
\end{bmatrix}
$$
such that
$$
\begin{bmatrix}
a_1&b_1&c_1\\
a_2&b_2&c_2\\
a_3&b_3&c_3\\
\end{bmatrix}
\begin{bmatrix}
0&1&2\\
1&2&0\\
2&0&1\\
\end{bmatrix}=
\begin{bmatrix}
9&0&0\\
0&9&0\\
0&0&9\\
\end{bmatrix}
$$
so you have to solve three linear systems with three unknowns. The system for the first row of $M$ is
$$
\begin {cases}
b_1+2c_1=9\\
a_1+2b_1=0\\
2a_1+c_1=0
\end{cases}
$$
that gives the solution $ (a_1,b_1,c_1)=(-2,1,4)$. And you can do the same for the other unknowns.


TITLE: Hermitian Adjoint of Dirac Equation vs Dirac Lagrangian
QUESTION [0 upvotes]: I have a question about the self-adjointness of the gradient in spinor space.
In the derivation of the Dirac adjoint equation, as in Hermitian adjoint of 4-gradient in Dirac equation , it has been pointed out that the adjoint does not influence the gradient $\partial_\mu$ since the vector space we are considering is $\mathbb{C}^4$, and not ${L^2[\mathbb{C}]}$, so $\partial_\mu$ is hermitian.
Nevertheless, the condition for the Dirac Lagrangian
\begin{equation}
\mathcal{L}_D = \bar{\Psi}(i \gamma^\mu{\partial_\mu} - m)\Psi
\end{equation}
to be hermitian seems to imply that $\partial_\mu$ is anti-hermitian.
I am a little confused about this: are we applying two different adjoint transformations, in two different spaces? If so, what is the criterion to choose which one to apply?

REPLY [1 votes]: So let's first motivate the definitions of :-
Hermitian Conjugate of an Operator - VS - Hermitian Conjugate of a Vector
Hermitian Conjugate (Adjoint) of an "Operator" :-
A Hermitian Conjugate (technically known as Adjoint ) of an operator $\hat{\mathrm A}$ is defined via the rule
$\langle\phi|\hat{\mathrm A}|\psi\rangle\ =\langle\hat{\mathrm A}^\dagger\phi|\psi\rangle$, where $\ \hat{\mathrm A}^\dagger$ denotes the Adjoint of the operator $\mathrm{\hat{A}}$.
CONCLUSION 1 :- In order to find the Adjoint of an "Operator", one needs to consider the expectation value of the operator, that is, to evaluate an Integral over all Space-Time Coordinates.
$\langle\phi|\hat{\mathrm A}|\psi\rangle\ =\displaystyle \int_{Entire\\ Domain}  \phi^*(t,\mathbf{r})\ \hat{\mathrm A}\ \psi(t,\mathbf{r})\ dt\ d^3\mathbf{r}\ $

SIDE NOTE:- For Operators that can be written as Finite Dimensional Matrices such as \begin{bmatrix} f(x) & g(x) \\ h(x) & k(x) \end{bmatrix} where $x \in (-\infty,\infty)$, we can find the Adjoint as $$\langle\phi|\hat{\mathrm A}|\psi\rangle = \displaystyle \int_{-\infty}^\infty \begin{bmatrix} a^*(x) & b^*(x) \end{bmatrix} \begin{bmatrix} f(x) & g(x) \\ h(x) & k(x) \end{bmatrix} \begin{bmatrix} c(x) \\ d(x)\end{bmatrix}\ dx$$
$$ = \displaystyle \int_{-\infty}^\infty \left(\begin{bmatrix} f^*(x) & h^*(x) \\ g^*(x) & k^*(x) \end{bmatrix} \begin{bmatrix} a(x) \\ b(x) \end{bmatrix}\right)^\dagger \begin{bmatrix} c(x) \\ d(x)\end{bmatrix}\ dx = \langle{\hat{\mathrm A}^\dagger}\phi|\psi\rangle $$
Implying $\hat{\mathrm A}^\dagger = \begin{bmatrix} f^*(x) & h^*(x) \\ g^*(x) & k^*(x) \end{bmatrix}$.
Therefore, one can easily find the Adjoint simply by taking the Complex
Conjugate Tranpose of the Operator represented as a matrix. This technique
however does NOT apply to Operators that CAN NOT be represented as Finite
Dimensional Matrices. Keep that in mind for it is important.

Hermitian Conjugate of a "Vector" :-
If $\ |\psi\rangle$ is a state vector, then the Hermitian Conjugate is defined as $\ |\psi\rangle^\dagger\ =\langle\psi|$.
A finite dimensional vector helps us to visualise this better.
Take for example, $|\psi\rangle = \begin{pmatrix} a\\ b\\ c \end{pmatrix}$
Then, $\langle\psi| = \begin{pmatrix} a^* & b^* & c^* \end{pmatrix}$
CONCLUSION 2 :- In order to find the Hermitian Conjugate of a "Vector", one needs to consider only the complex conjugate transpose of the vector, and NOT any Integral over Space-Time Coordinates.
Now, lets examine a difference between the two Hermitian Conjugates :-
The statements written in Conclusion 1 and 2 are very important. Why?
Consider the vectors
$|\chi_1\rangle = \begin{pmatrix} e^{-\frac{x^2}{2}} \\ \frac{1}{x^2+1} \end{pmatrix}$; $\quad$
$|\chi_2\rangle = \begin{pmatrix} x^2e^{-\frac{x^2}{2}} \\ \frac{1}{x^2+4} \end{pmatrix}$
Task 1:- To find the "Hermitian Conjugate Vector" of $\frac{\mathrm d}{\mathrm {dx}}|\chi_1\rangle$, where $x \in (-\infty,\infty)$
$\frac{\mathrm d}{\mathrm {dx}}|\chi_1\rangle = \begin{pmatrix} \frac{\mathrm d}{\mathrm {dx}}\left(e^{-\frac{x^2}{2}}\right) \\ \frac{\mathrm d}{\mathrm {dx}}\left(\frac{1}{x^2+1}\right) \end{pmatrix} = \begin{pmatrix} xe^{-\frac{x^2}{2}} \\ -\frac{2x}{(x^2+1)^2}\end{pmatrix}$
$\left(\frac{\mathrm d}{\mathrm {dx}}|\chi_1\rangle\right)^\dagger = \begin{pmatrix} xe^{-\frac{x^2}{2}} & -\frac{2x}{(x^2+1)^2}\end{pmatrix} = \begin{pmatrix} \frac{\mathrm d}{\mathrm {dx}}\left(e^{-\frac{x^2}{2}}\right) & \frac{\mathrm d}{\mathrm {dx}}\left(\frac{1}{x^2+1}\right) \end{pmatrix} = \frac{\mathrm d}{\mathrm{dx}} \begin{pmatrix} e^{-\frac{x^2}{2}} \\ \frac{1}{x^2+1} \end{pmatrix}^\dagger = \frac{\mathrm d}{\mathrm {dx}} \left(|\chi_1\rangle^\dagger\right)$
$\boxed{\left(\frac{\mathrm d}{\mathrm {dx}}|\chi_1\rangle\right)^\dagger = \frac{\mathrm d}{\mathrm {dx}} \left(|\chi_1\rangle^\dagger\right)}$
CONCLUSION 3 :- The Hermitian Conjugate ($\dagger$) did nothing to $\frac{\mathrm d}{\mathrm {dx}}$ simply because we are NOT computing any Integral over the spatial(and/or temporal) coordinates at all. $\frac{\mathrm d}{\mathrm {dx}}|\chi_1\rangle$ simply yields another "Vector" whose complex conjugate transpose is being calculated here. That's all. Nothing more.
Task 2:- To find the "Hermitian Conjugate Operator" of $\frac{\mathrm d}{\mathrm {dx}}$, where $x \in (-\infty,\infty)$
$\langle\chi_2|\frac{\mathrm d}{\mathrm {dx}}|\chi_1\rangle\ =\displaystyle \int_{-\infty}^\infty \begin{pmatrix} x^2e^{-\frac{x^2}{2}} & \frac{1}{x^2+4} \end{pmatrix} \begin{pmatrix} \frac{\mathrm d}{\mathrm {dx}}\left(e^{-\frac{x^2}{2}}\right) \\ \frac{\mathrm d}{\mathrm {dx}}\left(\frac{1}{x^2+1}\right) \end{pmatrix}\ dx$
$ = \displaystyle \int_{-\infty}^\infty x^2e^{-\frac{x^2}{2}}\frac{\mathrm d}{\mathrm {dx}}\left(e^{-\frac{x^2}{2}}\right)\ dx + \int_{-\infty}^\infty \frac{1}{x^2+4}\frac{\mathrm d}{\mathrm {dx}}\left(\frac{1}{x^2+1}\right)\ dx$
Integrating By Parts would give:-
$\left[\left(x^2e^{-\frac{x^2}{2}}\right)\left(e^{-\frac{x^2}{2}}\right)\right]_{-\infty}^\infty - \displaystyle \int_{-\infty}^\infty \frac{\mathrm d}{\mathrm {dx}}\left(x^2e^{-\frac{x^2}{2}}\right)e^{-\frac{x^2}{2}}\ dx + \left[\left(\frac{1}{x^2+4}\right)\left(\frac{1}{x^2+1}\right)\right]_{-\infty}^{\infty} - \int_{-\infty}^\infty \frac{\mathrm d}{\mathrm {dx}}\left(\frac{1}{x^2+4}\right)\frac{1}{x^2+1}\ dx$
Surely, the boundary terms are 0. This yields
$\displaystyle \int_{-\infty}^\infty \begin{pmatrix} -\frac{\mathrm d}{\mathrm {dx}}\left(x^2e^{-\frac{x^2}{2}}\right) & -\frac{\mathrm d}{\mathrm {dx}}\left(\frac{1}{x^2+4}\right) \end{pmatrix} \begin{pmatrix} e^{-\frac{x^2}{2}} \\ \frac{1}{x^2+1} \end{pmatrix}\ dx\ = \int_{-\infty}^\infty \left[-\frac{\mathrm d}{\mathrm {dx}}\begin{pmatrix} x^2e^{-\frac{x^2}{2}} & \frac{1}{x^2+4} \end{pmatrix}\right] \begin{pmatrix} e^{-\frac{x^2}{2}} \\ \frac{1}{x^2+1} \end{pmatrix}\ dx$
Thus, $\langle\chi_2|\frac{\mathrm d}{\mathrm {dx}}|\chi_1\rangle\ = \langle -\frac{\mathrm d}{\mathrm {dx}}\chi_2|\chi_1\rangle$ , yielding
$\boxed{\left(\frac{\mathrm d}{\mathrm {dx}}\right)^\dagger = -\frac{\mathrm d}{\mathrm {dx}}}$
CONCLUSION 4 :- The Hermitian Conjugate ($\dagger$) does act on $\frac{\mathrm d}{\mathrm {dx}}$ this time, simply because we are ARE computing any Integral over the spatial(and/or temporal) coordinates.
FINAL CONCLUSION :- It was just the confusion of notation that led to the trouble. While finding the Hermitian Conjugate of an Operator, it has a completely different evaluation procedure than finding the Hermitian Conjugate of a Vector. Unfortunately, the same notation ($\dagger$) is used for both, which is where potentially lies the confusion.
P.S. You may wonder how does one know which definition one should use when? Well that is simple. In the context of Dirac equation

If you are supposed to find the Adjoint of Dirac Operator $(i\hbar\gamma^{\mu}\partial_{\mu} - mc)^\dagger$, you will simply have to use the definition applicable to operators, that is the Expectation Value of this Operator.

If you are supposed to find a Dirac-like Equation that would be satisfied by Hermitian Conjugate Vector $|\psi\rangle^\dagger$, then this is even simpler, for you do not need to find any Expectation Value. Just the Complex Conjugate Transpose of the entire equation. So, ALL Space-Time dependent Operators like $\frac{\mathrm d}{\mathrm {dx}}$ will remain unaffected.


TITLE: Question on calculating curvature of a surface given implicitly
QUESTION [5 upvotes]: I want to find, as an exercise, an expression for the curvature of a surface given by the zero set of a function. I reached a final expression, but when I test it for a sphere I get a non-constant expression. I know I'm doing a step wrong, but I don't know why. Below is what I have.
Say we have a good enough $f:\Bbb R^3 \to \Bbb R$. This defines a surface in $\Bbb R^3$ as $$S = \{(x,y,z)\in\Bbb R^3 : f(x,y,z) = 0\}$$
Suppose that $f_z = \frac{\partial f}{\partial z}\neq 0$. Then by the implicit function theorem it's easy enough to see we have a local parametrization of $S$ (in fact, the graph of a function): $$h:\Bbb R^2\to \Bbb R^3 \atop (x,y)\mapsto (x,y,h(x,y))$$
and $h$ satisfies (found using the chain rule on $f(x,y,h(x,y)) = 0$) $$\begin{align}h_x = \frac{-f_x}{f_z} \\ h_y = \frac{-f_y}{f_z}\end{align}$$
This way we have a basis for $T_pS$ (at a point $p$ which is omitted in the expressions) $(1,0,-f_x/f_z), (0,1,-f_y/f_z)$. With the usual notation, the coefficients of the first fundamental form $I$ can be calculated as $$E = 1+(f_x/f_z)^2, F = \frac{f_xf_y}{f_z^2}, G = 1 + (f_y/f_z)^2$$
My problem, it seems, comes with the second fundamental form $II$. For example, my calculation of $h_{xx}$ results in $$h_{xx} = \frac{f_xf_{xz}-f_{xx}f_z}{f_z^2}$$
while on this page they get $$h_{xx} = \frac{2f_xf_zf_{xz}-f_x^2f_{zz}-f_z^2f_{xx}}{f_z^3}$$
so either something is horribly wrong and I've forgotten how to differentiate a quotient, or there's something else in the calculation I'm not including. Note that this is before doing anything with the normal vector, just partial derivatives of the parametrization. Could someone clear this up?

REPLY [3 votes]: You've forgotten to apply the chain rule again. Remember that you're evaluating the partial derivatives of $f$ at $(x,y,h(x,y))$.


TITLE: Tail bound of a distribution
QUESTION [8 upvotes]: Let $X_1, X_2, \ldots, X_n, Y_1, Y_2, \ldots, Y_n$ be independent binary random variables each being $1$ with probability $\frac{1}{k}$.
Let $Z = X_1(Y_1 + \cdots + Y_k) + X_2(Y_2 + \cdots + Y_{k+1}) + \cdots + X_n(Y_n + Y_1 + \cdots + Y_{k-1})$.
It is easy to see that the expected value of $Z$ is $\mu = \frac{n}{k}$.
Can someone suggest the best possible bound one can obtain for the probability $\Pr[Z \ge (1+\varepsilon) \mu]$?
The setting I am interested in where $n$ is large, and $k \approx \sqrt{n}$.

REPLY [1 votes]: Here are some ideas, which may be too long for a comment. Denote for fixed $n$ and $k$:
$$
Z_{n,k}:=\sum_{i=1}^n\left(X_i\sum_{j=1}^k Y_{i+j-1 \mod n}-\frac 1k\right).
$$
Let
$$
A_{n,k}:=\sum_{i=1}^{n-k}\left(X_i\sum_{j=1}^k Y_{i+j-1} -\frac 1k\right)\mbox{ and }
$$
$$
B_{n,k}:=\sum_{i=n-k+1}^n\left(X_i\sum_{j=1}^k Y_{i+j-1 \mod n}-\frac 1k\right).
$$
It seems that the contribution of $B_{n,k}$ in the setting you are interested in would not be too big. In order to bound that of $A_{n,k}$, let us denote
$$
I_l:=\left\{i\in\mathbb N, kl\leqslant i\leqslant\left(k+1\right)l-1\right\}
$$
and
$$C_{l}:=\sum_{i\in I_l}\left(X_i\sum_{j=1}^k Y_{i+j-1} -\frac 1k\right).$$
We can express $A_{n,k}$ in terms of a sum of $C_l$ plus a negligible term. Moreover the sequence $\left(C_{2l}\right)_{l\geqslant 1}$ is centered and independent, as well as $\left(C_{2l-1}\right)_{l\geqslant 1}$ hence we can apply an inequality by Fuk and Nagaev (1971). It remains to control the tail of $C_l$ and its variance.


TITLE: Product rule in limit
QUESTION [0 upvotes]: I have looked on Wolfram for the limit of $\lim_{x \to 0} \frac{\ln x}{x}$
The full answer uses one-sided limits, and the product rule stating that for $0^{-}$ is a product of $-\infty \cdot -\infty=\infty$ and for $0^{+}$ is a product of $-\infty \cdot \infty=-\infty$
does the product rule stands for a finite limit and not infinity? why does $-\infty \cdot -\infty=\infty$?

REPLY [1 votes]: The product as a continuous mapping $\mathbb R^2\to\mathbb R$ can be extended in exactly one way to a continuous mapping $(\mathbb R\cup\{-\infty,+\infty\})^2\to\mathbb R\cup\{-\infty,+\infty\}$ (with the obvious compact topology) except at the points where $0$ is multiplied on the left or on the right by one of the infinities. There is no ambiguity about multiplying infinities by infinities.


TITLE: Linearizing a delay differential equation at an equilibrium point.
QUESTION [0 upvotes]: I am confused about the general procedure to linearize a delay differential equation (DDE) at an equilibrium point. I was given the following two examples but I do not know how to get from DDE to linearization at an equilibrium point, $\bar{x}$.
Example 1

Let $$x'(t)=bx(t)[1-x(t-r)] $$ where $b,r$ are constants. The linearization is
  \begin{align}
x'(t)&=bx(t) & \text{ at } \bar{x}=0\\
x'(t)&=-bx(t-r) & \text{ at } \bar{x}=1
\end{align}

Example 2

Let
  \begin{align}
x'_{1}(t)&=-b_1x_1(t)+a_{11}f_1(x_1(t-r_{11}))+a_{12}f_2(x_2(t-r_{12})) \\
x'_{2}(t)&=-b_2x_2(t)+a_{21}f_1(x_1(t-r_{21}))+a_{22}f_2(x_2(t-r_{22}))
\end{align}
  where all $a_{nn}$,$r_{nn}$,$b_{n}$ are constants. Assume that $f_1,f_2$ are differentiable and $f_1(0)=f_2(0)=0$, so that $(x_1,x_2)=(0,0)$ is an equilibrium. The linearization at $\bar{x}=(x_1,x_2)=(0,0)$ is
  \begin{align}
x'_{1}(t)&=-b_1x_1(t)+a_{11}f'_1(0)x_1(t-r_{11})+a_{12}f'_2(0)x_2(t-r_{12}) \\
x'_{2}(t)&=-b_2x_2(t)+a_{21}f'_1(0)x_1(t-r_{21})+a_{22}f'_2(0)x_2(t-r_{22})
\end{align}

Notes
I understand that the Frechet derivative at the equilibrium point is equivalent to the linearization. Put I am not clear on how to use that fact.
In the answer to this question I am looking for a technique that allows me to linearize any delay differential equation, and connects to larger theory of the Frechet derivative.

REPLY [2 votes]: Informally, if $\dot{x}(t) = f(x(t),x(t-r))$ then we have
(using $f(x_1+h_1,x_2+h_2) \approx {\partial f(x_1,x_2) \over \partial x_1} h_1 + {\partial f(x_1,x_2) \over \partial x_2} h_2 $)
\begin{eqnarray}
\dot{(x+\delta)}(t) &=& f(x(t)+\delta(t),x(t-r)+\delta(t-r)) \\
&\approx& f(x(t),x(t-r))+{\partial f(x(t),x(t-r)) \over \partial x_1} \delta(t) + {\partial f(x(t),x(t-r)) \over \partial x_2} \delta(t-r) \\
\end{eqnarray}
From which we get
$\dot{\delta}(t) = {\partial f(x(t),x(t-r)) \over \partial x_1} \delta(t) + {\partial f(x(t),x(t-r)) \over \partial x_2} \delta(t-r)$.
Substituting values, we have
$\dot{\delta}(t) =  b(1-x(t-r)) \delta(t) - b x(t) \delta(t-r)$.
Substituting $x(t) = 0$ or $x(t) = 1$ yields the desired results.


TITLE: Find General Solution of First Order DE.
QUESTION [1 upvotes]: Find general solution of
  $$y'+\frac{2y}{x}=\frac{3}{x^2}$$
  and find solution for which
  $$y(2)=-1$$
  I know
  $$xy'+\frac{r(x)y}{x}=3r(x)x$$
  $$(ry')=ry'+r'y$$$$r'=\frac{r}{x},\frac{r'}{r}=\frac{1}{x},ln(r)=ln(x),r=x$$$$\frac{xy'}{2}+y=\frac{3}{2x}$$
  $$\frac{(xy)'}{2}=\frac{3}{2x}$$$$\frac{xy}{2}=\int \frac{3}{x}dx=3ln|x|+c$$
  but where to from here?

REPLY [0 votes]: I have an itch to add a proper procedure.
Suppose we have the following first order linear non-homogeneous differential equation!
$$\frac{dy}{dx}+\frac{2y}{x}=\frac{3}{x^2}$$
By method of inspection we notice that we can use the integrating factor method since this is a linear one!
So,
Generally,
$$\frac{dy}{dx}+P(x)y=Q(x)$$
The integrating factor can be found by
$$\mu=e^{\int P(x)dx}$$
So, onto your question
Integrating factor is
$$\mu=e^{\int \frac{2}{x}dx}$$
$$\mu=e^{2ln|x|}$$
$$\mu=e^{ln|x^2|}$$
$$\mu=x^2$$
Multiplying the differential equation with the integrating factor we have,
$$\frac{x^2dy}{dx}+2xy=3$$
So, by it we have
$$\int d(yx^2)=\int 3 dx$$
$$yx^2=3x+C$$
Initial value is $y(2)=-1$
So by it we have
$$C=(-1)(2)^2-3(2)$$
$$C=-10$$
Rewrite the particular solution differential equation
$$yx^2=3x-10$$
Addendum. Some old story for integrating factor!
$$M(x,y)dx+N(x,y)dy=0$$
Know that if f is the differential equation!
$$M=\frac{\partial f}{\partial x},N=\frac{\partial f}{\partial y}$$
The differential equation is said to be exact if
$$\frac{\partial M}{\partial y}=\frac{\partial N}{\partial x}$$
It is also known as Clairaut's theorem. Which implies continuity of certain function!
Let it be the case where,
$$\frac{\partial M}{\partial y}\neq \frac{\partial N}{\partial x}$$
We multiply the differential equation with integrating factor $\mu(x)$
We assume that $\mu$ depends on one variable only not the other. So, in our case assume it to be dependent on x!
$$\mu(x)Mdy+\mu(x)Ndx=0$$
Applying Clairaut's theorem and assume after some multiplication with integrating factor we have an exact differential equation.
$$\mu$$
$$\frac{\partial \mu(x)(M(x,y))}{\partial y}=\frac{\partial \mu(x)(N(x,y))}{\partial x}$$
Since $\mu(x)$ is not affected by y then we can write,
$$\mu(x)\frac{\partial (M(x,y))}{\partial y}=\mu(x)\frac{\partial (N(x,y))}{\partial x}+N(x,y)\frac{\partial \mu}{\partial x}$$
$$\int\frac{1}{N(x,y)}(\frac{\partial (M(x,y))}{\partial y}-\frac{\partial (N(x,y))}{\partial x})dx=\int\frac{d\mu}{ \mu(x)}$$
$$e^{\int\frac{1}{N(x,y)}(\frac{\partial (M(x,y))}{\partial y}-\frac{\partial (N(x,y))}{\partial x})dx}=\mu$$
It is considered lucky if we can find the integrating factor of the differential equation!


TITLE: Find the Average Score Given the Standard Deviation
QUESTION [0 upvotes]: I think I'm supposed to use $z = (X - \bar X)/S$ but I'm not sure how to apply it properly to this problem.

Kyle got an 8.25 on his previous test while the average score was a
  7.2 and the standard deviation was 0.8.
On another test he got a 7.25 and the standard devation was also 0.8.
  What was the average score for the second test?

I assume it's the same sample size but I'm not sure if that would matter.
So attempting to use the equation I listed I tried doing the following:
$$z = \frac{8.25-7.2}{.8} = 1.3125$$
Then using that apply it to the second test (after shifting around the equation to solve for the average):
$$\bar X = -((.8 \times 1.3125)-7.25) = 6.2 $$
So my guess is that the average would be 6.2 but I haven't done this is a long time and don't recall if what I did is correct.

REPLY [1 votes]: As commented on the question, the assumption has to be made that Kyle is the same number of standard deviation units from the mean. Therefore my calculation is correct. If that assumption cannot be made then the probably is not possible to solve with the given information.


TITLE: Find a general solution of the reducible second-order differential equation
QUESTION [2 upvotes]: $$yy'' + (y')^2 = yy'$$
So I make my obvious $p$ substitutions:
$$y' = p$$
$$y'' = p(dp/dy)$$
Then:
$$yp(dp/dy) + p^2 = yp$$
Then I know I can reduce this equation to use the integrating factor, so:
$$dp/dy + p/y = 1$$
Where: $$I(x) = e^\int(1/y)dy$$
$$I(x) = y$$
And:
$$y(dp/dy) = 1(y)$$
$$py = (y^2)/2$$
And this is where I get lost. I don't know what the correct next step is, and I end up with convoluted answers.

REPLY [1 votes]: (To answer the question where to go next - as opposed to the great method outlined by H.R) You were close
$$
yp = \int y dy = \frac{y^2}{2}+C
$$
please be careful with notation and doing operations simultaneously on left and right of the equals sign. e.g.
$$
p\mathrm{e}^{\int \frac{1}{y}dy} = \int 1\cdot \mathrm{e}^{\int \frac{1}{y}dy}
$$
not
$$
y\dfrac{dp}{dy} = 1\cdot y
$$
(back to the question)
$$
p\mathrm{e}^{\int \frac{1}{y}dy} = \int 1\cdot \mathrm{e}^{\int \frac{1}{y}dy} = \int y dy = \frac{y^2}{2}+C
$$
(this is probably where you forgot the constant along other things)
$$
\frac{yy'}{y^2+2C} = \frac{1}{2}
$$
let $y^2+2C = v$ we find
$$
\frac{v'}{2v} = \frac{1}{2}\implies \ln v = x + C_1
$$
so we have
$$
v = A\mathrm{e}^x = y^2+2C
$$
or
$$
y^2 = A\mathrm{e}^x - 2C
$$


TITLE: A question on K- theory of non commutative $C^\star$ algebra
QUESTION [1 upvotes]: Edit: According to the comment of Andre Henriques I revise the question:
What is  an example  of  a  noncommutative unital $C^\star$  algebra $A$, which is not Morita equivalent to a  commutative algebra,  such that for  all unital subalgebra $B$ of  $A$, $ K_{0}(B)$  has $\mathbb{Z}$ as a summand? This  question is  motivated by this post and the fact that  commutative  algebras and their  matrix algebras satisfies the  above  property.

REPLY [5 votes]: The question only requires regarding K$_0$ as an abelian group (it has a natural pre-ordering too), which makes it easy to construct simple (in the technical sense) examples.
Let $A$ be a simple infinite dimensional unital AF C*-algebra, whose K$_0$ group is free (as an abelian group) [lots of examples exist; see any  basic work on AF algebras]. If $B$ is a unital subalgebra, it is stably finite (as $A$ is stably finite). Hence the image of $K_0(B)$ in $K_0(A)$ is nonzero (actually, we knew this anyway, since the free module on one generator over $B$ has nonzero image in K$_0(A)$). The image of K$_0(B)$ is a nonzero subgroup of the free abelian group K$_0(A)$, so is itself free, and thus the map to its image splits. So $\bf Z$ is a direct summand of $K_0(B)$. [Even though $K_0(B) \to K_0(A)$ need not be one to one!]
And a simple infinite-dimensional C*-algebra is not Morita equivalent to a commutative one.


TITLE: How can I compute E[y]?
QUESTION [2 upvotes]: I have that $X$ is a RV with $P(X=1)=1-P(X=2)=p$ and $Y$ is RV with $ (Y|X=k)\stackrel{d}{=}\mathcal U[0,k]$
First of all, I try to find the joint density: $f(k,y)=f_x(k)f_{Y|X=k}=\frac{1}{2}.\frac{1}{k}=\frac{1}{2k}; k=1,2$
Then, the density of $y$, would be $f_y(y)=\sum \limits_{k=1}^{2}\frac{1}{2k}=\frac{3}{4}$
$E[y]=\int \limits_0^2yf_y(y)dy=\frac{3}{4}\int \limits_0^2ydy=\frac{3}{2}$
I would like to know if this is the way to do it, I am kind of confused since one is discrete and the other one is continuous.

REPLY [1 votes]: Because $X$ is discrete and $Y\mid X$ is continuous, the joint function is a piecewise density function.  We can still work with this.   We sum over the discrete and integrate over the continuous, as we otherwise would.
$\begin{align}
\mathsf P(X=k) & = \begin{cases}p & : k=1 \\ 1- p & : k=2\\ 0 & : \text{elsewhere}\end{cases}
& \text{( Given )}
\\[3ex]
f_{Y\mid X}(y\mid k) & = \begin{cases}\frac 1 k & : y\in [0; k] \\ 0 & : \text{elsewhere}\end{cases}
& (\;{Y\mid {X=k}}\;\,\sim\;\, \mathcal{U}[0;k]\;)
\\[3ex]
f_{Y,X}(y, k) &= f_{Y\mid X}(y\mid k)\; \mathsf P(X=k)
 & \text{( by definition )}
\\[1ex] & = \begin{cases} p & : k=1, y\in [0;1] \\ (1-p)/2 & : k=2, y\in [0;2]\\ 0 & : \text{elsewhere}\end{cases}
\\[3ex]
\mathsf E(Y) & = \sum_{k\in \{1, 2\}} \int_0^k y\,f_{Y, X}(y, k)\operatorname d y
\\[1ex]
& = \int_0^1 p y \operatorname d y + \int_0^2 (1-p)y/2 \operatorname d y
& \mathop{\color{red}{\boxed{\color{blue}{= p\,\mathsf E(Y\mid X=1)+(1-p)\,\mathsf E(Y\mid X=2)}}}}_{\text{which is the Law of Iterated Expectation}}
\\[1ex]
& = \frac p 2 + (1-p)
\\[1ex]
& = 1-\frac p 2
\end{align}$


text:
\begin{document}

\title{A PDD Decoder for Binary Linear Codes With Neural Check Polytope Projection}

\author{Yi Wei, Ming-Min Zhao, Min-Jian Zhao and Ming Lei\vspace{-2.5em}
\thanks{Y. Wei, M. M. Zhao, M. J. Zhao and M. Lei are with College of Information Science and Electronic Engineering, Zhejiang University, Hangzhou 310027, China
(email: \{21731133, zmmblack, mjzhao, lm1029\}@zju.edu.cn) (Corresponding author: Ming-Min Zhao and Min-Jian Zhao.)

This work was supported in part by  the
National Key R$\&$D Program of China under Grant 2018YFB1802303, in part by the National Natural Science Foundation of China under Grant 91938202, in part by the Zhejiang Provincial Natural Science Foundation of China under Grant LQ20F010010, in part by the Fundamental Research Funds for the Central Universities under Grant 2019QNA5011.
}}

\maketitle

\begin{abstract}
\color{black}{
Linear Programming (LP) is an important decoding technique for binary linear codes. However, the advantages of LP decoding, such as low error floor and strong  theoretical guarantee, etc., come at the cost of high computational complexity and poor performance at the low signal-to-noise ratio (SNR) region. In this letter, we  adopt the penalty dual decomposition (PDD) framework and propose a PDD algorithm to address the fundamental polytope based maximum likelihood (ML) decoding problem. Furthermore, we propose to integrate machine learning techniques into the most time-consuming part of the PDD decoding algorithm, i.e., check polytope projection (CPP). Inspired by the fact that a multi-layer perception (MLP) can theoretically approximate any nonlinear mapping function, we present a specially designed neural CPP (NCPP) algorithm to decrease the decoding latency. Simulation results demonstrate the effectiveness of the proposed algorithms.
}
\end{abstract}

\begin{IEEEkeywords}
Binary linear codes, check polytope projection, LDPC, machine learning, MLP, neural network.
\end{IEEEkeywords}

\IEEEpeerreviewmaketitle

\vspace{-0.3em}
\section{Introduction}
Recently, the linear programming (LP) decoder, which is based on LP relaxation of the maximum likelihood (ML) decoding problem, has attracted increasing attention for decoding binary linear codes, especially for low density parity check (LDPC) codes \cite{1397933,6187728}. Compared with the classical belief propagation (BP) decoder, the LP decoder has stronger theoretical guarantees on decoding performance and empirically is not observed to suffer from an error floor. However, the above advantages of the LP decoder come at the cost of two drawbacks, i.e., higher computational complexity and poorer error-correcting performance when the signal-to-noise-ratio (SNR) is low.

 In order to overcome the above shortcomings, the work \cite{LiuIT2013} first employed the alternating direction method
of multipliers (ADMM) to solve the ML decoding problem by exploiting the fundamental polytope of the parity-check (PC) constraints. In order to improve the error-rate performance in the low SNR
region, the work \cite{7456284} added penalty terms to the linear objective function to make pseudocodewords more costly and the resulting decoder is known as the ADMM penalized decoder. Afterwards, improvements over the ADMM penalized decoder were achieved by modifying the penalty terms \cite{7740920}, \cite{JiaoCL2015}.

{ Based on the  cascaded decomposition
method \cite{4455768},
the work \cite{8691508} adopted the penalty dual decomposition (PDD) framework \cite{ShiPDD2017} and developed a PDD decoder, which was shown to overperform the ADMM penalized decoder.}

Focusing on the fundamental polytope based ML decoding problem, intensive studies have been conducted to simplify  the check polytope projection (CPP) operations, which is the most computationally intensive and time-consuming part in the ADMM-based decoders \cite{ZhangISIT2013,6636134,Wei2018,7073564}.

Compared with the original CPP algorithm which involves two sorting operations \cite{LiuIT2013}, the work \cite{ZhangISIT2013} employed a cut-search algorithm to remove one sorting operation. In \cite{6636134}, the projection algorithm was further simplified by transforming the CPP operation into the projection onto   a simplex. In \cite{Wei2018}, the authors presented an iterative CPP (ICPP) algorithm which  requires no sorting operation and can substantially improve the decoding speed. The work \cite{ADMM1901}  revealed the recursive structure of the parity polytope and presented an efficient projection algorithm by iteratively fixing selected components of the projection.

In this letter, we propose a novel multi-layer perception (MLP)-aided PDD decoder for binary linear codes. Different from the PDD decoder in \cite{8691508} which considers the minimum polytope based LP formulation, we show that the PDD framework can also be applied to the fundamental polytope based LP formulation. The proposed decoder consists of two loops: in the outer loop, we update the dual variables and certain penalty parameter, while in the inner loop, we divide the primal variables into several blocks and employ the block coordinate descent (BCD) method to iteratively optimize each block variable in closed-form. Furthermore, in order to simplify the CPP operations in the proposed PDD decoder, we propose a neural CPP (NCPP) algorithm, which is obtained by integrating a simple three-layer MLP (namely CPP-net) into the ICPP algorithm in \cite{Wei2018} to reduce the corresponding iteration number. Simulation results demonstrate
that the proposed PDD decoder exhibits superior error-correcting performance and the NCPP algorithm can reduce the latency significantly.
\vspace{-0.3cm}
\section{Problem Formulation}
Consider a binary linear code $\mathcal{C}$ of length $N$ specified by an $M \times N$ PC matrix $\mathbf{H}$. Let $\mathcal{I} \triangleq \{1,\cdots,N\}$ and $\mathcal{J} \triangleq \{1,\cdots,M\}$ denote the sets of variables nodes and check nodes of $\mathcal{C}$, respectively.

Suppose $\mathbf{x}=\{x_i = \{0,1\},i \in \mathcal{I}\}$ is a codeword transmitted over a memoryless binary-input symmetric-output channels, and $\mathbf{y}$ is the received signal. Then, the received  log-likelihood ratio (LLR) vector $\mathbf{v} \in \mathbb{R}^{N\times 1}$ can be expressed as
\vspace{-0.2cm}
\begin{equation} \label{llr}
\small
v_i = \log \left( \frac{\textrm{Pr}(y_i | x_i = 0)}{\textrm{Pr}(y_i | x_i = 1)} \right),\;i \in \mathcal{I}.
\end{equation}

\vspace{-0.1cm}
\noindent According to \cite{7456284}, the ML decoding problem can be formulated as the following optimization problem:
\vspace{-0.13cm}
\begin{equation} \label{1}
\small
{\min \limits_{\mathbf{x}} \; \mathbf{v}^T\mathbf{x} \qquad \textrm{s.t.}\;  \mathbf{x} \in \mathcal{C}.}
\end{equation}
\vspace{-0.6cm}

\noindent The work \cite{1397933} proposed to relax problem \eqref{1} as follows:
\vspace{-0.13cm}
\begin{equation} \label{LP_problem}
\small
{\min \limits_{\mathbf{x}} \; \mathbf{v}^T\mathbf{x} \qquad \textrm{s.t.}\; \mathbf{x} \in \mathcal{P}:= \bigcap_{j\in\mathcal{J}} \textrm{conv}(\mathcal{D}_j),}
\end{equation}
\vspace{-0.3cm}

\noindent {where $\textrm{conv}(\mathcal{D}_j)$ is the convex hull of the codewords defined by the $j$-th row of the PC matrix $\mathbf{H}$, and $\mathcal{P}$ is called the fundamental polytope.} Let $d_j$ denote the degree of check node $j$, \eqref{LP_problem}  can be expressed in a more compact form as \cite{1397933}
\vspace{-0.10cm}
\begin{equation} \label{LP_problem_equi}
\small
{\min \limits_{\mathbf{x}} \; \mathbf{v}^T\mathbf{x} \qquad \textrm{s.t.}\; \mathbf{P}_j \mathbf{x} \in \mathbb{PP}_{d_j},\;\forall j \in \mathcal{J},}
\end{equation}

\vspace{-0.1cm}
\noindent where ${\mathbf{P}}_j$ denotes a $d_j\times N$ selection matrix which selects the elements of $\mathbf{x}$ that participate in the $j$-th check equation. ${\mathbb{PP}}_{d_j}$ is the PC polytope of dimension $d_j$, which is defined as the convex hull of all even-parity binary vectors of length $d_j$, i.e., ${\mathbb{PP}}_{d_j}=\textrm{conv}(\{{\mathbf{e}}\in\{0,1\}^{d_j} \vert \;\|\mathbf{e}\|_1 \textrm{ is even}\})$.

\vspace{-0.2cm}
\section{PDD decoding algorithm}
\vspace{-0.0cm}
{ In this section,  we adopt the PDD framework to solve problem \eqref{LP_problem_equi} and develop a PDD decoding algorithm, where the main idea is to introduce additional equality constraints to handle the nontrivial constraints and the discrete variable $\mathbf{x}$.}

Firstly, we introduce auxiliary variables
$\{{\mathbf{z}}_j\in {\mathbb{R}}^{d_j\times 1}\}$ to equivalently transform constraint $\mathbf{P}_j \mathbf{x} \in \mathbb{PP}_{d_j},\;\forall j \in \mathcal{J}$ into $ \mathbf{P}_j \mathbf{x} = \mathbf{z}_j, \mathbf{z}_j  \in \mathbb{PP}_{d_j},\;\forall j \in \mathcal{J}$.

Then, we relax the binary variables $\{x_i\}$ to the interval $[0,1]$, and instead of using penalty functions to enforce $x_i$ to $0$ or $1$, we propose to introduce auxiliary variables $\{\hat{x}_i\}$ which satisfy $\hat{x}_i =x_i$ and $x_i (\hat{x}_i-1) = 0$. Let $\hat{\mathbf{x}}=[{\hat{x}}_1,\cdots,{\hat{x}}_N]^T$ and $\mathbf{z}=[{\mathbf{z}}_1^T,\cdots,{\mathbf{z}}_M^T]^T$, problem \eqref{LP_problem_equi} can be equivalently formulated as

\vspace{-0.13cm}
\begin{equation} \label{LP_problem_PDD}{
\small
	\begin{aligned}
	\min \limits_{\mathbf{x}, \;\hat{\mathbf{x}},\; {\mathbf{z}}} \; & \mathbf{v}^T\mathbf{x}\\
	\textrm{s.t.}  \;&\mathbf{P}_j \mathbf{x} = \mathbf{z}_j, \mathbf{z}_j  \in \mathbb{PP}_{d_j},\;\forall j \in \mathcal{J},\\
	& x_i(\hat{x}_i - 1) = 0,\; x_i = \hat{x}_i,\;0\leq x_i \leq 1,\;\forall i \in \mathcal{I}.
	\end{aligned} }
\end{equation}

\vspace{-0.2cm}
\noindent Next, we can see that the augmented Lagrangian problem of \eqref{LP_problem_PDD} can be expressed as {
\vspace{-0.13cm}
\begin{equation} \label{AL_problem}
\small
{ \begin{aligned}
\min \limits_{\mathbf{x},\;\hat{\mathbf{x}},\;\mathbf{z}} \; &\mathbf{v}^T\mathbf{x} + P_{\mu_m}(\mathbf{x},\hat{\mathbf{x}},\mathbf{z})\\
\textrm{s.t.} \; & \mathbf{z}_j \in\mathbb{PP}_{d_j},\;\forall j \in \mathcal{J},\; 0 \leq  x_i \leq 1,\; \forall i \in \mathcal{I}
\end{aligned}}
\end{equation}}

\vspace{-0.3cm}
\noindent where
\vspace{-0.13cm}
\begin{equation}
\small
\begin{aligned}
&P_{\mu_m}(\mathbf{x},\hat{\mathbf{x}}, \mathbf{z}) \triangleq
 \frac{\mu_m}{2}\sum\limits_{j\in\mathcal{J}}\|\mathbf{P}_j \mathbf{x} - \mathbf{z}_j+\frac{\mathbf{y}_j}{\mu_m}\|^2\\
&+\sum \limits_{i\in\mathcal{I}} \Big(\frac{\mu_m}{2}\big(x_i(\hat x_i-1) + \frac{w_i}{\mu_m}\big)^2
 +\frac{\mu_m}{2}\big(x_i-\hat x_i + \frac{\eta_i}{\mu_m}\big)^2\Big),
\end{aligned}
\end{equation}

\vspace{-0.1cm}
\noindent $\{\mathbf{y}_j\}$, $\{w_i\}$ and $\{\eta_i\}$ denote the dual variables associated with the constraints $\mathbf{P}_j \mathbf{x} = \mathbf{z}_j$, $x_i(\hat x_i-1) = 0$ and $x_i=\hat x_i$, respectively; $\mu_m$ represents the penalty parameter in the $m$-th outer iteration. To this end, we propose to address problem \eqref{AL_problem} by employing the BCD method  in the inner iterations, and update the dual variables  and the penalty
parameter $\{\mu_m\}$ in the outer iterations.

In \eqref{AL_problem}, it can be observed that the primal variables can be divided into three blocks, i.e.,  $\mathbf{x}$, $\hat{\mathbf{x}}$ and $\mathbf{z}$. Therefore, the BSUM iterations for problem \eqref{AL_problem} consists of the following three steps ($k$ denotes the inner iteration index):
\subsubsection{\textbf{Updating $\mathbf{x}^{k+1}$ given $\{\hat{\mathbf{x}}^k,\mathbf{z}^k\}$}}
The $\mathbf{x}$ subproblem is a quadratic optimization problem with a simple constraint that restricts its solution to lie in the interval [0,1], which can be expressed as
\vspace{-0.13cm}
\begin{equation}\label{x_subproblem}
\small
\min \limits_{\mathbf{x}} \;  \mathbf{v}^T \mathbf{x}+ P_{\mu_m}(\mathbf{x},\hat{\mathbf{x}}, \mathbf{z}) \qquad
\textrm{s.t.} \;  0 \leq  x_i \leq 1,\; \forall i \in \mathcal{I}.
\end{equation}

\vspace{-0.2cm}
\noindent We can observe that problem \eqref{x_subproblem} can be naturally decomposed into $N$ subproblems, i.e.,

\vspace{-0.13cm}
\begin{equation} \label{x_subproblem_i}
\small
\min\limits_{x_{i}} \; a_{i,m}^kx_i^2+b_{i,m}^kx_i \qquad
\textrm{s.t.}\; 0 \leq x_i \leq 1,
\end{equation}

\vspace{-0.2cm}
\noindent{where
{ $a_{i,m}^k =\frac{\mu_m}{2}\left(d_i+(\hat{x}_i^k-1)^2+1\right) $}, $b_{i,m}^k = v_i+2\alpha_i+\omega_i(\hat{x}_i^k-1)+\eta_i-\mu_m \hat{x}_i^k$, and $\alpha_i$ denotes the $i$-th element of the vector $\bm{\alpha } = \frac{\mu_m}{2}\sum_{j \in \mathcal{J}} \mathbf{P}_j^T (\frac{\mathbf{y}_j}{\mu_m}-\mathbf{z}_j^k)$.}
By resorting to the first-order optimality condition, the optimal solution of problem \eqref{x_subproblem_i} can be obtained by
\vspace{-0.13cm}
\begin{equation}\label{xup}
\small
x_i^{k+1} = \Pi_{[0,1]}(-0.5b_{i,m}^k/a_{i,m}^k),
\end{equation}

\vspace{-0.2cm}
\noindent where $\Pi_{[0,1]}$ denotes the Euclidean projection operation into the interval $[0,1]$.

\subsubsection{ \textbf{Updating $\mathbf{z}^{k+1}$ given $\{\hat{\mathbf{x}}^k,\mathbf{x}^{k+1}\}$}}
  The optimization problem of $\mathbf{z}_j$ can be expressed as
  \vspace{-0.15cm}
\begin{equation} \label{z_subproblem}
\small
{\min \limits_{\mathbf{z}_j}  \frac{\mu_m}{2}\|\mathbf{P}_j \mathbf{x}^k - \mathbf{z}_j+\frac{\mathbf{y}_j}{\mu_m}\|^2  \qquad
\textrm{s.t.} \;\mathbf{z}_j \in\mathbb{PP}_{d_j}.}
\end{equation}

\vspace{-0.1cm}
\noindent Similar to the first step, the optimal solution of problem \eqref{z_subproblem} is given by
\vspace{-0.13cm}
\begin{equation}\label{zup}
\small
{\mathbf{z}}_j^{k+1}=\Pi _{\mathbb{PP}_{d_j}}(\mathbf{P}_j \mathbf{x}^k + \frac{\mathbf{y}_j}{\mu_m}),
\end{equation}

\vspace{-0.2cm}
\noindent where $\Pi _{\mathbb{PP}_{d_j}}$ denotes the CPP operation.
\subsubsection{\textbf{Updating $\hat{\mathbf{x}}^{k+1}$ given $\{\mathbf{x}^{k+1},\mathbf{z}^{k+1}\}$}}
The $\hat{\mathbf{x}}$ subproblem can be written as the following unconstrained quadratic optimization problem:
\vspace{-0.13cm}
\begin{equation}
\small
\begin{array}{l}
\min\limits_{\hat{\mathbf{x}}}\; \sum \limits_{i\in \mathcal{I}} \Big(\frac{\mu_m}{2}\big(x_i^k(\hat x_i-1) + \frac{w_i}{\mu_m}\big)^2 +\frac{\mu_m}{2}(x_i^k-\hat x_i + \frac{\eta_i}{\mu_m})^2\Big),
\end{array}
\end{equation}

\vspace{-0.3cm}
\noindent whose optimal solution can be easily obtained by
\vspace{-0.2cm}
\begin{equation}\label{x_up}
\small
{\hat{x}}_i^{k+1}=-\frac{{\mu_m}\left((x_i^k)^2 +1\right)}{4\left((\omega_i-\mu_mx_i^k)x_i^k -(\eta_i+\mu_m x_i^k)\right)}.
\end{equation}

\vspace{-0.15cm}
Furthermore, the dual variables can be updated by
\vspace{-0.13cm}
\begin{equation} \label{dual_update} \small
\begin{aligned}
\mathbf{y}_j^{m+1} &=
\mathbf{y}_j^m + \mu_m(\mathbf{P}_j \mathbf{x}^m - \mathbf{z}_j^m),\\
w_{i}^{m+1} &= w_{i}^{m} + \mu_m \left(x_i^{m}(\hat x_i^{m}-1)\right),\\
\eta_i^{m+1} &= \eta_i^{m} + \mu_m (x_i^{m}- \hat x_i^{m}).
\end{aligned}
\end{equation}

\vspace{-0.15cm}
\noindent To summarize, the detailed steps of the PDD decoder are listed in Algorithm \ref{PDD}, where $c$ denotes a control parameter that gradually increases the penalty parameter $\mu_m$ by a certain amount during each outer iteration. According to \cite{ShiPDD2017},  the proposed PDD decoder is guaranteed to converge.
\vspace{-0.0cm} \begin{algorithm}[!b]\footnotesize
\setlength{\abovecaptionskip}{-0.5cm}
    \caption{PDD Algorithm for Problem \eqref{LP_problem_equi}} \label{PDD}
    \begin{algorithmic}[1]
        \State Initialize $\mathbf{y}^{0}$, $\{w_{i}\}^{0}$, $\{\eta_i\}^{0}$ and $\mathbf{z}^{0}$ as all-zero vectors. Initialize all elements in $\hat{\mathbf{x}}^{0}$ to $0.5$. Set the initial penalty parameter $\mu_0$ and control parameter $c$. Set $m\leftarrow 0$.
        \Repeat
        \State Obtain $\mathbf{z}^{0}$ and $\hat{\mathbf{x}}^{0}$. Set $k\leftarrow 0$.
        \Repeat
        \State Update $\{\mathbf{x}^{k+1}, \mathbf{z}^{k+1}, \hat{\mathbf{x}}^{k+1}\}$ by \eqref{xup}, \eqref{zup} and \eqref{x_up}. $k\leftarrow k+1$.
        \Until{ some convergence condition is met.}
        \State $\mathbf{x}^{m} \leftarrow \mathbf{x}^{k+1}$, $\mathbf{z}^{m} \leftarrow \mathbf{z}^{k+1}$ and $\hat{\mathbf{x}}^{m} \leftarrow \hat{\mathbf{x}}^{k+1}$.

        \State Update the dual variables by \eqref{dual_update} and set $\mu_{m+1} = c \mu_m$.
        \State $\mathbf{z}^{0} \leftarrow \mathbf{z}^{m}$, $\hat{\mathbf{x}}^{0} \leftarrow \hat{\mathbf{x}}^{m}$, $m\leftarrow m+1$.
        \Until{ some convergence condition is met.}
    \end{algorithmic}
\end{algorithm}

\vspace{-0.25cm}
\section{NCPP algorithm}
The projection $\Pi_{{\mathbb{PP}}_d}(\cdot)$ of a real-valued vector onto the check polytope ${\mathbb{PP}}_d$ in \eqref{zup} is the most time-consuming part in fundamental polytope based decoders, such as the proposed PDD decoder and the ADMM-based decoders in \cite{LiuIT2013} and \cite{7456284}, etc.
In this section, we propose a novel NCPP algorithm which can further reduce the decoding latency of the ICPP algorithm in \cite{Wei2018}. {The main idea of the proposed method is to reduce the number of CPP iterations through a simple three-layer MLP (namely CPP-net) with quantized parameters.} In the following, we first give a brief review of the ICPP algorithm, and then the structure of CPP-net is introduced followed by the proposed NCPP algorithm, and finally we present the detailed process of  training sample generation and loss function design.

\vspace{-0.45cm}
\subsection{Brief Review of the ICPP Algorithm}

The ICPP algorithm proposed in \cite{Wei2018} does not require complex sorting operations, however the iterative nature of the algorithm would increase the latency since it lies in each iteration of the proposed PDD decoder and the ADMM-based decoders. { Generally, the ICPP algorithm to obtain $\mathbf{r}=\Pi_{{\mathbb{PP}}_d}(\mathbf{v})$,$\mathbf{v}\in \mathbb{R}^{d_j \times 1}$ works as follows: 1) find the assistant hyperplane $\bm{\theta}$ associated with $\mathbf{v}$, which satisfies ${\bm{\theta}}^T\mathbf{v} = p, p\in \mathbb{R}$  (the value of $p$ can be found by
step 7 of Algorithm 2, which will be introduced later) and determines whether a point in the unit hypercube lies in the check polytope or not, 2) iteratively  derive the difference coefficient $s$ and 3) obtain the projection by
$\mathbf{r}=\Pi_{[0,1]^d}(\mathbf{v}-s\bm{\theta})$.}

The vector ${\mathbf{v}}'=\mathbf{v}-s\bm{\theta}$ can be interpreted as a shift of vector $\mathbf{v}$ in the direction
orthogonal to the assistant hyperplane $\bm{\theta}$, where the amount
of shift is determined by the value of $s$. In \cite{Wei2018}, an estimate $\hat{s}$ of $s$ was iteratively obtained by $\hat{s}=\sum{\eta^k}$, where ${\eta^k}$ is the incremental projection coefficient and $\eta^k\bm{\theta}$ is how much $\mathbf{v}$ is shifted at the $k$-th iteration. This iterative process terminates when ${\eta^k}$ falls below a certain threshold $\epsilon$.

\vspace{-0.3cm}
\subsection{Structure of CPP-net}
 \begin{figure}[t]
\vspace{-0.1cm}
\setlength{\belowcaptionskip}{-0.6cm}
\renewcommand{\captionfont}{\small}
\centering
\includegraphics[scale=.28]{NN.eps}
\caption{Structure of the proposed CPP-net when $d_j=6$.}
\label{NN}
\normalsize
\end{figure}
{ Since the  assistant hyperplane $\bm{\theta}$ is relatively easy to obtain, the main difficulty of
the CPP operation $\mathbf{r}=\Pi_{{\mathbb{PP}}_d}(\mathbf{v})$ lies in the calculation of $s$, which can be viewed as the projection of $\mathbf{v}$ to ${s}$, i.e., $\Pi_{\mathbf{v}\rightarrow{s}}(\mathbf{v})$.} As a result, the CPP operation can be alternatively expressed as
$\mathbf{r} = \Pi_{[0,1]^d}(\mathbf{v}-\Pi_{\mathbf{v}\rightarrow{s}}(\mathbf{v})\bm{\theta})$.
 Motivated by the fact that a trained MLP with  enough neurons can approximate any nonlinear mappings, we introduce a simple three-layer MLP to imitate the  projection $\Pi_{\mathbf{v}\rightarrow s}(v)$  and output an initial estimation of $s$ for the purpose of reducing the residual iteration number. Note that a classical MLP consists of an input layer, an output layer and several hidden layers. Each layer has multiple neurons, and each neuron can execute an activation function on the weighted sum of the
outputs from the preceding layer. The activation function plays an important role in neural networks and when it is non-linear, a two-layer neural network can be proven to be a universal function approximator.

The proposed CPP-net with $d_j$ inputs consists of three layers, i.e., one input layer with $d_j$ neurons, one hidden layer with $\lceil d_j/2\rceil$ neurons and one output layer with only one neuron.
{ In order to introduce non-linearity into the proposed
network, both  hidden  and  output layers should contain activation functions. Note that the widely-used ReLU activation function is not employed  in the proposed CPP-net
since it will force almost half of the neurons to be silenced (verified by our simulations) and limit the
 learning ability of CPP-net. Instead, we propose a novel activation function constructed based on the $\sin(\cdot)$ function to improve the performance of CPP-net and with low implementation cost.
}

We refer to this function as the $\textrm{SinAct}(\cdot)$ and its definition is given by
\vspace{-0.15cm}
\begin{equation}
\small
\textrm{SinAct}(x)=\left\{ \begin{array}{ll}
             \frac{1}{2}\left(\sin(\frac{\pi}{2}x)+1\right),  &-1 \le x \le 1\\
            0,  & x\textless -1\\
            1,  &x \textgreater 1
            \end{array}\right..
\end{equation}

\vspace{-0.15cm}
\noindent For clarity, a simple example of the proposed CPP-net when $d_j=6$ is depicted in Fig. \ref{NN}.

 Let ${\mathbf{y}}^{h}\in{\mathbb{R}}^{3\times1}$ and $\tilde{s}\in \mathbb{R}$ denote the outputs of the hidden and output layers, respectively, then the data flow of CPP-net can be expressed as follows:

\vspace{-0.1cm}
\begin{equation}
{\mathbf{y}}^{h} = \textrm{SinAct}({\mathbf{W}}_{a}\mathbf{v}+{\mathbf{b}}_a),\;
\tilde{s} = \textrm{SinAct}({\mathbf{w}}_{b}^T{\mathbf{y}}^{h}+{\mathbf{b}}_b),
\end{equation}

\vspace{-0.1cm}
\noindent where $\bm{\Theta}\triangleq\{{\mathbf{W}}_{a}, {\mathbf{w}}_{b}, {\mathbf{b}}_a, {\mathbf{b}}_b\}$ denote the set of weights and biases, which are the learnable parameters to be trained.  Therefore, the input-output mapping realized by the proposed CPP-net is defined by a chain of functions depending on $\bm{\Theta}$, i.e., $\tilde{s} = \mathcal{F}_{\textrm{CPP-net}}(\mathbf{v};\bm{\Theta})=\textrm{SinAct}({\mathbf{w}}_{b}(\textrm{SinAct}({\mathbf{W}}_{a}\mathbf{v}+{\mathbf{b}}_a))+{\mathbf{b}}_b)$.

In order to further reduce the computational complexity  of CPP-net, we propose to quantize the neural weights $\{{\mathbf{W}}_{a},{\mathbf{w}}_{b}\}$ obtained by training to $\{{\mathbf{W}}_{a}^Q,{\mathbf{w}}_{b}^Q\}$, where ${\mathbf{W}}_{a}^Q\in [0,\pm{2^k}]^{\lceil d_j/2\rceil\times d_j},  {\mathbf{w}}_{b}^Q\in[0,\pm{2^k}]^{1\times \lceil d_j/2\rceil},k\in {\mathcal{N}}$ and ${\mathcal{N}}$ represents the set of natural numbers. Let $w^Q$ denote an arbitrary element in $\{{\mathbf{W}}^Q_{a},{\mathbf{w}}_{b}^Q\}$, we can see that the original  multiplication operations involved in the CPP-net can be simplified as follows:
\begin{itemize}
\item If $w^Q = 0$ or $\pm1$, then no multiplication is required.
\item If $w^Q = \pm2^k,k\in{\mathcal{N}}\verb|\|\{0\}$, then the corresponding multiplication operation can be replaced by the binary shifting operation.
\end{itemize}
 Considering that the addition operations are simpler than multiplications, we choose not to quantize the biases $\{{\mathbf{b}}_a, {\mathbf{b}}_b\}$, but instead finetune them with fixed $\{{\mathbf{W}}_{a}^Q,{\mathbf{w}}_{b}^Q\}$. Note that this can compensate the performance loss caused by the quantization of  $\{{\mathbf{W}}_{a},{\mathbf{w}}_{b}\}$, at least to certain extent.

\begin{figure}[t]
\vspace{-0.2cm}
\setlength{\belowcaptionskip}{-0.5cm}
\renewcommand{\captionfont}{\small}
\centering
\includegraphics[scale=.34]{fre3.eps}
\caption{Probability distribution of the number of iterations required  by the ICPP algorithm with different $E_b/N_0$ ($\epsilon=10^{-6}$).}
\label{fre}
\normalsize
\end{figure}
\vspace{-0.3cm}

\subsection{NCPP algorithm}
 In this subsection, we present the proposed NCPP algorithm, which is shown in Algorithm \ref{projectionNN}. We first decide whether $\mathbf{r}$ can be obtained within only one CPP iteration and if not, we call the CPP-net to obtain an initial estimate $\tilde{s}$ of the difference coefficient $s$. Then, the output of the CPP-net is fed to the subsequent CPP iterations to ensure that an accurate CPP operation can be conducted even when $\tilde{s}$ is far from $s$. Thus, the NCPP algorithm is expected to achieve the same performance as the ICPP algorithm with lower complexity. {Note that the $\textrm{SinAct}(\cdot)$ function can be implemented as a look-up-table and this will not degrade the error correcting performance of the proposed decoder (ensured by steps 12-14 in Algorithm 2). When the number of quantization bits is large enough (e.g., larger than 3), the average iteration number required by the NCPP algorithm is only slightly increased (less than 0.5 in our simulations).}
 \begin{algorithm}[!h] \footnotesize
 \setlength\abovedisplayskip{-10pt}
	\caption{NCPP Algorithm} \label{projectionNN}
	\begin{algorithmic}[1]
		\State \textbf{Intput:} Vector $\mathbf{v}$ with dimension $d_j$.
		\State \textbf{Output:}  $\mathbf{r}=\Pi _{\mathbb{PP}_{d}} (\mathbf{v})$.
		\State $\theta_i=\textrm{sgn}(v_i-0.5),\;i=1,\cdots,d$.
		\If{$|\{i:\theta_i = 1\} |$ is even}
		\State $i^*=\arg\min_i |v_i-0.5|$, $\theta_i^*=-\theta_i^*$.
        \EndIf
		\State $p=|\{i:\theta_i=1\}|-1$, $\mathbf{u}=\Pi_{[0,1]^d} (\mathbf{v})$, $\eta = (\bm{\theta}^T\mathbf{u}-p)/d$.
        \If{$\eta<\epsilon $}
        \State $\mathbf{r} = \mathbf{u}$.
        \Else
        \State $\tilde{s} = \mathcal{F}_{\textrm{CPP-net}}(\mathbf{v})$, $\eta^0 = \tilde{s}$, $k=0$.
		\Repeat
		\State $\mathbf{v}=\mathbf{v}-{\eta^k} \bm{\theta}$, $\mathbf{u}=\Pi_{[0,1]^d} (\mathbf{v})$, $k=k+1$, $\eta^k = (\bm{\theta}^T\mathbf{u}-p)/d$.
		\Until{ $|\eta^k|<\epsilon $}
		\State $\mathbf{r} = \mathbf{u}$.
        \EndIf
	\end{algorithmic}
\end{algorithm}
\vspace{-0.5cm}
\subsection{Training Details}
\subsubsection{Training Sample Generation}
 Generally, an MLP is trained to extract the underlying features from  training samples and learn the specific patterns to perform certain tasks, such as classification, clustering and forecasting, etc. Therefore, the performance of the
MLP depends critically on the quality of the training data and in our case, not surprisingly, training with training samples generated under different scenarios will lead to  performance differences   over the same validation set.

Let $({\mathbf{v}}_p,{\hat{s}}_p)_{p=1}^P$ denote the labeled training sample set with  size $P$, where ${\mathbf{v}}_p$ and ${\hat{s}}_p$  represent the $p$-th feature and label, respectively. More specifically, for the considered network, ${\mathbf{v}}_p$ is the input of the CPP operation, which is acquired  by collecting $\mathbf{P}_j \mathbf{x} + \frac{\mathbf{y}_j}{\mu_m}$ in \eqref{zup} when running the PDD decoding algorithm, and the label ${\hat{s}}_p$ is the approximation of $s_p$, which is obtained by running the ICPP algorithm with a predetermined iteration number $K_p$.

Since the proposed network aims to reduce the number of iterations required by the ICPP algorithm, training samples obtained by using different iteration numbers would have a critical impact on the training results. In order to investigate the characteristic of the iteration number, we illustrate its probability distribution when $E_b/N_0$ is set to 2 dB or 5 dB  in Fig. \ref{fre}, where the threshold $\epsilon$ is fixed to $10^{-6}$.\footnote{For the detailed simulation setup, please refer to Fig. 4 (a). Note that $E_b/N_0$=2 dB corresponds to the low SNR scenario, while $E_b/N_0$=5 dB denotes the high SNR scenario.} we can observe that for both cases, the proportion of $K_p=1$ (i.e., the ICPP algorithm converges within only one iteration) is larger than the others. Since employing CPP-net is unnecessary when $K_p=1$, the training samples obtained when $K_p=1$ are useless for network training and these instances should not be included in the training sample set. In addition, considering that high noise levels would prevent the proposed network from learning the underlying mapping mechanism, the training samples  with $K_p\ge 2$ are collected under a relatively high $E_b/N_0$ ($E_b/N_0$=5 dB is used in our simulations).

\subsubsection{Loss Function}
Loss function is used
to measure the differences between the network output and the true label, and the performance of the network is heavily dependent on it.
In general, the loss function should be carefully defined according to  the specific learning task.
In the following, we first investigate the convergence property of the proposed NCPP algorithm, based on which we present a novel loss function that is able to accelerate the learning process.

In Fig. \ref{ls}, we illustrate the typical convergence behaviors of the proposed NCPP algorithm with different values of $\tilde{s}$, where $s$ denotes the true difference coefficient, $\tilde{s}_L$ and $\tilde{s}_S$ denote two initial estimates of $s$ with $\tilde{s}_L\textgreater s,\; \tilde{s}_S\textless s$ and $\tilde{s}_L-s=s-\tilde{s}_S\textgreater \epsilon$. { Note that the CPP-net can be viewed as a non-linear projector which is
able to output an approximate value of  the difference coefficient from the input $\mathbf{v}$, therefore, it is able to provide a good initial  point for the ICPP algorithm.}
The accumulated projection coefficient up to iteration $k$, i.e., ${\hat{s}}^{k}=\sum_{i=0}^k\eta^i$,  is regarded as the performance metric. Note that the ICPP algorithm can be viewed as a special case of the proposed NCPP algorithm with $\tilde{s}=0$.  we can observe that different values of $\tilde{s}$ lead to different numbers of iterations with the same $\epsilon$ even when $|\tilde{s}_L-s| = |\tilde{s}_S-s|$, and taking $\tilde{s}_L$ as the initial point results in a smaller iteration number.

\begin{figure}[t]
\vspace{-0.2cm}
\setlength{\belowcaptionskip}{-0.5cm}
\renewcommand{\captionfont}{\small}
\centering
\includegraphics[scale=.36]{ls3.eps}
\caption{Convergence behavior of the NCPP algorithm with different values of $\tilde{s}$.}
\label{ls}
\normalsize
\end{figure}

Based on this observation, we design the loss function as

$\mathcal{L}_{\textrm{CPP-net}}(\bm{\Theta}) = \frac{1}{P}\sum_{p=1}^{P}({\hat{s}}_p-\tilde{s}_p+\kappa||{\hat{s}}_p-\tilde{s}_p||_2^2)$,
where the coefficient $\kappa$ is a weighting factor (hyperparameter) which needs to be predefined before training. We can see that the proposed loss function consists of two terms, i.e., $\hat{s}_p-\tilde{s}_p$ and  $||\hat{s}_p-\tilde{s}_p||_2^2$, $\hat{s}_p-\tilde{s}_p$ is designed such that a larger initial estimate of $s$ is preferred and $||\hat{s}_p-\tilde{s}_p||_2^2$ is used to minimize the difference between the network output and the label.

\vspace{-0.2cm}
\section{Simulation Result}
In this section, computer simulations are carried out to evaluate the error-correcting performance of the proposed PDD decoder and the decoding latency  of the NCPP algorithm. The proposed network is implemented in Python using the TensorFlow library with the Adam optimizer \cite{ADAM}. In the simulations, we focus on additive white Gaussian noise channel with binary phase shift keying (BPSK) modulation. { The considered binary linear codes are (96, 48)  MacKay 96.33.964 LDPC code $\mathcal{C}_1$, (575, 288) IEEE 802.16e LDPC code $\mathcal{C}_2$  and (2640, 1320) Margulis code $\mathcal{C}_3$ \cite{channelcodes}.}

During the training process, we collect $10^5$ training samples and $10^4$ validation samples with $E_b/N_0=5$ dB, $E_b/N_0=4.5$ dB and $E_b/N_0=3$ dB for ${\mathcal{C}}_1$, ${\mathcal{C}}_2$ and ${\mathcal{C}}_3$ codes. The learning rate  and the balance coefficient $\kappa$ are set to $10^{-4}$ and 4.

{ We first compare the BLER performance of  the proposed PDD decoder, the BP decoder (sum-product), the ADMM $\ell_2$  decoder in \cite{7456284} and the PDD decoder in \cite{8691508},  as shown in Fig. \ref{BLER}}.\footnote{{ Note that for the considered codes, we have tested the  ADMM penalized decoders with many other penalty functions, and we finally chose the ADMM $\ell_2$ decoder in terms of BLER performance.}} In all the curves, we collect at least 100 block errors for all data points. It can be observed that our proposed PDD decoder shows better BLER performance at both low and high SNR regions for ${\mathcal{C}}_1$ code. {For longer LDPC codes, i.e., the ${\mathcal{C}}_2$ and ${\mathcal{C}}_3$ codes, the proposed PDD decoder achieves a similar performance as the other counterparts when the SNR is low and outperforms them when $E_b/N_0\ge 2$ dB and $E_b/N_0\ge 1.4$ dB for ${\mathcal{C}}_2$ and ${\mathcal{C}}_3$ codes, respectively. Specifically, 0.3 dB, 0.1 dB and 0.08 dB performance gains over the ADMM $\ell_2$ decoder can be achieved at BLER=$10^{-4}$ for ${\mathcal{C}}_1$, ${\mathcal{C}}_2$ and ${\mathcal{C}}_3$ codes, respectively.} { Besides, although the proposed PDD decoder achieves a  similar BLER performance as that in \cite{8691508}, it requires less auxiliary variables and thus potentially leads to lower complexity.}
\begin{figure}[t]
\vspace{-0.2cm}
\setlength{\belowcaptionskip}{-0.5cm}
\renewcommand{\captionfont}{\small}
\centering

\includegraphics[scale=.42]{PDD8.eps}
\caption{ BLER performance comparison of $\mathcal{C}_1$, $\mathcal{C}_2$ and ${\mathcal{C}}_3$ codes.}
\label{BLER}
\normalsize
\end{figure}

{ Then, in TABLE \ref{Tab1}, we provide the iteration numbers required by the ICPP algorithm \cite{Wei2018} and Algorithm \ref{projectionNN} when decoding ${\mathcal{C}}_1$ ($d=6$), ${\mathcal{C}}_2$ ($d=6$ or 7) codes and (128, 64) CCSDS code ${\mathcal{C}}_4$ ($d=8$) \cite{channelcodes} with $E_b/N_0 = 3$ dB and $\epsilon=10^{-6}$.
 Since the average (\emph{Ave}) and worst case (\emph{Wor}) iteration numbers required by the CPP operation both affect the decoding latency and  throughput, we choose them as the performance metrics.
It can be seen from TABLE \ref{Tab1} that the proposed CPP-net can reduce both the average and worst case iteration numbers and in particular, the average iteration number is reduced by nearly half.}

Finally, we provide a computational complexity
analysis of the ICPP and NCPP algorithms, which is based on the numbers of multiplications (Muls) and additions (Adds) required by the CPP operation. For simplicity, we take ${\mathcal{C}}_1$ code as an example and the analysis for $C_2$ code can be similarly conducted. Note that the complexity of one CPP iteration (step 13 in Algorithm \ref{projectionNN}) involves:
1) updating $\mathbf{v}$, which requires $d$ Muls and $d$ Adds;

2) calculating $\eta$ needs $2d$ Muls and $d$ Adds.
 For ${\mathcal{C}}_1$ code, we list the quantized parameters $\{{\mathbf{W}}_{a}^Q,{\mathbf{w}}_{b}^Q\}$ of the CPP-net as follows:
\begin{equation}
\small
{\mathbf{W}}_{a}^Q=\left[\begin{matrix} 0&0&0&-2&0&0 \\ 0&0&0&-2&0&0 \\1&1&-1 &0&0&0 \end{matrix}\right]^T, {\mathbf{w}}_{b}^Q=[-1,1,0]^T.\label{w1}
\end{equation}
{Therefore, the complexity of one forward pass of the CPP-net can be expressed as $2$ Muls and $7$ Adds. Based on the average iteration number in TABLE \ref{Tab1}, the average numbers of Adds and Muls required by the ICPP and NCPP algorithms are listed as TABLE II.}

Given the fact that the CPP operations are needed in each iteration of the proposed PDD decoder or the ADMM $\ell_2$ decoder, employing Algorithm \ref{projectionNN} is able to reduce the computational complexity and decoding latency of these decoders significantly.

\begin{table}[t]
\vspace{-0.0cm}
\small

\setlength{\abovecaptionskip}{-0.0cm}
\setlength{\belowcaptionskip}{-0.0cm}
\caption{  Iteration number comparison.}
\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|}
\hline
\multirow{2}{*} {} & \multicolumn{2}{c|}{${\mathcal{C}}_1$ ($d=6$)} & \multicolumn{2}{c|}{${\mathcal{C}}_2$ ($d=6/7$)}& \multicolumn{2}{c|}{${\mathcal{C}}_4$ ($d=8$)}\\
\cline{2-7}
  & \emph{Ave} & \emph{Wor} & \emph{Ave} & \emph{Wor} & \emph{Ave} & \emph{Wor}\\
\hline
ICPP & 20.3675 & 72  &28.7205 & 89 & 24.7334 & 79\\
\hline
NCPP & 11.0653 & 61 &15.7024 & 73 & 13.5614 & 68 \\
\hline
\end{tabular}\vspace{-0.3cm}
\label{Tab1}
\end{center}
\end{table}

\begin{table}[t]
\vspace{-0.0cm}
\setlength{\abovecaptionskip}{-0.1cm}
\setlength{\belowcaptionskip}{-0.0cm}
\footnotesize
\caption{Computation complexity comparison.}
\begin{center}
\begin{tabular}{|c|c|c|c|c|c|c|}
\hline
\multirow{2}{*} {} & \multicolumn{2}{c|}{${\mathcal{C}}_1$} & \multicolumn{2}{c|}{${\mathcal{C}}_2$}& \multicolumn{2}{c|}{${\mathcal{C}}_4$}\\
\cline{2-7}
  & Muls & Adds & Muls & Adds & Muls & Adds\\
\hline
ICPP &  366.61  &244.41 & 560.05 & 373.37 & 593.61 & 395.73\\
\hline
NCPP & 201.17  &  139.78 & 308.19 & 212.63 & 328.47 & 232.98 \\
\hline
\end{tabular}\vspace{-0.6cm}
\label{Tab2}
\end{center}
\end{table}
\vspace{-0.2cm}
\section{Conclusion}
In this work, we presented a novel PDD decoder with for binary linear codes.

We showed that other than the minimum polytope based LP problem, the PDD framework can also be utilized to address the  fundamental polytope based LP decoding problem. Furthermore, a NCPP algorithm was proposed to reduce the iteration number required by the ICPP algorithm, and it is applicable to all ADMM or PDD based decoders that involve the CPP operations.
Simulation results demonstrated the superior performance of the proposed PDD decoder and the effectiveness of the NCPP algorithm for complexity and latency reduction.

\ifCLASSOPTIONcaptionsoff
  \newpage
\fi

config: arxiv


TITLE: Essential ideals
QUESTION [4 upvotes]: I am trying to get my head around essential ideals. In literature I found 2 definitions:
An ideal $I$ in a C*-algebra $A$ is essential in $A$
(i) if $aI = 0$ implies $a=0$, $a\in A$; or
(ii) if every other non-zero ideal in $A$ has a non-zero intersection with $I$.
I'm trying to show that they are equivalent. While I was able to show (i) implies (ii) by proving the contrapositive, I'm struggling with showing (ii) implies (i).
Also, is it in general true that if $I$ is an essential ideal in a C*-algebra $A$ and $J$ is an essential ideal in a C*-algebra $B$ then $I \otimes J$ is an essential ideal in $A \otimes B$, where $\otimes$ denotes the minimal tensor product, and how can I prove this?
I am very grateful to anyone who can help with these questions.

REPLY [1 votes]: You can solve this in a purely algebraic way, but using slightly different definitions, and then showing that for $C^*$-algebras, these definitions agree with those in the OP.

Let $A$ be an algebra, and let $I$ be a left ideal.  Consider the conditions:

for $x\in A$, we have $xI=\{0\} \implies x=0$.  (That is, $xa=0$ for all $a\in I$ means $x=0$).
whenever $J$ is a right ideal in $A$ with $I\cap J=\{0\}$, then $J=\{0\}$.
whenever $J$ is a two-sided ideal in $A$ with $I\cap J=\{0\}$, then $J=\{0\}$.

Always (1)$\implies$(2).  Indeed, if (1) holds, and $J$ is a right ideal with $I\cap J=\{0\}$, then given $b\in J$ and $a\in I$, we have $ba\in J$ as $J$ is a right ideal, and $ba\in I$ as $I$ is a left ideal, so $ba\in I\cap J$, so $ba=0$.   By (1), necessarily $b=0$.  So $J=\{0\}$, showing (2).
Clearly (2)$\implies$(3).
Now suppose that $I$ has a non-degenerate product meaning that for $a\in I$, if $a a'=0$ for all $a'\in I$, then $a=0$.
We claim that under this assumption, (3)$\implies$(1).  Let (3) hold, and let $J = \{ x\in A : xI=\{0\}\}$.  For $x\in J$ and $y,z\in A$, we have that $yxzI \subseteq yx I \subseteq y\{0\}=\{0\}$, as $I$ is a left ideal.  So $J$ is a two-sided ideal.  Let $x\in I\cap J$, so $xI=\{0\}$ so $xa'=0$ for all $a'\in I$.  As $I$ has non-degenerate product, $x=0$.  So $I\cap J=\{0\}$ so by (3), $J=\{0\}$, so (1) holds.

Now suppose $A$ is a $C^*$-algebra, and $I$ is an ideal (so two-sided, and closed).  Then (1) is condition (i) in the OP, and (3) is condition (ii) in the OP.  As $I$ is a $C^*$-algebra in its own right, it has an approximate identity, and so certainly has non-degenerate product, so we have shown that (i) and (ii) are equivalent.
In fact, even if $I$ is not closed, its closure still has an approximate identity, $(e_\alpha)$ say.  If $aa'=0$ for all $a'\in I$, then by continuity, also $aa'=0$ for all $a'$ in the closure of $I$, so $a=0$.  Thus $I$ has non-degenerate product.


TITLE: Adding batteries in series but with reversed terminals
QUESTION [0 upvotes]: So I have a bit of an interesting question. My physics professor showed me this diagram:

And he asked us all what the potential difference, or voltage, was. Now, from my understanding these batteries are not in series. To be in series the negative terminal of one battery must touch the positive terminal of the next battery. In this manner, all the batteries are "switched."
But why wouldn't this work? I know it shouldn't, and the voltage I'm guessing is zero, but why? I understand voltage is basically charge separation, but that's still achieved here.

REPLY [0 votes]: I would try to explain this question in a bit different manner but I think this one's easy to understand (at least for me).
The battery always creates a potential difference across its terminals whatever be the condition. This statement might also be stated in this manner - The battery increments the voltage at its negative terminal by $V$ volts to the positive terminal.
Thus for example in the below circuit, the $V_A$ volts at A would become, at B:-

$$V_B = V_A +V$$
And also, if the terminals of the battery are reversed in the above circuit (points A and B remaining the same) then the potential difference will be still $V$. Hence, $$V_B = V_A - V$$(Battery needs to maintain the potential difference of $V$ volts)
And now coming to the question, I would convert the given figure to a circuit diagram.

Let the potential at A be $V_A$. Then the potential at B would become $$V_B = V_A + 3V$$. And moving further potential at C would become $$V_C = V_B  -1V = V_A + 3V - 1V = V_A + 2V$$(Note here that there was potential drop as the battery was placed the opposite way). And at last the potential at D will be $$V_D = V_C +3V = V_A +2V + 3V = V_A + 5V$$
Thus the potential difference across this setup of batteries will be $$∆V = V_D - V_A= V_A+5V - V_A= 5V$$


TITLE: Zero divisors in matrix rings
QUESTION [2 upvotes]: Let $R$ be a commutative ring, $P \in M_n(R)$ and $\det(P)$ is a zero divisor of $R$. Must $P$ be a zero divisor of $M_n(R)$?

Here rings mean unital rings, $M_n(R)$ denotes the ring of square matrices over $R$ of order $n$, and zero divisor is understood to be nonzero. The difficulty lies in that the adjugate matrix of $P$ may well be $0$.

REPLY [2 votes]: By McCoy's theorem, the endomorphism associated to $P$ is injective if and only if $\det P$  is a non-zero divisor. Thus if $\det P$ is a zero divisor, $K=\ker P\neq\{0\}$. Consider the matrix $A$ of the projection onto $K$. Then $PA=0$.