f98cb41f72
Generated with formalize.py against Qwen (qwen-max via DashScope), then hand-fixed before pushing, since these classes of bug pass elaboration but are still wrong and check_statements.py can't catch them without running Lean: - goodman-1-6-2 split into 4 separate theorems (1-6-2-a..d): the model's single merged statement had an operator-precedence bug (missing parens around an implicit right-associated AND after OR) that silently scoped 3 of the book's 4 independent claims inside the wrong disjunct. - goodman-1-6-1: dropped two vacuous "x + y : Nat is a Nat" clauses that confused Lean's type membership with set membership (element-of Nat on already-Nat-typed variables) and are automatically true by typing anyway. - goodman-1-6-9: swapped Mathlib's pointwise Set multiplication (x * I, which needs 'open scoped Pointwise' and is easy to get subtly wrong) for the equivalent elementwise statement. - goodman-1-6-13: replaced a misuse of min (a 2-argument function) applied to a Set with Mathlib's IsLeast predicate, matching what "least element" means in Int.gcd's characterization. - goodman-1-6-23: fixed Matrix index types (Fin n, not a bare Nat) and replaced an illegal literal '...' row with Matrix.vecMul; verified against the book's raw text that the n-by-n unimodular-matrix formulation is faithful, not a model invention. textbook/goodman-1.6.raw.jsonl keeps the unedited model output for reference. The remaining 13 statements are unedited and still need a real Lean elaboration pass (check_statements.py) plus a provability run (lean-bench) on a Mathlib-backed project -- neither ran here since this sandbox has no Lean.
38 lines
1.3 KiB
JSON
38 lines
1.3 KiB
JSON
[
|
|
{
|
|
"label": "Definition 1.6.3",
|
|
"concept": "prime number",
|
|
"mathlib_ref": "Nat.Prime",
|
|
"lean_code": null,
|
|
"notes": "The definition in the book is consistent with Mathlib's definition of a prime number."
|
|
},
|
|
{
|
|
"label": "Definition 1.6.8",
|
|
"concept": "greatest common divisor (gcd) of two integers",
|
|
"mathlib_ref": "Nat.gcd",
|
|
"lean_code": null,
|
|
"notes": "The definition in the book is consistent with Mathlib's definition of gcd for natural numbers, and can be extended to integers using `Int.gcd`."
|
|
},
|
|
{
|
|
"label": "Definition 1.6.14",
|
|
"concept": "relatively prime integers",
|
|
"mathlib_ref": "Int.Coprime",
|
|
"lean_code": null,
|
|
"notes": "The definition in the book is consistent with Mathlib's definition of coprime integers."
|
|
},
|
|
{
|
|
"label": "Definition 1.6.22",
|
|
"concept": "greatest common divisor (gcd) of several integers",
|
|
"mathlib_ref": "GCD.gcd",
|
|
"lean_code": null,
|
|
"notes": "The definition in the book is consistent with Mathlib's generalization of gcd to multiple integers."
|
|
},
|
|
{
|
|
"label": "Definition 1.6.25",
|
|
"concept": "pairwise relatively prime integers",
|
|
"mathlib_ref": "Int.PairwiseCoprime",
|
|
"lean_code": null,
|
|
"notes": "The definition in the book is consistent with Mathlib's definition of pairwise coprime integers."
|
|
}
|
|
]
|