Highlight ancestors and descendants in transformation mode#164
Highlight ancestors and descendants in transformation mode#164etiennecallies wants to merge 4 commits into
Conversation
|
Works rather fast. Can be tested on preprod @lionelvaux @olaure01 |
|
Excellent job! Two complaints:
And one thing that should be discussed: currently, a formula (say A⊗B) is considered as ancestor of each of its subformulas (say A) above the corresponding rule (say the ⊗ rule). Maybe it would be better if we could highlight only the corresponding subformulas (say A inside A⊗B). This would allow to distinguish between the two cut free proofs of A⊗A⊸A⊗A for instance. |
|
Thanks @lionelvaux for your comments !
Do we want a special option like "highlight ancestors" that would be available to toggle on/off both in construction and transformation mode? Or do we want the ancestors highlighting to be always on?
I see one issue: we want the connectives to be clickable (for example reversible connectives to be applied first). So I would rather keep the highlighting for connectives, but we can underline ancestors instead. Let me try that and show you.
Would be painful to implement at subformula level... You can hover the subformula in the premisse of the tensor rule in your example, isn't it enough? |
ea4caf2 to
a44986e
Compare
|
Underline instead of hightlight can be tested on preprod @lionelvaux don't hesitate to propose other UI possibilities it is very easy to implement. |
Very nice. This version is less distracting than the highlighted one and it is a good thing to distinguish visually between ancestry relations and clickable connectives. The only other visual rendering of ancestry I can think of is actually drawing the tree over the proof (i.e. drawing a line from each formula to its predecessor), but I guess this would require more than CSS tricks. |
A toggle would be nice, because moving the mouse over the proof makes information flash all over the place and it might distract the attention of the user.
It isn't. Here are two proofs, that should be distinct: Currently there is no way to distinguish between them (i.e. there is no way to know which subformula of A^&A^ is involved, e.g., in the axiom on the left) other than exporting to Coq and looking at the permutation rule. |
|
There is apparently a bug in: |
|
My fix doesn't work, I need to review the way we handle implicit permutation on javascript side. |
Implements #18