Commit graph

261 commits

Author SHA1 Message Date
Leonardo de Moura
9901898258 feat: add Nat.gcd
This commit also fix some theorem names to new naming convention.
2021-03-07 18:47:02 -08:00
Joe Hendrix
9bd60c7519 feat: Nat/Fin/UInt instances of bitwise classes 2021-03-04 15:42:43 -08:00
Leonardo de Moura
4aec7579db test: add do equivalence examples 2021-03-03 13:44:30 -08:00
Leonardo de Moura
228bc2dd54 refactor: Traversable => ForM 2021-03-02 06:22:22 -08:00
Leonardo de Moura
35e1f5ad97 refactor: Foldable => Traversable 2021-02-28 16:11:20 -08:00
Leonardo de Moura
9d9f14cd5e chore: mark List.foldlM as protected 2021-02-28 09:14:37 -08:00
Leonardo de Moura
ef4d5950ae feat: add Foldable typeclass
We use it in the "`do` unchained" paper.
It will eventually replace `ForIn`.
2021-02-28 09:00:52 -08:00
Leonardo de Moura
b9ef6f89a4 chore: cleanup 2021-02-26 19:34:39 -08:00
Leonardo de Moura
5662e2e745 refactor: move ToString Syntax and BEq Syntax to Init 2021-02-26 13:21:04 -08:00
Leonardo de Moura
e1f6965266 feat: allow user to define rewrite lemmas with (local) match expressions 2021-02-19 15:18:19 -08:00
Leonardo de Moura
d1009e8405 chore: add simp lemmas, theorem naming convention 2021-02-16 11:53:49 -08:00
Leonardo de Moura
09ad6cc50a fix: fixes #306 fixes #307 2021-02-06 12:31:51 -08:00
Leonardo de Moura
f57c184dbd chore: remove = true old workarounds
@Kha The old `= true` workarounds are not needed anymore, they were
due to another issue and are not related to yesterday's issue.
That is, the one exposed by the `ForIn` typeclass.
2021-02-05 13:48:03 -08:00
Leonardo de Moura
d0ffecd419 chore: consistency
Make sure `Array.all` and `Array.any` parameter order is similar to
`List.all` and `List.any`.
2021-02-04 20:39:28 -08:00
Leonardo de Moura
53539b1dff chore: use polymorphic method forIn 2021-02-04 18:13:01 -08:00
Leonardo de Moura
aae8a35150 feat: add ForIn type class 2021-02-04 17:59:44 -08:00
Leonardo de Moura
d956f0ae9f feat: use destructTuple to compile for in notation instead of pattern matchin 2021-02-04 17:17:51 -08:00
Leonardo de Moura
768f2642bd chore: document why alternative Stream design does not work 2021-02-04 17:17:51 -08:00
Leonardo de Moura
5f704b6b6f chore: fix option name 2021-01-26 18:30:46 -08:00
Leonardo de Moura
d408c835d2 fix: defaultInstance priorities for Neg Int and OfScientific Float 2021-01-25 13:21:07 -08:00
Sebastian Ullrich
446f953461 feat: allow hygienic capture of section variables in quotations 2021-01-24 11:46:04 -08:00
Sebastian Ullrich
0c91b3769e chore: replace variables in src/ 2021-01-22 14:36:05 +01:00
Leonardo de Moura
1f88d66035 feat: add missing instances 2021-01-21 10:35:22 -08:00
Leonardo de Moura
e8401ea6e7 chore: remove old instances 2021-01-20 18:12:35 -08:00
Sebastian Ullrich
79107a2316 feat: copy & store whole ref range in SourceInfo 2021-01-20 16:48:50 +01:00
Sebastian Ullrich
8ad061e328 feat: leanpkg: change print-path to print-paths that also emit LEAN_SRC_PATH (unused as of yet) 2021-01-19 19:06:01 +01:00
Sebastian Ullrich
d7733ba662 feat: use leanpkg print-path for worker initialization 2021-01-19 19:06:01 +01:00
Wojciech Nawrocki
af04c66e22 chore: comment style in Init.String.Basic 2021-01-15 13:29:22 -08:00
Wojciech Nawrocki
f3ab908888 fix: substring APIs 2021-01-15 13:29:22 -08:00
Andrew Kent
4f6bb1feb6
feat: add Float.ofInt 2021-01-15 15:45:28 +01:00
Christian Pehle
225fae9dc2
feat: add shiftLeft and shiftRight for UInt16 and UInt8
The same operations are implemented for UInt32, UInt64 and USize
already.
2021-01-14 15:30:35 +01:00
Leonardo de Moura
e2773113a9 feat: add Float.neg and casts 2021-01-13 10:26:45 -08:00
Leonardo de Moura
873634be7e feat: hierarchical InfoTree 2021-01-09 14:10:11 -08:00
Leonardo de Moura
d0b8dc128b chore: annotate instance 2020-12-28 17:57:52 -08:00
Leonardo de Moura
539c43e153 fix: typo
closes #238
2020-12-28 15:55:25 -08:00
Sebastian Ullrich
1f563695bb feat: From/ToJson derive handlers 2020-12-26 19:38:24 +01:00
Leonardo de Moura
836fd46d90 feat: add OfNat instance for Fin 2020-12-21 16:38:53 -08:00
Leonardo de Moura
7723953188 chore: use instance (priority := <prio>) 2020-12-21 10:17:54 -08:00
Leonardo de Moura
339a4cf740 chore: remove defaultInstance for ToString 2020-12-19 19:10:42 -08:00
Leonardo de Moura
074259201e feat: add helper classes for implementing parallel for
It is based on an approach suggested by Andrew Kent, and refined by
Sebastian Ullrich.

TODO: expand the the parallel `for`s at `Do.lean`.
2020-12-19 14:15:47 -08:00
Leonardo de Moura
793ffa2f11 feat: add helper class ReprAtom 2020-12-18 14:14:46 -08:00
Leonardo de Moura
b6905f66d6 fix: missing files 2020-12-18 11:47:00 -08:00
Leonardo de Moura
92f0afa424 chore: fix tests 2020-12-18 11:21:30 -08:00
Leonardo de Moura
5f6e66a53f refactor: Repr
Modifications:
- Result type is `Format`
- It takes the context precedence like Haskell `Show`
2020-12-18 11:21:30 -08:00
Leonardo de Moura
2e11c3bdff feat: dependencies 2020-12-18 11:21:30 -08:00
Leonardo de Moura
40bfafdadb refactor: dependencies 2020-12-18 11:21:30 -08:00
Leonardo de Moura
15335efae2 refactor: move Format to Init package
We are going to use it to define `Repr` class.
2020-12-18 11:21:30 -08:00
Leonardo de Moura
67bcff3bc8 chore: use deriving DecidableEq 2020-12-17 17:48:23 -08:00
Leonardo de Moura
7c865e7bd9 feat: sort instances by priority 2020-12-16 10:45:27 -08:00
Leonardo de Moura
fe08b28c7c feat: add Array.insertionSort 2020-12-16 10:45:27 -08:00