Skip to content

[Merged by Bors] - feat(Combinatorics/SimpleGraph): vertices in cycles#20602

Closed
pimotte wants to merge 9 commits intomasterfrom
PO_IsCycle_ncard_two
Closed

[Merged by Bors] - feat(Combinatorics/SimpleGraph): vertices in cycles#20602
pimotte wants to merge 9 commits intomasterfrom
PO_IsCycle_ncard_two

Conversation

@pimotte
Copy link
Copy Markdown
Collaborator

@pimotte pimotte commented Jan 9, 2025

This adds various lemmas on vertices in cycles: Non-equality, and the exact neighbors and size of the neighborSet, along with some smaller supporting lemmas for walks.

In preparation for Tutte's theorem.


Open in Gitpod

Zulip thread on Tutte's
Context in my proof of Tutte's

These results are used in the proof to connect IsCycles to IsCycle.

@pimotte pimotte added the t-combinatorics Combinatorics label Jan 9, 2025
@pimotte pimotte requested a review from YaelDillies January 9, 2025 08:54
@github-actions github-actions bot added the large-import Automatically added label for PRs with a significant increase in transitive imports label Jan 9, 2025
@github-actions
Copy link
Copy Markdown

github-actions bot commented Jan 9, 2025

messageFile.md

Copy link
Copy Markdown
Contributor

@YaelDillies YaelDillies left a comment

Choose a reason for hiding this comment

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

Ouch, +142 imports for importing Data.Set.Card. Maybe complain on Zulip that this is a huge price to pay to just write Set.ncard.

Do you think it would make your like any easier if we had a getCycleVert : ℤ → V function that's p.length-periodic? Then you wouldn't have to split cases on whether you are at the endpoint or not. Maybe @kmill has thoughts here too.

@YaelDillies YaelDillies added the awaiting-author A reviewer has asked the author a question or requested changes. label Jan 9, 2025
Co-authored-by: Yaël Dillies <yael.dillies@gmail.com>
@pimotte
Copy link
Copy Markdown
Collaborator Author

pimotte commented Jan 9, 2025

Ouch, +142 imports for importing Data.Set.Card. Maybe complain on Zulip that this is a huge price to pay to just write Set.ncard.

Strictly speaking I'm not just using Set.ncard, but also the result for pairs. There might be something that could be refactored over there, but I'm not sure that would in the end really help here. Between this, #20024 and more results on my backlog I'm also open to starting Combinatorics.SimpleGraph.Card, how do you feel about that?

Do you think it would make your like any easier if we had a getCycleVert : ℤ → V function that's p.length-periodic? Then you wouldn't have to split cases on whether you are at the endpoint or not. Maybe @kmill has thoughts here too.

I think the results in this PR are more or less my way of abstracting the endpoint business, so from my perspective it doesn't help much beyond this. I can see how it would be nice here and give some cleaner results, so I'm not particularly leaning one way or the other. If we decide this is worthwhile I'd be happy to try to whip something up.

@pimotte pimotte removed the awaiting-author A reviewer has asked the author a question or requested changes. label Jan 9, 2025
@pimotte pimotte requested a review from YaelDillies January 10, 2025 14:09
Copy link
Copy Markdown
Contributor

@YaelDillies YaelDillies left a comment

Choose a reason for hiding this comment

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

I think it's fine to leave both issues as is for now. Could you possibly just add a TODO for the -indexed sequence of vertices of a cycle?

maintainer delegate

@github-actions
Copy link
Copy Markdown

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

@github-actions github-actions bot added the maintainer-merge A reviewer has approved the changed; awaiting maintainer approval. label Jan 13, 2025
Copy link
Copy Markdown
Contributor

@b-mehta b-mehta left a comment

Choose a reason for hiding this comment

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

bors d+

@mathlib-bors
Copy link
Copy Markdown
Contributor

mathlib-bors bot commented Jan 13, 2025

✌️ pimotte can now approve this pull request. To approve and merge a pull request, simply reply with bors r+. More detailed instructions are available here.

@ghost ghost added the delegated This pull request has been delegated to the PR author (or occasionally another non-maintainer). label Jan 13, 2025
pimotte and others added 2 commits January 16, 2025 12:49
Co-authored-by: Yaël Dillies <yael.dillies@gmail.com>
@github-actions
Copy link
Copy Markdown

messageFile.md

@pimotte
Copy link
Copy Markdown
Collaborator Author

pimotte commented Jan 16, 2025

bors r+

mathlib-bors bot pushed a commit that referenced this pull request Jan 16, 2025
This adds various lemmas on vertices in cycles: Non-equality, and the exact neighbors and size of the neighborSet, along with some smaller supporting lemmas for walks.

