Skip to content
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

Layout graph from proof #21

Open
nomeata opened this issue Sep 20, 2015 · 3 comments
Open

Layout graph from proof #21

nomeata opened this issue Sep 20, 2015 · 3 comments
Labels

Comments

@nomeata
Copy link
Owner

nomeata commented Sep 20, 2015

With the new Schieblehre blocks, it is possible to lay out proofs so that all edges go from left to right. With this in mind, is it realistic to automatically layout a proof? Doesn’t have to be perfect, but would be useful to clean up completely messy proofs, or to be able to load proofs into the UI.

So the task here would be to turn a proof object into a graph, assigning position to the cells, and for those Schieblehre blocks, the width. I guess the code would be realtively hackish, as it would have to “know” what proof elements can be shown as a Schieblehre etc..

@nomeata
Copy link
Owner Author

nomeata commented May 20, 2016

This would solve the ITP reviewers suggestion:

You can do a better job of displaying the proofs. I know it
requires a lot of engineering, but it is easy when playing the
game for connections to overlap, which makes it harder to
understand how blocks are connected.

@mikeshulman
Copy link

mikeshulman commented Sep 28, 2024

I would really like it if all edges always went from left to right. In fact, I would like it if the UI only allowed you to draw edges that go from left to right. This is particularly true for "hypothesis" edges coming from →I and ∨E: I worry that when my students pull those edges back to go into some other block way to the left, they haven't fully internalized the idea that the hypothesis is only available "within" the sub-proof. In line with that, it would also be really nice if the stretchy →I and ∨E blocks automatically resized to include everything "inside" them.

@nomeata
Copy link
Owner Author

nomeata commented Sep 28, 2024

If the underlying JointJS library might allow that somehow, then it's plausible?

Back then I intentionally didn't forbid all bad wirings, to allow experimentation. But I'm not saying that that was the right didactic choice :-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants