Hi! and sorry if this is not the right place for this type of post. I recently found out about Metamath and I couldn't help but be impressed by just the sheer concept of it all. I want to get deeper into it, however, as a CS student with very little knowledge on mathematical logic or set theory, I don't really know what the best way for me to start is.
If you have any recommendations of books, areas of interests or online resources someone with my level (essentially zero, though I’m well acquainted with more formal proofs because of math Olympiads) could read to get started, I would much appreciate it.
By around June or July of 2021 I need to deliver a dissertation in order to graduate and I would love it if it could be about some Metamath project, like formalizing some theorem (doesn’t need to be a very complicated one) that has yet to be formalized. I read about the 100 theorems but I’m unsure if I could get one of those within the allotted time. So feel free to recommend me some unformalized theorems as well, I would much appreciate it.
Thanks for reading, and I greatly appreciate any help,
ginx.
--
You received this message because you are subscribed to the Google Groups "Metamath" group.
To unsubscribe from this group and stop receiving emails from it, send an email to metamath+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/metamath/e0364c41-9804-43fe-8117-b796a73a242an%40googlegroups.com.
...
Many of the proofs that Metamath is missing have been done with other provers. David Wheeler built a list of these, along with how many other provers have proved the theorem. That can provide a rough idea of the difficulty - the more provers that have done a proof, the more likely it is feasible in Metamath.
https://groups.google.com/g/metamath/c/QPOfJEnRqmU/m/zTt4GGiZDgAJ
This list from 2016 is out of date, though. David provided a python program there to regenerate it; perhaps you can re-run it and post the updated list here.
Hi! and thanks for all the replies, I definitely wasn't expecting so many! I will address all of your kind replies:
Norm:
Thanks for the reply, I’m definitely going to hang out around here more often. The 100 theorems is my ideal option, I was scheming the list provided and some theorems caught my eye, like the four colors one, however, that one has only bene proven by Coq, so it might out of hands for me (at least for the purpose of the dissertation). The Insolvability of General Higher Degree Equations also caught my eye, but that one is even worse since it appears to have no formalized proof by prover yet. Descartes Rule of Signs is one that I’m already familiarized with and 3 provers already have it so this one could be a good option.
Other than that, I’ve got a couple of theorems in mind that do not belong to the 100 theorems. Erdős–Szekeres theorem, Chinese remainder theorem, Kummer's theorem, Lucas's theorem and others. Or maybe just check the validity and/or worst time/space complexity of some CS algorithms, such as: Kosaraju's algorithm, KMP algorithm, Sieve of Eratosthenes (regular one and linear time one), and others. Maybe even for data structures as well. Main problem is, I’m not sure which of these have already been solved in Metamath or are currently being solved. Is there some sort of index to check for this?
Stan:
Thanks for the reply, that tool seems pretty useful. I’d be interested in using it once I get a little bit more familiarized with the plain Metamath. I’ll send you an email :)
David A. Wheeler:
Thanks for the replies, hope the burger grilling went well for you.
I’m definitely going to watch all of your Metamath videos. Is there some sort of specific background expected in order to watch them?
Thierry:
Thanks for the reply and the advice. I was unsure if this was a forum to discuss exclusively for already advanced users or else, but now I definitely will ask more questions in the future.
I’m mostly interested in combinatorics, number theory and just regular CS algorithms. Previously I listed a couple theorems on those areas that I already feel comfortable with.
Thanks for the good wishes and good luck!
Jon:
Hi! Though the idea of working more on tools sounds interesting, I’m really more interested in working with proofs, since it’s a topic that I really like. I’m certainly open to the idea of contributing in the future.
Thanks for the resources, I’m going to check the problems and the videos for sure. I quickly skimmed through the book and it does touch on some set theory, should I perhaps read more about it before jumping into this book?
Thanks :)
Kin (sorry, I can’t really see your full address):
Thanks for your suggestion, it does sound like something that can be very useful so I’ll keep it in mind for the future (if someone else doesn’t do it first).
Norm:
Thanks for the reply, I’m definitely going to hang out around here more often. The 100 theorems is my ideal option, I was scheming the list provided and some theorems caught my eye, like the four colors one, however, that one has only bene proven by Coq, so it might out of hands for me (at least for the purpose of the dissertation). The Insolvability of General Higher Degree Equations also caught my eye, but that one is even worse since it appears to have no formalized proof by prover yet. Descartes Rule of Signs is one that I’m already familiarized with and 3 provers already have it so this one could be a good option.
Other than that, I’ve got a couple of theorems in mind that do not belong to the 100 theorems. Erdős–Szekeres theorem, Chinese remainder theorem, Kummer's theorem, Lucas's theorem and others. Or maybe just check the validity and/or worst time/space complexity of some CS algorithms, such as: Kosaraju's algorithm, KMP algorithm, Sieve of Eratosthenes (regular one and linear time one), and others. Maybe even for data structures as well. Main problem is, I’m not sure which of these have already been solved in Metamath or are currently being solved. Is there some sort of index to check for this?
On Wednesday, September 9, 2020 at 6:06:31 AM UTC-4 ginx wrote:Norm:
Thanks for the reply, I’m definitely going to hang out around here more often. The 100 theorems is my ideal option, I was scheming the list provided and some theorems caught my eye, like the four colors one, however, that one has only bene proven by Coq, so it might out of hands for me (at least for the purpose of the dissertation). The Insolvability of General Higher Degree Equations also caught my eye, but that one is even worse since it appears to have no formalized proof by prover yet. Descartes Rule of Signs is one that I’m already familiarized with and 3 provers already have it so this one could be a good option.
Other than that, I’ve got a couple of theorems in mind that do not belong to the 100 theorems. Erdős–Szekeres theorem, Chinese remainder theorem, Kummer's theorem, Lucas's theorem and others. Or maybe just check the validity and/or worst time/space complexity of some CS algorithms, such as: Kosaraju's algorithm, KMP algorithm, Sieve of Eratosthenes (regular one and linear time one), and others. Maybe even for data structures as well. Main problem is, I’m not sure which of these have already been solved in Metamath or are currently being solved. Is there some sort of index to check for this?
There is an outline of the set.mm content here:
http://us.metamath.org/mpeuni/mmtheorems.html
although it doesn't always show specific theorems on the Table of Contents page but just the general area covered by a section.
The Erdos–Szekeres theorem and the Chinese remainder theorem are here:
http://us.metamath.org/mpeuni/erdsze.html
http://us.metamath.org/mpeuni/crt.html
You can click on "Nearby theorems" on the above pages to see related material. The small colored number after a theorem label will let you determine where it falls in the mmtheorems.html table of contents.
(It looks like erdsze is still in Mario's "mathbox" [which is a work space assigned to individuals for developing proofs - you will get one]. Since it is one of the mm100 theorems, at some point it probably should be moved to an appropriate place in the main body of set.mm.)
Since Mario did the above 2 proofs, perhaps he has comments on some others on your list, such as to what extent we have the necessary background material developed.
I was scheming the list provided and some theorems caught my eye, like the four colors one, however, that one has only bene proven by Coq, so it might out of hands for me (at least for the purpose of the dissertation).
The Insolvability of General Higher Degree Equations also caught my eye, but that one is even worse since it appears to have no formalized proof by prover yet.
Descartes Rule of Signs is one that I’m already familiarized with and 3 provers already have it so this one could be a good option.
Other than that, I’ve got a couple of theorems in mind that do not belong to the 100 theorems. Erdős–Szekeres theorem,
Chinese remainder theorem,
Kummer's theorem,
Lucas's theorem
Or maybe just check the validity and/or worst time/space complexity of some CS algorithms,
such as: Kosaraju's algorithm,
KMP algorithm,
Sieve of Eratosthenes (regular one and linear time one), and others.
Maybe even for data structures as well. Main problem is, I’m not sure which of these have already been solved in Metamath or are currently being solved. Is there some sort of index to check for this?
Thanks for those resources Norm, it seems like a very throughout list. I haven’t installed mmj2 yet, so I didn’t know you could just search like that, pretty useful.
Also, I believe that erdsze is not really part of the 100 theorems, so maybe it should stay on the mathbox (?). I believe only Ramsey’s theorem belongs.
Also, thanks for the very detailed explanation Mario. After reading it, I think I basically boiled it down to just two possibilities: Descartes Rule of Signs, which as you stated should be doable, and the CS route. Though it might require a lot more library building, I think I incline more towards the second option. As Norm stated before, even if I can’t complete an entire proof, it can certainly be useful to work on the libraries to make it happen in the future, and I’m sure my teachers will understand as well (is only bs level dissertation, not a masters one).
As to what specific algorithm, I’m really not sure right now. I guess after I manage to do even an extremely simple, equivalent of 2+2=4, one then I’ll see what I can get into. Kosaraju can be a good option in order to open up the graph theory possibilities in the future. Oh and about the Sieve, I was referring to a specific implementation that reduces the time complexity by increasing the space one: https://cp-algorithms.com/algebra/prime-sieve-linear.html.
Also, you also mentioned that you’re working on a framework for correctness proof, would you also include tools for counting number of steps and other elements or just the correctness? Around how much time do you think it will take you? Mostly out of curiosity since I plan on working on the tools myself regardless of the framework.
Lastly, I would definitely check out the other tools, at the very least to expand my views on the subject. Which one would you recommend for a beginner? Isabelle is the only one that I checked before Metamath.
Thanks,
ginx.
Also, thanks for the very detailed explanation Mario. After reading it, I think I basically boiled it down to just two possibilities: Descartes Rule of Signs, which as you stated should be doable, and the CS route. Though it might require a lot more library building, I think I incline more towards the second option. As Norm stated before, even if I can’t complete an entire proof, it can certainly be useful to work on the libraries to make it happen in the future, and I’m sure my teachers will understand as well (is only bs level dissertation, not a masters one).As to what specific algorithm, I’m really not sure right now. I guess after I manage to do even an extremely simple, equivalent of 2+2=4, one then I’ll see what I can get into.
Kosaraju can be a good option in order to open up the graph theory possibilities in the future. Oh and about the Sieve, I was referring to a specific implementation that reduces the time complexity by increasing the space one: https://cp-algorithms.com/algebra/prime-sieve-linear.html.
Also, you also mentioned that you’re working on a framework for correctness proof, would you also include tools for counting number of steps and other elements or just the correctness? Around how much time do you think it will take you? Mostly out of curiosity since I plan on working on the tools myself regardless of the framework.
Lastly, I would definitely check out the other tools, at the very least to expand my views on the subject. Which one would you recommend for a beginner? Isabelle is the only one that I checked before Metamath.