Leonardo de Moura
ea10c5c6fc
feat: add support for reducing Nat basic functions in the kernel
2020-03-17 13:31:57 -07:00
Leonardo de Moura
7a82318d37
fix: to_pattern_fn bug
2020-03-17 12:58:08 -07:00
Leonardo de Moura
9009926e44
fix: nat_* primitives return objects that must be consumed
...
Remove bogus `wrap`.
2020-03-16 19:28:22 -07:00
Leonardo de Moura
97b8d8551d
feat: elaborate nativeRefl! macro
2020-03-16 16:21:51 -07:00
Leonardo de Moura
c10230ec0a
feat: add elabTermAndSynthesize auxiliary method
...
Useful for creating "checkpoints".
2020-03-16 15:37:04 -07:00
Leonardo de Moura
81a7cf50d3
feat: make sure #check and #synth do not modify the environment
2020-03-16 15:36:37 -07:00
Leonardo de Moura
702087c72c
feat: add nativeRefl! macro notation
2020-03-16 14:58:53 -07:00
Leonardo de Moura
94804358fa
chore: better trace message
2020-03-16 14:33:30 -07:00
Leonardo de Moura
adf40096fc
feat: compute ReducibilityHints
2020-03-16 14:33:30 -07:00
Leonardo de Moura
2f3745c594
feat: use shareCommon
2020-03-16 14:33:30 -07:00
Leonardo de Moura
b69c851a5a
feat: add Expr.foldConsts
2020-03-16 14:33:30 -07:00
Leonardo de Moura
0ee6672a77
feat: add NameHashSet
2020-03-16 14:33:21 -07:00
Leonardo de Moura
596a547e57
feat: add helper theorems
2020-03-16 11:17:41 -07:00
Leonardo de Moura
fba18edfa3
feat: add support for Lean.reduceNat and Lean.reduceBool at MetaM isDefEq
2020-03-16 10:58:14 -07:00
Sebastian Ullrich
d7170df527
feat: interpreter: print stacktrace on stack overflow
2020-03-14 15:08:03 -07:00
Sebastian Ullrich
e30717a85a
fix: interpreter::call_boxed on unboxed constants
2020-03-14 15:04:38 -07:00
Leonardo de Moura
2d7ec0b49c
fix: bug at unsafe umapMAux implementation
...
closes #125
2020-03-14 13:41:14 -07:00
Leonardo de Moura
6ad0c2cc18
feat: simplify unsafeCast
2020-03-14 13:10:56 -07:00
Leonardo de Moura
2e6fac2853
feat: add support for reduceBool and reduceNat in the kernel type_checker
2020-03-14 12:13:22 -07:00
Leonardo de Moura
6f9583987d
feat: add reduceBool and reduceNat "hints"
...
TODO: actual implementation at `type_checker.cpp`
2020-03-14 10:57:19 -07:00
Leonardo de Moura
52e2655915
feat: add Kernel.isDefEq
2020-03-14 09:16:46 -07:00
Leonardo de Moura
3e4196a8df
feat: expose kernel is_def_eq
2020-03-14 08:15:58 -07:00
Leonardo de Moura
abf27d843e
feat: synthPending implementation
2020-03-13 13:52:00 -07:00
Leonardo de Moura
174771cdb3
fix: nat lit support
2020-03-13 06:54:33 -07:00
Leonardo de Moura
7bb9638ea6
feat: helper lemmas for equation compiler
2020-03-13 06:39:13 -07:00
Leonardo de Moura
a0090b378b
feat: move Array extensionality theorems to Init
2020-03-13 06:39:13 -07:00
Leonardo de Moura
a8c3322ac8
doc: expand dependent pattern matching support for array literals
2020-03-13 06:39:13 -07:00
Leonardo de Moura
50acb88727
feat: add auxiliary function for matching array literals
2020-03-11 11:57:01 -07:00
Leonardo de Moura
9ad67b6535
chore: remove TODO's
2020-03-11 10:09:34 -07:00
Leonardo de Moura
923036a017
chore: indentation
2020-03-11 10:06:45 -07:00
Leonardo de Moura
357a708ed8
chore: avoid variable, enforce naming convention
...
Motivation: make it clear which definitions depend on `df : Def γ`.
2020-03-11 10:05:25 -07:00
Leonardo de Moura
ae4b18220d
chore: add a few comments
2020-03-11 10:00:52 -07:00
Leonardo de Moura
e08eda81d8
fix: builtin attribute description
2020-03-11 09:54:19 -07:00
Sebastian Ullrich
d460635e2f
refactor: factor out KeyedDeclsAttribute
2020-03-11 08:38:18 -07:00
Sebastian Ullrich
e3920552b0
fix: updating binding info of variables
2020-03-11 07:30:58 -07:00
Sebastian Ullrich
ea85f3a318
fix: make install...
2020-03-11 15:20:56 +01:00
Leonardo de Moura
970ee59fc6
feat: validate given alternatives
2020-03-09 15:39:48 -07:00
Leonardo de Moura
62cb4e7b55
fix: normalize
2020-03-09 15:10:56 -07:00
Leonardo de Moura
f6e534748f
fix: normalize
2020-03-09 15:10:41 -07:00
Leonardo de Moura
36a5738ba5
fix: cases does not need to provide all alternatives
2020-03-09 15:09:51 -07:00
Leonardo de Moura
7393013d8a
feat: use injection to complete cases
2020-03-09 14:48:11 -07:00
Leonardo de Moura
cfbfcf92d6
feat: convert heterogeneous equalities
2020-03-08 18:27:21 -07:00
Leonardo de Moura
7eb6381f68
feat: throw error if unnecessary identifiers are provided
2020-03-08 18:02:20 -07:00
Leonardo de Moura
7cf53b649b
fix: nat literals are constructor applications
2020-03-08 17:44:53 -07:00
Leonardo de Moura
21353d07d5
fix: unassigned universe metavariables should not block instantiation of delayed assignment
2020-03-08 17:31:07 -07:00
Leonardo de Moura
3b84507888
fix: expand show and have using let!
...
Motivation: expected elaboration order is preserved: first type, then
value, and then body.
Motivation: expected type is not lost when elaborating the body.
2020-03-08 16:14:11 -07:00
Leonardo de Moura
354bc450e6
feat: elaborate let!
2020-03-08 16:02:00 -07:00
Leonardo de Moura
d4d4e199bc
chore: remove dead code
2020-03-08 15:52:55 -07:00
Leonardo de Moura
de6fda9b37
feat: add let! notation
...
`let x := v; t` is elaborated into `(fun x => t) v`
2020-03-08 15:49:13 -07:00
Leonardo de Moura
783ca47d1f
fix: typo
2020-03-08 12:22:00 -07:00