-
Notifications
You must be signed in to change notification settings - Fork 12
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
write_stmt_use in axiom_use.rs hates uncompressed proofs. #160
Comments
Yes. What is the motivation for supporting uncompressed proofs in axiom_use? |
The promise in metamath-rs/README.md that the library "supports all Metamath proof formats. In particular, Metamath-knife adds support for all Metamath proof formats (uncompressed, compressed, package, or explicit. |
The suggestion is not enough to support all proof formats. But my question remains: why do you need this? Is it just a feeling of incompleteness? |
Short story, yes. Specifically, the published 3.8 library seems incomplete with respect to its advertised functionality. I was going to re-implement a tool which generalizes condensed detachment (letting any statement with essential hypotheses fill in for ax-mp) and I wanted to use set.mm/miu.mm (featured in the Metamath book, Appendix D) as a test case, which famously has an uncompressed proof so that one might follow along with its use of a syntax axiom ( I thought condensed detachment might make.for a nice playground was was planning to build on the metamath-rs library and eventually implement a browser-based workspace. That line I quoted above showed up on "crates.io" which is why I started looking into not writing all the database-handling code myself. So I was still exploring the code to decide if I want to use it as-is or as some sort of hard-to-maintain fork when the metamath-knife crashed in the code common to --stmt-use or -X when I tried those with miu.mm. (Also -E doesn't seem to represent |
This is two problems: the loop statement runs out-of-bounds and always starts with i = 1 .
The canonical test is set.mm/miu.mm which has both zero-length wffs and a single uncompressed proof at the end of the file where out-of-bounds errors hit the EOF.
If you had code like:
Then you could replace this code which assumes compressed proofs:
with:
The text was updated successfully, but these errors were encountered: