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
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.