Leonardo de Moura
|
1b15036dba
|
feat(library/definitional): automatically add attribute [unfold-c] to cases_on, brec_on and rec_on
see #496
|
2015-03-27 19:12:17 -07:00 |
|
Leonardo de Moura
|
4ea323a2b2
|
refactor(library/tactic): cleanup common pattern
|
2015-03-12 14:52:41 -07:00 |
|
Leonardo de Moura
|
4edd7b9099
|
fix(library/definitional/equations): allow a function to be the result of a match-with term or recursive definition
|
2015-03-06 15:08:52 -08:00 |
|
Leonardo de Moura
|
11aad4449b
|
feat(frontends/lean): add '[semireducible]' attribute
This commit also renames the elements of reducible_status.
The idea is to use in the C++ implementation the same names used in the
Lean front-end.
|
2015-03-03 10:48:36 -08:00 |
|
Leonardo de Moura
|
5b736a2268
|
feat(frontends/lean): add support for empty match-with expressions
|
2015-02-26 16:36:15 -08:00 |
|
Leonardo de Moura
|
dc2ac92846
|
fix(library/definitional/equations): use whnf on recursive definition arguments
The idea is to expose "hidden" datatypes.
|
2015-02-23 22:27:30 -08:00 |
|
Leonardo de Moura
|
7205382f8c
|
feat(library/definitional/projection): add "unfold-c" hint to projections
|
2015-02-06 12:39:57 -08:00 |
|
Leonardo de Moura
|
420da8fd3f
|
feat(library/projection): store bit saying whether a projection is for a class or not.
|
2015-02-04 08:54:20 -08:00 |
|
Leonardo de Moura
|
c92f3bec65
|
refactor(library/definitional/projection): move projection "database" to library/projection
|
2015-02-04 07:18:43 -08:00 |
|
Leonardo de Moura
|
dbc8e9e13a
|
refactor(*): add method get_num_univ_params
|
2015-01-28 17:22:18 -08:00 |
|
Leonardo de Moura
|
27f6bfd3f0
|
refactor(*): add file constants.txt with all constants used by the Lean binary
|
2015-01-23 16:50:32 -08:00 |
|
Leonardo de Moura
|
880faf89e0
|
feat(frontends/lean/structure_cmd): add implicit_infer_kind annotation to structure command
closes #354
|
2015-01-21 18:12:29 -08:00 |
|
Leonardo de Moura
|
1d6ff5f761
|
feat(library/definitional/projection): throw exception if unsupported case occurs
The user can workaround it by using trust-level 0 (i.e., no option -t num or -T)
|
2015-01-20 17:42:34 -08:00 |
|
Leonardo de Moura
|
01ce57e52e
|
feat(library/definitional/projection): add projection macro
|
2015-01-20 16:21:50 -08:00 |
|
Leonardo de Moura
|
8355ed55d7
|
refactor(library/definitional/projection): remove dead code
|
2015-01-20 13:40:09 -08:00 |
|
Leonardo de Moura
|
d0e9e0e21c
|
feat(library/definitional/projection): add auxiliary function for simplifying expressions containing projections and constructors
|
2015-01-18 20:58:40 -08:00 |
|
Leonardo de Moura
|
858d21f20b
|
feat(library/definitional/projection): store projection information
|
2015-01-18 16:26:56 -08:00 |
|
Leonardo de Moura
|
ef529c660f
|
fix(library/definitional/no_confusion): mark no_confusion as reducible
Auxiliary definitions should be marked as reducible
|
2015-01-13 18:44:47 -08:00 |
|
Leonardo de Moura
|
e9338669dc
|
feat(library/definitional/equations): show implicit arguments (by default) in equations compiler error messages
|
2015-01-13 13:30:12 -08:00 |
|
Leonardo de Moura
|
e5a8c67d22
|
fix(library/definitional/equations): assertion violation
|
2015-01-13 11:57:14 -08:00 |
|
Leonardo de Moura
|
a3bc1b0cd5
|
fix(library/definitional/equations): add more equation validation to avoid obscure error message
|
2015-01-09 18:52:21 -08:00 |
|
Leonardo de Moura
|
698754b2bb
|
feat(library/definitional/equations): display elaborated equation lhs's when there are missing cases
|
2015-01-08 12:00:47 -08:00 |
|
Leonardo de Moura
|
5c118127ae
|
fix(library/definitional/equations): memory access violation
|
2015-01-07 17:06:41 -08:00 |
|
Leonardo de Moura
|
15b5344626
|
feat(library/definitional/equations): copy tags
|
2015-01-07 14:00:46 -08:00 |
|
Leonardo de Moura
|
760dc2162a
|
chore(library/definitional/equations): cleanup
|
2015-01-06 14:53:21 -08:00 |
|
Leonardo de Moura
|
a3a6697f44
|
feat(library/definitional/equations): mutually recursive functions for mutually recursive datatypes
|
2015-01-06 14:07:17 -08:00 |
|
Leonardo de Moura
|
322cdb8a98
|
feat(library/definitional/equations): add 'equations_result' macro used to wrap multiple functions being defined by recursive equations
This is only useful when compiling "mutually recursive" functions.
|
2015-01-05 19:09:20 -08:00 |
|
Leonardo de Moura
|
3325d791de
|
fix(library/definitional/equations): bug in recursive application elimination
|
2015-01-05 17:17:14 -08:00 |
|
Leonardo de Moura
|
eedc31f7e9
|
fix(library/definitional/equations): bug in "complete" transition
|
2015-01-05 16:27:29 -08:00 |
|
Leonardo de Moura
|
3889b60152
|
feat(library/definitional/equations): allow inductive datatype parameters in recursive equations
|
2015-01-05 15:56:28 -08:00 |
|
Leonardo de Moura
|
6eba4b4ac1
|
chore(library/definitional/equations): cleanup
|
2015-01-05 13:57:13 -08:00 |
|
Leonardo de Moura
|
b46c377aa2
|
feat(library/definitional/equations): add "complete" transition for overlapping patterns
|
2015-01-05 11:49:27 -08:00 |
|
Leonardo de Moura
|
fdef3e5407
|
feat(library/definitional/equations): add support for reflexive datatypes in the definitional package
|
2015-01-05 11:13:35 -08:00 |
|
Leonardo de Moura
|
5e228d92d2
|
fix(library/definitional/equations): missing case
|
2015-01-04 20:49:53 -08:00 |
|
Leonardo de Moura
|
faf78ce3e6
|
feat(library/definitional/equations): brec_on compilation
|
2015-01-04 17:45:13 -08:00 |
|
Leonardo de Moura
|
926c140e17
|
fix(library/definitional/equations): fix clang compilation problems
|
2015-01-04 10:18:19 -08:00 |
|
Leonardo de Moura
|
bdfa919098
|
feat(library/definitional/equations): add brec_on based compilation
|
2015-01-03 22:23:37 -08:00 |
|
Leonardo de Moura
|
376126241e
|
fix(library/definitional/equations): typo and bug
|
2015-01-03 15:29:34 -08:00 |
|
Leonardo de Moura
|
21a9cd58a3
|
fix(library/definitional/equations): bug when compiling in proof relevant kernels
|
2015-01-02 23:17:33 -08:00 |
|
Leonardo de Moura
|
7f7d318b22
|
feat(library/definitional/equations): add dependent pattern matching compilation
|
2015-01-02 22:06:40 -08:00 |
|
Leonardo de Moura
|
8939351903
|
refactor(library): add compile_equations function, generic_exception, and cleanup elaborator_exception
|
2014-12-15 19:22:17 -08:00 |
|
Leonardo de Moura
|
b8f665e561
|
feat(frontends/lean): elaborate recursive equations
Remark: we are not compiling them yet.
|
2014-12-10 22:25:40 -08:00 |
|
Leonardo de Moura
|
bf875d5778
|
feat(library/definitional/equations): add support for inaccessible patterns
|
2014-12-10 12:35:08 -08:00 |
|
Leonardo de Moura
|
d98aabe9ab
|
refactor(library): move library/definitional/util module to library
|
2014-12-10 11:23:23 -08:00 |
|
Leonardo de Moura
|
58432d0968
|
feat(library/definitional): add no_confusion construction that is compatible with the HoTT library
|
2014-12-08 22:11:48 -08:00 |
|
Leonardo de Moura
|
2bb51554d5
|
feat(library/definitional/util): add telescope equality for HoTT library
This is needed for implementing no_confusion for HoTT.
We can't use heterogeneous equality in HoTT.
|
2014-12-07 18:35:55 -08:00 |
|
Leonardo de Moura
|
6736f58548
|
refactor(library/definitional/util): cleanup
|
2014-12-07 16:41:28 -08:00 |
|
Leonardo de Moura
|
c8d8e7ac93
|
chore(library/definitional/equations): fix style
|
2014-12-04 16:00:33 -08:00 |
|
Leonardo de Moura
|
e267b2d120
|
feat(library/definitional/equations): add support for serializing equations
|
2014-12-04 15:11:18 -08:00 |
|
Leonardo de Moura
|
1d401ad862
|
feat(library/definitional): add "datastructure" for storing recursive equations
|
2014-12-04 12:39:59 -08:00 |
|