Use columnwise partial pivoting: select the largest absolute entry in the current column and interchange rows. In the first column the pivot is , so interchange rows 1 and 2. The multipliers are and , and elimination gives
The second pivot is , so interchange the two remaining rows. Their previously stored first-column multipliers must also be interchanged. The final multiplier is , giving the LU decomposition
The permutation matrix orders the original rows as . Multiplication verifies the displayed identity.
If “column pivoting” instead denotes interchanging columns rather than searching within a column, that convention gives with
This second identity uses a different pivot convention; it does not change the row-pivoted answer above.
At the first step of Gaussian elimination, the first column of a nonsingular matrix cannot be zero. Choose a nonzero pivot there using a row interchange and eliminate below it. The resulting matrix has block form
Elementary elimination and row permutations preserve nonsingularity, so and the trailing matrix is nonsingular. Its first column again has a nonzero entry. Repeating this argument inductively provides a nonzero pivot at every step and produces an upper-triangular factor. The recorded elimination multipliers, with previous entries permuted when necessary, form the unit lower-triangular factor. Every nonsingular square matrix admits under columnwise partial pivoting.
For the column-interchange convention from part (a), use the same induction with a nonzero entry in the first row of each nonsingular trailing matrix. Column interchanges put it in the pivot position, and elimination gives . These existence statements are in exact arithmetic; they do not assert that all choices have equally good numerical stability.