kernel-Rat.cramer_two_unique_x
- Kind
- kernel-term
- Status
- checked
Supports: `Rat.cramer_two_unique_x` and `_y` are admitted with exactly the types pinned in the tests. Each factors through an UNCONDITIONAL identity (cramer_col1_identity / cramer_col2_identity, no hypothesis at all): substituting the system's left-hand side for one column of the matrix scales the determinant by that unknown. The nonzero hypothesis is then discharged once, by Rat.mul_inv_cancel_of_ne_zero. THAT CANCELLATION LEMMA IS THE ACTUAL UNLOCK AND IT IS NOT ABOUT MATRICES: Rat.inv is total, so the two pre-existing cancellation lemmas are guarded by 0 < q and q < 0 respectively, and nothing had bridged q != 0 to either. It required a Rat.lt_trichotomy case split, and the establishing lane VERIFIED from laws.rs that lt_trichotomy is genuinely constructive here -- built from le_or_lt and le_antisymm through or_elim, with no Classical.em and no double negation -- rather than assuming it.
test "$(scripts/cargo-serialized.sh test -p axeyum-lean-kernel --lib rat_prelude::rat_prelude_tests::cramer_two_unique_x_is_the_stated_forward_direction -- --exact 2>&1 | grep -Ec 'test result: ok\. 1 passed; 0 failed')" -ge 1 Evidence notes
A footprint check cannot carry this claim. The same theorem with the numerator columns TRANSPOSED -- det2 u b v d replaced by det2 a u c v -- is false and has an identically empty footprint, as does one with the nonzero-determinant hypothesis removed. The pin is what separates them, and the establishing lane added it on its own initiative rather than because the brief demanded it. 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.