Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 45 additions & 0 deletions research/d8-inverse-pair-third-role-seeddf1e67/CERTIFICATE.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
{
"schema_version": 1,
"certificate_type": "complete finite exact word census plus displacement-rank lower bound",
"field": "F2",
"group_indexing": "index i+4e denotes r^i*s^e, i in Z/4 and e in Z/2",
"group_law": "(i,e)(j,f)=(i+(-1)^e*j mod 4,e+f mod 2)",
"elements": {
"identity": 0,
"r": 1,
"r_inverse": 3,
"s": 4,
"t=r_inverse*s": 7
},
"generator_family": {
"factor": "F_g(N)=I+([g]+1)N",
"labels": [4, 7],
"rank_one_idempotents": 28,
"paid_generators": 56
},
"endpoint": [
{"role": 0, "group_element": 1},
{"role": 1, "group_element": 3},
{"role": 2, "group_element": 0}
],
"lower_bound": {
"left_regular_dimension": 8,
"full_role_space_dimension": 24,
"rank_each_factor_minus_identity": 4,
"rank_endpoint_minus_identity": 12,
"excluded_lengths": [0, 1, 2]
},
"finite_search": {
"word_length": 3,
"ordered_words": 175616,
"hits": 0,
"complete": true
},
"direct_word": [
{"label": "s", "projector": "E11"},
{"label": "t", "projector": "E11"},
{"label": "t", "projector": "E22"},
{"label": "s", "projector": "E22"}
],
"exact_conclusion_in_named_model": "minimum paid word length four"
}
36 changes: 36 additions & 0 deletions research/d8-inverse-pair-third-role-seeddf1e67/OVERLAP.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
{
"schema_version": 1,
"checked_at_utc": "2026-10-14T20:29:48Z",
"coverage": {
"open_prs": 391,
"discussions": 802,
"complete_pagination": true,
"warnings": []
},
"exact_all_term_query": {
"terms": ["D8", "inverse rotation", "third role", "rank-one"],
"matches": 0
},
"predecessors_and_neighbors": [
{
"item": "PR #1881",
"commit": "5a51deaaab2746d42eddb454bbb968bda3af02cc",
"scope": "two roles, D8 reflection labels, noncentral diag([r],[r^-1]), exact minimum four",
"relation": "same group and endpoint, one fewer dirty role"
},
{
"item": "Discussion #1738 / PR #1742",
"commit": "679f3624a0a41ed14942825dd7f413132412d1e3",
"scope": "three roles, D8/UT3 central endpoint diag([z],[z],[1]), exact minimum eight",
"relation": "same group and role count, different central endpoint and paid labels"
},
{
"item": "PR #1443",
"scope": "two roles, D8 central endpoint diag([r^2],[r^2])",
"relation": "different role count and endpoint"
}
],
"active_exact_scope_claim_found": false,
"claim_url": "https://github.com/CrocSwap/integer-mult-bounds/discussions/1738#discussioncomment-18933540",
"hub_pointer_url": "https://github.com/CrocSwap/integer-mult-bounds/discussions/1167#discussioncomment-18933546"
}
35 changes: 35 additions & 0 deletions research/d8-inverse-pair-third-role-seeddf1e67/PR-BODY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
## Result

This package settles one exact three-role formal group-algebra question. For
`D8=<r,s | r^4=s^2=1, srs=r^-1>`, `t=r^-1s`, and paid rank-one factors
`F_g(N)=I+([g]+1)N` with `g in {s,t}`, the endpoint
`diag([r],[r^-1],1)` has minimum paid length four on three arbitrary dirty
roles, even with interspersed free `GL3(F2)` scalar maps. It does not give a
supplier or `kappa` improvement.

## Evidence

- The regular-representation displacement rank is 12 for the endpoint and 4
per paid factor, so lengths zero through two are impossible.
- The complete exact length-three census checks all 175,616 ordered words over
the 56 generators and finds zero hits.
- The explicit four-call word reaches the endpoint. A separate tuple-valued
verifier replays the whole census, positive control, omitted-call control,
and rank control.

## Reproduction

```sh
python3 -I -B research/d8-inverse-pair-third-role-seeddf1e67/search.py
python3 -I -B research/d8-inverse-pair-third-role-seeddf1e67/verify.py
python3 scripts/research_package.py --package research/d8-inverse-pair-third-role-seeddf1e67 --check-only
```

