■シナリオ関数講義ノート(出典:根来文生博士)

 

第1章 本研究の論題

 

1973年に始められ、以後40年余に及ぶ本研究の論題は以下の3種に要約される。

 

(1)プログラム問題を発症させる原因を捉えること。

 

(2)プログラムの解を求めること。

 

(3)プログラム問題を解法するソースプログラムの構造(以下単にソース)を経験的にではなく存在論の観点から理論的に求めること。

 

 

1.1 従来プログラムの問題

 

プログラムの問題とは従来プログラムの問題の事である。理由はプログラムが誕生以来、今日まで、私の研究により求められたプログラム、即ちシナリオ関数以外、プログラム問題はシステムに深く浸透するばかりで、何も改善されていないからである。従来プログラムの問題を分かり易く言えば、以下の様に要約することが出来る。即ち、

 

①従来プログラムのロジックの完全性は担保できない。

 

②従来プログラムは改善保守が加えられる都度、問題発症の原因が増加する。

 

③従来プログラムを導く合理的な方法論は存在しない。

 

プログラム作成側はそのシステムの利便性効果を強調し、実情は表ざたに出来ない。表ざたにする技術も方法も知らないからである。今日のウィルス、人工知能、自動運転など調子のよい対応を見ていると、この分野の関係者達は従来プログラムに存在する問題のことが何もわかっていないとしか言いようがない。

 

 

 

1.2 プログラム問題を発症させる従来プログラムの原因(とても重要なことが書かれている)

 

本研究では様々な分野の従来プログラム約500本の今でいう主語系譜が求められ、プログラム問題を発症させる原因を明らかにする為に分析された。この分析作業で明らかになったことは、どのプログラムも例外なく、主語は論理的に求められ、それら主語達は部分的に、付言すれば、非同期的に紡がれる仕組みになっていた。これはわれわれが誕生以来、変わることなく、利用し続けているわれわれの本能的な思考法、換言すれば、論理結合と呼ぶ方法が成立させる仕組みである。シナリオ関数では主語ベクトルが主語を論理的に求めるだけではなく、主語ベクトルの第3規約で正統化される。結果、主語ベクトルで求められる主語達は、その全主語すべてが同期的に主語系譜として紡がれる。これはシナリオ関数と従来プログラムが決定的に異なる点である。

 

本研究では名詞とは最小クラスに単位化された記憶領域の識別子を指し、その記憶領域の内容を主語と呼ぶ。

 

本研究では名詞の紡ぎを脈絡と呼ぶ。そして、紡がれた名詞の成立順序をなす脈略を調和脈絡と呼ぶ。

 

従来プログラムでは調和脈絡は同期脈絡になるとは限らない。名詞の主語が全て唯一的になる場合は同期脈絡となるが、そのようなことはまずないからである。シナリオ関数では主語ベクトルの第3規約で主語の文脈の成否を問う仕組みが組み入れられている。これにより、超言語脈絡と呼ぶ脈絡が成立する。そして、この2種の脈絡が名詞の脈絡に同期脈絡を成立させている。この様相が主語系譜である。

 

シナリオ関数は主語系譜を解として導くプログラムに帰着する。これはシナリオ関数が成立させるアルゴリズムが同期アルゴリズムであることを意味する。他方、従来プログラムのアルゴリズムは調和脈絡だけで成立するので、超言語脈絡の多くは結果的に見落とされている。見落とされる脈絡数は主語系譜全体の脈絡数の30%を占める。因みに、従来プログラムを実行させると本研究で名付けたデータ揺動と呼ぶ矛盾現象が発症することがある。これは例えば複数個所に対し同じ計算式で生成され出力されるはずの値が異なる値を出力してしまう現象のことである。超言語脈絡を見落とす従来プログラムの典型的な現象である。これを利用するとシステムを破壊するウィルスプログラムを作ることが出来る。

 

従来プログラムの主語系譜を求めて従来プログラムの欠陥を考察する中で、1985年に至り、従来プログラムの名詞数が例えば20個~70個などとプログラムの種類にも因るが、ある規模を超えると、われわれの思考法では調和脈絡の論理だけで超言語脈絡の論理がカバーできないことが結論づけられた。即ち、従来プログラムのプログラム問題を発症させる本当の原因はわれわれの本能的な思考法にあったのである。われわれはわれわれが想像するほど知的でタフな存在ではない故に、われわれはわれわれの思考法の問題を自覚して改めることが容易にはできない生物だと思われた。故に、プログラム問題を克服するには、結果的にプログラムの構造を改める以外に方法はないとの結論に至るのである。故に、私はシナリオ関数の構造を求めるための論考を始めることを決意するのである。

 

 

 

1.3 シナリオ関数に関する証明(とても重要なことが書かれている)

 

2000年、私はプログラムのソースを決定するアルゴリズムは、データ処理のアルゴリズムではなくプログラムに属す全主語系譜を成立させるアルゴリズムであるとの構想に到達する。そして、このアルゴリズムで決定されるプログラムのソースをシナリオ関数と名付ける。当時、この構想はまだ完全に完結してはいなかったが、LYEE(governmental methodology for software providence)と総称した。この構想は世界的に特許化され、日本では36個のプロジェクトで使用された。

 

2008年に至り、私はデータ処理のアルゴリズムを基に主語系譜とそれを成立させる同期的アルゴリズムAを理論化する。

 

そして、2010年にはこのアルゴリズムAで決定されるシナリオ関数のソースが求められた。シナリオ関数が成立させるアルゴリズムは帰結としてアルゴリズムAと同等になる。従来プログラムが成立させるデータ処理のアルゴリズムの規模はアルゴリズムAの約70%程度で、アルゴリズムAに内包される事が証明1された。従来プログラムがデータ処理のアルゴリズムで成立することから発症するプログラム問題はシナリオ関数ではアルゴリズムAの同期性を成立させる過程でシナリオ関数が自律的に解法することも証明2された。これら証明1,2は複雑なので、シナリオ関数をPC上でエミュレートすることで観察することを勧める。

 

2010年には主語系譜の妥当性を検証する為に従来プログラムの主語系譜を取り出すアルゴリズムが論考された。このアルゴリズムの論理サイズは約2万ラインである。結果からいえば、主語系譜の概念が明らかになっていない段階での500本の従来プログラムのソースの調査分析は私独りの手と紙で行われたのだが、この作業は15年余の期間を要したが、これは10000000ラインのプログラムを解析する作業量に相当する。シナリオ関数からその主語系譜を取り出すアルゴリズムは約500ラインである。2万ラインとの違いは、シナリオ関数は主語系譜のアルゴリズムを解としてソースが決められるのに対し、従来プログラムではデータ処理のアルゴリズムを基にソースが決められるためである。そして、両者の主語系譜が重ね合わせられることからプログラムの本質は同期性であること、同期性を成立させられない従来プログラムはシナリオ関数の前段に位置し、未完状態のプログラムであることが検証されたのである。