初期起動にやけに時間が掛かっている

初期起動にやけに時間が掛かっている.いつまで経っても砂時計のままだ.⇒Θの既定値に大きな値,1234567890123456 が入っていた.テスト用に設定したものがそのままになっていたのだろう.それにしても,抜けて来られないというのは問題だ.PowerResidueFunc で「除数上限オーバー」が発生している.エラーコード

ERROR_POWERRESIDUEFUNC_OVERFLOW

を定義して,その後の処理をパスするようにした.

「除数上限オーバー」はΘがMAXARRAYSIZEを超えたときに発生する.これは物理的に配列が構成できないため避けることはできないが,このとき,φ(Θ)などは計算値が表示されているのに,ψや(φ(Θ), #)などは表示されていない.#の値が出ているのは消し忘れか?fixedとketaは同時に消去しているので,どこかで更新しているのだろう.⇒表示されている123は既定値だ.処理に入る前に消去しておいた方がよい.⇒ClearParameterを止めてあった.理由は不明.

クリアされるようになったが,φ(Θ)の計算くらいはできるのではないだろうか?⇒DispParameterの中で表示するようにした.

MAXARRAYSIZEを&H7FFFFFFFまで上げてみたら,PsiFunctionでエラーになってしまった.配列を生成するところでエラーが発生する.やはり,7FFFFFFF=28ビットが限界のようだ.暗号の世界などでは512ビットなどというのが普通なので,到底およびもつかない.

▲BuildMatrixは誤っていないか?⇒点検してみよう.⇒それ以前に,BuildMatrixをΘ=1234567890123456で実行してエラーで停止した.⇒二次元配列はMAXARRAYSIZEまで取れない.MAXSQUARESIZEという定数を導入して制限を掛けるようにした.T(i, j) = T(i, j – 1) * T(i, 1) Mod Θでもエラーになるので,掛ける前にmodを取るようにした.

▲α=123472,γ=2,Θ=38, β=20のとき,Ξは一見レピュニットになっているように見えるが,インジケータは立っていない.

▲異種文字数/剰余数列周期をマトリックスに表示する

▲Θ=1234567890123456, α=Θ=1234567890123456,γ=2で例外が発生した.

image

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA