是否可以使用XOR门编写AND门?


21

如何仅使用XOR门来表达AND门?


1
为什么要用xor表达和门?在什么地方?
— ABD

1
我正在阅读有关同态加密的内容,即这篇论文eprint.iacr.org/2013/094.pdf,也称为LTV方案。陈述了乘法表示AND,两位之间的加法表示XOR。所以我问是否可以仅使用XOR重写方案?也许我应该将问题迁移到密码学测试版?
— user2991856



Answers:


36

你不能。

由于是缔合,即,(X 1 ⊕ X 2)⊕ X 3 = X 1 ⊕ (X 2 ⊕ X 3),则只能实现形式的函数X 我1 ⊕ 。。。⊕ X 我ķ其中X 我Ĵ ∈ { X 1,X 2 }XOR(x1⊕x2)⊕x3=x1⊕(x2⊕x3)xi1⊕...⊕xikxij∈{x1,x2}。这等同于(取决于实例的数目的奇偶性和X 2)是0,X 1,X 2,或X 1 ⊕ X 2,它们是不等同于AND。x1x2x1x2x1⊕x2


5
您可能还希望允许0和1作为输入。尽管您也会得到上述的否定,但是您仍然不会得到AND。
— 塔米尔(Taemyr),2015年

19

嗯 当然不能使用布尔代数来完成,但是我可以物理地进行连接。诀窍是将输入之一连接到XOR门的电源线。

                     I2
                     |
      0  I1          |
      |   |          |
     \|   |/         |
     |\   / |        |
.|---| \ /  |--------/
     \  V  /  
      \   /  
       \ /  
        V 
        |            
     AND OUTPUT

XOR门连接为同相缓冲器。所涉及的技巧是,如果将VCC连接至GND(或通过扩展逻辑接地),则输出为弱GND。

免责声明:这适用于我拥有的硅片,但可能不适用于所有硅片。


8
对它如何工作的一些解释将使它成为一个更好的答案。
— David Richerby

在这种情况下,第一道大门不是多余的吗?
— Nit 2015年

1
这些是什么.|,|>?
— Wojowu 2015年

1
我想,@ Wojowu地面和Vcc。
— John Dvorak

4
“可能无法在所有硅片上使用。” ...是的,甚至可能会损坏一些-在关闭电源的情况下将输入施加到物理门,或更糟糕的是在之后打开电源,这在很多零件中都是不合规格的(例如:CMOS闩锁效应) !)。同样,第一个栅极的“真实”输出电压低于您的电源电压,并且取决于它的低多少,将大大改变第二个栅极的输入电平的解释。当较低的栅极未上电时,I2不太可能有效接地短路(保护二极管,互补输出...)。
— rackandboneman
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.