【けいしきげんご】
形式言語 とは?
💡 文法のルールで「正しい文」を厳密に決める、言語の数学理論
📌 このページのポイント
形式言語って普通の言語と何が違うの?
日本語や英語のような「自然言語」はあいまいさがあるよね。「彼女は美しい花の絵を描いた」は複数の解釈ができる。形式言語は文法規則を数学的に厳密に定めて、あいまいさを完全に排除した言語のことだよ
チョムスキー階層って何?
言語学者のノーム・チョムスキーが提唱した分類で、文法の複雑さで言語を4段階に分けたものだよ。正規言語(Type 3)→ 文脈自由言語(Type 2)→ 文脈依存言語(Type 1)→ 帰納的可算言語(Type 0)の順に表現力が上がるんだ
プログラミングとどう関係するの?
正規言語と文脈自由言語の違いは?
実務で形式言語の知識が役立つ場面ってある?
まとめ:ざっくりこれだけ覚えればOK!
「形式言語」って出てきたら「文法ルールで厳密に定義された言語の理論」と思えればだいたいOK!
📖 おまけ:英語の意味
「Formal Language」 = 形式言語
💬 「formal」は「形式的な・厳密な」という意味で、日常言語のあいまいさを排除して数学的に厳密に定義した言語のことだよ