-
Notifications
You must be signed in to change notification settings - Fork 343
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
refactoring Matroid ext lemmas #19664
base: master
Are you sure you want to change the base?
Conversation
PR summary d58d4a9eeaImport changes for modified filesNo significant changes to the import graph Import changes for all files
|
LGTM |
Mathlib/Data/Matroid/Basic.lean
Outdated
@@ -665,19 +667,19 @@ theorem Base.exists_insert_of_ssubset (hB : M.Base B) (hIB : I ⊂ B) (hB' : M.B | |||
(hB.indep.subset hIB.subset).exists_insert_of_not_base | |||
(fun hI ↦ hIB.ne (hI.eq_of_subset_base hB hIB.subset)) hB' | |||
|
|||
theorem eq_of_indep_iff_indep_forall {M₁ M₂ : Matroid α} (hE : M₁.E = M₂.E) | |||
@[ext] theorem ext_indep {M₁ M₂ : Matroid α} (hE : M₁.E = M₂.E) | |||
(h : ∀ I, I ⊆ M₁.E → (M₁.Indep I ↔ M₂.Indep I)) : M₁ = M₂ := |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perhaps ∀ ⦃I⦄, I ⊆ M.E → _
instead (and also in the iff
version)? To match with ext_base
.
@@ -459,7 +461,7 @@ theorem Base.diff_infinite_comm (hB₁ : M.Base B₁) (hB₂ : M.Base B₂) : | |||
(B₁ \ B₂).Infinite ↔ (B₂ \ B₁).Infinite := | |||
infinite_iff_infinite_of_encard_eq_encard (hB₁.encard_diff_comm hB₂) | |||
|
|||
theorem eq_of_base_iff_base_forall {M₁ M₂ : Matroid α} (hE : M₁.E = M₂.E) | |||
theorem ext_base {M₁ M₂ : Matroid α} (hE : M₁.E = M₂.E) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe add an iff
version too:
theorem ext_iff_base {M₁ M₂ : Matroid α} :
M₁ = M₂ ↔ M₁.E = M₂.E ∧ ∀ ⦃B⦄, B ⊆ M₁.E → (M₁.Base B ↔ M₂.Base B) :=
⟨fun h ↦ by simp [h], fun ⟨hE, h⟩ ↦ ext_base hE h⟩
Please doublecheck whether I used
@[ext]
correctly.