• 締切済み

文脈自由文法

・ <assugn>::=<id>=<expr> ・ <id>::=A|B|C ・ <expr>::=<expr>+<expr>|<expr>*<expr>|(<expr>)|<id> 問題 A=B+C*Aの式を使って、上記文脈自由文法が「曖昧」であることを証明しなさい。 この問題を解答できる方がいましたら宜しくお願いします。 また合わせて解説していただけると大変助かります。 A,B,Cの式というのが何を指しているのかも分からない状態です。 すみません、宜しくお願いします。

みんなの回答

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.3

こんなものは、答えだけ聞いてもなんの役にも立ちません ちょっと変えただけでまったく別の結論になることだってあります。 「この文法を曖昧さが無くなるように変更せよ」という応用問題へと継げるのは当然の流れでしょう。 既に指摘のあるとおり、まずは、基礎を勉強してからにしましょう。 <id>とか<expr>とかは、ただの名前です。他と区別するために記号を付けただけです。  <味噌汁>::=<じゃがいも>=<みかん>  <じゃがいも>::=A|B|C  <みかん>::=<みかん>+<みかん>|<みかん>*<みかん>|(<みかん>)|<じゃがいも> でも、文法は同じです。 ただ、これだとわけがわからないので、文脈での役割に沿った、意味をある名前を付けているのです。

Trafalgar_law
質問者

お礼

まるほど、応用問題への発想を教えていただきありがとうございました。 ただの名前だったのですね!!

  • hpsg
  • ベストアンサー率32% (61/190)
回答No.2

単純化して書きます。正確には講義ノートとか教科書参考書で把握すべき内容です。 「assign」はそのまま英単語です。 「割り当てる」等の意味で、最近は日本語でも「作業AにX君をアサインする」などと使う場面があります。 「id」 英単語 identifier の略ですが日本語でも使うでしょう。 たとえば学生証みたいなメンバー認証の役割を含むカードをIDカードと呼ぶ、そのIDです。 この文法では登録メンバーはA,B,Cの三記号(だけ)ですね。 「::=」 図的記号『⇒』の代わりと思うのが一番簡単。⇒の左を生成する規則は矢印の右だ、です。

Trafalgar_law
質問者

お礼

。⇒の左を生成する規則は矢印の右だ、です。 (上)大変理解することができました。ありがとうございました

  • hpsg
  • ベストアンサー率32% (61/190)
回答No.1

「A,B,Cの式というのが何を指しているのかも分からない」なんて状態で、『文法が曖昧であること』はわかっているのでしょうか? また、解析木のような用語とか。予備知識を全部書くことは、この問題を出題した教員の講義あるいはこの問題が載っていた書籍を全部再現しなければならないので「解説する」作業はは現実的ではありません。 簡単には、右辺が(B+C)×A という解釈になるか B+(C×A) という解釈になるか、与えられたルールでは決まらないぞと主張すれば良いでしょう。

Trafalgar_law
質問者

お礼

はい、hpsgさんの仰る通りで、予備知識があまりにも不足しているために 一文字の解答もできない状態です。 「文法が曖昧であること」の意味は調べて、文法上正しい構造を複数持つ  ということだと分かりました。 (B+C)×A という解釈になるか B+(C×A)ですね・・・ BとかCというのは何のことなのでしょうか😢

Trafalgar_law
質問者

補足

assugnはassignの間違えでしたすみません。 「assign」「id」 「::=」はどういった意味なのでしょうか。。。 「exrr」は「expression」のことかなと思っています。

