Show implication usage#190
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Each implication page now shows the categories that use this implication in one of their property assignments. This is similar to the feature for content pages added in #189. It highlights how useful the implications are.
This is implemented by checking whether the reason for a property assignment contains a reference to the implication page (these references are inserted by the deduction script). Thus, this is currently not a formal SQL-level relationship, but it should be sufficient for now.
The list is collapsed by default because it can become quite long.
How it looks like
Collapsed
Expanded
Usage
Separate queries have shown that many implications are used very frequently, in particular equivalences that hold by definition (e.g.
Barr-exact_definition). However, there are also implications that are used by only a single category (e.g.equalizers_via_kernels), and sometimes even none at all (e.g.cartesian_closed_thin_criterion).Redundant implications
In the case of an unused implication, this can indicate that the implication is redundant (follows from others). I therefore checked this using the consistency check in the search page (#170). There are 5 non-deduced implications that are currently unused:
accessible_locally_smallcartesian_closed_thin_criterioninfinite_distributive_filtered_criterionstrict_initial_right_criterionthin_finite_product_reductionThe first three are not redundant. The fourth is redundant and has been removed. The fifth is also redundant, but has been kept because its derivation from other implications is somewhat non-trivial.
Removing redundant implications in general is part of #16.
Functors
The same adjustment has also been made for functor implication pages. Unsurprisingly, since the database currently contains only six functors, many functor implications are still unused.