Commit 2020-08-26 18:55 080746fd

View on Github →

feat(algebra/category/*/limits): don't rely on definitions (#3873) This is a second attempt (which works much better) at #3860, after @TwoFX explained how to do it properly. This PR takes the constructions of limits in the concrete categories (Add)(Comm)[Mon|Group], (Comm)(Semi)Ring, Module R, and Algebra R, and makes sure that they never rely on the actual definitions of limits in "prior" categories. Of course, at this stage the has_limit typeclasses still contain data, so it's hard to judge whether we're really not relying on the definitions. I've marked all the has_limits instances in these files as irreducible, but the real proof is just that this same code is working over on the prop_limits branch.

Estimated changes