kernel-Rat.matTranspose_mul
- Kind
- kernel-term
- Status
- checked
Supports: Rat.matTranspose_mul is admitted by the trusted kernel gate with the type recorded in formal.statement. The proof is ONE sum_range_congr around ONE mul_comm, applied pointwise to the summand: matTranspose (matMul A B k) i j unfolds to sumRange (fun t => A j t * B t i) k, matMul (matTranspose B) (matTranspose A) k i j unfolds to sumRange (fun t => B t i * A j t) k, and the two summands differ by exactly Rat.mul_comm. Unlike matMul_assoc, no sumRange_swap interchange is needed, because transpose only swaps the two INDEX arguments, never which two values are being summed over.
test "$(scripts/cargo-serialized.sh test -p axeyum-lean-kernel --lib rat_prelude::rat_prelude_tests::the_matrix_transpose_toolkit_is_axiom_free -- --exact 2>&1 | grep -Ec 'test result: ok\. 1 passed; 0 failed')" -ge 1 Evidence notes
The command is anchored on the exact `1 passed; 0 failed` count so an unmatched filter -- which prints `running 0 tests ... ok` and exits 0 -- cannot read as success.