関連するQ&A

  • 文脈自由文法についての質問です

    文脈自由文法についての質問です 最近、文脈自由文法について勉強しているんですがテキストの問題の中に 解き方がわからない問題があるので困ってます。 その問題が下に示してあるものです。 Q.次の文脈自由文法G=(V,T,S,P)は、本来は10進数の数値を受容する目的で作られたものであるが、  この文脈自由文法には欠陥があり、10進数として読めるもの以外も受容してしまう。  <S>を開始記号、<N>、<M>を非終端記号とする。    規則P:  <s> → <N>  <N> → <M><N> | <M> | <N>.<N>  <M> → 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9  1.10進数以外の数値でも受容してしまう例を1つ示せ。  2.1で示した例のように、10進の数値以外を受容してしまうような欠陥をなくすためには、   どのように文脈自由文法をの規則を変更すればよいか、変更後の規則をすべて示せ。   なお、非終端記号や終端記号は必要に応じて追加して良い。  3.2で変更した文脈自由文法に対し、8進数を受容するにはどのように文脈自由文法の規則を   変更すればよいかを示せ この問題を解ける方がいましたら教えて頂きたいのでよろしくお願いします。 長文失礼しました。

  • 文脈自由文法についての質問です

    文脈自由文法についての質問です 最近、文脈自由文法について勉強しているんですがテキストの問題の中に 答えがわからない問題があるので困ってます。 その問題が下に示してあるものです。 Q.次の文脈自由文法G=(V,T,S,P)は、本来は10進数の数値を受容する目的で作られたものであるが、  この文脈自由文法には欠陥があり、10進数として読めるもの以外も受容してしまう。  <S>を開始記号、<N>、<M>を非終端記号とする。    規則P:  <s> → <N>  <N> → <M><N> | <M> | <N>.<N>  <M> → 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9  1.10進数以外の数値でも受容してしまう例を1つ示せ。  2.1で示した例のように、10進の数値以外を受容してしまうような欠陥をなくすためには、   どのように文脈自由文法をの規則を変更すればよいか、変更後の規則をすべて示せ。   なお、非終端記号や終端記号は必要に応じて追加して良い。  3.2で変更した文脈自由文法に対し、8進数を受容するにはどのように文脈自由文法の規則を   変更すればよいかを示せ この問題を解ける方がいましたら教えて頂きたいのでよろしくお願いします。 長文失礼しました。

  • 文脈自由文法をチョムスキー標準形に変換

    大学の数学で分からない問題があります。 どなたか教えていただけないでしょうか? 1.次の規則を持つ文脈自由文法をチョムスキー標準形に変換せよ。 (1) G=({S,A},{ab},P,S) P={S→Ab,A→aAb,A→ab} (2) G=({S,A,B},{ab},P,S) P={S→aB,S→bA,A→a,A→aS,A→bAA,B→b,B→bS,B→aBB} (3) G=({S},{a,b},P,S) P={S→aS,S→aSbS,S→ε} 2.次の書き換え規則で定義される文法が生成する言語を示せ。   但し、「={S,A,B},Σ={0,1,2},開始記号はSとする。 (1) S→0AB,A→0AB|0B,B→1 (2) S→S0|AB,A→1A|1,B→2 (3) S→A,A→0A|0,B→B1|1 (4) S→AB.A→0A1|01,B→B2|2 問題は以上です。長くなってしまい申し訳ありません。 また、学校で何やっていたんだとお怒りの方もいらっしゃるかと思いますが、何卒よろしくお願いします。

  • 計算理論*正規文法

    4で割れる2進数…を表す?正規文法を作るという課題を出されたのですが良く分かりません。 まず、どうやって正規文法を作るのかも分からないです(^_^;) 正規文法と文脈自由文法の違いが理解できなくて(>_<) あと、文脈自由文法であることの証明は本などで見たのですが、正規文法であることの証明はどうやって行えば良いのでしょうか…。 「計算理論の基礎」という分厚い本を見ているのですが…(/_;)

  • 言語理論の文脈自由言語について

    「オートマトン 言語理論 計算論I」という本(教科書)を読んでいます。 この本には演習問題がついているのですが、本を読んだだけでは解法が分らない上、 答えがついてないため、解けない問題が多く困っています。 (連休明けに試験があり、その範囲なんです。) ある言語が文脈自由型ででないことを証明したいのですが、 反復補題(パンピングレンマ)を用いて背理法によるのだろうと思うのですが、 どのように仮定するかの方針が立たないのです。 具体的には次のような問題に対し、「…」のような仮定をしてみました。 a){a^i b^j c^k | i<j<k}   「z=a^n b^(n+l) c^(n+m) (但し、m>l>0)」 しかし、下記のように背理法による矛盾が示せなかったのです。 どこで間違ったのかは分らないので、間違った個所を指摘していただきたいのです。 よろしくお願いします。 「言語を文脈自由言語と仮定する。 nをパンピングレンマの性質を持つ整数とし、 z=a^n b^(n+l) c^(n+m) (但し、m>l>0)とすると、 z∈L かつ |z|≧n が成立する。 したがって、パンピングレンマから z=u v w x y (ux≠ε、|vwx|≦n) と表され、かつ u v^i w x^i y ∈ L が成立する。 |vwy|≦n なので、vxがaとcの両方を含むことはない。 vxのパターンにより次の2つの場合を考える (i)vxが一種類の文字だけからなる場合 … (ii)vxが2種類の文字からなる場合」 ここまで書いたところで、 v=b、x=c とすると、例えば、 u=a、w=bb、y=ccc の場合を考えると、矛盾が導けないことに気付きました。

  • 論理式の量化子の順番による文脈の変化の読解ができま

    論理式の量化子の順番による文脈の変化の読解ができません。 ∀a∀bとか∀a∃b∀cとか∃a∀aとか読解が難しいです。 数学に詳しい方、訳と論理式の例を出してみてくれませんでしょうか。

  • 文法の問題なのかよく分かりませんが

    文法の問題なのかよく分かりませんが、A、B(c)とした場合、あるいはA及びB(C)とした場合に、CはAにもかかるのでしょうか?

  • 英文法の問題集の使い方

    英文法と熟語の問題集をやる場合、以下のA,B,C,D,Eの観点でそれぞれどの方法が良いと考えられるでしょうか?理由も添えてお願いします。 なお現在の実力はセンター過去問で85%程度です。比較的イデイオムや文法が苦手なので駿台文庫の英頻に取り組みはじめたところです。来春受験を控えているわけではなく、底上げ目的です。文法についてはForestの6th Ed.を1回だけ通読しました。 A. 1日の中で A1. (A1.1)1問ずつ解く  →(A1.2)答え合わせ+解説を読む  →(A1.3)A1.1-A1.2を1セクション完了まで続行  →(A1.4)A1.3を時間がある限り(たとえば1日30分)続ける A2. (A2.1)1問ずつ解く  →(A2.2)答え合わせ+解説を読む  →(A2.3)A1.1-A1.2を1セクション完了まで続行  →(A2.4)を決められたセクション数(たとえば1日2セクション)続ける A3. (A3.1)1セクションの問題を全部解く  →(A3.2)答え合わせ+解説を読む  →(A3.3)A3.1-A3.2を時間がある限り(たとえば1日30分)続ける A4. (A4.1)1セクションの問題を全部解く  →(A4.2)答え合わせ+解説を読む  →(A4.3)A4.1-A4.2を決められたセクション数(たとえば1日2セクション)続ける ※今のやり方はA2とA4を織り交ぜています。 B. 翌日にやること B1. (B1.1)翌日は前日やり終えた問題の次から着手 B2. (B2.1)翌日は前日やり終えた問題にもう一度着手(前々日に着手した問題を除く)  →(B2.2)前日未着手の最初の問題から着手 ※今のやりかたはB1です。 C. 英文法以外のものとの配分 C1. 英語の勉強として他のものには一切手を付けずその文法問題集が完全に習得できるまで文法だけやり続ける(英語以外の教科は平行してやる) C2. 1日を3~4分割して割り当てられた時間だけ文法の問題集をやり、他のもの(英文解釈やリスニング等)と平行して進める C3. 1週間を曜日で分けて、例えば月木は文法、火金はリスニング等として進める ※今のやり方はC2です。 D. 1冊を終えた後2回目に進むとき D1. 正答誤答に関わらず飛ばさずに同じやりかたで2回目を進める D2. 誤答のもののみ対象に同じやりかたで2回目を進める D3. 正答誤答に関わらず飛ばさずに、かつA1/A2をA3/A4に切り替え、A3.1/A4.1を複数セクション単位に切り替えて進める D4. 誤答のもののみ対象に、かつA1/A2をA3/A4に切り替え、A3.1/A4.1を複数セクション単位に切り替えて進める ※今はまだ1回目です。 E. 辞書や解説を見ても理解できない問題が出現したとき E1. 気にしないことにして先へ進む(理解しないまま2回目、3回目に答えだけ正解するつもりで) E2. 他の文法書や参考書、このサイトを利用して理解に至るまで徹底的に調べる E3. 自分には合わないと諦めて他のもっと易しい問題集に切り替える ※今のところE1です。

  • 高校数学 式の証明

    説いている途中で分からなくなりました。 模範解答が省略されているため、 できれば考え方・途中式などあまり省略せずお願いできたらと思います。 ご解説をお願いいたします。 問題1 Q1、 3(ab+bc+ca)=abc a+b+c=3 のとき、 a,b,cのうち少なくともひとつは3に等しいことを証明せよ。 →「少なくともひとつは~の文から、(a-3)(b-3)(c-3)=0の形を作ればいい」ということは判りました。 問題2 x+y+z=a , x^3 + Y^3 + z^3 = a^3 のとき (x+Y)a^2 -a (x+y)^2 +xy(x+y)=0 が成り立つことを証明せよ。 そして、x,y,zのうち、少なくともひとつはaに等しいことを証明せよ。 →「少なくともひとつは~の文から、(x-a)(Y-a)(z-a)=0の形を作ればいい」ということは判りました。 問題3 (x+y)/z = (y+z)/x = (z+x)/y   のとき、この式の値を求めよ。 →(x+y)/z = K とおくことはわかりました。 解答である、「2」は出ましたが、もうひとつの解である「-1」がだせません。 問題4 1/a + 1/b +1/c = 1/(a+b+c)  のとき、次の証明をせよ。 ・(a+b)(b+c)(c+a)=0 ・n が奇数のとき  a^-1 + b^-1 + c^-1 = ( 1/a + 1/b +1/c )^n 問題4に至っては、全く何もわかりませんでした。悔しいです。 よろしくお願いします。

  • 4つの文字の連立方程式が解けない

    もともとは行列の成分比較の問題なのですが、 その過程における4文字の連立方程式が解けないです。 a2乗+bd=1・・・(1) b(a+d)=0・・・(2) c(a+d)=0・・・(3) bc+d2乗=4・・・(4) 自分としては(2)と(3)から、b=c=0かa+d=0のどちらかになるとわかっていて、 結論としては、a=±1 b=c=0 d=±2になると解答にかいてあったのですが, どうして、a+d=0だとこの式が成り立たなくなるのかが証明できません。 解答には証明が載っていませんでした。 背理法とかを用いて証明すればよいと思うのですが、 どなたかどうしてa+d=0だとこの式が成り立たなくなるのかを証明してください。