Skip to content

Commit be6ebe7

Browse files
committed
HEH
1 parent f1d019a commit be6ebe7

File tree

3 files changed

+56
-52
lines changed

3 files changed

+56
-52
lines changed

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[submodule "SEAL"]
2+
path = SEAL
3+
url = https://github.com/wfus/SEAL

SEAL

Submodule SEAL added at 467638e

translate/CodeTranslation.ipynb

Lines changed: 52 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -24,30 +24,30 @@
2424
},
2525
{
2626
"cell_type": "code",
27-
"execution_count": 89,
27+
"execution_count": 122,
2828
"metadata": {
2929
"collapsed": true
3030
},
3131
"outputs": [],
3232
"source": [
3333
"TEST_LINES=\"\"\"\n",
34-
"tmp0 = data_ptr[0] + data_ptr[7];\n",
35-
"tmp7 = data_ptr[0] - data_ptr[7];\n",
36-
"tmp1 = data_ptr[1] + data_ptr[6];\n",
37-
"tmp6 = data_ptr[1] - data_ptr[6];\n",
38-
"tmp2 = data_ptr[2] + data_ptr[5];\n",
39-
"tmp5 = data_ptr[2] - data_ptr[5];\n",
40-
"tmp3 = data_ptr[3] + data_ptr[4];\n",
41-
"tmp4 = data_ptr[3] - data_ptr[4];\n",
34+
"tmp0 = data_ptr[0] + data_ptr[56];\n",
35+
"tmp7 = data_ptr[0] - data_ptr[56];\n",
36+
"tmp1 = data_ptr[8] + data_ptr[48];\n",
37+
"tmp6 = data_ptr[8] - data_ptr[48];\n",
38+
"tmp2 = data_ptr[16] + data_ptr[40];\n",
39+
"tmp5 = data_ptr[16] - data_ptr[40];\n",
40+
"tmp3 = data_ptr[24] + data_ptr[32];\n",
41+
"tmp4 = data_ptr[24] - data_ptr[32];\n",
4242
"tmp10 = tmp0 + tmp3;\n",
4343
"tmp13 = tmp0 - tmp3;\n",
4444
"tmp11 = tmp1 + tmp2;\n",
4545
"tmp12 = tmp1 - tmp2;\n",
46-
"data_ptr[0] = tmp10 + tmp11;\n",
47-
"data_ptr[4] = tmp10 - tmp11;\n",
46+
"data_ptr[0] = (tmp10 + tmp11) * 0.125;\n",
47+
"data_ptr[32] = (tmp10 - tmp11) * 0.125;\n",
4848
"z1 = (tmp12 + tmp13) * 0.541196100;\n",
49-
"data_ptr[2] = z1 + tmp13 * 0.765366865;\n",
50-
"data_ptr[6] = z1 + tmp12 * - 1.847759065;\n",
49+
"data_ptr[16] = (z1 + tmp13 * 0.765366865) * 0.125;\n",
50+
"data_ptr[48] = (z1 + tmp12 * -1.847759065) * 0.125;\n",
5151
"z1 = tmp4 + tmp7;\n",
5252
"z2 = tmp5 + tmp6;\n",
5353
"z3 = tmp4 + tmp6;\n",
@@ -63,16 +63,16 @@
6363
"z4 *= -0.390180644;\n",
6464
"z3 += z5;\n",
6565
"z4 += z5;\n",
66-
"data_ptr[7] = tmp4 + z1 + z3;\n",
67-
"data_ptr[5] = tmp5 + z2 + z4;\n",
68-
"data_ptr[3] = tmp6 + z2 + z3;\n",
69-
"data_ptr[1] = tmp7 + z1 + z4;\n",
66+
"data_ptr[56] = (tmp4 + z1 + z3) * 0.125;\n",
67+
"data_ptr[40] = (tmp5 + z2 + z4) * 0.125;\n",
68+
"data_ptr[24] = (tmp6 + z2 + z3) * 0.125;\n",
69+
"data_ptr[8] = (tmp7 + z1 + z4) * 0.125;\n",
7070
"\"\"\""
7171
]
7272
},
7373
{
7474
"cell_type": "code",
75-
"execution_count": 90,
75+
"execution_count": 123,
7676
"metadata": {
7777
"collapsed": true
7878
},
@@ -88,7 +88,7 @@
8888
},
8989
{
9090
"cell_type": "code",
91-
"execution_count": 105,
91+
"execution_count": 124,
9292
"metadata": {
9393
"collapsed": true
9494
},
@@ -169,7 +169,7 @@
169169
},
170170
{
171171
"cell_type": "code",
172-
"execution_count": 120,
172+
"execution_count": 125,
173173
"metadata": {},
174174
"outputs": [],
175175
"source": [
@@ -245,50 +245,50 @@
245245
},
246246
{
247247
"cell_type": "code",
248-
"execution_count": 121,
248+
"execution_count": 126,
249249
"metadata": {},
250250
"outputs": [
251251
{
252252
"name": "stdout",
253253
"output_type": "stream",
254254
"text": [
255255
"ERROR\n",
256-
"Ciphertext goodmorning457(data_ptr[0]); evaluator.add(goodmorning457, data_ptr[7]); tmp0 = goodmorning457;\n",
257-
"Ciphertext goodmorning458(data_ptr[0]); evaluator.sub(goodmorning458, data_ptr[7]); tmp7 = goodmorning458;\n",
258-
"Ciphertext goodmorning459(data_ptr[1]); evaluator.add(goodmorning459, data_ptr[6]); tmp1 = goodmorning459;\n",
259-
"Ciphertext goodmorning460(data_ptr[1]); evaluator.sub(goodmorning460, data_ptr[6]); tmp6 = goodmorning460;\n",
260-
"Ciphertext goodmorning461(data_ptr[2]); evaluator.add(goodmorning461, data_ptr[5]); tmp2 = goodmorning461;\n",
261-
"Ciphertext goodmorning462(data_ptr[2]); evaluator.sub(goodmorning462, data_ptr[5]); tmp5 = goodmorning462;\n",
262-
"Ciphertext goodmorning463(data_ptr[3]); evaluator.add(goodmorning463, data_ptr[4]); tmp3 = goodmorning463;\n",
263-
"Ciphertext goodmorning464(data_ptr[3]); evaluator.sub(goodmorning464, data_ptr[4]); tmp4 = goodmorning464;\n",
264-
"Ciphertext goodmorning465(tmp0); evaluator.add(goodmorning465, tmp3); tmp10 = goodmorning465;\n",
265-
"Ciphertext goodmorning466(tmp0); evaluator.sub(goodmorning466, tmp3); tmp13 = goodmorning466;\n",
266-
"Ciphertext goodmorning467(tmp1); evaluator.add(goodmorning467, tmp2); tmp11 = goodmorning467;\n",
267-
"Ciphertext goodmorning468(tmp1); evaluator.sub(goodmorning468, tmp2); tmp12 = goodmorning468;\n",
268-
"Ciphertext goodmorning469(tmp10); evaluator.add(goodmorning469, tmp11); data_ptr[0] = goodmorning469;\n",
269-
"Ciphertext goodmorning470(tmp10); evaluator.sub(goodmorning470, tmp11); data_ptr[4] = goodmorning470;\n",
270-
"Ciphertext goodmorning471(tmp12); evaluator.add(goodmorning471, tmp13); Ciphertext goodmorning472(goodmorning471); evaluator.multiply_plain(goodmorning472, encoder.encode(0.541196100)); z1 = goodmorning472;\n",
271-
"Ciphertext goodmorning473(tmp13); evaluator.multiply_plain(goodmorning473, encoder.encode(0.765366865)); Ciphertext goodmorning474(z1); evaluator.add(goodmorning474, goodmorning473); data_ptr[2] = goodmorning474;\n",
256+
"Ciphertext goodmorning1(data_ptr[0]); evaluator.add(goodmorning1, data_ptr[56]); tmp0 = goodmorning1;\n",
257+
"Ciphertext goodmorning2(data_ptr[0]); evaluator.sub(goodmorning2, data_ptr[56]); tmp7 = goodmorning2;\n",
258+
"Ciphertext goodmorning3(data_ptr[8]); evaluator.add(goodmorning3, data_ptr[48]); tmp1 = goodmorning3;\n",
259+
"Ciphertext goodmorning4(data_ptr[8]); evaluator.sub(goodmorning4, data_ptr[48]); tmp6 = goodmorning4;\n",
260+
"Ciphertext goodmorning5(data_ptr[16]); evaluator.add(goodmorning5, data_ptr[40]); tmp2 = goodmorning5;\n",
261+
"Ciphertext goodmorning6(data_ptr[16]); evaluator.sub(goodmorning6, data_ptr[40]); tmp5 = goodmorning6;\n",
262+
"Ciphertext goodmorning7(data_ptr[24]); evaluator.add(goodmorning7, data_ptr[32]); tmp3 = goodmorning7;\n",
263+
"Ciphertext goodmorning8(data_ptr[24]); evaluator.sub(goodmorning8, data_ptr[32]); tmp4 = goodmorning8;\n",
264+
"Ciphertext goodmorning9(tmp0); evaluator.add(goodmorning9, tmp3); tmp10 = goodmorning9;\n",
265+
"Ciphertext goodmorning10(tmp0); evaluator.sub(goodmorning10, tmp3); tmp13 = goodmorning10;\n",
266+
"Ciphertext goodmorning11(tmp1); evaluator.add(goodmorning11, tmp2); tmp11 = goodmorning11;\n",
267+
"Ciphertext goodmorning12(tmp1); evaluator.sub(goodmorning12, tmp2); tmp12 = goodmorning12;\n",
268+
"Ciphertext goodmorning13(tmp10); evaluator.add(goodmorning13, tmp11); Ciphertext goodmorning14(goodmorning13); evaluator.multiply_plain(goodmorning14, encoder.encode(0.125)); data_ptr[0] = goodmorning14;\n",
269+
"Ciphertext goodmorning15(tmp10); evaluator.sub(goodmorning15, tmp11); Ciphertext goodmorning16(goodmorning15); evaluator.multiply_plain(goodmorning16, encoder.encode(0.125)); data_ptr[32] = goodmorning16;\n",
270+
"Ciphertext goodmorning17(tmp12); evaluator.add(goodmorning17, tmp13); Ciphertext goodmorning18(goodmorning17); evaluator.multiply_plain(goodmorning18, encoder.encode(0.541196100)); z1 = goodmorning18;\n",
271+
"Ciphertext goodmorning19(tmp13); evaluator.multiply_plain(goodmorning19, encoder.encode(0.765366865)); Ciphertext goodmorning20(z1); evaluator.add(goodmorning20, goodmorning19); Ciphertext goodmorning21(goodmorning20); evaluator.multiply_plain(goodmorning21, encoder.encode(0.125)); data_ptr[16] = goodmorning21;\n",
272272
"ERROR\n",
273-
"Ciphertext goodmorning475(tmp4); evaluator.add(goodmorning475, tmp7); z1 = goodmorning475;\n",
274-
"Ciphertext goodmorning476(tmp5); evaluator.add(goodmorning476, tmp6); z2 = goodmorning476;\n",
275-
"Ciphertext goodmorning477(tmp4); evaluator.add(goodmorning477, tmp6); z3 = goodmorning477;\n",
276-
"Ciphertext goodmorning478(tmp5); evaluator.add(goodmorning478, tmp7); z4 = goodmorning478;\n",
277-
"Ciphertext goodmorning479(z3); evaluator.add(goodmorning479, z4); Ciphertext goodmorning480(goodmorning479); evaluator.multiply_plain(goodmorning480, encoder.encode(1.175875602)); z5 = goodmorning480;\n",
278-
"Ciphertext goodmorning481(tmp4); evaluator.multiply_plain(goodmorning481, encoder.encode(0.298631336)); tmp4 = goodmorning481;\n",
279-
"Ciphertext goodmorning482(tmp5); evaluator.multiply_plain(goodmorning482, encoder.encode(2.053119869)); tmp5 = goodmorning482;\n",
280-
"Ciphertext goodmorning483(tmp6); evaluator.multiply_plain(goodmorning483, encoder.encode(3.072711026)); tmp6 = goodmorning483;\n",
281-
"Ciphertext goodmorning484(tmp7); evaluator.multiply_plain(goodmorning484, encoder.encode(1.501321110)); tmp7 = goodmorning484;\n",
273+
"Ciphertext goodmorning22(tmp4); evaluator.add(goodmorning22, tmp7); z1 = goodmorning22;\n",
274+
"Ciphertext goodmorning23(tmp5); evaluator.add(goodmorning23, tmp6); z2 = goodmorning23;\n",
275+
"Ciphertext goodmorning24(tmp4); evaluator.add(goodmorning24, tmp6); z3 = goodmorning24;\n",
276+
"Ciphertext goodmorning25(tmp5); evaluator.add(goodmorning25, tmp7); z4 = goodmorning25;\n",
277+
"Ciphertext goodmorning26(z3); evaluator.add(goodmorning26, z4); Ciphertext goodmorning27(goodmorning26); evaluator.multiply_plain(goodmorning27, encoder.encode(1.175875602)); z5 = goodmorning27;\n",
278+
"Ciphertext goodmorning28(tmp4); evaluator.multiply_plain(goodmorning28, encoder.encode(0.298631336)); tmp4 = goodmorning28;\n",
279+
"Ciphertext goodmorning29(tmp5); evaluator.multiply_plain(goodmorning29, encoder.encode(2.053119869)); tmp5 = goodmorning29;\n",
280+
"Ciphertext goodmorning30(tmp6); evaluator.multiply_plain(goodmorning30, encoder.encode(3.072711026)); tmp6 = goodmorning30;\n",
281+
"Ciphertext goodmorning31(tmp7); evaluator.multiply_plain(goodmorning31, encoder.encode(1.501321110)); tmp7 = goodmorning31;\n",
282282
"ERROR\n",
283283
"ERROR\n",
284284
"ERROR\n",
285285
"ERROR\n",
286-
"Ciphertext goodmorning485(z3); evaluator.add(goodmorning485, z5); z3 = goodmorning485;\n",
287-
"Ciphertext goodmorning486(z4); evaluator.add(goodmorning486, z5); z4 = goodmorning486;\n",
288-
"Ciphertext goodmorning487(tmp4); evaluator.add(goodmorning487, z1); Ciphertext goodmorning488(goodmorning487); evaluator.add(goodmorning488, z3); data_ptr[7] = goodmorning488;\n",
289-
"Ciphertext goodmorning489(tmp5); evaluator.add(goodmorning489, z2); Ciphertext goodmorning490(goodmorning489); evaluator.add(goodmorning490, z4); data_ptr[5] = goodmorning490;\n",
290-
"Ciphertext goodmorning491(tmp6); evaluator.add(goodmorning491, z2); Ciphertext goodmorning492(goodmorning491); evaluator.add(goodmorning492, z3); data_ptr[3] = goodmorning492;\n",
291-
"Ciphertext goodmorning493(tmp7); evaluator.add(goodmorning493, z1); Ciphertext goodmorning494(goodmorning493); evaluator.add(goodmorning494, z4); data_ptr[1] = goodmorning494;\n"
286+
"Ciphertext goodmorning32(z3); evaluator.add(goodmorning32, z5); z3 = goodmorning32;\n",
287+
"Ciphertext goodmorning33(z4); evaluator.add(goodmorning33, z5); z4 = goodmorning33;\n",
288+
"Ciphertext goodmorning34(tmp4); evaluator.add(goodmorning34, z1); Ciphertext goodmorning35(goodmorning34); evaluator.add(goodmorning35, z3); Ciphertext goodmorning36(goodmorning35); evaluator.multiply_plain(goodmorning36, encoder.encode(0.125)); data_ptr[56] = goodmorning36;\n",
289+
"Ciphertext goodmorning37(tmp5); evaluator.add(goodmorning37, z2); Ciphertext goodmorning38(goodmorning37); evaluator.add(goodmorning38, z4); Ciphertext goodmorning39(goodmorning38); evaluator.multiply_plain(goodmorning39, encoder.encode(0.125)); data_ptr[40] = goodmorning39;\n",
290+
"Ciphertext goodmorning40(tmp6); evaluator.add(goodmorning40, z2); Ciphertext goodmorning41(goodmorning40); evaluator.add(goodmorning41, z3); Ciphertext goodmorning42(goodmorning41); evaluator.multiply_plain(goodmorning42, encoder.encode(0.125)); data_ptr[24] = goodmorning42;\n",
291+
"Ciphertext goodmorning43(tmp7); evaluator.add(goodmorning43, z1); Ciphertext goodmorning44(goodmorning43); evaluator.add(goodmorning44, z4); Ciphertext goodmorning45(goodmorning44); evaluator.multiply_plain(goodmorning45, encoder.encode(0.125)); data_ptr[8] = goodmorning45;\n"
292292
]
293293
}
294294
],

0 commit comments

Comments
 (0)