In preparation for Tutte's theorem.



Co-authored-by: Pim Otte <otte.pim@gmail.com>
@mathlib-bors
Copy link
Copy Markdown
Contributor

mathlib-bors bot commented Jan 16, 2025

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title feat(Combinatorics/SimpleGraph): vertices in cycles [Merged by Bors] - feat(Combinatorics/SimpleGraph): vertices in cycles Jan 16, 2025
@mathlib-bors mathlib-bors bot closed this Jan 16, 2025
@mathlib-bors mathlib-bors bot deleted the PO_IsCycle_ncard_two branch January 16, 2025 12:40
Julian added a commit that referenced this pull request Jan 20, 2025
* polynomial-sequences: (149 commits)
  Aha, here's how to get Lean to stop showing S.elems' in the infoview.
  Try satisfying the linter gods again.
  Probably enough initial tidying to send the PR.
  Kill more temporary names.
  Touch more natDegree.
  Does protected satisfy the docstring linter?
  Bit shorter.
  More
  Quiet linters.
  Remove redundant imports.
  Copyright header and more twiddling.
  Rename lemma to 'degree_smul_of_leadingCoeff_rightRegular' and split out
  feat(Polynomial): polynomial sequences are bases for R[X]
  chore(Dynamics/PeriodicPts): don't import `MonoidWithZero` (#20765)
  chore(Associated): split out `Ring` results (#20737)
  feat(AlgebraicGeometry): flat morphisms of schemes (#19790)
  feat(AlgebraicGeometry): scheme-theoretic fibre (#19427)
  chore: split Mathlib.Analysis.Asymptotics.Asymptotics (#20785)
  doc: typo (#20829)
  feat(CategoryTheory): condition for an induced functor between comma categories to be final  (#20139)
  feat(1000.yaml): allow statements of theorems also (#20637)
  feat(Algebra/Homology/Embedding): homology of truncGE' (#19570)
  chore: cleanup many porting notes in Combinatorics (#20823)
  chore: eliminate porting notes about `deriving Fintype` (#20820)
  feat(Algebra/Lie): a Lie algebra is solvable iff it is solvable after faithfully flat base change (#20808)
  feat: define bases of root pairings (#20667)
  feat(Tactic): basic ConcreteCategory support for elementwise (#20811)
  feat(CategoryTheory): define unbundled `ConcreteCategory` class  (#20810)
  chore(CategoryTheory): rename `ConcreteCategory` to `HasForget` (#20809)
  feat: `CommSemiring (NonemptyInterval ℚ≥0)` (#20783)
  chore(yaml_check.py): re-format (#20807)
  feat: elementary estimate for Real.log (#20766)
  feat: definition of linear topologies (#14990)
  feat(RingTheory): flatness over a semiring (#19115)
  feat(Algebra/Homology/Embedding): the canonical truncation truncLE (#19550)
  feat(Algebra/Homology/Embedding): API for the homology of an extension of homological complex (#19203)
  feat(Algebra/Ring): `RingEquiv.piUnique` (#20794)
  feat(RingTheory/LocalRing): add instance `Unique (MaximalSpectrum R)` for a local ring `R` (#20801)
  chore(GroupExtension/Defs): define `Section` and redefine `Splitting` (#20802)
  chore: restore `def` to `adicCompletion` (#20796)
  refactor: rename `UniqueContinuousFunctionalCalculus` to `ContinuousMap.UniqueHom` (#20643)
  feat(Algebra/Homology/Embedding): the morphism from a complex to its `truncGE` truncation (#19544)
  chore(Mathlib/Computability/TuringMachine): split file (#20790)
  feat(Data/Finset/Card): add `InjOn` and `SurjOn` versions of finset cardinality lemmas (#20753)
  feat(Order/WellFoundedSet): add convenience constructors for IsWF and IsPWO for WellFoundedLT types (#20752)
  feat(Set/Finite): a set is finite if its image and fibers are finite (#20751)
  chore: cleanup .gitignore files (#20795)
  feat(Topology/Group/Profinite):  Profinite group is limit of finite group (#16992)
  feat(Combinatorics/SimpleGraph): vertices in cycles (#20602)
  CI: merge `bot_fix_style` actions (#20789)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

delegated This pull request has been delegated to the PR author (or occasionally another non-maintainer). large-import Automatically added label for PRs with a significant increase in transitive imports maintainer-merge A reviewer has approved the changed; awaiting maintainer approval. t-combinatorics Combinatorics

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants