Step-by-step derivation
S001 · implies
Before
M=[[1, 0, -1, -2], [2, 1, 0, -1], [3, 2, 1, 0]];shape=[3, 4]
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)=1
After
target(1,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, S001
S003 · implies
Before
M 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, S002
S004 · implies
Before
M transpose:source(1,3)=-1
After
target(3,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, S003
S005 · implies
Before
M transpose:source(1,4)=-2
After
target(4,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, S004
S006 · implies
Before
M transpose:source(2,1)=2
After
target(1,2)=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, S005
S007 · implies
Before
M transpose:source(2,2)=1
After
target(2,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(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, S007
S009 · implies
Before
M transpose:source(2,4)=-1
After
target(4,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, S008
S010 · implies
Before
M transpose:source(3,1)=3
After
target(1,3)=3
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 transpose:source(3,2)=2
After
target(2,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, S010
S012 · implies
Before
M transpose:source(3,3)=1
After
target(3,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, S011
S013 · implies
Before
M transpose:source(3,4)=0
After
target(4,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, S012
S014 · implies
Before
M shape=[3, 4];N shape=[3, 4]
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, S013
S015 · calculation
Before
M+N(1,1) := sum(1, 0)
After
M+N(1,1) = 1
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(1,2) := sum(0, 1)
After
M+N(1,2) = 1
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(1,3) := sum(-1, 2)
After
M+N(1,3) = 1
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(1,4) := sum(-2, 3)
After
M+N(1,4) = 1
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(2,1) := sum(2, -1)
After
M+N(2,1) = 1
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(2,2) := sum(1, 0)
After
M+N(2,2) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S019
S021 · calculation
Before
M+N(2,3) := sum(0, 1)
After
M+N(2,3) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S020
S022 · calculation
Before
M+N(2,4) := sum(-1, 2)
After
M+N(2,4) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S021
S023 · calculation
Before
M+N(3,1) := sum(3, -2)
After
M+N(3,1) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S022
S024 · calculation
Before
M+N(3,2) := sum(2, -1)
After
M+N(3,2) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S023
S025 · calculation
Before
M+N(3,3) := sum(1, 0)
After
M+N(3,3) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S024
S026 · calculation
Before
M+N(3,4) := sum(0, 1)
After
M+N(3,4) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S025
S027 · implies
Before
sum transpose:source(1,1)=1
After
target(1,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, S026
S028 · implies
Before
sum 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, S027
S029 · implies
Before
sum transpose:source(1,3)=1
After
target(3,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, S028
S030 · implies
Before
sum transpose:source(1,4)=1
After
target(4,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, S029
S031 · implies
Before
sum 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, S030
S032 · implies
Before
sum transpose:source(2,2)=1
After
target(2,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, S031
S033 · implies
Before
sum 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, S032
S034 · implies
Before
sum transpose:source(2,4)=1
After
target(4,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, S033
S035 · implies
Before
sum transpose:source(3,1)=1
After
target(1,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, S034
S036 · implies
Before
sum 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, S035
S037 · implies
Before
sum transpose:source(3,3)=1
After
target(3,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
sum transpose:source(3,4)=1
After
target(4,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, S037
S039 · 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, S038
S040 · 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, S039
S041 · 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, S040
S042 · implies
Before
N transpose:source(1,4)=3
After
target(4,1)=3
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, S041
S043 · 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, S042
S044 · 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, S043
S045 · 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, S044
S046 · implies
Before
N transpose:source(2,4)=2
After
target(4,2)=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, S045
S047 · 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, S046
S048 · 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, S047
S049 · 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, S048
S050 · implies
Before
N transpose:source(3,4)=1
After
target(4,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, S049
S051 · calculation
Before
MT+NT(1,1) := sum(1, 0)
After
MT+NT(1,1) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S050
S052 · calculation
Before
MT+NT(1,2) := sum(2, -1)
After
MT+NT(1,2) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S051
S053 · calculation
Before
MT+NT(1,3) := sum(3, -2)
After
MT+NT(1,3) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S052
S054 · calculation
Before
MT+NT(2,1) := sum(0, 1)
After
MT+NT(2,1) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S053
S055 · calculation
Before
MT+NT(2,2) := sum(1, 0)
After
MT+NT(2,2) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S054
S056 · calculation
Before
MT+NT(2,3) := sum(2, -1)
After
MT+NT(2,3) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S055
S057 · calculation
Before
MT+NT(3,1) := sum(-1, 2)
After
MT+NT(3,1) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S056
S058 · calculation
Before
MT+NT(3,2) := sum(0, 1)
After
MT+NT(3,2) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S057
S059 · calculation
Before
MT+NT(3,3) := sum(1, 0)
After
MT+NT(3,3) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S058
S060 · calculation
Before
MT+NT(4,1) := sum(-2, 3)
After
MT+NT(4,1) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S059
S061 · calculation
Before
MT+NT(4,2) := sum(-1, 2)
After
MT+NT(4,2) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S060
S062 · calculation
Before
MT+NT(4,3) := sum(0, 1)
After
MT+NT(4,3) = 1
Conditions: none
Add the already aligned component or position,without mixing coordinates.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S061
S063 · implies
Before
left=[[1, 1, 1], [1, 1, 1], [1, 1, 1], [1, 1, 1]];right=[[1, 1, 1], [1, 1, 1], [1, 1, 1], [1, 1, 1]]
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, S062
Result
([3, 4], [[1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]], [[1, 1, 1], [1, 1, 1], [1, 1, 1], [1, 1, 1]], [[1, 1, 1], [1, 1, 1], [1, 1, 1], [1, 1, 1]])
The full substitutions and premise checks give the original answer; source identity,format and status are unchanged.