Denis Merigoux
cdac6de9fe
Implement the round money builtin
2022-03-17 12:30:14 +01:00
Denis Merigoux
5663c616fd
Merge pull request #230 from CatalaLang/afromher_z3_2
...
[Z3encoding] Extend support for enumerations
2022-03-16 12:22:51 +01:00
Denis Merigoux
9b35cfcf7d
Merge branch 'master' into afromher_z3_2
2022-03-16 12:18:01 +01:00
Denis Merigoux
c47ce263b5
Merge pull request #228 from CatalaLang/afromher_z3
...
[Z3encoding] Basic support for arrays
2022-03-16 12:17:31 +01:00
Denis Merigoux
041d47bf06
Merge pull request #229 from CatalaLang/fix_just_logging
...
Fix logging operator location for default justifications
2022-03-16 12:05:02 +01:00
Aymeric Fromherz
cb36b9d72f
[Z3backend] Bad unit tests for EInj node
2022-03-16 12:04:31 +01:00
Aymeric Fromherz
d758170cde
[Z3backend] Good unit tests for EInj node
2022-03-16 12:03:24 +01:00
Aymeric Fromherz
97c0211bdc
[Z3encoding] Support for unit literal
2022-03-16 12:01:21 +01:00
Denis Merigoux
bba5e3afea
Only print logging in Scopelang if debug
2022-03-16 12:00:36 +01:00
Aymeric Fromherz
b00d270df7
[Z3backend] Add support for EInj nodes
2022-03-16 12:00:19 +01:00
Denis Merigoux
c59451751b
Fix logging operator location for default justifications
2022-03-16 11:44:34 +01:00
Aymeric Fromherz
e3f3704be9
comment typo
2022-03-16 11:35:13 +01:00
Aymeric Fromherz
148afda523
Counterexamples generation for arrays
2022-03-16 11:28:03 +01:00
Aymeric Fromherz
bb57abf750
Negative tests for array length encoding
2022-03-16 11:23:36 +01:00
Aymeric Fromherz
123541dc34
Add positive test for array length
2022-03-16 11:21:54 +01:00
Aymeric Fromherz
fb6c18763f
Fix encoding of hypotheses into Z3
2022-03-16 11:20:20 +01:00
Aymeric Fromherz
f6ad6bbd2f
Encode that an array length is always positive
2022-03-15 18:52:02 +01:00
Aymeric Fromherz
fb924c50e5
Encode the length of arrays into Z3
2022-03-15 18:43:11 +01:00
Denis Merigoux
f3cf8ae3e4
Merge pull request #227 from CatalaLang/afromher_z3
...
Proof platform: Better error message when Z3 encoding not supported, and extend GetYear support
2022-03-15 18:14:50 +01:00
Aymeric Fromherz
4b1ace2739
[Z3Backend] Support GetYear equality comparison
2022-03-15 18:09:56 +01:00
Aymeric Fromherz
d760d883a6
[Z3encoding] Print variable name when encoding is not supported
2022-03-15 18:09:33 +01:00
Denis Merigoux
ecdd3dfaef
Merge pull request #225 from CatalaLang/fix-nix/alcotest+patch
...
Fix nix/alcotest+patch
2022-03-11 18:26:32 +01:00
lIlIlIlIIIIlIIIllIIlIllIIllIII
3f54574a5a
alcotest import
2022-03-10 12:00:38 +01:00
lIlIlIlIIIIlIIIllIIlIllIIllIII
bf73109ecc
no-web-patch fix
2022-03-10 12:00:25 +01:00
Denis Merigoux
6227097de4
Merge pull request #223 from AltGr/optional-z3
...
Make Z3 an optional dependency
2022-03-09 17:22:06 +01:00
Denis Merigoux
a797ee1b25
Removes the JS build from the website assets (no longer used on the website)
2022-03-09 17:08:32 +01:00
Denis Merigoux
20996a10be
Cleaning
2022-03-09 17:06:25 +01:00
Denis Merigoux
c1cf956308
Warning about Z3 and the proof platform
2022-03-09 17:03:47 +01:00
Denis Merigoux
897a282b70
Default is witout Z3
2022-03-09 17:00:53 +01:00
Louis Gesbert
933869d269
Move 'dependencies' from the 'all' target
...
and adapt the CI to skip z3 installation.
Is it more usual for `all` targets to build everything but not include
dependencies handling ?
2022-03-09 13:23:11 +01:00
Louis Gesbert
9456ace6b1
Make z3 an optional dependency, add 'make dependencies-noz3'
...
Also the CI will no longer compile/use z3
2022-03-09 12:53:17 +01:00
Denis Merigoux
41cf1ec0e6
Merge pull request #222 from CatalaLang/refactor-catala_backend_option-functions
...
Refactor: group common functions related to backend_option in the Cli module
2022-03-09 11:12:01 +01:00
Denis Merigoux
296760f09c
Merge pull request #224 from CatalaLang/afromher_dcalc
...
DCalc optimization pass: Remove if_then_else when both branches are identical
2022-03-09 10:29:51 +01:00
Denis Merigoux
e0a8bb1f6b
Merge pull request #221 from AltGr/options-record
...
Command-line: use a record for the options
2022-03-09 10:28:59 +01:00
Aymeric Fromherz
9eec6a474c
format
2022-03-08 20:43:55 +01:00
Aymeric Fromherz
9cbfc13288
Merge branch 'master' into afromher_dcalc
2022-03-08 20:41:35 +01:00
Aymeric Fromherz
3fb14264c2
Implement equal_ops in dcalc
2022-03-08 20:39:45 +01:00
Aymeric Fromherz
ac42bf65a7
Refactor to extract common equal_exprs_list and equal_typs_list
2022-03-08 20:31:22 +01:00
Aymeric Fromherz
5b345b4782
format
2022-03-08 20:23:45 +01:00
Louis Gesbert
e7e89873db
Make Z3 an optional dependency
...
If Catala is compiled without Z3, trying to run it with the backend `Proof` will
yield:
```
[ERROR] This instance of Catala was compiled without Z3 support.
```
and return 124
Note that this doesn't change the `make depends`, opam file or CI to account for it,
it just enables it at the build-system level.
There are also no hooks at this moment to have Catala self-document the options
whith which it was compiled (e.g. in the `--help` screen). But that could be
added in a more general way later, it's probably not really needed yet.
2022-03-08 18:38:42 +01:00
Aymeric Fromherz
2fa2f36c1d
Optimize if_then_else when both branches are identical
2022-03-08 17:38:14 +01:00
Louis Gesbert
b4b6d5d648
Fix compilation catala_web_interpreter
...
oops I overlooked that one
2022-03-08 17:35:57 +01:00
Aymeric Fromherz
89d69c2316
Implement equality function on dcalc expressions
2022-03-08 17:35:08 +01:00
Denis Merigoux
e5e0164fee
Remove unused dev dependencies in opam file
...
As suggested by https://github.com/ocaml/opam-repository/pull/20861#issuecomment-1061807613
2022-03-08 17:25:25 +01:00
Louis Gesbert
0e874752c1
Merge remote-tracking branch 'origin/master'
2022-03-08 16:20:41 +01:00
Emile Rolley
709d4e5ae5
fix(lcalc): disable ocamlformat for let+ expressions
2022-03-08 16:13:47 +01:00
Louis Gesbert
729fb7e551
reformat (sync with master)
2022-03-08 16:12:25 +01:00
Denis Merigoux
5c5eae1d19
Change settings
2022-03-08 16:11:53 +01:00
Louis Gesbert
071ec35234
Command-line: use a record for the options
...
Should make it much easier and less error-prone to add new options. There is
still a bit of boiler-plate, but at least it's contained in the Cli.options
function and doesn't transpire in the interfaces.
2022-03-08 16:11:39 +01:00
Emile Rolley
7c1f4cc02d
refactor: group common functions related to backend_option in the Cli module
2022-03-08 15:52:26 +01:00