形式文法・とは?初心者がつまずかない基礎ガイド共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
形式文法・とは?初心者がつまずかない基礎ガイド共起語・同意語・対義語も併せて解説!
この記事を書いた人

岡田 康介

名前:岡田 康介(おかだ こうすけ) ニックネーム:コウ、または「こうちゃん」 年齢:28歳 性別:男性 職業:ブロガー(SEOやライフスタイル系を中心に活動) 居住地:東京都(都心のワンルームマンション) 出身地:千葉県船橋市 身長:175cm 血液型:O型 誕生日:1997年4月3日 趣味:カフェ巡り、写真撮影、ランニング、読書(自己啓発やエッセイ)、映画鑑賞、ガジェット収集 性格:ポジティブでフランク、人見知りはしないタイプ。好奇心旺盛で新しいものにすぐ飛びつく性格。計画性がある一方で、思いついたらすぐ行動するフットワークの軽さもある。 1日(平日)のタイムスケジュール 7:00 起床:軽くストレッチして朝のニュースをチェック。ブラックコーヒーで目を覚ます。 7:30 朝ラン:近所の公園を30分ほどランニング。頭をリセットして新しいアイデアを考える時間。 8:30 朝食&SNSチェック:トーストやヨーグルトを食べながら、TwitterやInstagramでトレンドを確認。 9:30 ブログ執筆スタート:カフェに移動してノートPCで記事を書いたり、リサーチを進める。 12:30 昼食:お気に入りのカフェや定食屋でランチ。食事をしながら読書やネタ探し。 14:00 取材・撮影・リサーチ:街歩きをしながら写真を撮ったり、新しいお店を開拓してネタにする。 16:00 執筆&編集作業:帰宅して集中モードで記事を仕上げ、SEOチェックやアイキャッチ作成も行う。 19:00 夕食:自炊か外食。たまに友人と飲みに行って情報交換。 21:00 ブログのアクセス解析・改善点チェック:Googleアナリティクスやサーチコンソールを見て数字を分析。 22:00 映画鑑賞や趣味の時間:Amazonプライムで映画やドラマを楽しむ。 24:00 就寝:明日のアイデアをメモしてから眠りにつく。


はじめに

形式文法は、言語の構造を「ルール」によって表す方法です。日常の言葉はときどきあいまいですが、形式文法ははっきりとした規則だけを使います。この考え方は、プログラムを作るときの言語設計や、コンピュータが文字列を解析する仕組みの基礎となります。

形式文法の4つの要素

正式には、「終端記号」「非終端記号」「生成規則」「開始記号」という4つの要素で定義されます。ここでつぎのように考えましょう。

able>要素説明終端記号文を構成する具体的な文字や符号非終端記号文の構造を表す記号(S など)生成規則非終端記号を別の記号列に置換するルール開始記号文の生成を開始する非終端記号ble>

簡単な例

文字 a と b を使った、単純な形式文法を考えます。

文法は次のとおりです。S -> a S b | ε

この規則を使うと、以下のように文字列を作ることができます。

S → a S b → a a S b b → a a ε b b → a a b b

この例から、形式文法がどのように「文」を段階的に組み立てるかが分かります。

応用と役割

形式文法は、コンピュータサイエンスの分野でとても大切です。プログラミング言語の構文を決めるための設計図となり、ソースコードを機械が読み取れるようにする解析器(パーサ)を作るときの土台になります。

まとめ

ここでの要点は次の3つです。1) 形式文法は厳密な規則で文を表す方法。 2) 4つの基本要素(終端記号、非終端記号、生成規則、開始記号)。 3) 簡単な例を通じて、実際に文をどう作るかを理解すること。


形式文法の同意語

形式的文法
文法を形式的な記号と規則で厳密に定義する考え方。
形式規則文法
文法を厳密な形式規則として表現するアプローチ。
形式言語理論の文法
形式言語理論の枠組みで扱われる文法の総称。
生成文法
言語の文を生成する規則を用いる文法理論。形式文法の代表的な流派のひとつ。
規則駆動文法
規則の適用を中心に文を生成する文法の総称。
構文規則文法
構文を表す規則を中心に定義する文法。木構造生成を重視する点が特徴。
正式文法
正式に定義された文法という意味で使われる語。形式的文法と同義に用いられることがある。

