From 009152961de70fd81d21f81fe25b01f10fbc8202 Mon Sep 17 00:00:00 2001 From: Mason Liang Date: Wed, 2 Aug 2023 19:33:30 +0800 Subject: [PATCH] Constrain inverse_or_zero to be zero when value is 0 --- src/gadgets/is_zero.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gadgets/is_zero.rs b/src/gadgets/is_zero.rs index 4aef2953..a4d9a210 100644 --- a/src/gadgets/is_zero.rs +++ b/src/gadgets/is_zero.rs @@ -55,6 +55,10 @@ impl IsZeroGadget { "value is 0 or inverse_or_zero is inverse of value", value.current() * (Query::one() - value.current() * inverse_or_zero.current()), ); + cb.assert_zero( + "inverse_or_zero is 0 or inverse_or_zero is inverse of value", + inverse_or_zero.current() * (Query::one() - value.current() * inverse_or_zero.current()), + ); Self { value, inverse_or_zero,