評価: +229+–x


点灯するSCP-010-JP


アイテム番号: SCP-010-JP
オブジェクトクラス: Safe
特別収容プロトコル: SCP-010-JPはサイト-81██にある実験室の金庫に厳重に保管します。実験室は監視カメラを設置し、職員が入退出する際はSCP-010-JPが確実に金庫の中に収められていることを確認します。また、特別な理由なしにSCP-010-JPを金庫の外に持ち出したり、動作させた職員は厳しく処罰されます。SCP-010-JPの実験は物理的に独立させた計算機システム上で行い、外部にその影響が及ばないように注意します。SCP-010-JPで動作させることができるプログラムは、事前にSCP-010-JP監査会のレビューを通し許可を得たものに限定します。
説明: SCP-010-JPはUSBメモリの種類の1つのように見えます。一般的なUSBメモリとSCP-010-JPが異なる点は、外部プログラムを読み込み、自身で計算できる機能を有するという点です。SCP-010-JPは実際には小型のコンピュータであると考えられます。そしてUSB端子は外部コンピュータへの入出力インタフェースです。また、SCP-010-JPは一般的なコンピュータとも決定的に異なる点があります。それは現在実在するコンピュータが不可能な"未来を入力に取る"機能を有していることです。また、その機能を使用することで様々な現象を引き起こします。詳細は実験記録010-JPを参照して下さい。
SCP-010-JPを一般的なコンピュータのUSB端子に接続すると、本体のガラスのような物質の部分が青く点灯します。未知のプロトコルによるデータ転送が数回行われた後、USB3.0もしくはそれ以前のバージョンで正常に動作するUSBメモリとして認識されます。表示される容量はコンピュータのデバイスやOSで認識できる最大容量に依存し、現在では16EBまで確認されていますが、実際にはそれ以上の容量があると考えられています。
SCP-010-JPが接続された時は、毎回必ず、実行環境に合わせたプログラムが起動します。多くの場合一般的にコマンドプロンプトや端末と呼ばれるような、CUI表示のプログラムです。このプログラムはSCP-010-JPを動作させるためのプログラムインタフェースです。いくつかの一般的な操作と、外部プログラムを読み込み自身で実行させるためのコマンドを受け付けることがわかっています。
SCP-010-JPは1つのパーティションを持ち、ルートディレクトリに1つのフォルダとファイルがそれぞれ記録されています。フォルダは"Sample"、ファイルは"Readme.txt"という名前です。"Sample"ディレクトリには"sample01.mra"から"sample04.mra"までの4つのC言語ライクなプログラムファイルが記録されています。"Readme.txt"はSCP-010-JPの使い方を簡単に説明するテキストファイルで、その内容は文書010-aに示します。ファイルは全て一般的なテキスト形式で保存されています。これらのファイルを含むあらゆるファイルはSCP-010-JPから自由に移動及び削除することができます。
文書010-a: 以下は"Readme.txt"と名付けられたテキストファイルの内容です。

Mirai PCをご注文頂きありがとうございます。
Mirai PCは未来のコンピュータです。
Mirai PCは未来を予測し、未来を計算します。
未来の世界はもう貴方の手の中です。
○Mirai PCの使い方
１．まずはSampleフォルダのサンプルプログラムを動かしてみましょう。Mirai PCを接続して表示された画面に"run sample01.mra"と入力してEnterキーを押すだけです。
２．サンプルプログラムがどうやって動いたのか考えてみましょう。各プログラムファイルに書いてある解説を読んで、理解しましょう。
３．自分で好きなプログラムを書いて動かしてみましょう。
※わからなければインターネットで検索してみましょう。Mirai PC Projectの公式サイトを始め、色々な解説サイトが見つかるはずです。
Mirai PCの開発に興味がおありですか？
Mirai PCは誰でも開発に参加することができます！
詳細はこちらをご覧下さい：[削除済]
(c) Mirai PC Project

上記の公式サイトを含む"Mirai PC Project"に関する有力な情報は得られていません。

+実験記録010-JP

-実験記録010-JPを隠す

以下はSCP-010-JPで実際にプログラムを動作させた実験記録です。

日付: ████/██/██
プログラム: sample01.mra
プログラムの概要: SCP-010-JPに付属していたサンプルプログラム。ファイルの先頭にはコメントで"最初にライトを付けてみましょう。"と書かれている。プログラムは、ライトの状態を表す変数に1を代入している。
手順: 桑名博士がプログラムを実行。
結果: SCP-010-JPが青色に点灯。
注: ただの"Hello world!"というところです。次行きましょう。 - 桑名博士

