From 3464f36414f7c98e2e2bd9cd2fcc4278c073f323 Mon Sep 17 00:00:00 2001 From: dark64 Date: Thu, 1 Sep 2022 15:47:52 +0200 Subject: [PATCH] remove field casts --- zokrates_stdlib/stdlib/utils/casts.zok | 26 +------------------ .../tests/tests/utils/casts/field.json | 17 ------------ .../tests/tests/utils/casts/field.zok | 25 ------------------ .../casts/{to_bits.json => uint_to_bits.json} | 2 +- .../casts/{to_bits.zok => uint_to_bits.zok} | 0 .../{to_field.json => uint_to_field.json} | 2 +- .../casts/{to_field.zok => uint_to_field.zok} | 0 7 files changed, 3 insertions(+), 69 deletions(-) delete mode 100644 zokrates_stdlib/tests/tests/utils/casts/field.json delete mode 100644 zokrates_stdlib/tests/tests/utils/casts/field.zok rename zokrates_stdlib/tests/tests/utils/casts/{to_bits.json => uint_to_bits.json} (98%) rename zokrates_stdlib/tests/tests/utils/casts/{to_bits.zok => uint_to_bits.zok} (100%) rename zokrates_stdlib/tests/tests/utils/casts/{to_field.json => uint_to_field.json} (88%) rename zokrates_stdlib/tests/tests/utils/casts/{to_field.zok => uint_to_field.zok} (100%) diff --git a/zokrates_stdlib/stdlib/utils/casts.zok b/zokrates_stdlib/stdlib/utils/casts.zok index 17f2cb4c..6cfe6aee 100644 --- a/zokrates_stdlib/stdlib/utils/casts.zok +++ b/zokrates_stdlib/stdlib/utils/casts.zok @@ -1,4 +1,4 @@ -from "EMBED" import unpack, u64_to_bits, u32_to_bits, u16_to_bits, u8_to_bits, u8_from_bits, u16_from_bits, u32_from_bits, u64_from_bits; +from "EMBED" import u64_to_bits, u32_to_bits, u16_to_bits, u8_to_bits, u8_from_bits, u16_from_bits, u32_from_bits, u64_from_bits; // Cast a boolean array of size 8 to an 8-bit unsigned integer (u8) def cast(bool[8] input) -> u8 { @@ -64,30 +64,6 @@ def cast(bool[N] input) -> u64[P] { return r; } -// Cast a field element to an 8-bit unsigned integer (u8) -def cast(field input) -> u8 { - bool[8] bits = unpack(input); - return u8_from_bits(bits); -} - -// Cast a field element to a 16-bit unsigned integer (u16) -def cast(field input) -> u16 { - bool[16] bits = unpack(input); - return u16_from_bits(bits); -} - -// Cast a field element to a 32-bit unsigned integer (u32) -def cast(field input) -> u32 { - bool[32] bits = unpack(input); - return u32_from_bits(bits); -} - -// Cast a field element to a 64-bit unsigned integer (u64) -def cast(field input) -> u64 { - bool[64] bits = unpack(input); - return u64_from_bits(bits); -} - // Cast an 8-bit unsigned integer (u8) to a boolean array of size 8 (bool[8]) def cast(u8 input) -> bool[8] { return u8_to_bits(input); diff --git a/zokrates_stdlib/tests/tests/utils/casts/field.json b/zokrates_stdlib/tests/tests/utils/casts/field.json deleted file mode 100644 index 8b45c61c..00000000 --- a/zokrates_stdlib/tests/tests/utils/casts/field.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "entry_point": "./tests/tests/utils/casts/field.zok", - "max_constraint_count": 0, - "curves": ["Bn128"], - "tests": [ - { - "input": { - "values": [] - }, - "output": { - "Ok": { - "value": [] - } - } - } - ] -} diff --git a/zokrates_stdlib/tests/tests/utils/casts/field.zok b/zokrates_stdlib/tests/tests/utils/casts/field.zok deleted file mode 100644 index 36b57c05..00000000 --- a/zokrates_stdlib/tests/tests/utils/casts/field.zok +++ /dev/null @@ -1,25 +0,0 @@ -from "utils/casts.zok" import cast; - -// field -> u8 -// field -> u16 -// field -> u32 -// field -> u64 - -def main() { - // field -> u8 - u8 v0 = cast(18f); - assert(v0 == 0x12); - - // field -> u16 - u16 v1 = cast(4660f); - assert(v1 == 0x1234); - - // field -> u32 - u32 v2 = cast(305419896f); - assert(v2 == 0x12345678); - - // field -> u64 - u64 v3 = cast(1311768465173141112f); - assert(v3 == 0x1234567812345678); - return; -} \ No newline at end of file diff --git a/zokrates_stdlib/tests/tests/utils/casts/to_bits.json b/zokrates_stdlib/tests/tests/utils/casts/uint_to_bits.json similarity index 98% rename from zokrates_stdlib/tests/tests/utils/casts/to_bits.json rename to zokrates_stdlib/tests/tests/utils/casts/uint_to_bits.json index dbd83b74..03aeedac 100644 --- a/zokrates_stdlib/tests/tests/utils/casts/to_bits.json +++ b/zokrates_stdlib/tests/tests/utils/casts/uint_to_bits.json @@ -1,5 +1,5 @@ { - "entry_point": "./tests/tests/utils/casts/to_bits.zok", + "entry_point": "./tests/tests/utils/casts/uint_to_bits.zok", "curves": ["Bn128"], "abi": false, "tests": [ diff --git a/zokrates_stdlib/tests/tests/utils/casts/to_bits.zok b/zokrates_stdlib/tests/tests/utils/casts/uint_to_bits.zok similarity index 100% rename from zokrates_stdlib/tests/tests/utils/casts/to_bits.zok rename to zokrates_stdlib/tests/tests/utils/casts/uint_to_bits.zok diff --git a/zokrates_stdlib/tests/tests/utils/casts/to_field.json b/zokrates_stdlib/tests/tests/utils/casts/uint_to_field.json similarity index 88% rename from zokrates_stdlib/tests/tests/utils/casts/to_field.json rename to zokrates_stdlib/tests/tests/utils/casts/uint_to_field.json index 49caa995..0e4b9205 100644 --- a/zokrates_stdlib/tests/tests/utils/casts/to_field.json +++ b/zokrates_stdlib/tests/tests/utils/casts/uint_to_field.json @@ -1,5 +1,5 @@ { - "entry_point": "./tests/tests/utils/casts/to_field.zok", + "entry_point": "./tests/tests/utils/casts/uint_to_field.zok", "curves": ["Bn128"], "abi": false, "tests": [ diff --git a/zokrates_stdlib/tests/tests/utils/casts/to_field.zok b/zokrates_stdlib/tests/tests/utils/casts/uint_to_field.zok similarity index 100% rename from zokrates_stdlib/tests/tests/utils/casts/to_field.zok rename to zokrates_stdlib/tests/tests/utils/casts/uint_to_field.zok