形式文法の対義語・反対語

自然言語
人間が日常的に使う言語。文法は形式文法のような厳密な機械規則で厳格に定義されていない。文の意味は文脈・知識に依存することが多い。
非形式文法
形式的な規則を厳密には定義せず、ざっくりとした使用法を指す文法体系。実務や会話で使われることが多い。形式文法の対義語として使われることがある。
口語文法
話し言葉で使われる文法。省略・乱れ・日常語彙が多く、厳密な形式規則に従わないことが多い。
曖昧さを許容する文法
意味が複数解釈されうることを認める文法設計。自然言語に近い特性を持ち、形式文法の前提である一意性を欠くことがある。

形式文法の共起語

形式言語
形式文法で定義され、機械で認識・処理できる言語の集合のこと。
文法
言語の文を生成する規則の集まり。構文の骨格を決めるルール。
文脈自由文法
左辺が単一の非終端記号、右辺が終端と非終端の並びで表される生成規則を使う文法。
文脈依存文法
規則の適用が周囲の文脈に依存する、より表現力の高い文法。
正規言語
有限オートマトンや正規表現で表現できる、比較的単純な言語のクラス
正規表現
正規言語を文字列パターンとして表現する記法。
チョムスキー階層
文法をType-0〜Type-3の4つの階層に分類する枠組み。
生成文法
文を“生成”する仕組みを説明する文法理論の総称。
普遍文法
人が生まれつき共有するとされる言語能力の構造を説明する仮説。
形式言語理論
形式言語と計算モデルを扱う理論分野。
オートマトン
入力を状態遷移で処理する計算モデル。
有限オートマトン
状態が有限個のオートマトン。正規言語を受理する基本的モデル。
プッシュダウンオートマトン
スタックを持つオートマトン。文脈自由文法を認識するのに適する。
文脈自由文法の生成規則
A → α の形で非終端記号を展開する規則群。
構文解析
文の構造を解読して性格を決定するプロセス、パーサの核心。
構文木
文の構造を木として表したもの。生成規則の適用結果を可視化。
生成規則
非終端記号を終端記号や他の非終端記号へ置換する規則。
終端記号
文法で最終的に現れる記号。語彙を構成する基本単位。
非終端記号
構文規則の対象となる記号。構造を表すノード。
LR解析
左端からの推論と右からの戻り(リデュース)を組み合わせる解析法。多くのCFGに適用可能。
LL(1)解析
左端からの推論と先読み1記号を使う解析法。単純な CFG に適用。
法規
文法を構成する規則の総称(非終端を展開するルール)。
計算理論
計算可能性・複雑さなど、計算の理論的限界を研究する分野。
理論計算機科学
計算機科学の理論的側面を扱う学問領域。

形式文法の関連用語

