Skip to content

Conversation

@TwoFX
Copy link
Member

@TwoFX TwoFX commented Oct 10, 2025

This PR moves many operations involving String.Pos.Raw to a the String.Pos.Raw namespace with the eventual aim of freeing up the String namespace to contain operations using String.ValidPos (to be renamed to String.Pos) instead.

This PR adds the String.ValidPos.set and String.ValidPos.modify functions.

After this PR, String.pos_lt_eq is no longer a simp lemma. Add String.Pos.Raw.lt_iff as a simp lemma if your proofs break.

@TwoFX TwoFX added the changelog-library Library label Oct 10, 2025
@github-actions github-actions bot added the toolchain-available A toolchain is available for this PR, at leanprover/lean4-pr-releases:pr-release-NNNN label Oct 10, 2025
@leanprover-community-bot
Copy link
Collaborator

leanprover-community-bot commented Oct 10, 2025

Mathlib CI status (docs):

  • ❗ Batteries/Mathlib CI will not be attempted unless your PR branches off the nightly-with-mathlib branch. Try git rebase dca8d6d188f97b6bb0ec13e329a75a7bd0185684 --onto 705dac4f77aa60d749ee2b37d102518d772d6e53. You can force Mathlib CI using the force-mathlib-ci label. (2025-10-10 14:16:56)
  • 💥 Mathlib branch lean-pr-testing-10735 build failed against this PR. (2025-10-10 16:09:24) View Log
  • 💥 Mathlib branch lean-pr-testing-10735 build failed against this PR. (2025-10-13 09:11:15) View Log
  • 💥 Mathlib branch lean-pr-testing-10735 build failed against this PR. (2025-10-13 10:44:12) View Log
  • ❗ Batteries/Mathlib CI will not be attempted unless your PR branches off the nightly-with-mathlib branch. Try git rebase 7a47bfa2084eec2ec6dbc292d703e6297c2ccee8 --onto 14ff08db6f651775ead432d367b6b083878bb0f9. You can force Mathlib CI using the force-mathlib-ci label. (2025-10-14 19:41:37)
  • 💥 Mathlib branch lean-pr-testing-10735 build failed against this PR. (2025-10-17 14:57:15) View Log
  • 💥 Mathlib branch lean-pr-testing-10735 build failed against this PR. (2025-10-18 09:17:46) View Log

@leanprover-bot
Copy link
Collaborator

leanprover-bot commented Oct 10, 2025

Reference manual CI status:

  • ❗ Reference manual CI will not be attempted unless your PR branches off the nightly-with-manual branch. Try git rebase dca8d6d188f97b6bb0ec13e329a75a7bd0185684 --onto d3dda9f6d4428a906c096067ecb75e432afc4615. You can force reference manual CI using the force-manual-ci label. (2025-10-10 14:16:58)
  • ❗ Reference manual CI can not be attempted yet, as the nightly-testing-2025-10-10 tag does not exist there yet. We will retry when you push more commits. If you rebase your branch onto nightly-with-manual, reference manual CI should run now. You can force reference manual CI using the force-manual-ci label. (2025-10-10 15:19:03)
  • ❗ Reference manual CI will not be attempted unless your PR branches off the nightly-with-manual branch. Try git rebase 7a47bfa2084eec2ec6dbc292d703e6297c2ccee8 --onto d3dda9f6d4428a906c096067ecb75e432afc4615. You can force reference manual CI using the force-manual-ci label. (2025-10-14 19:41:38)
  • ❗ Reference manual CI can not be attempted yet, as the nightly-testing-2025-10-17 tag does not exist there yet. We will retry when you push more commits. If you rebase your branch onto nightly-with-manual, reference manual CI should run now. You can force reference manual CI using the force-manual-ci label. (2025-10-17 14:08:43)

@TwoFX TwoFX force-pushed the markus/string-top-level-1 branch from afef4e1 to 38f4c48 Compare October 10, 2025 14:25
leanprover-community-mathlib4-bot added a commit to leanprover-community/batteries that referenced this pull request Oct 10, 2025
leanprover-community-mathlib4-bot added a commit to leanprover-community/mathlib4-nightly-testing that referenced this pull request Oct 10, 2025
@leanprover-community-bot leanprover-community-bot added the breaks-mathlib This is not necessarily a blocker for merging: but there needs to be a plan label Oct 10, 2025
leanprover-community-mathlib4-bot added a commit to leanprover-community/batteries that referenced this pull request Oct 13, 2025
leanprover-community-mathlib4-bot added a commit to leanprover-community/mathlib4-nightly-testing that referenced this pull request Oct 13, 2025
leanprover-community-mathlib4-bot added a commit to leanprover-community/batteries that referenced this pull request Oct 13, 2025
leanprover-community-mathlib4-bot added a commit to leanprover-community/mathlib4-nightly-testing that referenced this pull request Oct 13, 2025
github-merge-queue bot pushed a commit that referenced this pull request Oct 14, 2025
This PR is split off from #10735 for boring bootstrapping reasons.
@TwoFX TwoFX changed the title chore: prepare for cleaning up String namespace refactor: move operations on String.Pos.Raw to the String.Pos.Raw namespace Oct 15, 2025
@TwoFX TwoFX force-pushed the markus/string-top-level-1 branch from 5496d4b to 355fb11 Compare October 17, 2025 13:18
leanprover-community-mathlib4-bot added a commit to leanprover-community/batteries that referenced this pull request Oct 17, 2025
leanprover-community-mathlib4-bot added a commit to leanprover-community/mathlib4-nightly-testing that referenced this pull request Oct 17, 2025
@TwoFX TwoFX marked this pull request as ready for review October 18, 2025 12:12
@TwoFX TwoFX requested review from digama0 and kim-em as code owners October 18, 2025 12:12
@TwoFX TwoFX enabled auto-merge October 18, 2025 12:12
@TwoFX TwoFX added this pull request to the merge queue Oct 18, 2025
Merged via the queue into leanprover:master with commit dad5412 Oct 18, 2025
18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaks-mathlib This is not necessarily a blocker for merging: but there needs to be a plan changelog-library Library toolchain-available A toolchain is available for this PR, at leanprover/lean4-pr-releases:pr-release-NNNN

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants