Leonardo de Moura
32e6442d0a
feat(frontends/lean): no global universes in the frontend
2017-02-08 17:23:04 -08:00
Leonardo de Moura
41bf46dbba
chore(library/init): adjust Sort vs Type in definitions
2017-01-30 12:50:18 -08:00
Leonardo de Moura
77a9feaf70
refactor(frontends/lean): PType ==> Sort
...
see #1341
2017-01-30 11:54:00 -08:00
Leonardo de Moura
bf9f7560f7
feat(frontends/lean): (Type u) can't be a proposition
...
(Type u) is the old (Type (u+1))
(PType u) is the old (Type u)
Type* is the old (Type (_+1))
PType* is the old Type*
The stdlib can be compiled, but we still have > 70 broken tests
See discussion at #1341
2017-01-30 11:54:00 -08:00
Leonardo de Moura
3f124f1a15
feat(library/init/logic): add decidable instance for ite and dite
2017-01-26 18:42:46 -08:00
Jeremy Avigad
2b6487065c
feat(library/init/logic): make iff a structure
2017-01-22 14:19:00 -08:00
Leonardo de Moura
8e76d079d3
chore(tests/lean/run): fix tests
2017-01-17 15:50:54 -08:00
Leonardo de Moura
d2e393c779
feat(library/init/logic): allow exists.intro to be used in pattern matching
2017-01-12 16:03:01 -08:00
Leonardo de Moura
5e3f26ec95
feat(library/tactic/smt/congruence_closure): propagate not_exists
2017-01-06 14:00:36 -08:00
Leonardo de Moura
9b35adfc8c
feat(library/tactic/congruence/congruence_closure): add support for constructor equalities
2016-12-25 12:47:17 -08:00
Leonardo de Moura
b1b694a532
fix(library/tactic/congruence/congruence_closure): bugs, and add basic cc tactic
2016-12-23 19:30:45 -08:00
Leonardo de Moura
48cd421852
feat(library/tactic/congruence): add congruence closure basics
2016-12-21 20:46:25 -08:00
Jeremy Avigad
da6dfa6fdd
feat(library/init/logic): alternative theorem names, and make some arguments explicit
2016-12-08 07:19:38 -08:00
Leonardo de Moura
e423588463
refactor(library/init): merge some files
2016-12-02 16:13:45 -08:00
Daniel Selsam
19596eae77
fix(library/init/logic.lean): if_true and if_false take instance as implicit instead of inst_implicit
2016-11-21 12:27:40 -08:00
Leonardo de Moura
c816b80855
chore(*): don't use upper case letter for type variables, and camelCase for declarations
2016-11-17 14:54:08 -08:00
Leonardo de Moura
99299d1915
feat(library/tactic/simplify): use propext in rewriting rules when simplify_config.use_axioms is tt
2016-10-19 17:59:01 -07:00
Leonardo de Moura
4d52de6f33
refactor(library/tactic/simplify): add simplify subclasses, and use new simplifier at nested
2016-10-18 16:18:25 -07:00
Leonardo de Moura
4500c3ecfe
feat(library/init/logic): lemmas for rewriting let-exprs
2016-10-15 17:23:18 -07:00
Leonardo de Moura
476684a284
refactor(library,library/tactic/defeq_simplifier): use simp_lemmas in the defeq_simplifier
2016-10-08 22:15:27 -07:00
Leonardo de Moura
96538ba899
refactor(library/init): add basic order classes
2016-10-02 07:53:37 -07:00
Leonardo de Moura
978f1d1bea
feat(library/init/logic): add universe lifting operation
2016-09-28 11:37:05 -07:00
Leonardo de Moura
d5a28f91cc
refactor(library/init): reorganize files and cleanup notation
2016-09-25 13:37:45 -07:00
Leonardo de Moura
d944d78b1d
feat(frontends/lean/decl_cmds): attribute list must occur immediately after 'attribute' keyword
2016-09-24 18:40:57 -07:00
Leonardo de Moura
e304d778a1
chore(library/init): cleanup
2016-09-24 16:38:39 -07:00
Leonardo de Moura
49cffc0b20
feat(frontends/lean): add compact notation for setting attributes suggested by Sebastian
2016-09-24 15:45:06 -07:00
Leonardo de Moura
d1653abe57
chore(library/init/logic): cleanup
2016-09-24 14:52:18 -07:00
Leonardo de Moura
5957022adb
feat(frontends/lean): add 'class' keyword
2016-09-24 14:32:01 -07:00
Leonardo de Moura
0641f3f714
chore(library/init): cleanup proofs using new elaborator
2016-09-23 17:36:32 -07:00
Leonardo de Moura
f00e6c0a96
feat(frontends/lean): anonymous instances
...
The instance name is synthesized automatically.
2016-09-23 13:34:34 -07:00
Leonardo de Moura
6bfd4eb9cf
feat(frontends/lean): add 'instance' keyword
2016-09-23 12:19:05 -07:00
Leonardo de Moura
7ae778e925
feat(frontends/lean): generalize '~>' notation, and add alias '^.' for '~>'
2016-09-23 08:18:19 -07:00
Leonardo de Moura
2b570e1eae
refactor(frontends/lean): remove old attributes
2016-09-21 14:22:17 -07:00
Leonardo de Moura
b716827206
chore(library/init): uniform style
2016-09-21 09:21:37 -07:00
Leonardo de Moura
8f2c428800
chore(library/init/logic): enforce style
2016-09-21 09:01:24 -07:00
Leonardo de Moura
318ef761d3
feat(frontends/lean): lambda+anonymous_constructor+match notation
2016-09-21 08:49:05 -07:00
Leonardo de Moura
9df712581b
chore(frontends/lean): remove 'new_elaborator' option
2016-09-20 08:32:37 -07:00
Leonardo de Moura
564bcaab94
chore(library/init): cleanup using anonymous constructor
2016-09-19 10:31:43 -07:00
Leonardo de Moura
382928f0fa
fix(library/init/logic): typo
2016-09-18 10:05:55 -07:00
Leonardo de Moura
5e8f2add84
refactor(library/init): use universe variables
2016-09-17 12:25:02 -07:00
Leonardo de Moura
f42afe2b65
feat(frontends/lean/elaborator): [elab_with_expected_type] is the new default strategy
2016-09-15 14:45:52 -07:00
Leonardo de Moura
688178a2ae
chore(library/init/logic): cleanup proofs
2016-09-15 14:21:41 -07:00
Leonardo de Moura
7f5fe55859
fix(library/init/logic): make sure logic.lean compiles with latest changes
2016-09-15 14:09:12 -07:00
Leonardo de Moura
0871b7734c
chore(library/init/logic): remove leftover
2016-09-14 09:47:35 -07:00
Leonardo de Moura
83cc67ba67
feat(frontends/lean/definition_cmds): use . instead of [none] to represent the empty set of equations
2016-09-14 09:38:30 -07:00
Leonardo de Moura
ce53c035bc
feat(frontends/lean/decl_util): use the same notation for declaring universes in mutual and single decls
2016-09-13 21:05:18 -07:00
Leonardo de Moura
20cce8a0f6
feat(frontends/lean/parser): nicer notation for providing universes
2016-09-13 20:41:00 -07:00
Leonardo de Moura
06de4d156a
refactor(library/init/logic): port to new elaborator
2016-09-13 16:36:09 -07:00
Leonardo de Moura
24049d8f40
refactor(library/init/logic): rename decidable.tt/ff to decidable.is_true/is_false
2016-09-13 13:40:02 -07:00
Leonardo de Moura
d79fbee421
fix(frontends/lean/elaborator): visit_app_with_expected
...
Mark ite and dite with elab_with_expected_type.
2016-09-12 16:48:21 -07:00