[Merged by Bors] - feat(Combinatorics/SimpleGraph): define edge-connectivity#32870
[Merged by Bors] - feat(Combinatorics/SimpleGraph): define edge-connectivity#328700xTerencePrime wants to merge 29 commits intoleanprover-community:masterfrom
Conversation
PR summary 0a5fe12b77Import changes for modified filesNo significant changes to the import graph Import changes for all files
|
- Define IsEdgeReachable and IsEdgeConnected - Prove basic properties: reflexivity, symmetry, transitivity, monotonicity - Prove equivalence with standard reachability for k=1 - Prove inductive characterization for k+1 - Prove IsEdgeConnected 2 ↔ Preconnected ∧ no bridges Closes leanprover-community#31691
5e2b2ed to
5930d0e
Compare
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
1db6caa to
e36e3ab
Compare
08391fc to
7adfd72
Compare
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
|
@YaelDillies in the issue you said "possibly more lemmas relating |
Yes, by (the local version of) edge Menger
That is very false. Not being two-edge connected is the same thing as having a bridge, while being a tree is the same as all edges being bridges. |
|
I've applied all the suggested improvements from @YaelDillies and @SnirBroshi, including the 'strictly fewer' terminology, theorem protection, dot notation golfs, and the characterization of bridges. The full |
YaelDillies
left a comment
There was a problem hiding this comment.
Thanks!
maintainer delegate
|
🚀 Pull request has been placed on the maintainer queue by YaelDillies. |
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
SnirBroshi
left a comment
There was a problem hiding this comment.
Thanks!
btw the current build will probably time out in 3.5 hours, there's some unknown bug there (see #mathlib4 > slow linting step CI? @ 💬), but retriggerring the build should fix it (click "Update branch" below)
|
Thanks for the heads-up regarding the CI timeout bug, @SnirBroshi! I have updated the branch as suggested to re-trigger the build. |
|
I've noted the CI error. I'll re-trigger the build later today when I'm back at my computer. Thanks! |
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
aaad30a to
4963ae1
Compare
|
Hi @YaelDillies and @SnirBroshi, I have updated the code to incorporate the final golfs and address the remaining comments.
The build is now fully green. Ready for a final review! |
|
All remaining comments addressed and local build passes. Ready for review! |
SnirBroshi
left a comment
There was a problem hiding this comment.
Nice! Here's a golf for the new result
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.lean
Outdated
Show resolved
Hide resolved
|
I think I've already requested this on another PR: please reduce the AI generated commit messages. We don't need the "Verification" stuff at all. We have CI for that. The 1-line "Summary" is good. |
This PR introduces k-edge-connectivity definitions for SimpleGraph, addressing #31691. Co-authored-by: 0xTerencePrime <[email protected]> Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com> Co-authored-by: Yaël Dillies <[email protected]>
|
Pull request successfully merged into master. Build succeeded: |
…-community#32870) This PR introduces k-edge-connectivity definitions for SimpleGraph, addressing leanprover-community#31691. Co-authored-by: 0xTerencePrime <[email protected]> Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com> Co-authored-by: Yaël Dillies <[email protected]>
…-community#32870) This PR introduces k-edge-connectivity definitions for SimpleGraph, addressing leanprover-community#31691. Co-authored-by: 0xTerencePrime <[email protected]> Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com> Co-authored-by: Yaël Dillies <[email protected]>
This PR introduces k-edge-connectivity definitions for SimpleGraph, addressing #31691.
Summary
This PR introduces k-edge-connectivity definitions for SimpleGraph, addressing #31691.
Main Changes
Mathlib/Combinatorics/SimpleGraph/Connectivity/EdgeConnectivity.leanDefinitions
IsEdgeReachable k u v: vertices remain reachable after removing < k edgesIsEdgeConnected k: graph is k-edge-connectedLemmas
rfl,symm,trans,mono,zeroisEdgeReachable_one: equivalence with standardReachableisEdgeConnected_one: equivalence withPreconnectedisEdgeReachable_succ: inductive characterizationisEdgeConnected_succ: inductive characterization for graphsisEdgeConnected_two: equivalence withPreconnected ∧ ¬∃ e, IsBridge eVerification
lake buildpasseslake exe runLinterpassesCloses #31691