Skip to content

Conversation

Bergschaf
Copy link
Collaborator

@Bergschaf Bergschaf commented Oct 2, 2025

Applying w⁻¹ to the orbit generated by all elements of a free group that start with w yields
the orbit generated by all the words that start with every letter execpt w⁻ (and the original point)
The orbit of a point x generated by a set of group elements s defined as all the points that can be reached by applying the elements of s to x.
A special case of this result is needed for the banach tarski theorem.


I tried my best to shorten the proof of orbit.duplicate, but is quite long. There are some aspects that are duplicated due to case splits but I don't konw if it is possible to avoid that. I'd apprectiate some tips on that.
And I'm not quite sure about the naming of the theorems and definitions, please let me know if you have other (better) ideas!

Open in Gitpod

Copy link

github-actions bot commented Oct 2, 2025

PR summary 9978e095d4

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference
Mathlib.GroupTheory.FreeGroup.Orbit (new file) 526

Declarations diff

+ Orbit.duplicate
+ instance {w : α × Bool} : SMul (startsWith w) X
+ startsWith
+ startsWith.ne_one
+ startsWith.neq_disjoint
+ startsWith.smul_def
+ startsWith_mk_mul
-++- mem_orbit_iff
-+-+ mem_orbit

You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>

The doc-module for script/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/technical-debt-metrics.sh pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

@github-actions github-actions bot added the t-group-theory Group theory label Oct 2, 2025
Bergschaf and others added 3 commits October 14, 2025 09:18
Co-authored-by: Thomas Browning <tb65536@users.noreply.github.com>
@tb65536
Copy link
Collaborator

tb65536 commented Oct 15, 2025

Can you fix the build?

@tb65536 tb65536 added the awaiting-CI This PR doesn't pass CI yet. This label is automatically removed once it does. label Oct 15, 2025
@github-actions github-actions bot removed the awaiting-CI This PR doesn't pass CI yet. This label is automatically removed once it does. label Oct 15, 2025
@Bergschaf Bergschaf requested a review from tb65536 October 17, 2025 12:16
Bergschaf and others added 6 commits October 20, 2025 17:07
Co-authored-by: Thomas Browning <tb65536@users.noreply.github.com>
Co-authored-by: Thomas Browning <tb65536@users.noreply.github.com>
Co-authored-by: Thomas Browning <tb65536@users.noreply.github.com>
Co-authored-by: Thomas Browning <tb65536@users.noreply.github.com>
Removed redundant lemma for scalar multiplication and addition.
@tb65536
Copy link
Collaborator

tb65536 commented Oct 21, 2025

maintainer merge

Copy link

🚀 Pull request has been placed on the maintainer queue by tb65536.

@leanprover-community-mathlib4-bot leanprover-community-mathlib4-bot added the maintainer-merge A reviewer has approved the changed; awaiting maintainer approval. label Oct 21, 2025
Bergschaf and others added 3 commits October 21, 2025 09:43
Co-authored-by: damiano <adomani@gmail.com>
Co-authored-by: damiano <adomani@gmail.com>
Co-authored-by: damiano <adomani@gmail.com>
Comment on lines 33 to 35
theorem not_startsWith_of_ne {w w' : α × Bool} (hw : w ≠ w')
(g : FreeGroup α) (h : g ∈ FreeGroup.startsWith w) : ¬ g ∈ FreeGroup.startsWith w' := by
grind [startsWith]
Copy link
Collaborator

Choose a reason for hiding this comment

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

Hiding in here there seems to be a statement about injectivity of startsWith: would formulating such a statement simplify the arguments?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I think this statement is a bit stronger, because it follows from a != b -> Disjoint (startsWith a) (startsWith b) not just from Injectivity.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I pushed a fix that states this more clearly

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

maintainer-merge A reviewer has approved the changed; awaiting maintainer approval. t-group-theory Group theory

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants