Skip to content

Conversation

@tchow12000-coder
Copy link

The Latin Tableau Conjecture states that the graph associated to any (finite) Young diagram (i.e., whose vertices are the cells of the diagram, with edges between cells in the same row or column) is CDS-colorable, meaning that there exists a proper coloring of the vertices of the graph such that for all k > 0, the number of vertices with color < k equals the maximum size of the union of k independent sets of the graph.

Copy link
Member

@Paul-Lez Paul-Lez left a comment

Choose a reason for hiding this comment

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

Thanks for the PR! A few initial comments:)

noncomputable def independenceNumK (G : SimpleGraph α) (k : ℕ) : ℕ :=
sSup { n | ∃ f : Fin k → Set α, (∀ i, G.IsIndepSet (f i)) ∧ ((⋃ i, f i).ncard = n) }

/- A finite graph is cdsColorable if it has a proper coloring
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
/- A finite graph is cdsColorable if it has a proper coloring
/-- A finite graph is cdsColorable if it has a proper coloring


namespace SimpleGraph

/- The maximum size of the union of k finite independent sets. -/
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
/- The maximum size of the union of k finite independent sets. -/
/-- The maximum size of the union of k finite independent sets. -/

∃ (C : G.Coloring Nat), ∀ k : Nat, k > 0 →
∑ i ∈ Finset.range k, (C.colorClass i).ncard = independenceNumK G k

open YoungDiagram
Copy link
Member

Choose a reason for hiding this comment

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

Typically we'd put conjectures (in fact, the whole file containing a conjecture) in a namespace. Here I'd suggest LatinTableau as the namespace.


variable {α : Type*} [DecidableEq α]

namespace SimpleGraph
Copy link
Member

Choose a reason for hiding this comment

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

If these definitions are standard, it may be worth adding them to the ForMathlib subdirectory.

limitations under the License.
-/

import Mathlib
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
import Mathlib
import FormalConjectures.Util.ProblemImports

@tchow12000-coder
Copy link
Author

All of Paul-Lez's comments look good to me. At first, I tried to imitate other submissions to Formal Conjectures, but I was getting errors, probably because the import FormalConjectures command wasn't working for me.

Do I need to make the above changes myself and resubmit, or can someone else make them on my behalf? The only nontrivial question, I think, is which (if any) of these definitions are "standard" enough to consider adding to mathlib. I'd say that independenceNumK is the only one I'd consider "standard," and if it's added, then an analogous cliqueNumK should probably be added as well. And maybe a bunch of helper functions should be added too? Since I'm still a beginner, I wasn't planning to go down this rabbit hole, so maybe I should just skip this for now?

@YaelDillies YaelDillies added the awaiting-author The author should answer a question or perform changes. Reply when done. label Dec 20, 2025
@tchow12000-coder
Copy link
Author

I see that the "awaiting-author" label has been added. What does this mean? I guess I'm supposed to do something?

@Paul-Lez
Copy link
Member

All of Paul-Lez's comments look good to me. At first, I tried to imitate other submissions to Formal Conjectures, but I was getting errors, probably because the import FormalConjectures command wasn't working for me.

Do I need to make the above changes myself and resubmit, or can someone else make them on my behalf? The only nontrivial question, I think, is which (if any) of these definitions are "standard" enough to consider adding to mathlib. I'd say that independenceNumK is the only one I'd consider "standard," and if it's added, then an analogous cliqueNumK should probably be added as well. And maybe a bunch of helper functions should be added too? Since I'm still a beginner, I wasn't planning to go down this rabbit hole, so maybe I should just skip this for now?

@tchow12000-coder Sorry for the slow reply! We tend to follow the usual Github workflow, i.e. making changes directly to the pull request (so this would mean you should make the changes yourself and then push to this PR).

Concerning the definitions, I think it's reasonable to add the standard definitions to the ForMathlib directory so they can also be used in other related conjectures. You're welcome to add helper functions, though this isn't required to merge the PR. That being said, I think it would be useful to add some examples testing the definition (e.g. computing it on small examples) - say two per definition would be enough!

The awaiting-author label just means that the PR has been reviewed and some changes have been recommended. This is useful to keep track of the status, but we tend to take a look these relatively often too to make sure we haven't missed any new stuff being added.

@tchow12000-coder
Copy link
Author

Okay, I think I pushed the changes (though I'm not very fluent with Git so I may have missed a step).

I'm still a bit hesitant to submit independenceNumK to mathlib. My first attempt used Finset rather than Set, and I decided on Set because the formalization is shorter, but it's possible that that wasn't the "right" decision. My conjecture concerns finite graphs only, so either choice is formally correct for the purposes of my conjecture, but in a more general setting I'm not sure which choice is better. I feel like I need to gain more experience with Lean before I start submitting things to mathlib. Also, what I'm calling independenceNumK is equivalent to the maximum size of a k-colorable subgraph, so maybe it's better to frame it that way in mathlib.

@tchow12000-coder tchow12000-coder mentioned this pull request Jan 2, 2026
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

awaiting-author The author should answer a question or perform changes. Reply when done.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants