入力が異なる一方向関数をXORする場合でも、それは一方向関数ですか?


7

仮定一方向関数です。についてはどうですか、ここでおよび?f(x)h(x)=f(x1)f(x2)x=x1||x2|x1|=|x2|

  • は排他的選言です(xor)
  • ||連結です
  • |u|の長さですu

理由は質問かどうかと仮定すると、一方通行である一方通行が問題と重複しているかどうか一方通行である一方通行ですが?f(x1)f(x2)ff(x)xf
Sasho Nikolov 2013

@SashoNikolov同意します。仮説はかなり異なります。このような場合は、投票して再開してください。
Gilles「SO-邪悪なことをやめなさい」

場合、どのようにを定義しますか 変ですか?h(x)|x|
Gilles「SO-邪悪なことをやめなさい」

ある上の一方向順列またはそれの長さが可能であると異なりますか?f(x){0,1}|x|f(x1)f(x2)
frafl 2013年

@fraflおそらく関係ありません。
Ran G.

回答:


9

関数は一方向ではなくなりました。h

次の方法で、反例(が一方向ではなくなった特定の一方向を作成します。仮定ジャムサイズその一方向関数であり、定義 入力に次のように (および想定)も一方向であることは簡単です。それINVERT、あなたはどちらかの反転に必要な前半のか、反転後半に。fhgfw=bx1x2

f(bx1x2)={g(x1)x2b=0x1g(x2)b=1
b{0,1}|x1|=|x2|fgg

次に、を反転する方法を示します。あなたが与えられたと仮定すると、それをとし、ます。次に、可能なプリイメージは hh(u,v)=Zh(u,v)=z1z2|z1|=|z2|=nZ

u=00ng(0n)z2
v=1g(0n)z10n

なぜならおよび したがって、それらのXORは、必要に応じて正確にを与えます。f(u)=g(0n)g(0n)z2f(v)=g(0n)z1g(0n)z1z2


逆詳細を追加できますか?いくつかの所与は、ランダム連結又は、次いで計算及び/又は。しかし、結果はおよびます。これは多くの場合発生しないことを確認する必要があります。あなたが否定的なものを構築するために2つの肯定的な例が必要であることを考えると、これは可能であるはずですが、あなたが主張するほど(私にとって)それは明白ではありません。gxx1x2f1(xx2)f1(x1x)g1(x1)g1(x2)
frafl 2013年

@fraflはなぜが片道なのかと尋ねていますか?あなたが持っていると仮定反転ということを、そして反転にそれを使用する照会することにより、上。fAg(x)Ag(x)g(x)
Ran G.

@RanG:わかりやすい。ありがとう!f1(xx)
frafl 2013年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.