Skip to content

feat(Combinatorics/SimpleGraph/StarGraph): define star graphs#38027

Open
8e7 wants to merge 14 commits intoleanprover-community:masterfrom
8e7:star_graph
Open

feat(Combinatorics/SimpleGraph/StarGraph): define star graphs#38027
8e7 wants to merge 14 commits intoleanprover-community:masterfrom
8e7:star_graph

Conversation

@8e7
Copy link
Copy Markdown

@8e7 8e7 commented Apr 14, 2026

Add a new definition starGraph and several key lemmas. Star graphs are a trivial class of tree, often used in constructive proofs regarding trees.


All lemmas are hand written first, then golfed with the help of Claude Code.

Open in Gitpod

@github-actions github-actions bot added the new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! label Apr 14, 2026
@github-actions
Copy link
Copy Markdown

Welcome new contributor!

Thank you for contributing to Mathlib! If you haven't done so already, please review our contribution guidelines, as well as the style guide and naming conventions. In particular, we kindly remind contributors that we have guidelines regarding the use of AI when making pull requests.

We use a review queue to manage reviews. If your PR does not appear there, it is probably because it is not successfully building (i.e., it doesn't have a green checkmark), has the awaiting-author tag, or another reason described in the Lifecycle of a PR. The review dashboard has a dedicated webpage which shows whether your PR is on the review queue, and (if not), why.

If you haven't already done so, please come to https://leanprover.zulipchat.com/, introduce yourself, and mention your new PR.

Thank you again for joining our community.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 14, 2026

PR summary 8e3c989104

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference
Mathlib.Combinatorics.SimpleGraph.StarGraph (new file) 978

Declarations diff

+ connected_starGraph
+ degree_starGraph_center
+ degree_starGraph_of_ne_center
+ instance [DecidableEq V] (r : V) : DecidableRel (starGraph r).Adj
+ isAcyclic_starGraph
+ isTree_starGraph
+ starGraph
+ starGraph_adj
+ starGraph_center_adj
+ starGraph_center_adj'

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

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

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


No changes to technical debt.

You can run this locally as

./scripts/reporting/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-combinatorics Combinatorics label Apr 14, 2026
Comment thread Mathlib/Combinatorics/SimpleGraph/Acyclic.lean Outdated
Comment thread Mathlib/Combinatorics/SimpleGraph/Acyclic.lean Outdated
Comment thread Mathlib/Combinatorics/SimpleGraph/Acyclic.lean Outdated
Comment thread Mathlib/Combinatorics/SimpleGraph/Acyclic.lean Outdated
Comment thread Mathlib/Combinatorics/SimpleGraph/Acyclic.lean Outdated
Comment thread Mathlib/Combinatorics/SimpleGraph/Acyclic.lean Outdated
@vlad902
Copy link
Copy Markdown
Collaborator

vlad902 commented Apr 14, 2026

Please mark the review comments 'resolved' once you've addressed them so the next reviewer doesn't think they're still open.

Comment thread Mathlib/Combinatorics/SimpleGraph/Acyclic.lean Outdated
Copy link
Copy Markdown
Collaborator

@IvanRenison IvanRenison left a comment

Choose a reason for hiding this comment

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

I like the idea!
Maybe we should have StarGraph in a separate graph

Comment thread Mathlib/Combinatorics/SimpleGraph/Acyclic.lean Outdated
Comment thread Mathlib/Combinatorics/SimpleGraph/Acyclic.lean Outdated
Comment thread Mathlib/Combinatorics/SimpleGraph/Acyclic.lean Outdated
Comment thread Mathlib/Combinatorics/SimpleGraph/Acyclic.lean Outdated
Comment thread Mathlib/Combinatorics/SimpleGraph/Acyclic.lean Outdated
Comment thread Mathlib/Combinatorics/SimpleGraph/Acyclic.lean Outdated
Comment thread Mathlib/Combinatorics/SimpleGraph/Acyclic.lean Outdated
8e7 and others added 4 commits April 15, 2026 10:16
Co-authored-by: Snir Broshi <26556598+SnirBroshi@users.noreply.github.com>
Co-authored-by: Iván Renison <85908989+IvanRenison@users.noreply.github.com>
@8e7 8e7 changed the title feat(Combinatorics/SimpleGraph/Acyclic): define star graphs feat(Combinatorics/SimpleGraph/StarGraph): define star graphs Apr 15, 2026
Comment thread Mathlib/Combinatorics/SimpleGraph/StarGraph.lean Outdated
Comment thread Mathlib/Combinatorics/SimpleGraph/StarGraph.lean Outdated
Comment thread Mathlib/Combinatorics/SimpleGraph/StarGraph.lean Outdated
Comment thread Mathlib/Combinatorics/SimpleGraph/StarGraph.lean Outdated
Copy link
Copy Markdown
Collaborator

@SnirBroshi SnirBroshi Apr 15, 2026

Choose a reason for hiding this comment

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

I think Star.lean would be a better name based on this (to not repeat "Graph"), but I'm not sure.

(unless we want to define a Star (SimpleGraph V) operation, but I don't think we do)

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

I think starGraph is better since star is already in Mathlib/Algebra/Notation, and other specific types of graphs have the -graph suffix, such as lineGraph and pathGraph.

@8e7 8e7 requested a review from JovanGerb April 16, 2026 09:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! t-combinatorics Combinatorics

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants