Benoit Chevallier-Mames
39b168dfd5
fix: fix issues for certain form of functions
...
Table which was created contained too large values, for cells which were never accessed
closes #949
2021-11-24 17:14:59 +01:00
Benoit Chevallier-Mames
33064efc06
chore: fix flaky tests
...
closes #997
2021-11-24 09:48:02 +01:00
Arthur Meyre
60d8079303
feat: add clip support
...
closes #965
closes #983
closes #984
2021-11-23 17:08:24 +01:00
Arthur Meyre
ba6207e71e
refactor: remove workaround for scalar and tensors operations in tests
...
- add Float16 for ldexp which sometimes returns float16 in numpy
closes #908
2021-11-23 12:25:53 +01:00
Umut
7e65af3906
fix(representation): set correct output type for dot product
2021-11-23 10:22:17 +03:00
Umut
1d77816aa3
refactor(mlir): implement support for operations between tensors and scalars using string processing hacks
2021-11-23 10:22:17 +03:00
Benoit Chevallier-Mames
0fd8da8789
chore: fix a test
...
refs #885
2021-11-19 15:08:50 +01:00
Benoit Chevallier-Mames
247327b277
chore: fix #951 by making sure the dot product is never too large.
...
closes #951
2021-11-19 10:17:27 +01:00
Arthur Meyre
8a27525a64
refactor: separate some compilation steps to prepare torch-like API work
...
refs #233
2021-11-19 10:06:07 +01:00
Benoit Chevallier-Mames
2fdf22bf4e
test(execution): add correctness tests of ndarray operators
...
closes #931
2021-11-18 18:16:33 +01:00
Benoit Chevallier-Mames
bfa309a455
test: add tests with dot and negative tensors
...
refs #891
2021-11-18 09:55:22 +01:00
Arthur Meyre
f6aadd37e9
test: add tests for bivariate functions with tensor and multi TLU
...
closes #558
closes #567
closes #665
2021-11-18 09:08:55 +01:00
Umut
c733daa78c
feat(mlir): implement MLIR conversion of MatMul
2021-11-17 15:01:29 +03:00
Umut
1d691f232b
feat(mlir): implement MLIR conversion of multi lookup tables
2021-11-17 14:27:47 +03:00
Arthur Meyre
55a39d4c26
test: run single lut conformance on tensors
...
closes #574
refs #558
refs #665
2021-11-17 09:11:46 +01:00
Umut
db098fd3a3
refactor(debugging): improve error messages of generic functions with floating point inputs
2021-11-16 13:18:13 +03:00
Benoit Chevallier-Mames
5d31aa4d2c
chore: factorize some data_gen.
2021-11-15 16:46:46 +01:00
Benoit Chevallier-Mames
50c1ceb6db
test(execution): add tests with negative results
...
for now, results are correct mod 128, but wrong without this modulo reduction. Will be later fixed
by the compiler.
closes #844
refs #845
2021-11-15 16:46:46 +01:00
Umut
239f66eb46
refactor(mlir): re-write mlir conversion
2021-11-15 17:21:51 +03:00
Umut
6fec590e65
refactor(debugging): re-write graph formatting
2021-11-15 16:33:15 +03:00
Umut
b449ddc360
refactor(debugging): improve error message of unfused astype
2021-11-15 12:50:46 +03:00
Benoit Chevallier-Mames
e7e7a02425
test(execution): add tests with negative values
...
closes #844
2021-11-15 10:15:49 +01:00
Arthur Meyre
93820e1588
feat: add support for __floordiv__
...
closes #871
closes #872
2021-11-11 09:42:02 +01:00
Benoit Chevallier-Mames
1aad4d23d1
chore: be more verbose in this assert
...
closes #729
2021-11-10 17:31:08 +01:00
Arthur Meyre
955470fb89
feat: add support for __truediv__
...
- cannot use the standard binary op workflow as we don't have an op for div
closes #866
closes #867
2021-11-10 15:07:59 +01:00
Umut
ee202a03b3
feat(mlir): implement mlir conversion of basic tensor operations
2021-11-10 10:18:36 +03:00
Arthur Meyre
565756810d
feat: add neg support to BaseTracer
...
closes #853
2021-11-09 18:02:59 +01:00
Umut
548b755409
fix(fhe_circuit): update type annotations for run method
2021-11-08 16:50:24 +01:00
Umut
f417246ea3
refactor(debugging): rename get_printable_graph to format_operation_graph
2021-11-08 13:20:18 +03:00
Arthur Meyre
d2faa90106
refactor: replace UnivariateFunction by GenericFunction
...
- add an attribute fusable to False for the operations that should not be
explicitely fused from the original addition of GenericFunction
- add op_kind instance attribute to differentiate between TLU and memory
operations for GenericFunction
refs #600
2021-11-03 12:05:02 +01:00
Arthur Meyre
fed3342c5f
fix(tracing): fix a corner case for astype on arrays with 1 element
2021-11-03 12:05:02 +01:00
Benoit Chevallier-Mames
50a6b06c37
feat(tracing): support x.reshape as well as np.reshape(x, )
...
closes #701
2021-11-03 11:01:06 +01:00
Benoit Chevallier-Mames
3991ed3b38
chore: np.tranpose, np.reshape and np.ravel don't compile currently.
2021-11-02 16:18:55 +01:00
Umut
39c16038c7
feat(extensions): create multi table lookup extension
2021-11-02 15:45:13 +03:00
Arthur Meyre
ce17767288
test: use triple quoted strings for long message matches
...
closes #754
2021-10-28 09:13:48 +02:00
Benoit Chevallier-Mames
23d4dead30
chore: remove unnecessary lambda in tests
2021-10-27 18:47:56 +02:00
Umut
eedbe0606b
feat(tracing): implement tracing of matmul
2021-10-27 17:11:19 +03:00
Umut
70fbac7188
feat(compilation): provide a way to automatically generate a random inputset
2021-10-26 11:44:57 +03:00
Benoit Chevallier-Mames
9459675cfb
feat: manage signed constants
...
closes #688
closes #612
2021-10-26 10:06:15 +02:00
Arthur Meyre
624143106f
refactor(compilation): remove unnecessary check in compile.py
...
refs #645
2021-10-25 17:02:43 +02:00
Umut
c46d96aabf
refactor(compilation): improve error messages of indexing
2021-10-25 17:35:36 +03:00
Umut
65af96253b
feat(tracing): implement tracing of constant indexing
2021-10-25 13:14:29 +03:00
Benoit Chevallier-Mames
bc90ed37ff
chore(debugging): show problems in a clearer way with highlighted_nodes
2021-10-22 14:41:24 +02:00
Umut
be453394fb
fix(compilation): raise the appropriate error for intermediate signed integers
2021-10-20 17:15:52 +03:00
Benoit Chevallier-Mames
7bf2f09615
feat: remove support for np.invert
...
remove support for np.invert and propose to the user to use bitwise_xor instead, because of impossibilities with float fusing
closes #658
2021-10-19 10:40:23 +02:00
Arthur Meyre
384026364e
test: create default_compilation_configuration fixture
...
- update test code and use it where appropriate
- remove duplicate tests that lacked correctness verification
2021-10-19 08:51:35 +02:00
Arthur Meyre
bc2ae7be47
chore: disable pylint line too long in test_compile where necessary
...
- fix pylint targets for non package dirs
2021-10-15 16:02:20 +02:00
Umut
8b2efb8869
test(execution): add table lookup correctness tests
2021-10-15 16:16:32 +03:00
Arthur Meyre
93e39e58f7
fix(representation): handle failure in UnivariateFunction get_table
...
- if only some values are problematic, flood fill the resulting table with
other valid values
- if no valid value was generated an AssertionError will be thrown
2021-10-15 14:17:11 +02:00
Benoit Chevallier-Mames
1c8c623951
test: deal with probabilistic nature of correctness tests
...
closes #656
refs #551
2021-10-15 13:10:15 +02:00