No.6ベストアンサー
- 回答日時:
そう, そんな感じ.
で, もともとの話に戻ると, 本質的には乗算ができればいいだけだから, 一度乗算回路を作っちゃう. そしてその回路からがんばって論理式に変換していく. このときに各素子の入出力関係を CNF で書いていく (xor については #5 の通り. and や or, not も同様に書き下しす) と, 最終的に回路全体を表す CNF は素子数の定数倍のサイズにおさまる.
k ビット同士の乗算だと回路の素子数が O(k^2) でいけるはず (and が k^2個と 2kビットくらいの加算器が k個くらい) だから, これで大丈夫.
この回答へのお礼
お礼日時:2015/03/22 17:26
大筋は分かったんですけど実際、実装するとなると結構時間かかりそうです。
一旦この質問は閉じようと思います。
ありがとうございました。
No.5
- 回答日時:
P とか NP とかいったクラスは, もともと「YES か NO かを答える」判定問題を対象としています. それに対して「N = ab となる a (や b) を求める」ってのは「YES か NO かを答える」問題じゃないから, 本来は P だの NP だのといったクラスとは関係ないんです.
これが, 例えば「N と k が与えられたときに, N が k 以下の因数を持つかどうか」という問題であれば「YES か NO かを答える」問題になるので P なり NP なりといったクラスのどこかに入るはずです.
あと, 排他的論理和で「変数を増やす」ってのは, 次の CNF 式を考えてみてください:
(not x or not y or not z) and (not x or y or z) and (x or not y or z) and (x or y or not z)
この 4つを全て真にするためには, z は x と y に対してどのような関数関係にあればいいでしょうか?
No.3
- 回答日時:
私のところでは, 「与えられた自然数nに対してn=abを満たすような1でない自然数a,bが存在するときYES, 存在しないときNOを返してください」の意味で「素因数分解」ということはありえないんでねぇ....
そして「与えられた自然数nに対してn=abを満たすような1でない自然数a,bが存在するときYES, 存在しないときNOを返してください」は P だったはず.
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 数学 『4色問題③』 2 2022/11/14 00:31
- 数学 『完全<困難』 2 2022/11/28 06:36
- 計算機科学 判定問題がPに属するなら探索問題はNPに属する。では判定問題がNPに属するとき探索問題は? 2 2023/05/20 19:10
- 数学 離散フーリエ逆変換が周波数分割数をNにできる理由について 4 2022/09/18 12:56
- 数学 中3多項式置き換えによる展開と、因数分解について ①(x+y-2)^2 ②(x-y+5)(x-y-5 2 2022/04/21 00:00
- 高校 対数方程式につきまして 4 2022/05/05 07:55
- 数学 フーリエ変換、逆変換の「2π」の扱いについて 3 2022/10/07 08:31
- 統計学 加重最小二乗法=①「変数を自然対数変換」=②「誤差項の分散の逆数を重み付け」? 8 2022/11/26 11:15
- 数学 『因数に分解するということ』 9 2022/06/27 06:14
- 数学 フーリエ変換後の負の周波数成分の扱いについて 4 2022/09/03 10:18
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
5進法を10進法への直し方
-
16進小数0.Cを10進数小数に変換...
-
50以下は“50”も入るのですか?
-
ヤコビアンが0になってしまう場...
-
8進数から16進数 16進数から8進数
-
HEX2BIN関数の使い方。
-
偏微分の記号をタイプするため...
-
n進法→m進法への変換
-
1分45秒75で289,995円稼ぐA君が...
-
dBm/HzからdBm/MHzへの単位変換
-
EXCELで10進数表記をB...
-
プログラミング第1級の問題で 1...
-
算数計算 大至急お願いします
-
2進数の0.101101101101・・・...
-
数学の質問です。 関数f(t)の...
-
「じじょう」が正しい読み方?
-
対数変換する意味?
-
1.6dLは、何L何dLですか? 問題...
-
小数点が混じった2進数を8進数...
-
デシベルから加速度の変換について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
50以下は“50”も入るのですか?
-
5進法を10進法への直し方
-
16進小数0.Cを10進数小数に変換...
-
Excel 16進数
-
HEX2BIN関数の使い方。
-
なんでですか?
-
dBm/HzからdBm/MHzへの単位変換
-
dBm→dBμV/mの換算について
-
EXCELで10進数表記をB...
-
ACアダプターの消費電力の件
-
平行の記号
-
10進数の50を2進数で表すといく...
-
フーリエ変換・逆変換の虚数成...
-
小学4年生の算数(小数)の問題で...
-
対数変換する意味?
-
算数計算 大至急お願いします
-
=(イコール)の上下に点々があ...
-
「じじょう」が正しい読み方?
-
デシベルから加速度の変換について
-
フーリエ変換、逆変換の「2π」の...
おすすめ情報
素因数分解は素因数分解ですけど。
なぜ定義なんか聞かれるんでしょう。
いまは与えられた自然数を1でない2つの自然数の積の形に直すことを目標にします。
与えられた自然数nに対してn=abを満たすような1でない自然数a,bが存在するときYES,
存在しないときNOを返してください。
これっていちいち確認することですか?
CNFの充足解が見つかったらa,bも特定できると嬉しいです。
YESかNOかはPだけどa,bを求めるのはPかどうかわからないてことですか。
排他的論理和で変数を増やせばいいってのはよくわからないです。
あんまりうまい手が思いつかない。
z=x xor yみたいですね。
w xor x xor y xor zを表そうと思ったら
a=w xor x
b=a xor y
c=b xor z
みたいにやっていけばいいってことですか?
確かに多項式サイズに収まりそうなような気がします。
なるほど。だいぶ見えてきました。
ありがとうございます。
まだわからないことがでてくるかもしれないので質問はしばらく開けたままにして置かせてください。
よろしくお願いします。