Skip to content

Remove inc_config (Issue #1081)#1335

Merged
tanyongkiam merged 34 commits intomasterfrom
issue1081
Feb 16, 2026
Merged

Remove inc_config (Issue #1081)#1335
tanyongkiam merged 34 commits intomasterfrom
issue1081

Conversation

@tanyongkiam
Copy link
Copy Markdown
Contributor

This removes inc_config and thus fixes #1081

However, note that this does not remove all possible code duplication in backend_asm (which could be done separately).

tanyongkiam and others added 30 commits January 10, 2025 00:13
Change shmem_info entry_pc assumptions from word-space to num-space
throughout lab_to_targetProofScript.sml to match the shmem_info_num
type change (entry_pc is now num, not word).

- IMP_state_rel_make_init: replace two cheats with full proofs
  handling the num-space find_index and DISJOINT conditions
- Add find_index_MAP_w2n helper lemma (using w2n injectivity)
- semantics_compile_lemma/semantics_compile: change DROP assumption
  from word-space to num-space (MAP w2n on ffi_entry_pcs)

Co-Authored-By: Claude Opus 4.6 <[email protected]>
Adapt config files, config proofs, cv_translator, backend_asm,
backend_enc_dec, backend_itreeProof, and pancake proofs to use
the simplified backend$config type (no more inc_config/config_to_inc_config).

All changes verified by successful Holmake builds.
pan_to_targetProof has one remaining cheat in the good_code subgoal.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
…ESTED)

Adapt compilerScript, compilerProof, bootstrap translation/compilation,
scheme proof, and scpog proof for the inc_config removal (issue 1081).
Also fix shmem_rec -> shmem_info_num in to_target{32,64}Prog and
delete stale commented-out code in backendProof.

NOT YET TESTED - these files could not be built because compilerTheory
depends on basis/ which needs rebuilding after upstream merge.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
- Fix Unicode smart quotes in decodeProgScript (type quotations need
  U+201C/U+201D, not ASCII double quotes)
- Fix compile_tap_compile theorem to include asm_conf parameter
- Rewrite arm8_asl_compile_correct to use Q.GENL/Q.ISPECL style
- Fix 64 backend$config -> backend$config in 14 example proof files
  (config type is no longer polymorphic)
- Fix c.asm_conf -> ac in to_target{32,64}ProgScript
  (asm_conf is no longer a field of lab_to_target$config)

Co-Authored-By: Claude Opus 4.6 <[email protected]>
After inc_config removal, asm_conf is a separate argument in backendTheory
and backend_passesTheory, making many definitions in backend_asmScript.sml
exact duplicates. Delete them and update references:

- Remove to_flat/clos/bvl/bvi/data/word_0/livesets_0/livesets defs (now in backendTheory)
- Remove to_flat_all through to_data_all defs (now in backend_passesTheory)
- Remove correspondence proofs (to_flat_thm through to_livesets_thm)
- Simplify compile_cake_thm proof
- Update backend_asmLib.sml to qualify backendTheory refs
- Update to_data_cvScript.sml theory references

Co-Authored-By: Claude Opus 4.6 <[email protected]>
@tanyongkiam tanyongkiam requested review from myreen and xrchz February 15, 2026 16:29
@tanyongkiam tanyongkiam linked an issue Feb 15, 2026 that may be closed by this pull request
Comment thread compiler/bootstrap/compilation/arm8/64/proofs/arm8BootstrapProofScript.sml Outdated
Copy link
Copy Markdown
Member

@xrchz xrchz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if it passes the regression tests, seems good to me

@xrchz
Copy link
Copy Markdown
Member

xrchz commented Feb 15, 2026

seems like you might be another victim of anthropics/claude-code#13939

@tanyongkiam
Copy link
Copy Markdown
Contributor Author

tanyongkiam commented Feb 16, 2026

regression passes fully now (ran locally)

@tanyongkiam tanyongkiam merged commit 6b9443c into master Feb 16, 2026
1 check was pending
@tanyongkiam tanyongkiam deleted the issue1081 branch February 16, 2026 08:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Replace backend$config by backend$inc_config

3 participants