Open2

プログラム意味論

ahiromasaahiromasa
  • 形式的意味論
    • 操作的意味論
      • プログラムの意味を抽象機械の内部状態の遷移(ステップ)として記述する方法
    • 表示的意味論
      • プログラムの意味を数学的な関数として記述する方法
    • 公理的意味論
      • 抽象機械の内部状態に対する表明(アサーション)として記述する方法
ahiromasaahiromasa
  • 操作的意味論
    • スモールステップ意味論
      • 簡約できない値になるまで簡約を繰り返す
      • 反復(iterative)
    • ビッグステップ意味論
      • 式や文から直接結果を得る
      • 再帰(recursive)
# スモールステップ意味論

x = x + 1, { x = 2 }
x = 2 + 1, { x = 2 }
x = 3, { x = 2 }
do-nothing, { x = 3 }

x = 1 + 1; y = x + 3, {}
x = 2; y = x + 3, {}
do-nothing; y = x + 3, { x = 2 }
y = 2 + 3, { x = 2 }
y = 5, { x = 2 }
do-nothing, { x = 2, y = 5 }
# ビッグステップ意味論

TODO