lean2/library
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
..
algebra fix(library/tc_multigraph): avoid name collisions 2016-02-04 13:15:42 -08:00
data fix(library/tc_multigraph): avoid name collisions 2016-02-04 13:15:42 -08:00
examples chore(examples/ex): move example to library 2015-05-13 17:07:10 -07:00
init feat(init/logic): add cast_heq 2016-01-13 14:18:01 -08:00
logic refactor(library): move 'cast' to init folder 2016-01-13 11:17:42 -08:00
theories fix(library/tc_multigraph): avoid name collisions 2016-02-04 13:15:42 -08:00
tools feat(frontends/lean): add simp tactic frontend stub 2015-07-14 09:54:53 -04:00
.gitignore chore(library/.gitignore): update 2014-08-29 10:31:16 -07:00
.project chore(library): add .project file 2014-08-29 10:31:16 -07:00
library.md fix(library/library.md): update and correct information. Fixes #973. 2016-01-24 16:26:58 -08:00
standard.lean refactor(library/*): remove 'Module:' lines 2015-05-23 20:52:23 +10:00