找回密码
 立即注册

扫一扫,登录网站

首页 百科 查看内容
  • 16961
  • 0
  • 分享到

学术向 | 深入浅出zkSNARKs

2019-2-9 16:14

来源: 格密链

NP类问题


对于NP类中的所有问题都是zkSNARK,实际上,现在存在的实际使用的zkSNARKs通常意义上都是NP问题。目前尚不清楚有没有不属于 NP 问题的 zkSNARKs 存在。

NP中的所有问题总是具有一定的结构,这源于NP的定义: NP 问题是 L(含有多项式时间的程序 V)的一类问题, 这个程序 V 可以在给定一个多项式尺度的叫做因子的 witness 的情况下验证这个因子。更正式的说就是: 当且仅当一些多项式尺度的字符串 w(被称作 witness)满足 V(x, w) = 1 时,L(x) = 1 成立。 作为NP中问题的一个例子,让我们考虑布尔公式可满足性(SAT)的问题。为此,我们使用归纳定义定义布尔函数:

任何变量x 1,x 2,x 3,...都是布尔函数(我们还使用任何其他字符来表示变量 如果f是布尔函数,则¬f是布尔函数(否命题) 如果f和g是布尔函数,那么(f∧g)和(f∨g)也是布尔函数(∧是且,∨是或)。 字符串“((X 1 ∧X 2)∧¬x 2)”也是一个布尔函数。

如果有一种方法可以将真值赋给变量,那么布尔函数是可以满足的,这样公式的计算结果为真(其中σ为真,¬false为真,true∧false为假,依此类推)。可满足性问题SAT是所有可满足的布尔函数的集合。

当且仅当 f 是一个可满足函数且不是 0 时,SAT(f) := 1 成立 上面的例子中,“((X 1 ∧X 2)∧¬x 2)”,是不符合要求的,因此它不属于SAT。证明一个给定公式满足定义并且同时确保它赋值的变量也是可满足的就是一个可以在多项式时间内被解决的问题。

版权申明:本内容来自于互联网,属第三方汇集推荐平台。本文的版权归原作者所有,文章言论不代表链门户的观点,链门户不承担任何法律责任。如有侵权请联系QQ:3341927519进行反馈。
相关新闻
发表评论

请先 注册/登录 后参与评论

    回顶部