• ベストアンサー

量子コンピュータのプログラム

量子コンピュータのプログラムのことをちょっと知りたいんです。 プログラム概念(やり方)はだいたいわかったのですが、 実際のプログラムというのを知りたいんです。 数式などではなく、実際に入力する数値です。 いくつかのステップが必要であれば、全てのステップを… とりあえず、数値に3を含まない素数の求め方なんかどうなるんですか? 具体例で教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • drmoreau
  • ベストアンサー率41% (33/79)
回答No.7

ENIACの時代では、それ自体がプログラムでした。その後、IBMがパンチカードによるシステムを開発し、ノイマンがストアードプログラム方式を考え出して、現在にいたっているのです。 Winoさんは論理ゲートによるプログラミングというのがあまりピンとこないようですね。 この方式で、量子コンピュータのプログラミングをシミュレートするソフトを販売している会社があるので、このことを話題にしたのですが、論理回路でのプログラミングという観念をお持ちではないのでは紹介してもあまり意味が無いですね。38万もするので個人で買っても仕方ありませんしね。教育機関向けに販売されているようです。 お役に立てなくて残念です。 今現在、量子コンピュータは、使い勝手はENIAC程度のようです。将来的には、数値演算コプロセッサのように、今現在流通しているCPUの演算処理専用のプロセッサとして搭載されるようです。8086に対する8087のような関係になるのでしょう。そのころには、UNIX上で、FORTRANやCでプログラミングするようになるでしょう。 ですから、最初の質問にあった「数値に3を含まない素数を求める」プログラムもCやFORTRANで組めば、量子コンピュータで動かすことができるでしょう。まだだいぶ先のことのようですが。

Wino
質問者

お礼

そうですか・・・ 用途としては(まだ?)汎用性がないのでコプロ的用途になるとは思っていましたが、けど、聞く所によると量子コンピュータは時々間違えるとか、シュミレーションした時は適度に間違うのでしょうか? でも、既存のアルゴリズムを使用したプログラムでは似たようなことは出来るでしょうが、本当意味のランダムは発生できないので、量子的不一致はおきないですよね?  >>論理回路でのプログラミングという観念をお持ちではないのでは… いや、わかってはいるんですが、模した物ではなく現物が知りたいんです 光子を直に手で…という訳にはいかないでしょうが、既存コンピュータを使用して正確に答えが出せるのか…と疑問が残るんです。 それにしても、38万円で売っているとは知りませんでした。たしかに、個人では買えるものではありませんね、 既存のコンピュータでは基本的に順番に処理するのでカードでもいいんでしょうが、やはり量子機械(?)にも同じ考えで良いとは納得できない… ん~  * 長永付き合ってもらって、ありがとうございます。

その他の回答 (6)

  • drmoreau
  • ベストアンサー率41% (33/79)
回答No.6

リレーICを組み合わせるというのは、物理的なプログラミングです。電気配線と同じことです。初期のコンピュータの配線によるプログラミングというのと同じです。初期のコンピュータがゲートの配線(ここではリレーICと書きましたが、実際には、ゲートをつなぐことです)で弾道計算をやったようなものです。量子力学等で言う観察ではありません。この配線されたものにスイッチを入れることが量子力学で言う観察にあたります。量子コンピュータも電気で動作するようですから、配線すするだけで動作するとは思えませんが。

Wino
質問者

補足

ん~ そうなんですかね、それで、その配線を既存のコンピュータによってシュミレーションすることが、プログラムすることなんですかね・・・ じゃぁ、専門書などに有る量子学的 AND OR回路その物がプログラムになるわけかな? プログラム方法=入力回路の設計 ってことになるんですかね ちょっと糸口が見えかけてきました。 もっといろいろな意見が聞きたいですね できれば、実際にやってる人とか・・・ 

  • drmoreau
  • ベストアンサー率41% (33/79)
回答No.5

それは失礼しました。4bitのCPUを作られたということですね。 それらのリレーICを組み合わせて複雑な処理をさせることが、今現在の量子コンピュータのプログラミングということではないでしょうか。もちろんそのリレーICは従来のコンピュータものとは異なりますが。

Wino
質問者

補足

