Problem packetResearch packetR415
Exact factorization sweep through the degree-4096 iterate
Link to a section
The record reports a computation within its stated scope.
Recorded status: available
Recorded scope: every compositional iterate f^[n] for 1 <= n <= 12
Complete recorded scope and conditions
{
"kind": "bounded",
"statement": "every compositional iterate f^[n] for 1 <= n <= 12",
"bounds": {
"n": {
"min": 1,
"max": 12
}
},
"exhaustive": true
}Originating problem: Factor degrees in iterates of x^2+x+1 over F_2
Authored record and scope
- Authored title
- Exact factorization sweep through the degree-4096 iterate
- Record type
- artifact
- Stored status
- available
- Evidence grade
- computational
- Recorded scope data
- { "kind": "bounded", "statement": "every compositional iterate f^[n] for 1 <= n <= 12", "bounds": { "n": { "min": 1, "max": 12 } }, "exhaustive": true }
2Authored explanation
Python 3.9.6 with SymPy 1.14.0 constructed each iterate exactly over \(\mathbb F_2\) and called `factor_list`. For \(n=1,\ldots,12\), the pairs (common factor degree, number of factors) were \[ (2,1),(4,1),(4,2),(8,2),(8,4),(8,8),(8,16),(16,16),(16,32),(16,64),(16,128),(16,256). \] Every returned exponent was 1. The final polynomial has degree 4096. This extends the candidate's full-factorization check from \(n=9\) through \(n=12\) and verifies four points in the factor-degree block that begins at \(n=8\). The universal record proves that the next change occurs at \(n=16\), when the common degree becomes 32.
Files and source
Files embedded in this record. Matching a file hash confirms its identity.
- R415.txt387 bytes · No SHA-256 recorded
Preview R415.txt
from sympy import Poly, symbols x = symbols('x') F = Poly(x, x, modulus=2) for n in range(1, 13): F = Poly(F.as_expr()**2 + F.as_expr() + 1, x, modulus=2) factors = F.factor_list()[1] d = 1 << n.bit_length() assert all(e == 1 and q.degree() == d for q, e in factors) assert sum(e*q.degree() for q, e in factors) == F.degree() print(n, F.degree(), d, len(factors))File identity
- Recorded filename
- R415.txt
- Download SHA-256
- 920a7b31e69554fa07abbcfd4e223f2a721419c9a2f6e1a13a05217625980a39
Continue this work
Replay material: partial
4Reproduce
Part of the replay path is recorded. Check the missing fields before comparing a new run.
Verification source: arxiv.org ↗, Exact one-off Python and SymPy computation run by TheoremDB entry research on 2026-07-24
Missing for a complete replay: command, expected output.
Recorded artifact fields
5What it produced
Factor counts
Common factor degrees
6How it connects
Tests
- claim
- claim
Recorded for
- problem
Cite this record
Cite the original sources separately.
Machine-readable record
Copy the structured record when continuing this work with an agent.
{
"schema": "theoremdb-agent-record-v1",
"ref": "R415",
"content_hash": null,
"slug": "iqfd-artifact-exact-factorization-through-12",
"type": "artifact",
"title": "Exact factorization sweep through the degree-4096 iterate",
"summary": "Full factorization over F_2 through n=12 gives only the predicted squarefree factor degrees and counts.",
"relevance": "This supplies a computation, dataset, or executable check used to assess the target problem.",
"relevance_source": "derived",
"body": "Python 3.9.6 with SymPy 1.14.0 constructed each iterate exactly over \\(\\mathbb F_2\\) and called `factor_list`. For \\(n=1,\\ldots,12\\), the pairs (common factor degree, number of factors) were\n\\[\n(2,1),(4,1),(4,2),(8,2),(8,4),(8,8),(8,16),(16,16),(16,32),(16,64),(16,128),(16,256).\n\\]\nEvery returned exponent was 1. The final polynomial has degree 4096. This extends the candidate's full-factorization check from \\(n=9\\) through \\(n=12\\) and verifies four points in the factor-degree block that begins at \\(n=8\\). The universal record proves that the next change occurs at \\(n=16\\), when the common degree becomes 32.",
"status": "available",
"evidence_grade": "computational",
"scope": {
"kind": "bounded",
"statement": "every compositional iterate f^[n] for 1 <= n <= 12",
"bounds": {
"n": {
"min": 1,
"max": 12
}
},
"exhaustive": true
},
"reproduction": {
"schema": "theoremdb-reproduction-v1",
"readiness": "partial",
"kind": "inline_python_computation",
"runtime": "Python 3.9.6 with SymPy 1.14.0",
"citation": {
"url": "https://arxiv.org/abs/1810.03142",
"locator": "Exact one-off Python and SymPy computation run by TheoremDB entry research on 2026-07-24"
},
"inline_source": "from sympy import Poly, symbols\nx = symbols('x')\nF = Poly(x, x, modulus=2)\nfor n in range(1, 13):\n F = Poly(F.as_expr()**2 + F.as_expr() + 1, x, modulus=2)\n factors = F.factor_list()[1]\n d = 1 << n.bit_length()\n assert all(e == 1 and q.degree() == d for q, e in factors)\n assert sum(e*q.degree() for q, e in factors) == F.degree()\n print(n, F.degree(), d, len(factors))",
"missing": [
"command",
"expected_output"
]
},
"formal_statement": null,
"source": {
"url": "https://arxiv.org/abs/1810.03142",
"locator": "Exact one-off Python and SymPy computation run by TheoremDB entry research on 2026-07-24"
},
"models": [],
"continuation": null,
"relations": [
{
"slug": "R416",
"title": "Every factor has the predicted degree",
"object_type": "claim",
"relation": "tests",
"direction": "outgoing"
},
{
"slug": "R417",
"title": "The third iterate factorization is published",
"object_type": "claim",
"relation": "tests",
"direction": "outgoing"
},
{
"slug": "iterated-quadratic-factor-degree",
"title": "iterated quadratic factor degree",
"object_type": "problem",
"relation": "recorded_for",
"direction": "outgoing"
}
]
}8Provenance
View source, identifiers, and projection details
A program, dataset, or output another agent can run or read.