summaryrefslogtreecommitdiff
path: root/backends/lean/Base/Primitives (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'main' into option-takeSon Ho2024-04-251-0/+15
|\
| * feat(backends/lean): scalars form a linear orderRyan Lahfa2024-04-231-0/+15
| | | | | | | | | | | | | | More than c1c33de8, actually, scalars form a linear order with a decidable ≤ operation which is induced by the integer (Z) model. Signed-off-by: Ryan Lahfa <ryan.lahfa@inria.fr>
* | compiler: map `core::mem::swap` to the pure swapRyan Lahfa2024-04-241-0/+2
| | | | | | | | | | | | | | | | | | In the pure functional model, `swap` is mostly about borrow checking and should simplify to the pure swap in our backends. Other backends than Lean are not done in this commit. Signed-off-by: Ryan Lahfa <ryan.lahfa@inria.fr>
* | compiler: map `core::option::Option::take` to identity functionRyan Lahfa2024-04-171-0/+2
|/ | | | | | | | `take` in a pure functional model is the identity function and everything related to borrow checking is handled by the forward/backward mechanism. Signed-off-by: Ryan Lahfa <ryan.lahfa@inria.fr>
* lean: scalars form a preorderRyan Lahfa2024-04-121-0/+10
| | | | | | | | | | Via the canonical injection, we can easily define an induced preorder on scalars and inherit all nice properties. It's useful to reason on specific scalar preorders w.r.t. Ordering, see the binary search tree verification example. Signed-off-by: Ryan Lahfa <ryan.lahfa@inria.fr>
* Add more definitions to the Lean librarySon Ho2024-04-124-0/+127
|
* Reorganize the files in the Lean backend a bitSon Ho2024-04-124-241/+265
|
* Start adding integer functions to the Lean librarySon Ho2024-04-122-2/+265
|
* Fix a proofSon Ho2024-04-121-1/+0
|
* Update the core.num.checked_* definitionsSon Ho2024-04-121-31/+233
|
* Merge branch 'son/clean' into checked-opsSon Ho2024-04-116-138/+144
|\
| * Merge remote-tracking branch 'origin/main' into son/cleanSon Ho2024-04-114-8/+16
| |\
| | * Update the lean toolchain and fix the proofsSon Ho2024-04-053-5/+2
| | |
| | * Fix the coerce notation for scalars and update some lemmasSon Ho2024-04-041-4/+15
| | |
| * | Rename Result.ret as Result.ok in the backendsSon Ho2024-04-045-130/+128
| |/
* / Add builtins for some checked ops such as checked_addZyad Hassan2024-04-031-0/+29
|/
* Fix a minor issueSon Ho2024-03-181-1/+3
|
* Regenerate the constants tests and update Primitives/Base.leanSon Ho2024-03-181-1/+1
|
* Update the generation of constant bodies for LeanSon Ho2024-03-081-2/+2
|
* Update the tuples notationsSon Ho2024-03-081-51/+0
|
* Remove some commentsSon Ho2024-03-081-31/+0
|
* Update the handling of notations like #u32 or #isizeSon Ho2024-03-083-69/+103
|
* Update the notation for heterogeneous negationSon Ho2024-03-081-3/+12
|
* Introduce a notation for constant scalars in match patternsSon Ho2024-03-071-0/+29
|
* Add a notation for tuple field accesses in LeanSon Ho2024-03-071-0/+51
|
* Cleanup a bit Scalar.leanSon Ho2024-02-091-198/+198
|
* Fix more proofsSon Ho2024-02-022-2/+2
|
* Fix more proofsSon Ho2024-02-021-56/+55
|
* Add some lemmas to the Lean backendSon Ho2024-01-271-4/+14
|
* Improve the Lean backendSon Ho2024-01-262-0/+18
|
* Fix minor issuesSon Ho2023-12-221-0/+42
|
* Fix the models for core::mem::replaceSon Ho2023-12-221-1/+1
|
* Update the Lean standard librarySon Ho2023-12-225-81/+38
|
* Update the extraction to handle casts between integers/boolsSon Ho2023-12-131-0/+4
|
* Update the progress tactic to use discrimination treesSon Ho2023-12-081-63/+63
|
* Merge branch 'main' into son_fixes2Son Ho2023-12-058-453/+843
|\
| * Add support for more bitwise operations and update the extractionSon Ho2023-11-291-2/+40
| |
| * Update more namesSon Ho2023-11-211-16/+16
| |
| * Update the standard librariesSon Ho2023-11-213-26/+25
| |
| * Update the failing proofsSon Ho2023-11-091-4/+22
| |
| * Make progress on fixing the extractionSon Ho2023-10-261-64/+64
| |
| * Make progress on fixing the extraction for LeanSon Ho2023-10-261-114/+50
| |
| * Make the hashmap files typecheck again in LeanSon Ho2023-10-253-32/+105
| |
| * Fix some issues at extraction and add builtinsSon Ho2023-10-256-21/+204
| |
| * Handle properly the builtin, non fallible functionsSon Ho2023-10-241-2/+2
| |
| * Fix minor issuesSon Ho2023-10-241-2/+2
| |
| * Add definitions in for the Lean Primitives librarySon Ho2023-10-242-0/+55
| |
| * Merge branch 'main' into son_traits and fix some issuesSon Ho2023-10-161-28/+198
| |\
| * | Improve formatting of scalars in LeanSon Ho2023-10-161-0/+15
| | |
| * | Add supSon Ho2023-10-131-0/+9
| | |