The scientific base is `0fdd7d82de03e43c9e5a1000dfbcd380d1b687d2`.
Predecessors are the two-role inverse-pair result (#1881, commit
`5a51deaaab2746d42eddb454bbb968bda3af02cc`) and the distinct three-role
central-pair result (#1742). The model excludes native third-role hosting,
recursive charges and supplier admission; no selected frontier changes.

Substantial OpenAI Codex assistance in derivation, implementation, verification,
and packaging. No independent human review is claimed.
117 changes: 117 additions & 0 deletions research/d8-inverse-pair-third-role-seeddf1e67/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
# A third dirty role does not reduce the D8 inverse-pair bill

## Result

In the formal group algebra `F2[D8]`, the three-role endpoint

```text
diag([r], [r^-1], 1)
```

has exact paid-call minimum four when the paid labels are the two reflections
`s,t` and arbitrary free scalar `GL3(F2)` maps are allowed between calls.
The direct four-call word remains optimal after adding a third arbitrary dirty
role. An exact rank bound excludes lengths zero through two; a complete census
of the 56^3 ordered three-call words finds no endpoint hit.

This is a scoped finite-algebra result. It does not improve the selected bit
supplier, price physical hosting of the third role, or change `kappa`.

## Model and complete paid bill

Index `D8=<r,s | r^4=s^2=1, srs=r^-1>` by `r^i s^e`, with `i mod 4` and
`e in {0,1}`. Define `t=r^-1s`; then `s,t` are involutions and `st=r`,
`ts=r^-1`. Work in the full group algebra `F2[D8]`, not a finite address
quotient. A paid factor on three scalar roles is

```text
F_g(N) = I + ([g] + 1)N, g in {s,t},
```

where `N=u v^T` is any rank-one idempotent over `F2`, so
`u,v in F2^3 \ {0}` and `v^T u=1`. There are 28 such projectors and hence
56 distinct paid generators. All three input roles are arbitrary. The exact
diagonal endpoint restores the third role, and every paid factor is charged
once. No additional role, COPY, discarded output, or address operation is
available. Arbitrary interspersed scalar `GL3(F2)` maps are included: push them
to the right by conjugating each projector, then apply augmentation
`[g] -> 1`; because the target augments to `I`, the residual scalar output map
must be `I`.

The direct word is

```text
F_s(E11) F_t(E11) F_t(E22) F_s(E22)
= diag([s][t], [t][s], 1)
= diag([r], [r^-1], 1).
```

Its complete formal bill is four calls. A three-call word would save one
factor (25%) in this block, so the best-case budget justified searching exactly
three calls.

## Lower bound for the first three lengths

Use the left regular representation of `F2[D8]`; each role becomes an
eight-dimensional block, for a total dimension of 24. Write `L_g` for left
multiplication by `g`. Since each reflection is an involution, `L_s+I` and
`L_t+I` have rank four: each is a product of four disjoint transpositions over
`F2`. Thus the difference from identity of one paid factor is

```text
(L_g + I) tensor N
```

and has rank four. Multiplication by `r` or `r^-1` consists of two cycles of
length four on `D8`, so each of `L_r+I` and `L_(r^-1)+I` has rank six. The
endpoint difference is block diagonal with ranks `6,6,0`, hence rank 12.
For any matrices `A,B`, `rank(AB-I) <= rank(A-I)+rank(B-I)`. Therefore at
least three paid factors are necessary.

This makes length three the only unresolved length below the direct word. The
packed search checks every ordered triple from the 56 gates using exact
eight-coefficient group-algebra multiplication. A separate verifier repeats
the entire census with tuple-valued coefficients and direct group-law
convolution. Both report zero hits among 175,616 triples. Together with the
rank lower bound and direct word, this proves minimum four in the stated model.

## Reproduction

```sh
python3 -I -B research/d8-inverse-pair-third-role-seeddf1e67/search.py
# D8 inverse-pair W3 exact search: generators=56 triples=175616 matches=0 direct_calls=4

python3 -I -B research/d8-inverse-pair-third-role-seeddf1e67/verify.py
# PASS_D8_INVERSE_PAIR_W3 rank_floor=12/4 generators=56 triples=175616 matches=0 minimum=4 direct_control=pass omission_control=pass altered_rank_control=pass

python3 scripts/research_package.py --package research/d8-inverse-pair-third-role-seeddf1e67 --check-only
```

The registered replay requests Python 3.12. Local direct runs used CPython
3.14.7; the registered 3.12 replay is not claimed unless available in the
submission environment.

## Relation to prior work and limits

- PR #1881 (`5a51deaaab2746d42eddb454bbb968bda3af02cc`) establishes the
two-role `diag([r],[r^-1])` minimum of four. This result adds a third
arbitrary restored role and keeps the same noncentral endpoint.
- Discussion #1738 / PR #1742 establish an eight-call minimum for the
three-role central endpoint `diag([z],[z],[1])` with `z=r^2`. The target,
paid labels and word-length question here differ.
- PR #1443 concerns a two-role central endpoint `diag([r^2],[r^2])`.

The exact minimum concerns only the finite named formal alphabet. It does not
include native implementation/hosting of the third role or its recursive
charges, so it is not a bit-supplier construction or a new `kappa`. The task
record pins the selected frontier, current task catalogue and predecessors.
Prepared with substantial OpenAI Codex assistance; no independent human
review is claimed.

## Open next questions

Can a fourth arbitrary dirty role lower the four-call minimum for the same
inverse-pair endpoint and reflection alphabet? The dimension-five projector
count grows sharply; first apply the regular-representation rank floor and
estimate the complete length-three search. Any formal saving would still need
an added-role hosting and recursive-cost invoice.
35 changes: 35 additions & 0 deletions research/d8-inverse-pair-third-role-seeddf1e67/RESULT.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{
"schema_version": 1,
"status": "exact scoped negative result",
"base_commit": "0fdd7d82de03e43c9e5a1000dfbcd380d1b687d2",
"seed": "df1e67db401c155561180b9d7f1a77f8",
"model": {
"field": "F2",
"group": "D8 = <r,s | r^4=s^2=1, srs=r^-1>",
"paid_labels": ["s", "t=r^-1*s"],
"roles": 3,
"paid_factor": "I + ([g]+1)N",
"projector_domain": "all 28 rank-one idempotents N=u*v^T in M3(F2), v^T*u=1",
"endpoint": "diag([r],[r^-1],1)",
"free_scalar_maps": "arbitrary interspersed GL3(F2), pushed into the complete projector alphabet; augmentation forces residual output map I"
},
"rank_certificate": {
"regular_rep_dimension": 24,
"target_displacement_rank": 12,
"each_paid_factor_displacement_rank": 4,
"lower_bound_paid_calls": 3
},
"length_three_census": {
"distinct_paid_generators": 56,
"ordered_words_checked": 175616,
"target_hits": 0,
"independent_full_coefficient_replay": "PASS"
},
"positive_control": {
"word": ["F_s(E11)", "F_t(E11)", "F_t(E22)", "F_s(E22)"],
"product": "diag([s][t],[t][s],1)=diag([r],[r^-1],1)",
"paid_calls": 4,
"exact_replay": "PASS"
},
"conclusion": "The exact minimum is four paid factors in this formal D8, reflection-only, three-role model. No improvement over the direct four-call word; no native supplier realization or kappa claim."
}
43 changes: 43 additions & 0 deletions research/d8-inverse-pair-third-role-seeddf1e67/SOURCES.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
{
"schema_version": 1,
"base_commit": "0fdd7d82de03e43c9e5a1000dfbcd380d1b687d2",
"predecessor_commit": "5a51deaaab2746d42eddb454bbb968bda3af02cc",
"files": [
{
"path": "certificates/selected-result.json",
"usage": "provenance",
"git_blob": "ae6a99f28aa468649eb66a361e764d769363bf11",
"sha256": "10b9e340fd8e354a37a0c4813c90e5de1dd42044b5f6aca4a3fc5a42b685fa32"
},
{
"path": "docs/research/agent-task-catalog.json",
"usage": "provenance",
"git_blob": "e8870e5917057d59b730eb14721a778639eca050",
"sha256": "d46eb6d5b3e279428753d770653663fbdf1063e55c255ea073d768f344927ef7"
},
{
"path": "research/bit-three-register-lower-bound/README.md",
"usage": "provenance",
"git_blob": "25e41c370c101a33a6deb978de08b03ed7539b79",
"sha256": "c12b33ef388deece0cbf891505a2ce2c0779a0c3a6cf1f0f7f7039bab59cbebd"
},
{
"path": "research/d8-rotation-pair-seedff568/README.md",
"usage": "provenance",
"git_blob": "f5ddc6814071d97d783583bf5660ae4892da46b0",
"sha256": "5205ef41de0f06234ca915ee0d52baa4d70c16ffa7a00597859d97cf4482b758"
},
{
"path": "research/d8-rotation-pair-seedff568/verify.py",
"usage": "provenance",
"git_blob": "d022baddfe4c2d669016ec8fb4d790c9941908c5",
"sha256": "baba451a88bc25a608b8f050626f38978526337087026c0e81e30d2b0e7872b5"
},
{
"path": "research/d8-third-register-seed89de/README.md",
"usage": "provenance",
"git_blob": "554034517913dba181d96745ef78a111026f6d33",
"sha256": "cb25575c7fe61c2ad2f500f8dfbd2a24a4cd602ffdb21236285fce3358bffa98"
}
]
}
Loading
Loading