形式文法
形式文法とは、形式言語を厳密に定義する枠組み。非終端記号 N、終端記号 Σ、生成規則 P、開始記号 S から成る4要素の組で表されます。
形式言語
形式文法で定義される文字列の集合の総称です。
文法
言語の構造を規定するルールの集合。
終端記号
実際に文字として現れる記号。言語の“元素”となる符号です。
非終端記号
構文を組み立てるための記号で、最終的な文字列には現れません。
開始記号
導出の起点となる非終端記号。多くは S で表されます。
生成規則
非終端記号から終端記号や他の非終端記号の列へ変換する規則です。例: A -> aB。
チョムスキー階層
文法の表現力を階層的に整理した概念。Type-3 から Type-0 まであり、それぞれできる言語の範囲が異なります。
無制約文法
Type-0。規則にほとんど制約がなく、任意の置換を許す文法です。
文脈依存文法
Type-1。規則の適用に文脈依存性がある文法で、表現力が高い領域です。
文脈自由文法
Type-2。左辺が単一の非終端記号、右辺が終端と非終端の列で構成される規則を用います。
正則文法
Type-3。規則は右辺が限られた形で、一般的には A -> aB や A -> a です。
正則言語
正則文法で生成される言語。有限オートマトンで認識可能です。
文脈自由言語
文脈自由文法で生成される言語。プッシュダウンオートマトンで認識可能です。
決定性有限オートマトン
DFA。入力と現在の状態だけで次の状態が一意に決まる有限オートマトンです。
非決定性有限オートマトン
NFA。複数の遷移や空移動が許されるオートマトンです。
プッシュダウンオートマトン
PDA。スタックを用いて文脈自由言語を認識するオートマトンです。
構文解析
文字列の構文構造を解釈する作業で、パーサを使って実装します。
構文木
導出の木構造。各ノードは文法規則の適用を表します。
導出
開始記号から規則を適用して文字列を導く過程のこと。
CNF(チョムスキー標準形)
Chomsky Normal Form。規則を A -> BC または A -> a の形に統一する変換です。
Greibach標準形
Greibach Normal Form。規則を A -> aα の形に統一する形式で、トップダウンパーサで使われます。
ポンピング補題
正則言語や文脈自由言語の性質を証明する際に使われる基礎的な定理です。
正規表現
文字列のパターンを表現する記法。正則言語との深い関係があり、検索やマッチングに活用されます。
アルファベット
形式文法で扱う文字集合の総称。終端記号と非終端記号を含む基礎集合です。

形式文法のおすすめ参考サイト


学問の人気記事

データ標準化とは?初心者にもわかる基礎と実務での活用法共起語・同意語・対義語も併せて解説!
531viws
十進数・とは?初心者でも分かる基本のしくみと使い方共起語・同意語・対義語も併せて解説!
425viws
閾値(閾値)・とは?初心者向けにわかりやすく解説する基本ガイド共起語・同意語・対義語も併せて解説!
283viws
慰安婦問題とは?初心者でも分かる歴史と現在をやさしく解説共起語・同意語・対義語も併せて解説!
188viws
シールリング・とは?を徹底解説!中学生にも分かる入門ガイド共起語・同意語・対義語も併せて解説!
187viws
平安京遷都とは?日本の都が移された理由をやさしく解説共起語・同意語・対義語も併せて解説!
174viws
点火源・とは?初心者にもわかる基本と日常の事例共起語・同意語・対義語も併せて解説!
160viws
回旋運動・とは?回転の基本と身近な例をやさしく解説共起語・同意語・対義語も併せて解説!
148viws
シオニズムとは?基礎知識からよくある誤解まで徹底解説共起語・同意語・対義語も併せて解説!
144viws
誇示とは?意味・使い方・例文を徹底解説して分かりやすく理解する共起語・同意語・対義語も併せて解説!
144viws
慣例的・とは?初心者にもわかる解説と使い方共起語・同意語・対義語も併せて解説!
123viws
光触媒とは?初心者にも分かる基本の仕組みと生活での活用術共起語・同意語・対義語も併せて解説!
123viws
静電容量方式とは?初心者向けの仕組みと使い方を徹底解説共起語・同意語・対義語も併せて解説!
121viws
トゥルー・とは?真実の意味と使われ方をわかりやすく解説共起語・同意語・対義語も併せて解説!
117viws
メガシティ・とは?初心者でもわかる現代都市の仕組み解説共起語・同意語・対義語も併せて解説!
109viws
電気伝導性とは?初心者にもわかる基本と身近な例共起語・同意語・対義語も併せて解説!
105viws
プレシジョンとは?初心者が知るべき正確さの基本と日常・仕事での活用法共起語・同意語・対義語も併せて解説!
100viws
学士入学とは?初心者にもわかる基礎解説とメリット・デメリット共起語・同意語・対義語も併せて解説!
97viws
論旨・とは?初心者でも分かる論旨の意味と使い方ガイド共起語・同意語・対義語も併せて解説!
94viws
三角形の面積・とは?初心者にも分かる基礎ガイド—正しい求め方と例題共起語・同意語・対義語も併せて解説!
88viws

新着記事

学問の関連記事