-
Notifications
You must be signed in to change notification settings - Fork 11
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
Add function to export theorem dependencies in GraphML format #112
Conversation
I don't have the competence to review, but I wanted to show my support for this. I think a graph database of theorems dependencies would be a really cool tool to play with. In 2022 Stephen Wolfram wrote an article with a visualization for set.mm https://writings.stephenwolfram.com/2022/03/the-physicalization-of-metamathematics-and-its-implications-for-the-foundations-of-mathematics/ Probably there are ways to make it prettier and less "chaotic", but at least this should give an idea of what it could look like. |
It's a different visualization, but Metamath Proof Explorer (set.mm) contributions visualized with Gource through 2020-04-29 shows the set.mm database's structure and growth over time. Each little circle represents an assertion (mostly theorems). It's structured by section and subsection, not by internal theorem dependencies, but it may be of interest. I'll post to the mailing list too. |
Thank you for this. Is it me, or is there something not quite right with the new PR. I keep on getting the error: error: Found argument '--export-graphml-deps' which wasn't expected, or isn't valid in this context USAGE: For more information try --help I even tried downloading the specific fork/branch directly, and still have the same problem: git clone https://github.com/tirix/metamath-knife.git export_graphml_deps |
I am not completely familiar with Rust and Cargo, please pardon me for this |
on a separate but relevant note, @tirix @digama0, sorry to inform that I seem to have a problem with the current GraphML output. Pls see the attached output which is exactly what I got when I ran the commands in: On Gephi, I have a Invalid GML Parsing error. On GraPhP with PHP (https://github.com/graphp/graph), I am having the following error: It appears that the GraphML output is not well-formed, but I dun have enough knowledge now to check manually what is the exact problem. Hopefully, you can fix this problem while you add the feature for the definitions dependency graph.. |
may I know if the definitions graph have been added? I don't see any news yet.. |
I'll try to add it whenever I can find some free time, but it's hard to commit on a date. |
ok yes pls |
erm sorry to ask, but will it take long? because I need it for work and teaching.. the definitions graph, when topologically sorted, can be used to learn all definitions of objects from the ground up.. |
As @digama0 said on the mailing list:
and I agree that having an xml feature seems like maybe an inelegant way of handling what would be better organized as multiple crates (not that I've looked at the code much, just based on the idea that we were hoping to design metamath-knife in a modular way which featured a core library with a bunch of other packages built on top of it). |
Ok, so we have this PR pending, then #116, which depends on this, and also a proposal to split
Yes, as a result of the split, the library crate will not depend on |
I'd gladly defer to people more involved in metamath-knife development than I am, but sounds sensible to me. |
What do you mean by "release"? |
Last release was 0.3.6, I mean baseline a 0.3.7 for example. |
As per discussion on the google groups:
This adds a new option
--export-graphml-deps [FILE]
(no shortcut), which allows to export the theorem dependencies in GraphML format.Requires to be compiled with the
xml
feature.