AI用語集
人工知能の完全辞典
プログラムの演繹的合成
形式的仕様から論理的演繹ルールを使用して事前条件と事後条件を実行可能コードに変換することで、プログラムを自動生成する手法。
形式的仕様
システムやプログラムの期待される動作を数学的に正確に記述したもので、Z、VDM、Bなどの形式的記法を使用してプロパティと制約を定義する。
最弱事前条件の計算
ダイクストラが発明した技術で、与えられた事後条件を保証するためにプログラム実行前に真でなければならない最小条件を決定し、形式的検証において基礎的な役割を果たす。
ホア論理
事前条件、命令、事後条件を結びつけるホアトリプレット{P}S{Q}を通じてコンピュータプログラムの正しさについて推論するための推論規則の形式的体系。
契約によるプログラミング
コンポーネント間の相互作用が相互の責任を定義する形式的義務(事前条件、事後条件、不変条件)によって管理されるソフトウェア設計アプローチ。
ループ不変量
ループの各反復の前後で真のままである論理的性質で、反復プログラムの終了と正しさを証明するために不可欠。
論理における解決
一次論理のための完全な推論規則で、既存の節の集合から新しい節を自動的に推論することを可能にする。
表示的意味論
プログラムを数学的オブジェクト(関数、集合)に変換することで正確な意味を与える数学的アプローチで、形式的合成にとって不可欠。
書き換えシステム
用語を他の用語に変換する規則の集合であり、プログラムの合成と変換における計算と最適化をモデル化するために使用される。
フロイドの方法
構造化されたプログラムの正しさを証明するためにアサーションと不変量を使用するプログラム検証の先駆的な技術であり、現代の方法の先駆け。
依存型システム
型が値に依存できるシステムであり、型システム内で複雑なプロパティを直接表現し、型付けのレベルで正しさを保証することを可能にする。
例示による合成
演繹的推論と例からの学習を組み合わせ、形式仕様と観測された動作の両方を満たすプログラムを生成するハイブリッドアプローチ。
関係的抽象化
プログラムの動作を状態間の関係によって表現する技術であり、プロパティに関する推論と正しいプログラムの合成を容易にする。
抽象解釈
具体的な領域ではなく抽象的な領域で計算することにより、プログラムのプロパティを静的に分析することを可能にする意味論的近似の理論。
プログラム不変量
プログラムの実行によって保持される論理的プロパティであり、演繹的合成法における部分正当性と全体正当性を証明するために使用される。
方程式推論
書き換えによる方程式の変換に基づく証明法であり、関数型および代数的プログラムの合成に不可欠。
代数的仕様
代数的公理によってデータ型と操作を定義し、正しい実装の自動合成を可能にする形式的アプローチ。
高階論理
述語と関数に関する量化を可能にする一階述語論理の拡張で、合成における複雑な仕様を表現するために不可欠。