Explore related knowledge and questions →

Question 7638: Same-Shape Matrix Sum and Both Transpose Routes

On this page
  1. Original question and givens
  2. Definition and scope
  3. Step-by-step derivation
  4. Reverse checks
  5. Result
  6. This question review and source binding

Return to catalogue page 39

← Question derivation index · Original question batch

R0014-07638 · q-20261012-advance-20261016-r02-matrix-0038

Original question and givens

Use complete nonempty integer matrices with 1–5 rows and columns and 1-based external indices. Transposition is not inversion or reversal of element order. Same-shape M=[[0, -1, -2], [1, 0, -1], [2, 1, 0]], N=[[0, 1, 2], [-1, 0, 1], [-2, -1, 0]]. Give (shape of M, M+N, (M+N)ᵀ, Mᵀ+Nᵀ).

  • G001 — Use complete nonempty integer matrices with 1–5 rows and columns and 1-based external indices. Transposition is not inversion or reversal of element order. Same-shape M=[[0, -1, -2], [1, 0, -1], [2, 1, 0]], N=[[0, 1, 2], [-1, 0, 1], [-2, -1, 0]]. Give (shape of M, M+N, (M+N)ᵀ, Mᵀ+Nᵀ).

Definition and scope

Use the original question domain, assumptions and cited MKO definitions. This item has second-context mathematical and bilingual review, with the model, answer and every arithmetic step independently recomputed from the original parameters; the source question remains a candidate.

Step-by-step derivation

S001 · implies

Before

M=[[0, -1, -2], [1, 0, -1], [2, 1, 0]];shape=[3, 3]

After

external indices start at1;transpose is not inverse

Conditions: none

First confirm a nonempty rectangular shape and complete integer entries.Transposition is defined for rectangular matrices without invertibility and is not matrix inversion.

Step identifiers and dependencies

Rule: rectangular_matrix_scope · Uses: G001

S002 · implies

Before

M transpose:source(1,1)=0

After

target(1,1)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S001

S003 · implies

Before

M transpose:source(1,2)=-1

After

target(2,1)=-1

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S002

S004 · implies

Before

M transpose:source(1,3)=-2

After

target(3,1)=-2

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S003

S005 · implies

Before

M transpose:source(2,1)=1

After

target(1,2)=1

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S004

S006 · implies

Before

M transpose:source(2,2)=0

After

target(2,2)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S005

S007 · implies

Before

M transpose:source(2,3)=-1

After

target(3,2)=-1

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S006

S008 · implies

Before

M transpose:source(3,1)=2

After

target(1,3)=2

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S007

S009 · implies

Before

M transpose:source(3,2)=1

After

target(2,3)=1

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S008

S010 · implies

Before

M transpose:source(3,3)=0

After

target(3,3)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S009

S011 · implies

Before

M shape=[3, 3];N shape=[3, 3]

After

same shape;entrywise sum permitted

Conditions: none

Matrix addition requires equal shapes first.Do not truncate,pad with zeros or broadcast to alter the original problem.

Step identifiers and dependencies

Rule: matrix_sum_shape_guard · Uses: G001, S010

S012 · calculation

Before

M+N(1,1) := sum(0, 0)

After

M+N(1,1) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S011

S013 · calculation

Before

M+N(1,2) := sum(-1, 1)

After

M+N(1,2) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S012

S014 · calculation

Before

M+N(1,3) := sum(-2, 2)

After

M+N(1,3) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S013

S015 · calculation

Before

M+N(2,1) := sum(1, -1)

After

M+N(2,1) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S014

S016 · calculation

Before

M+N(2,2) := sum(0, 0)

After

M+N(2,2) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S015

S017 · calculation

Before

M+N(2,3) := sum(-1, 1)

After

M+N(2,3) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S016

S018 · calculation

Before

M+N(3,1) := sum(2, -2)

After

M+N(3,1) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S017

S019 · calculation

Before

M+N(3,2) := sum(1, -1)

After

M+N(3,2) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S018

S020 · calculation

Before

M+N(3,3) := sum(0, 0)

After

M+N(3,3) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S019

S021 · implies

Before

sum transpose:source(1,1)=0

After

target(1,1)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S020

S022 · implies

Before

sum transpose:source(1,2)=0

After

target(2,1)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S021

S023 · implies

Before

sum transpose:source(1,3)=0

After

target(3,1)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S022

S024 · implies

Before

sum transpose:source(2,1)=0

After

target(1,2)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S023

S025 · implies

Before

sum transpose:source(2,2)=0

After

target(2,2)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S024

S026 · implies

Before

sum transpose:source(2,3)=0

After

target(3,2)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S025

S027 · implies

Before

sum transpose:source(3,1)=0

After

target(1,3)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S026

S028 · implies

Before

sum transpose:source(3,2)=0

After

target(2,3)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S027

S029 · implies

Before

sum transpose:source(3,3)=0

After

target(3,3)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S028

S030 · implies

Before

N transpose:source(1,1)=0

After

target(1,1)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S029

S031 · implies

Before

N transpose:source(1,2)=1

After

target(2,1)=1

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S030

S032 · implies

Before

N transpose:source(1,3)=2

After

target(3,1)=2

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S031

S033 · implies

Before

N transpose:source(2,1)=-1

After

target(1,2)=-1

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S032

S034 · implies

Before

N transpose:source(2,2)=0

After

target(2,2)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S033

S035 · implies

Before

N transpose:source(2,3)=1

After

target(3,2)=1

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S034

S036 · implies

Before

N transpose:source(3,1)=-2

After

target(1,3)=-2

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S035

S037 · implies

Before

N transpose:source(3,2)=-1

After

target(2,3)=-1

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S036

