計算システムが自分自身の構成や計算過程をモデル化した表現を内部に持ち、 その表現を参照・変更して自己の構成/計算過程に反映させることを、自己反 映計算という[8]。
計算システム S が言語 L に基づいているとする。この時、S の実体
e に関する計算とは、S の L に基づく内部表現 の中に含まれて
いる e の L による内部表現
に対する書き換えである。自己反映
計算とは、S が自分自身をモデル化した L による表現
を
に含み、計算過程において
が変化するにつれ
も S の状態を
適切に表現するように変化し、S 内で
を変更した場合、それが S
の構造に反映することである。例えば、LISP で書かれた LISP インタプリタ
が、LISP プログラムの実行結果によって自分自身の LISP 記述を変更するよ
うなものである。(手続き的リフレクションにおいては、これを行うために上
位のメタインタプリタ、さらに上位のメタメタインタプリタというメタインタ
プリタの無限の階層「リフレクティブ・タワー」を必要とする。)
この自己反映計算では、システム自身が自分の構成を変化させることが出来る。