• 締切済み

拡張BNFの解釈を教えて

<P>::=<P><P>|'('<P>')'|'['<P>'}'|'<'<P>'>'|'a'|'b'|'c' に関して、<P>の表す記号列集合を{<P>}とし、記号列Wが{<P>}に属する事をw∈{<P>}と表す。次の内の何れが誤りですか。 1.'a'∈{<P>} 2.'(a)'∈{<P>} 3.'<a><b>'∈{<P>} 4.{<P>}に属する記号列の長さは奇数長のものもある。 5.{<P>}に属する記号列は左から読んでも右から読んでも同じである。

みんなの回答

  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.5

No.1、No.3のymmasayanです。 ><P>::=<P><P> >で右辺の<P>が同じものでないといけないとすると、 >expression::=term+term >という表現ができなくなりませんか? 左辺のの<P>を右辺に代入して、新しい左辺の<P>が出来上がるわけです。 これを何度繰り返してもいいのです。 したがってBNFを厳密に読めば、 expression::=expression+expressionということに成るような気がします。 <P>::=<P1><P2>が許されるかどうかですね。これが許されればabもでてくるのですがね。 これをやろうとすればBNFの文法をもう一行追加すればいいだけだと思います。

全文を見る
すると、全ての回答が全文表示されます。
回答No.4

<P>::=<P><P> で右辺の<P>が同じものでないといけないとすると、 expression::=term+term という表現ができなくなりませんか?

全文を見る
すると、全ての回答が全文表示されます。
  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.3

No.1のymmasayanです。 結論が割れましたね。そこで若干補足です。 ポイントは<P>::=<P><P>の部分です。 記号列が増殖する(長くなる)のはここしかありません。ここは再帰構造をとっています。 増殖する場合は同じ記号列(記号)を接続することしか出来ません。 他の記号列部分はすべて左右対称ですから、増殖時も左右対称になります。 したがってabという非対称の記号列ができることはありません。 いずれにしても他の方の回答を待ちたいですね。

全文を見る
すると、全ての回答が全文表示されます。
回答No.2

結論が違いますが、5が誤りですね。 '<a>'∈{<P>} '<b>'∈{<P>} より、 '<a><b>'∈{<P>} です。

全文を見る
すると、全ての回答が全文表示されます。
  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.1

