Zulip Chat Archive
Stream: mathlib4
Topic: Contributing proof of Descartes' Rule of Signs
Alex Meiburg (Dec 12 2023 at 03:06):
Hey! I have a proof of the rule of signs: https://github.com/Timeroot/lean-descartes-signs/tree/main
Notably, this is one of the "100 problems to formalize" :) How do I go about, I dunno, getting any relevant stuff in mathlib, if that's wanted? I know several others of the 100 ended up in mathlib
Utensil Song (Dec 12 2023 at 05:04):
This thread has some related information about contributing it to Mathlib or adding it to the list of 100 problems for Lean formalizations.
Yaël Dillies (Dec 12 2023 at 07:04):
Feel free to request my review on PRs you open!
Ruben Van de Velde (Dec 12 2023 at 07:44):
It may be a bit much for a single PR, but it seems like auxiliary_defs.lean
has a bunch of code that could be contributed separately. That's probably a good point to start
Eric Rodriguez (Dec 12 2023 at 08:48):
amazing! same with me as Yael - this was originally why I made SignType, actually. Why did you choose this proof?
Alex Meiburg (Dec 12 2023 at 15:23):
Yes, I separated out auxiliary_defs
as the little facts that felt like it would be reasonable to put in mathlib even if the rest wasn't in a state to be merged. :)
Alex Meiburg (Dec 12 2023 at 15:23):
I guess I chose this one because it seemed like one I could reasonably do, as a way to force myself to learn Lean :P
Ruben Van de Velde (Dec 12 2023 at 15:24):
Seems to have worked :)
Alex Meiburg (Dec 12 2023 at 15:25):
It seems as though I should ask for write access to the central github (just not the master branch), instead of forking+PR?
Ruben Van de Velde (Dec 12 2023 at 15:26):
Yes, that's correct
Alex Meiburg (Dec 12 2023 at 17:00):
It looks as though statements like
theorem ext_get! [Inhabited α] (hl : length l₁ = length l₂)
(h : ∀ n, get! l₁ n = get! l₂ n) : l₁ = l₂
theorem filter_replicate {f : α → Bool} :
List.filter f (List.replicate n a) = if f a then List.replicate n a else []
would maybe belong in Std, is that correct? But maybe could go in Mathlib/Data/List/Basic.lean
instead?
Ruben Van de Velde (Dec 12 2023 at 17:02):
Yeah, they could probably go into std, but we could also move them from mathlib to std later if needed
Last updated: Dec 20 2023 at 11:08 UTC