S038 · implies

Before

N transpose:source(3,3)=0

After

target(3,3)=0

Conditions: none

Transposition swaps row and column positions without changing the value.All displayed positions here are 1-based.

Step identifiers and dependencies

Rule: transpose_coordinate_swap · Uses: G001, S037

S039 · calculation

Before

MT+NT(1,1) := sum(0, 0)

After

MT+NT(1,1) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S038

S040 · calculation

Before

MT+NT(1,2) := sum(1, -1)

After

MT+NT(1,2) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S039

S041 · calculation

Before

MT+NT(1,3) := sum(2, -2)

After

MT+NT(1,3) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S040

S042 · calculation

Before

MT+NT(2,1) := sum(-1, 1)

After

MT+NT(2,1) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S041

S043 · calculation

Before

MT+NT(2,2) := sum(0, 0)

After

MT+NT(2,2) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S042

S044 · calculation

Before

MT+NT(2,3) := sum(1, -1)

After

MT+NT(2,3) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S043

S045 · calculation

Before

MT+NT(3,1) := sum(-2, 2)

After

MT+NT(3,1) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S044

S046 · calculation

Before

MT+NT(3,2) := sum(-1, 1)

After

MT+NT(3,2) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S045

S047 · calculation

Before

MT+NT(3,3) := sum(0, 0)

After

MT+NT(3,3) = 0

Conditions: none

Add the already aligned component or position,without mixing coordinates.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S046

S048 · implies

Before

left=[[0, 0, 0], [0, 0, 0], [0, 0, 0]];right=[[0, 0, 0], [0, 0, 0], [0, 0, 0]]

After

same value at every transposed coordinate

Conditions: none

One route adds before swapping positions;the other swaps each matrix first and then adds.Both use the same original entry pair.

Step identifiers and dependencies

Rule: transpose_sum_two_routes · Uses: G001, S047

Reverse checks

  • S048 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S047 · premise_and_result_audit — Recompute MT+NT(3,3) with exact rational arithmetic, not rounded decimals.
  • S046 · premise_and_result_audit — Recompute MT+NT(3,2) with exact rational arithmetic, not rounded decimals.
  • S045 · premise_and_result_audit — Recompute MT+NT(3,1) with exact rational arithmetic, not rounded decimals.
  • S044 · premise_and_result_audit — Recompute MT+NT(2,3) with exact rational arithmetic, not rounded decimals.
  • S043 · premise_and_result_audit — Recompute MT+NT(2,2) with exact rational arithmetic, not rounded decimals.
  • S042 · premise_and_result_audit — Recompute MT+NT(2,1) with exact rational arithmetic, not rounded decimals.
  • S041 · premise_and_result_audit — Recompute MT+NT(1,3) with exact rational arithmetic, not rounded decimals.
  • S040 · premise_and_result_audit — Recompute MT+NT(1,2) with exact rational arithmetic, not rounded decimals.
  • S039 · premise_and_result_audit — Recompute MT+NT(1,1) with exact rational arithmetic, not rounded decimals.
  • S038 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S037 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S036 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S035 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S034 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S033 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S032 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S031 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S030 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S029 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S028 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S027 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S026 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S025 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S024 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S023 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S022 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S021 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S020 · premise_and_result_audit — Recompute M+N(3,3) with exact rational arithmetic, not rounded decimals.
  • S019 · premise_and_result_audit — Recompute M+N(3,2) with exact rational arithmetic, not rounded decimals.
  • S018 · premise_and_result_audit — Recompute M+N(3,1) with exact rational arithmetic, not rounded decimals.
  • S017 · premise_and_result_audit — Recompute M+N(2,3) with exact rational arithmetic, not rounded decimals.
  • S016 · premise_and_result_audit — Recompute M+N(2,2) with exact rational arithmetic, not rounded decimals.
  • S015 · premise_and_result_audit — Recompute M+N(2,1) with exact rational arithmetic, not rounded decimals.
  • S014 · premise_and_result_audit — Recompute M+N(1,3) with exact rational arithmetic, not rounded decimals.
  • S013 · premise_and_result_audit — Recompute M+N(1,2) with exact rational arithmetic, not rounded decimals.
  • S012 · premise_and_result_audit — Recompute M+N(1,1) with exact rational arithmetic, not rounded decimals.
  • S011 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S010 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S009 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S008 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S007 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S006 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S005 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S004 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S003 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S002 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
  • S001 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.

Result

([3, 3], [[0, 0, 0], [0, 0, 0], [0, 0, 0]], [[0, 0, 0], [0, 0, 0], [0, 0, 0]], [[0, 0, 0], [0, 0, 0], [0, 0, 0]])

The full substitutions and premise checks give the original answer; source identity,format and status are unchanged.

This question review and source binding

Review date: 2026-10-26

Original questions, answers, step expressions, numeric ASTs and historical records are retained. Source candidate labels remain historical and are not overwritten as formal proof.

Source hashes and review receipts
  • input commit: 0f7be61e2c22317a4075561dc822c87d881a50db
  • original question SHA-256: 032b8cd2dd7a0820db7a416bba8050e318b489da0146c18669bb9512c69f4ba7
  • candidate record SHA-256: 0e55b7ac20dddd15166f8f39f7688735aaa7f6ceb9e6efb5139ab20072ebc9e7
  • semantic review receipt SHA-256: 23ba8196e85a09c03add0a87f96bec5d67a00dc648d1d68eef89101525b41a77
  • question-first witness SHA-256: 17d59afc327b7cb8b6e588686d6dc1abbccd384d8ba32b8c046652f96821d705
  • Lean: NOT_RUN · human review: NOT_PERFORMED
Same-source full JSON