3が誤りです。 1,2,4はいいとして3と5は完全に矛盾しています。 5の左右対称が正しくて、3の'<a><b>'は作り様がありません。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 集合についての質問

    数学集合についての質問です 1~6までのサイコロがあり 前半の目がでる出るか、奇数の目がでるかの集合の記号で答えよ 前半の目がでてかつ、奇数の目である集合の記号で答えよ x上で0~5までの区間をPとして A{1,4}B{3,5}C{0,3}をPの部分集合としたとき P上に任意の点をとるときの区間A上かつC上にある確率どなたか数学にお詳しい方暇な時でいいので 答えかできれば解説付きでお教えください

  • 数学の集合についての質問です

    数学集合についての質問です 1~6までのサイコロがあり (1)前半の目がでる出るか、奇数の目がでるかの集合の記号で答えよ (2)前半の目がでてかつ、奇数の目である集合の記号で答えよ x上で0~5までの区間をPとして A{1,4}B{3,5}C{0,3}をPの部分集合としたとき P上に任意の点をとるときの区間A上かつC上にある確率 どなたか数学にお詳しい方暇な時でいいので 答えかできれば解説付きでお教えください

  • 背理法について

    「a^2+b^2=c^3ならば、a、b、cのうち少なくとも1つは偶数である」 (pならばq) という命題を証明するために背理法を使います。 すると 「a^2+b^2=c^3という条件のもとで a、b、cはすべて奇数である」(pかつ¬q)と仮定することになると思います。 この仮定に矛盾が生じれば背理法が成立しますが この仮定に矛盾が生じるのは 「a,b,cが全て奇数ならば a^2+b^2=c^3 ではない」 (¬qならば¬p)が証明されたときだけなのでしょうか? まだ論理について勉強しはじめたばかりで記号があまり理解できないので 記号は使わずに説明していただけると助かります。

  • 情報科学の問題について

    大学で情報科学の授業を選択しなければならなく、そこでレポート課題を出されてしまいました。 今まで情報科学など全くもって触れてこなかった私は授業を聞いていてもチンプンカンプンでした… 教授に話を聞こうと思ったのですが、教授がレポート提出まで海外に行ってしまうらしく、ここに助けを求めさせて頂きます泣 正直何が分かっていないのか分からない程のレベルなので、どのような質問をすればいいのかも怪しいです… レポート課題は5つの設問があります。 1.終端記号集合 VN = {S, A, B}、終端記号集合 VT = {a, b, c} とする。文法 G の生成規則 P が次の ようになっているとする: S → a b c, S → a A b c, A b → b A, A c → B b c c, b B → B b, a B → a a A, a B → a a. この文脈依存文法 G が生成する言語 L(G) はどのようなものかを導出して一般形を定めなさい。 2.アルファベット A = {a, b} 上の言語 L が、同じ個数の a, b を含む全ての長さの語を含むとする: L = { w | 文字列 w 内の a と b の個数が等しい } 言語 L を生成する文法 G を定めなさい。 他の3つは図がついているものです。 とりあえずこの2つについて、どなたか返答して頂けると大変有り難いです。 宜しくお願い致します。

  • 経済数学基礎 [集合の問題] ド・モルガンの法則

    経済数学基礎 [集合の問題] ド・モルガンの法則 (1)A\(B\C) = (A\B)∪(A∩C)が成り立つことの証明について、以下よりスマートな解答はありませんでしょうか?  (注)アポストロフィ'は補集合の記号cの代わりに用いました)  → (左式)=A\(B\C)=A\(B∩C')       =A∩(B∩C')'     =A∩(B'∪C) =(A∩B')∪(A∩C)   (右式)=(A\B)∪(A∩C)       =(A∩B')∪(A∩C)  (左式)=(右式)より証明された。 (2)(A\B)\C=A\(B∪C)の証明の解き方は以下で合っていますか?  (左式)=(A\B)\C=(A∩B')\C =(A∩B')∩C' =(A∩C')∩(B∩C')      =(A\C)∩(B\C) ←ド・モルガンの逆バージョン? =A\(B∪C)     =(右式)

  • 長文、有限のものの表現の仕方、集合・多重集合・文字列(順序対)

    有限のものがあったとします。 ・重複を許さない、順序を考えない、とします。 たとえば、aとbとcというものがあったとします。 これを表すのには、集合の記号を用いて、 {a,b,c} と表します。 ・重複を許す、順序を考える、とします。 たとえば、a,b,b,aという順にものがあったとします。 これは順序対の記号を用いて、 (a,b,b,a) と表すと思います。 また、文字列とみなして、 abba と表すこともあると思います。0から9の数字と+-記号を用いて、整数を表すのもこれに相当するとおもいます。 順序対の記号は、たとえば http://oshiete1.goo.ne.jp/qa2861763.html にあるように、集合の記号によって定義することもできます。 質問1.では逆に、集合の記号を、順序対の記号によって定義することはできるのでしょうか? ・重複を許す、順序を考えない、とします。 たとえば、aが2個、bが3個、cが1個というものがあったとします。 これは多重集合の考え方ですが、 {|aa,bbb,c|} と表したりするようです。 質問2.多重集合を、集合の記号や順序対の記号を用いて、うまく表すことはできないものでしょうか? ・重複を許さない、順序を考える、とします。 たとえば、a,c,b,d,eという順にものがあったとします。 質問3.しかし、この考え方の具体的な名前、応用例、表し方を知らないので、教えていただきたいのです。 それは順序対の記号を用いて、 (a,c,b,d,e) と表せばいいという方がいるかもしれませんが、その記号だと、重複を許さないという考えを伝えることができないので、よくはないと思うのです。

  • セル内の記号(英数字以外全て)の数の取得

    A列に商品型番のようなデータが半角英数字記号にて列挙されているのですが(2,000個ほど)、 セルの中に英数字以外の文字の、 ・有無 ・文字数 を取得するにはどうしたらよいでしょうか? (例)A列に文字列、B列に英数字以外の文字の有無、英数字以外の文字数が入ります A列、B列、C列 C1k-B/W、有、2 x9-1、有、1 Y158*1-w-6/b-7、有、5 A123、無、0 文字数が分かるだけでOKです。(そうすれば有無は必然的に分かるので) 複数の関数を駆使する都合で使用列がもっと右に伸びても構いません。

  • ∀ ∃ の使い方

    「すべてのxについて (x+1)<0」xは実数 というのを 全称記号を用いてあらわすと 「∀x∈R (x+1)<0」となるかと思います(∈Rは書かなくてもいい??? では、「p,qはともに奇数」 p,qは整数 を表したいときはどうすればいいでしょうか? 「∀p∧∀q∈Z 奇数」、「∀p,q∈Z 奇数」、「∀(p,q)∈Z 奇数」 などなど考えてみましたがどう書き表すのが正しいのでしょうか? また奇数と普通の文字で記していいのでしょうか? a,bのうちすくなくとも一方は正の数 や a,b,cはともに2の倍数である などを書きたい場合はどのように書けばいいのでしょうか? 回答お願いします。

  • 行列が存在する条件

    2行2列の行列A=(a b) 1行1列a、1行2列b、2行1列b、2行2列c (b c) b=0、1の場合、x^2=Aを満たすX=(x y)が存在するa,cの条件を求めよ。 (z w) (1)b=0のときは、a=x^2+yz,y(x+w)=0,c=yz+w^2 を満たす(x,y,z,w)が存在するa,cの条件を 求めることになる。ア.y=0のとき、a=>0、c=>0。イ.x+w=0のとき、a^2=x^2+yzを満たすx,yzが 任意のaに対して、存在する。(ちょっとあやしいが)ということは、b=0のときは、a,cはすべての数になるのか?。 (2)b=1のときは、a-b=x^2-w^2にw=1/y-xを代入して、(a-c)y^2-2xy+1=0 これで、yが存在するためには判別式D=>0と進めていくと、x^2-(a-c)=>0となり、この式を満たすxは、a,cが何であっても存在すると思ったので、そうするとやっぱり、a,cはすべての数となる。 (1)と(2)について、間違えを教えてもらえると有り難いです。よろしくお願いします。

  • 数学A基礎

    1から20までの、奇数全体の集合をA、3でわると1あまる数全体の集合をBとするとき、次の集合を、要素をかき並べて表せ。 Bの求め方がよくわからなかったです。 20を3で割っても答えに繋がらなかったです。