Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor(analysis/convex/combination): generalize linear_combination to semimodules #9268

Closed
wants to merge 19 commits into from

Conversation

YaelDillies
Copy link
Collaborator

std_simplex and finset.center_mass are currently only defined in real vector spaces. This generalizes ℝ to any arbitrary ordered_semiring.
Specifically, what I'm doing is

  • renaming finset.center_mass to finset.linear_combination
  • removing the division from its definition. This makes it a bilinear map, but it's not yet bundled. It also seems to simplify the proofs.
  • replacing by 𝕜 along with ordered_semiring 𝕜 (or linear_ordered_field 𝕜 in some lemmas)
  • swapping the two arguments p (indexed family of points) and w (weights) so that it matches finset.affine_combination.

There are some things that still need to be done:

  • It's becoming clear that this file doesn't belong under analysis.convex. Any idea where it could go?
  • Instead of taking s : finset ι and w : ι → 𝕜, we should use ι →₀ 𝕜.
  • We should define convex_space. Then convex_combination will be the common generalization of linear_combination and affine_combination.

Open in Gitpod

@github-actions github-actions bot added the merge-conflict Please `git merge origin/master` then a bot will remove this label. label Sep 22, 2021
@github-actions github-actions bot removed the merge-conflict Please `git merge origin/master` then a bot will remove this label. label Sep 22, 2021
@github-actions github-actions bot added the merge-conflict Please `git merge origin/master` then a bot will remove this label. label Sep 26, 2021
@github-actions github-actions bot added merge-conflict Please `git merge origin/master` then a bot will remove this label. and removed merge-conflict Please `git merge origin/master` then a bot will remove this label. labels Sep 26, 2021
@github-actions github-actions bot removed the merge-conflict Please `git merge origin/master` then a bot will remove this label. label Sep 28, 2021
@github-actions github-actions bot added the merge-conflict Please `git merge origin/master` then a bot will remove this label. label Sep 29, 2021
@github-actions github-actions bot removed the merge-conflict Please `git merge origin/master` then a bot will remove this label. label Sep 30, 2021
@github-actions github-actions bot added the merge-conflict Please `git merge origin/master` then a bot will remove this label. label Sep 30, 2021
@github-actions github-actions bot removed the merge-conflict Please `git merge origin/master` then a bot will remove this label. label Oct 1, 2021
@YaelDillies YaelDillies added WIP Work in progress and removed awaiting-review The author would like community review of the PR labels Oct 2, 2021
@github-actions github-actions bot added the merge-conflict Please `git merge origin/master` then a bot will remove this label. label Oct 3, 2021
@github-actions github-actions bot removed the merge-conflict Please `git merge origin/master` then a bot will remove this label. label Oct 5, 2021
@github-actions github-actions bot added the merge-conflict Please `git merge origin/master` then a bot will remove this label. label Nov 8, 2021
@eric-wieser
Copy link
Member

eric-wieser commented May 15, 2022

renaming finset.center_mass to finset.linear_combination

This feels like an easy PR to split off to cut down the size of the diff. Is that a reasonable request?

Actually this description seems out of date.


## Main declarations

* `finset.center_mass`: Center of mass of a finite family of points.
* `finset.linear_combination`: Center of mass of a finite family of points.
Copy link
Member

Choose a reason for hiding this comment

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

Does this actually exist any more? I just see .sum (w • p) below.

@YaelDillies
Copy link
Collaborator Author

I doubt this is a good idea anymore. We will eventually have both what I was trying to achieve here, namely an explicit sum formula, and abstract affine combinations. But removing the existing finset.center_mass does not seem like the best first step now that I used it for Stone's separation.

@YaelDillies YaelDillies deleted the no_reals_in_my_soup branch August 12, 2022 21:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merge-conflict Please `git merge origin/master` then a bot will remove this label. WIP Work in progress
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants