Explore modules

Sylvester Matrix Equation

Solve AX+XB=C for diagonal real2x2 A andB and arbitrary2x2 C: each entry obeys(a_i+b_j)Xij=Cij.

Free theory article

Solve AX+XB=C for diagonal real2x2 A andB and arbitrary2x2 C: each entry obeys(a_i+b_j)Xij=Cij.

Concept & interpretation

The Sylvester equation AX + XB = C is a key equation in linear algebra and control theory. In general, solving for the unknown matrix X involves solving a system of linear equations obtained via the Kronecker product and vectorization. However, if both A and B are diagonal matrices, the equation decouples completely into independent scalar equations.

Experimenting with the Sylvester Equation

Open the Sylvester Matrix Equation module to see the decoupling in action.

  1. Leave the default values: a1=1, a2=2, b1=3, b2=4, and C=[[4, 5], [5, 6]].
  2. Click the "Step" button. The first click reveals the equation for X11: (1 + 3) X11 = 4, resulting in X11 = 1.00.
  3. Click "Step" twice more to reveal X12 and X21; the cursor now has three of four equations.
  4. Click "Finish" to reveal the fourth equation and see the final matrix X and the residual. The interface will indicate a "Unique solution" since all (ai + bj) coefficients were non-zero.
  5. Now, change a1 to 1, a2 to 2, b1 to -1, and b2 to 3. Change C11 to 1, C12 to 0, C21 to 0, and C22 to 0. Click "Finish". For X11, the coefficient is a1 + b1 = 1 + (-1) = 0. The equation is 0 * X11 = 1, which has no solution. The system will classify the overall status as "No solution".
  6. Change C11 to 0 and click Finish again; this edit has rewound the trace. Now the equation for X11 is 0 * X11 = 0. This means X11 can be any value, making it a "free variable". The system will indicate "Infinitely many solutions (1 free variable)".
Read the full free theory article