← ClaudeAtlas

falsify-firstlisted

Attempt to break a claim - an invariant, a design premise, a measurement - with a concrete counterexample search before defending or adopting it, and read each kill for the precondition that carried the weight. Use before an invariant enters a plan, a design note or a gate, before a measured number becomes a claim, and whenever a candidate rule survived only because nobody attacked it.
niksavis/basicly · ★ 0 · AI & Automation · score 72
Install: claude install-skill niksavis/basicly
<!-- Generated by `basicly skills-build` from skill.yaml. Do not edit; edit the source. --> # Falsify First ## The move Before you argue for a claim, spend the cheaper effort trying to make it false. A claim nobody attacked is not evidence; it is a claim nobody attacked. This is not review and it is not testing. A reviewer reads what you wrote. A test fixes the behaviour you already chose. This runs *before* either: you have a candidate rule, invariant, threshold or premise, and you go looking for the input that kills it. ## Why it pays: the kills design the answer In the campaign this comes from, one run proposed five candidate inequalities and an adversarial numerical search killed every one of them: | Candidate | Gap found | What the counterexample said | |---|---|---| | G2, G1 | -4.000000 | a free **phase** makes the term contribute nothing while still being charged | | G2re | -1.000000, -2.000000 | same cause; the gap grows with the pair count | | G3 | -0.500 / -1.333 | a negative term is priced at zero and still subtracts | | G4 | -0.25 to -0.728 | the magnitude cannot be freed; one constraint was doing **two** jobs | | the sixth | **0.0** | 400 random instances, no counterexample found | The run's own line is the method: *"Before trying to prove the claim I try to break it."* The five failures are not waste. Reading them produced the finding that the correct inequality was **linear** where every dead candidate had been quadratic. The right answer was derived fr