lean2/library/data
Leonardo de Moura 42fbc63bb6 fix(library/tc_multigraph): avoid name collisions
@avigad, @fpvandoorn, @rlewis1988, @dselsam

I changed how transitive instances are named.
The motivation is to avoid a naming collision problem found by Daniel.
Before this commit, we were getting an error on the following file
tests/lean/run/collision_bug.lean.

Now, transitive instances contain the prefix "_trans_".
It makes it clear this is an internal definition and it should not be used
by users.

This change also demonstrates (again) how the `rewrite` tactic is
fragile. The problem is that the matching procedure used by it has
very little support for solving matching constraints that involving type
class instances. Eventually, we will need to reimplement `rewrite`
using the new unification procedure used in blast.

In the meantime, the workaround is to use `krewrite` (as usual).
2016-02-04 13:15:42 -08:00
..
examples refactor(library): rename heq.of_eq heq.to_eq auxiliary lemmas 2016-01-09 12:32:18 -08:00
finset refactor(library): cleanup proofs 2016-02-03 19:52:23 -08:00
fintype refactor(library): cleanup proofs 2016-02-03 19:52:23 -08:00
int fix(library/tc_multigraph): avoid name collisions 2016-02-04 13:15:42 -08:00
list feat(data/list): add missing theorems 2016-02-04 11:03:28 -08:00
nat fix(library/tc_multigraph): avoid name collisions 2016-02-04 13:15:42 -08:00
rat fix(library/tc_multigraph): avoid name collisions 2016-02-04 13:15:42 -08:00
real fix(library/tc_multigraph): avoid name collisions 2016-02-04 13:15:42 -08:00
set feat(library/data/{set,finset}): add some useful facts 2016-01-24 16:26:57 -08:00
bag.lean refactor(library): cleanup proofs 2016-02-03 19:52:23 -08:00
bool.lean refactor(library/data/bool): cleanup bool proofs and fix bxor definition 2016-01-01 13:52:42 -08:00
bv.lean refactor(library): remove algebra namespace 2015-12-05 23:50:01 -08:00
complex.lean fix(library/tc_multigraph): avoid name collisions 2016-02-04 13:15:42 -08:00
countable.lean refactor(library/algebra/function): move function.lean to init folder 2015-07-06 07:29:56 -07:00
data.md refactor(library): move basic simp/congr rules to init folder, delete some legacy files 2015-11-20 16:38:10 -08:00
default.lean refactor(library): move basic simp/congr rules to init folder, delete some legacy files 2015-11-20 16:38:10 -08:00
empty.lean feaf(library): make sure basic standard library can be compiled with option "--to_axiom" 2015-07-29 16:11:23 -07:00
encodable.lean refactor(library): remove algebra namespace 2015-12-05 23:50:01 -08:00
equiv.lean refactor(library): cleanup proofs 2016-02-03 19:52:23 -08:00
fin.lean refactor(library): remove algebra namespace 2015-12-05 23:50:01 -08:00
hf.lean feat(library/algebra/group_bigops): add Prod_semigroup, for cases without a unit 2016-01-24 16:26:57 -08:00
hlist.lean feat(frontends/lean): allow anonymous 'have'-expressions in tactic mode 2015-07-23 18:52:59 -07:00
matrix.lean refactor(library): remove algebra namespace 2015-12-05 23:50:01 -08:00
num.lean feat(library): add some spacing hints 2015-09-30 17:36:32 -07:00
option.lean refactor(library): simplify theorems using improved tactics 2015-05-25 10:43:28 -07:00
pnat.lean refactor(library): remove algebra namespace 2015-12-05 23:50:01 -08:00
prod.lean refactor(library): use new 'suppose'-expression 2015-07-19 21:15:20 -07:00
sigma.lean refactor(library): rename heq.of_eq heq.to_eq auxiliary lemmas 2016-01-09 12:32:18 -08:00
squash.lean refactor(library/*): remove 'Module:' lines 2015-05-23 20:52:23 +10:00
stream.lean fix(library/init/function): fix typo 2015-12-22 16:39:13 -05:00
string.lean refactor(library): simplify theorems using improved tactics 2015-05-25 10:43:28 -07:00
sum.lean feat(library): add some spacing hints 2015-09-30 17:36:32 -07:00
tuple.lean refactor(library): rename heq.of_eq heq.to_eq auxiliary lemmas 2016-01-09 12:32:18 -08:00
unit.lean refactor(library/*): do various renamings 2015-05-25 16:50:42 -07:00
uprod.lean refactor(library/algebra/function): move function.lean to init folder 2015-07-06 07:29:56 -07:00