?えっ? 違うでしょ というか、 従来の方法ではまず、最初の条件を与える時に違うでしょ? だって、外部刺激(観察など)を与えると重ね合わせ状態を維持できないので、条件を追加できないし、だからといって有る程度のステップに分けていたら、同時…の利点が半減してしまいますし、どうなっているのでしょう? IBM・NEC・NTTなどに質問しましたが、NECは無視(無回答)、あとは、開発中につき公表できないとのこと(あたりまえですね) ん~ 一般人が知る事はまだできないんですかね?

  • drmoreau
  • ベストアンサー率41% (33/79)
回答No.4

手作り電卓とは違いますね。手作り電卓の場合もうその中にCPUが入っていますから。IBMなどが実験中のものは、そのCPUを構成する素子を配線でゲートを組み、それらのゲートを組み合わせて複雑な計算をさせているのだと思います。手作り電卓のスイッチは、データを入力するものですから根本的に違います。 コンピュータは、足し算さえできれば十分です。今のスーパーコンピュータでさえ、引き算を知らないのですから。 量子コンピュータと現在のコンピュータの違いは、論理素子が異なっているだけです。現在のコンピュータの論理素子は0か1の状態しか保持できませんが、量子コンピュータは0と1の重ね合わさった状態(このあたりのことは、あまりよく理解できていません。量子コンピュータに関する記事を丸覚えしているだけです。)を保持できるらしいです。

Wino
質問者

補足

>>量子コンピュータは重ね合せ状態… そうなんす、この重ね合せ状態がくせもので、重なってる時は確認できず(してはいけない)確認した時には、答えになっている…? ということみたいなんですよね この理論自体は頭の中で理解はしたつもりなんですが、それはあくまで"話"であって、そのような機械は存在不可能な物だと思ってました。が、実際に実験機を作ってしまって、とりあえずですが計算ができるらしいではないですか これって本当なのか?と、でたらめに出た答えを良いように解釈しているだけではないのか?と思えてしかたないんです。 * ちなみに手作り電卓(?)は二進数で入力(4bit)したものを二進数で出力するもので CPUとは言えるものは使用していません。リレーICですが、これも CPUっすか? まぁ、一応、中央処理装置かもしれませんが…

  • drmoreau
  • ベストアンサー率41% (33/79)
回答No.3

IBMなどの実験中の量子コンピュータについて補足しておきます。 初期のコンピュータENIACのように配線でプログラムしているのだと思います。量子コンピュータといっても操作に関しては従来のコンピュータと変わるものではないと思います。 ハードが製品化された場合、C言語等のプログラム言語を使ってさまざまな問題を解決するという形になると思います。 当然OSなども必要です。

Wino
質問者

補足

どうも、ありがとうございます。 それで… そうなんです。 あたしの知っている限りでも実験機はまだ言語などを使用しておらず、ジャンパコードやスイッチでプログラムしているようなのです。 それに、結果も直接モニタで見る状態ではなく、出力された(光子?)ものを、既存のコンピュータなど解析装置で確認しているようなのです。 だから、どうしているのか?と疑問に思いまして… 以前、スイッチ(入力)とLED(出力)で手作り電卓(?)を作ったことが有るのですが、そんな感じなんですかね? でも既存の足算しか出来ない物とは違うんでしょ? 六千円以上もする専門書でも具体例が無いので理解しかねているんです。

  • drmoreau
  • ベストアンサー率41% (33/79)
回答No.2

私も量子コンピュータには興味があっていろいろ調べていますが、量子コンピュータでも従来のコンピュータでもOS,プログラム言語は必要だと思います。量子コンピュータと従来のコンピュータの違いは、論理素子が異なるだけですから、ディスクアクセス、モニタ表示、キーボード入力の部分では、OSが必要なのでは無いでしょうか。従来のコンピュータを量子コンピュータに接続して、データをやり取りするにしても、最低限のモニタプログラムは必要だと思うのですが。

  • drmoreau
  • ベストアンサー率41% (33/79)
回答No.1

あなたがお使いの量子コンピュータの製品名、OS、プログラミング言語等を教えていただければ、少しはお役に立てるかもしれません。

Wino
質問者

補足

OSはもとより、高等言語は使用する予定がありません 汎用型のマシン語… というのは 考え方が違いますか? 使用機種は未定ですが、 仮定としてIBMが現在実験している 7qbit機ということではどうでしょう? あの、機器は言語なんて使っているんですか? そこんところも詳しく知りたい… というところです