日付: ████/██/██
プログラム: sample02.mra
プログラムの概要: SCP-010-JPに付属していたサンプルプログラム。ファイルの先頭にはコメントで"貴方が押すキーは1、2、3？未来の貴方に聞いてみましょう。"と書かれている。プログラムは、ある変数が"未来の状態を知る関数"の返り値を取り、その変数の値をライトの状態を表す変数に代入している。その後、その最初の変数はキーボードの状態を取得している。
手順: 桑名博士がプログラムを実行。その後、何も知らない███研究助手にキーボードの1から3までの数字を入力させる。それを数度繰り返す。
結果-1: SCP-010-JPが青色に点灯。その後、███研究助手は1のキーを入力した。
結果-2: SCP-010-JPが赤色に点灯。その後、███研究助手は2のキーを入力した。
結果-3: SCP-010-JPが黄色に点灯。その後、███研究助手は3のキーを入力した。
以降も同じ結果なので省略。
注: 何度やっても色と数字の関係性は変わりません。にわかには信じがたいでしょうが、現在の色は未来のキー入力を反映しているのでしょう。 - 桑名博士

日付: ████/██/██
プログラム: sample02.mra
プログラムの概要: 上に同じなので略。
手順: 桑名博士がプログラムを実行。SCP-010-JPの光の色を███研究助手が確認後、彼がキーボードの1から3までの数字をわざと光と異なる数字を選んで入力する。
結果: SCP-010-JPが青色に点灯。その後、███研究助手は1のキーを入力した。
注: わざと間違えるように言ったはずですが。仕方がないので私自身でやります。 - 桑名博士

日付: ████/██/██
プログラム: sample02.mra
プログラムの概要: 上に同じなので略。
手順: 桑名博士がプログラムを実行。SCP-010-JPの光の色を博士が確認後、彼がキーボードの1から3までの数字をわざと光と異なる数字を選んで入力する。
結果: SCP-010-JPが赤色に点灯。その後、桑名博士は2のキーを入力した。
注: ああ、文字に起こすのもおぞましい。こんなことになるなんてこれまで知りませんでした……最初、私は1を入力しました。しかし入力は受け付けられませんでした。100回、いや200回は試しました。ふと時計を見ると、1分たりとも針が進んでいません。███研究助手に、私は何度キーを押したか尋ねました、すると彼は「いいえ、まだ一度も」だと。私は彼を殴りました。それから私は2を押し、悪夢から解放されました。彼が何も覚えてないというのが不幸中の幸いです。いやなにより幸いなのは、私には2のキーを押すという、ループを脱出する鍵が与えられていたことでしょう。 - 桑名博士

日付: ████/██/██
プログラム: sample02.mra
プログラムの概要: 上に同じなので略。
手順: 桑名博士がプログラムを実行。SCP-010-JPの光の色を博士が確認後、対応するキーを破壊。その後、実験に参加するD-010-JP-1にキーを押させる。
結果: SCP-010-JPが黄色に点灯。3のキーを遠隔操作で破壊した後にD-010-JP-1にキーを押させるよう命令。直後にD-010-JP-1は施錠されているはずの実験室から消失。また入力用のキーボードはバラバラに砕かれていた。その原因は不明。画面には3のキーが押されたと表示されていた。
注: いずれその結果が必ず起きるなら、ループは必ず抜け出せると私は仮説を立てました。そしてそれが実証されました。 - 桑名博士

日付: ████/██/██
プログラム: sample03.mra
プログラムの概要: SCP-010-JPに付属していたサンプルプログラム。ファイルの先頭にはコメントで"線路は続くよどこまでも。それじゃあ同じ駅を通らないで行ける一番長い道程はどれでしょう？　残念ですが、このプログラムは動きません。"と書かれている。プログラムは████年の日本全国のJR路線で、同じ駅を経由しない最長な経路を総当たりで求めている。1その結果を未来で入力し、プログラムの最初に出力している。
手順: 桑名博士がプログラムを実行。
結果: 画面に"Timeout."と表示された。
注: 一般的なコンピュータでは結果が出るまでに途方もない時間がかかるプログラムです。未来の計算結果を先に取ってくることができたとしても、その未来の計算が異常に時間がかかるものならば、計算不可能としてしまうようです。あまりにも遠い未来の情報は取得できないのか、それとも何らかの原因により計算が途中で阻止されてしまうのか、明確な理由はわかりません。 - 桑名博士

