Commit graph

13 commits

Author SHA1 Message Date
Leonardo de Moura
902c1219b0 feat(library/data/rbtree): more find lemmas 2017-11-19 19:49:36 -08:00
Leonardo de Moura
50797c1d05 feat(library/data/rbtree): add specialized lemmas (for strict total orders) 2017-11-18 16:36:58 -08:00
Leonardo de Moura
3134e00341 fix(library/init/algebra/classes): strict_weak_order.equiv should not depend on type class 2017-11-17 17:19:00 -08:00
Leonardo de Moura
7dd70b0ef1 feat(library/init/algebra/classes): add is_strict_total_order type class 2017-11-17 15:06:32 -08:00
Leonardo de Moura
3783eaa6e1 feat(library/init/algebra/classes): add is_trichotomous type class 2017-11-17 13:49:26 -08:00
Leonardo de Moura
7024eddf29 feat(library/init/algebra/classes): add is_incomp_trans type class 2017-11-15 19:08:05 -08:00
Leonardo de Moura
8311ec0afa feat(library/init/algebra/classes): helper lemmas 2017-11-15 18:29:38 -08:00
Leonardo de Moura
394e0d5f0a refactor(library/init): remove has_cmp and is_ordering type classes
Now, `cmp` is just a fixed helper function.
In the future, we will be able to use (more efficient) specialized
versions during code generation by defining simp rules.
2017-11-14 08:33:24 -08:00
Leonardo de Moura
f063824e0a feat(library/init/algebra/classes): add is_total_preorder is_ordering type classes
This commit also adds a lemma relating is_strict_weak_order and total_preorder.
2017-11-13 21:55:22 -08:00
Leonardo de Moura
31461b6fc7 feat(library/init): add ordering unbundled type classes, add has_strict_weak_ordering for cmp
This commit also shows that nat.cmp is an instance of has_strict_weak_ordering.
2017-11-10 16:45:54 -08:00
Leonardo de Moura
55fee26b36 feat(library/class): add attribute for tracking symbols occurring in instances of type classes
For more information see:
https://github.com/leanprover/lean/wiki/Refactoring-structures
The new attribute [algebra] implements the [algebraic_class] described
in the page above.
2017-05-01 18:02:30 -07:00
Leonardo de Moura
74550fbebc feat(library/init/core): add notation for out_param 2017-05-01 13:52:17 -07:00
Leonardo de Moura
e7603df514 feat(library/init/algebra): add type classes for algebraic normalizer 2017-04-18 15:47:38 -07:00