From 6211671e24a4f05ddf9efe3b75597b7b6ba81e98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Radek=20Hu=C5=A1ek?= <husek@iuuk.mff.cuni.cz> Date: Tue, 15 Oct 2019 11:00:49 +0200 Subject: [PATCH] a few more pictures & known cdc counts --- cdc_counts.txt | 4 ++++ gadgets/flower_snark_basic_gadget.pdf | Bin 0 -> 15170 bytes gadgets/flower_snark_double_gadget.pdf | Bin 0 -> 15319 bytes gadgets/flower_snark_double_gadget_cdc.pdf | Bin 0 -> 16389 bytes 4 files changed, 4 insertions(+) create mode 100644 cdc_counts.txt create mode 100644 gadgets/flower_snark_basic_gadget.pdf create mode 100644 gadgets/flower_snark_double_gadget.pdf create mode 100644 gadgets/flower_snark_double_gadget_cdc.pdf diff --git a/cdc_counts.txt b/cdc_counts.txt new file mode 100644 index 0000000..4489c45 --- /dev/null +++ b/cdc_counts.txt @@ -0,0 +1,4 @@ +Petersen 52 +J_3 104 +Blanusa 1 6966 +Blanusa 2 6389 diff --git a/gadgets/flower_snark_basic_gadget.pdf b/gadgets/flower_snark_basic_gadget.pdf new file mode 100644 index 0000000000000000000000000000000000000000..a1aa0046dbbafc341751352b3ce7297a103ed43e GIT binary patch literal 15170 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 XC5c5P;IwLJVq#{=rK;-c@5TiHX|#Ct literal 0 HcmV?d00001 diff --git a/gadgets/flower_snark_double_gadget.pdf b/gadgets/flower_snark_double_gadget.pdf new file mode 100644 index 0000000000000000000000000000000000000000..085b2298f51b6a16059048a300a03136fdcd4f86 GIT binary patch literal 15319 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 T;IwLJVrFQ;rK;-c@5TiHxbepK literal 0 HcmV?d00001 diff --git a/gadgets/flower_snark_double_gadget_cdc.pdf b/gadgets/flower_snark_double_gadget_cdc.pdf new file mode 100644 index 0000000000000000000000000000000000000000..859b710200b8c4779ec0e0b7bf55f48228d72eec GIT binary patch literal 16389 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 FE&!s-;G6&e literal 0 HcmV?d00001 -- GitLab