日付: ████/██/██
プログラム: sample04.mra
プログラムの概要: SCP-010-JPに付属していたサンプルプログラム。ファイルの先頭にはコメントで"一番長い路線がわからない？みんなで試せばわかります。"と書かれている。プログラムの大枠はsample03.mraと変わらないが、総当たりの試行ごとに未来の情報を調べている。未来で最長でないとわかった試行は"失敗した未来を終了させる関数"を呼び出して、処理を切り上げている。
手順: 桑名博士がプログラムを実行。
結果: 即座に最長経路が出力された。既存のコンピュータで計算してみたところ、その最長経路の結果は正しいと考えられる。
注: sample03からプログラムが改善されています。どのように改善されているかというと、そうですね……例えば貴方が人生で5つの選択肢を迫られたとします。通常、貴方はその1つしか選べません。しかし5つの並行的に存在する貴方がそれぞれ別の選択肢を選び、最終的に一番良かった選択肢を選んだ貴方へと結果が収束する。そういうことをこのSCP-010-JPはやっています。計算時間が短くなるのは、時間的に見れば一発で正解となる選択肢を選び取ったようなものですからね。 - 桑名博士

日付: ████/██/██
プログラム: bubble.mra
プログラムの概要: 桑名博士が書いた単純なバブルソート2のプログラム。未来の情報を取得しないもので、一般的なコンピュータでも実行可能。
手順: 桑名博士がプログラムを実行。データ件数は10万件。処理時間を計測。ただしSCP-010-JPの時間に関する性質を考慮し、計算機システムと干渉しないストップウォッチを用いて目視で計測する。
結果: 正しい結果が出力された。処理時間は約215秒。
注: 一般的なコンピュータ程度の結果です。 - 桑名博士

日付: ████/██/██
プログラム: bubble_a.mra
プログラムの概要: bubble.mraのプログラムを改善したもの。最初に計算結果を出力する。バブルソートを行い、その計算結果を最初の結果として代入している。
手順: 桑名博士がプログラムを実行。データ件数は10万件。処理時間を計測。ストップウォッチを用いて目視で計測する。
結果: 正しい結果が出力された。処理時間は0秒(測定不可)。ただし、プログラム自体は約3分半の間動作し続けた。
注: 計算結果が先取りされました。しかし計算時間が短縮されたわけではありません。 - 桑名博士

日付: ████/██/██
プログラム: bubble_b.mra
プログラムの概要: bubble_a.mraのプログラムを改善したもの。最初に計算結果を出力した後に、計算が済んでいればプログラムを終了させる、という処理を加える。
手順: 桑名博士がプログラムを実行。データ件数は10万件。処理時間を計測。ストップウォッチを用いて目視で計測する。
結果: 画面に"Time Paradox Error."と表示された。
注: エラーです。結果がわからなければ計算します、計算すれば結果がわかります、しかし結果がわかるなら計算が行われません。この矛盾は許容されないようです。 - 桑名博士

日付: ████/██/██
プログラム: bubble_c.mra
プログラムの概要: bubble_b.mraのプログラムを改善したもの。計算結果を未来へ返した後に、"失敗した未来を終了させる関数"を書き加えた。
手順: 桑名博士がプログラムを実行。データ件数は10万件。処理時間を計測。ストップウォッチを用いて目視で計測する。
結果: 正しい結果が出力された。処理時間は0秒(測定不可)。プログラムも即座に終了。
注: 無事結果が出ました。また、計算時間がなくなりました。一体いつ計算が行われたのでしょう。この"失敗した未来を終了させる関数"とは何でしょうか。解明には別の実験が必要です。 - 桑名博士

日付: ████/██/██
プログラム: termination.mra
プログラムの概要: エージェント███が書いたプログラム。内容はただ"失敗した未来を終了させる関数"を実行するのみ。
手順: ███がプログラムを実行。
結果: 桑名博士により実験は却下。
注: これを読んでいる貴方は知っておかなくてはなりません。財団にエージェント███という職員は過去及び現在にも在籍していませんし、将来にわたって現れることはないでしょう。つまり、これはただの冗談だと言えます。ですがこのような考えを持つことは今後一切ないようにして下さい。 - 桑名博士

これ以外にも何か有用な（決して悪い方向でない）使い道を思い付いた方はお気軽にご連絡ください。 - 桑名博士




由来: SCP-010-JPはまだ財団に所属する前の桑名博士が、東京都████区にあるジャンク屋で████/██/██に発見し、外見の物珍しさから購入に至ったものです。その性質を知った桑名博士はSCP-010-JPを使って[削除済]、財団によって特定されました。[削除済]の結果、桑名博士は財団に迎えられました。これ以外のSCP-010-JPの例は発見されていませんが、財団は現在も捜索中です。



Footnotes
1. 一般的に最長路問題と呼ばれる、NP-困難な問題。普通のコンピュータでは非常に時間がかかることで知られています。効率的なアルゴリズムを用いたり近似的な解で妥協したりするなどすれば時間短縮できますが、それでも数時間から数か月かけて計算することがあります。
2. ソートとはデータを昇順または降順に並び替える処理。バブルソートはソートの1種で、(並列処理等をしなければ)データ件数に対して処理時間が二乗で増加します。