Leonardo de Moura
30cea2dceb
fix(frontends/lean): auxiliary bind-application in do-notation was not allowing us to obtain type information for the monadic actions.
...
The new test exposes the problem.
2017-01-12 18:38:31 -08:00
Leonardo de Moura
df91ae3738
fix(library/string,library/init/data/to_string): handle ASCII control characters
2017-01-11 23:44:33 -08:00
Sebastian Ullrich
83bddce900
feat(frontends/lean/info_manager,shell/server,emacs/lean-type): info: provide more metadata
...
* docs: attributes, options, identifiers
* location: attributes, imports
2017-01-11 15:29:14 +01:00
Leonardo de Moura
e256022746
chore(library/init/meta/tactic): avoid the weird 'command' type when auto completing tactics
2017-01-10 14:59:10 -08:00
Sebastian Ullrich
ed4275ae17
fix(frontends/lean/builtin_cmds): do not complete after namespace
...
Most identifiers used with the command are not namespaces yet
2017-01-10 14:42:48 -08:00
Sebastian Ullrich
8eb39bb982
fix(frontends/lean/parser): catch exceptions thrown by sync_command
2017-01-10 14:42:48 -08:00
Leonardo de Moura
4f0f989e6f
fix(tests/lean/interactive): expected output
...
@kha The following three tests were broken on my machine. The new
produced output looked correct. So, I updated the expected output files.
Is this ok?
see #1296
2017-01-10 09:05:44 -08:00
Sebastian Ullrich
cc3126e944
feat(frontends/lean,library/scoped_ext,shell): complete namespaces
2017-01-10 12:25:33 +01:00
Sebastian Ullrich
b04df04120
feat(frontends/lean): rework and simplify completion parsing, enabling completion of empty prefixes
2017-01-10 12:25:33 +01:00
Sebastian Ullrich
7ef1bd1a15
chore(tests/lean/interactive): simplify input format and test full completion output
2017-01-10 12:25:33 +01:00
Sebastian Ullrich
7040844f9a
feat(frontends/lean/parser,shell): complete imports
2017-01-06 14:02:31 -08:00
Sebastian Ullrich
3136f36ed6
fix(frontends/lean/parser): complete after periods trailing identifiers
2017-01-06 14:02:31 -08:00
Sebastian Ullrich
4552fc13f2
chore(tests): add tests for goal at pos
2016-12-27 21:41:02 -08:00
Sebastian Ullrich
b10ebade8c
chore(tests/lean/interactive/test_single): ignore progress responses
2016-12-27 10:07:34 -08:00
Sebastian Ullrich
c9a8c02fdc
feat(emacs,frontends/lean/parser,shell/server): more accurate info command using server-side parsing
2016-12-27 10:07:34 -08:00
Leonardo de Moura
a358ea32ac
fix(tests/lean/interactive): remove local paths
2016-12-20 12:46:10 -08:00
Leonardo de Moura
c9e0727ac0
fix(tests/lean/interactive/info1): fix test
2016-12-20 12:32:21 -08:00
Gabriel Ebner
f9a61b2b29
fix(tests/lean/interactive): fix test
2016-12-20 10:15:19 -08:00
Sebastian Ullrich
00b8c2ca81
feat(frontends/lean/elaborator): save info on field of field expression
2016-12-18 23:48:50 -08:00
Leonardo de Moura
1cfef1c6d9
fix(frontends/lean/parser): save next_inst_idx in the parser snapshot
...
This fixes issues with anonymous instances in sections.
In Emacs, we would get spurious error messages such as:
invalid parameter/variable declaration, '_inst_1' has already been declared
This commit also adds a regression test for the problem.
2016-12-18 23:39:28 -08:00
Gabriel Ebner
45d0525e52
feat(shell,emacs): new lean server protocol
2016-12-06 17:14:29 -08:00
Gabriel Ebner
3b2bb854be
fix(tests/lean/interactive/test_single): do not use deprecated realpath command
...
The realpath executable is not installed by default on ubuntu. Also
contains a fix for macOS where the default readlink executable does not
understand -f. The ./readlinkf.sh script does not work for directories
either.
2016-12-02 17:01:58 -08:00
Leonardo de Moura
ffcb9f240e
fix(tests/lean/interactive/test_single): MSYS2 compatibility
2016-12-01 11:55:55 -08:00
Gabriel Ebner
a8df381d20
feat(*): parallel compilation
2016-11-29 11:12:40 -08:00
Leonardo de Moura
922d48524b
fix(frontends/lean): fixes #1188
...
This commit also adds support for recording the type of local variables
in the info_manager
2016-11-10 15:08:25 -08:00
Sebastian Ullrich
ef633abec7
chore(*): fix test and style
2016-11-08 08:37:41 -08:00
Sebastian Ullrich
1f9554a014
refactor(frontends/lean/info_manager): always pass column in requests
2016-11-08 08:37:41 -08:00
Sebastian Ullrich
ba1b6165e3
feat(frontends, shell): implement basic server 'info' command
2016-11-08 08:37:41 -08:00
Leonardo de Moura
e98340ddae
chore(tests/lean/interactive): remove "interactive" tests
...
In Lean3, we will not use the --server option anymore
2016-09-19 17:20:44 -07:00
Leonardo de Moura
928d567a3f
chore(tests/lean): providing universes
2016-09-17 12:54:20 -07:00
Sebastian Ullrich
fd2c42a8bf
chore(library, tests): switch to new attribute declaration syntax
...
sed -Ei 's/^(\s*)((private |protected )?(noncomputable )?(abbreviation|definition|meta_definition|theorem|lemma|proposition|corollary)\s+\S+\s*)((\s*\[(\S+(\s+[0-9]+)*|priority.*)\])+)\s*/\1attribute \6\n\1\2/' library/**/*.lean tests/**/*.lean
sed -Ei 's/\s+$//' library/**/*.lean # remove trailing whitespace
2016-08-12 15:36:12 -07:00
Leonardo de Moura
e0e5a84f84
chore(tests/lean): adjust tests
2016-07-23 12:48:35 -07:00
Leonardo de Moura
6893ddc11c
chore(tests/lean/interactive/alias): fix test expected output
2016-06-27 14:37:18 +01:00
Leonardo de Moura
583a55c7c3
refactor(library): move 'none', 'some', 'tt', 'ff' to top-level
2016-06-25 12:39:19 -07:00
Leonardo de Moura
4f7f59e47f
chore(tests/lean): fix tests output
2016-06-20 11:18:16 -07:00
Leonardo de Moura
4b022fea01
chore(tests/lean): fix/disable tests
2016-06-10 18:29:41 -07:00
Leonardo de Moura
384e8bf7bf
refactor(library): remove unifier_plugin
2016-03-21 17:57:53 -07:00
Leonardo de Moura
2c70ca83a8
refactor(frontends/lean/calc): remove '{}' notation for eq.subst in calc mode
2016-03-03 14:18:20 -08:00
Leonardo de Moura
4a43e33d45
chore(*): disable big chunk of the standard library and tests
2016-03-03 13:43:08 -08:00
Leonardo de Moura
d84a20d68b
remove(frontends/lean/server): FINDG command
2016-03-03 10:12:24 -08:00
Leonardo de Moura
ac9d6c2021
refactor(library/data/bool): cleanup bool proofs and fix bxor definition
2016-01-01 13:52:42 -08:00
Leonardo de Moura
54f2c0f254
feat(library/blast/forward): inst_simp should use the left-hand-side as a pattern (if none is provided by the user)
...
The motivation is to reduce the number of instances generated by ematching.
For example, given
inv_inv: forall a, (a⁻¹)⁻¹ = a
the new heuristic uses ((a⁻¹)⁻¹) as the pattern.
This matches the intuition that inv_inv should be used a simplification
rule.
The default pattern inference procedure would use (a⁻¹). This is bad
because it generates an infinite chain of instances whenever there is a
term (a⁻¹) in the proof state.
By using (a⁻¹), we get
(a⁻¹)⁻¹ = a
Now that we have (a⁻¹)⁻¹, we can match again and generate
((a⁻¹)⁻¹)⁻¹ = a⁻¹
and so on
2015-12-31 20:20:39 -08:00
Sebastian Ullrich
2185ee7e95
feat(library/tactic): make let tactic transparent, introduce new opaque note tactic
...
The new let tactic is semantically equivalent to let terms, while `note`
preserves its old opaque behavior.
2015-12-14 10:14:02 -08:00
Leonardo de Moura
e3a35ba4fd
feat(frontends/lean): add 'with_attributes' tactical
...
closes #494
2015-12-13 18:27:44 -08:00
Leonardo de Moura
a507ac8594
test(tests/lean/interactive/findp): remove test that breaks whenever we revise init/logic.lean
...
closes #888
2015-12-10 10:11:55 -08:00
Leonardo de Moura
b36ce49f2b
fix(tests,doc): adjust tests to changes in the standard library
2015-12-05 23:52:16 -08:00
Leonardo de Moura
2edf91ce42
fix(tests/lean/interactive/findp): broken test output
2015-12-04 08:40:21 -08:00
Leonardo de Moura
989a2e077b
fix(tests/lean): adjust tests
2015-11-22 17:15:28 -08:00
Leonardo de Moura
c280ddb2b0
fix(tests,doc): adjust tests and documentation
2015-11-20 17:03:17 -08:00
Leonardo de Moura
e580e6cdb1
fix(tests/lean/interactive/findp): adjust test
2015-11-18 10:10:46 -08:00