わさっきhb

大学(教育研究)とか ,親馬鹿とか,和歌山とか,とか,とか.

レンマ・ジレンマ・トリレンマ

いきなりですが問題です.

  • "lemma"を日本語に訳しなさい.
  • "lemma"の例を一つ挙げなさい.
  • "dilemma"を日本語に訳しなさい.
  • "dilemma"の例を一つ挙げなさい.
  • "trilemma"を日本語に訳しなさい.
  • "trilemma"の例を一つ挙げなさい.

先週の講義で,授業前のウォーミングアップ問題として,考えてもらいました.辞書や検索は禁止です.
といったところで解答です.
「はじめに"dilemma"から解答します.発音としては『ディレンマ』のほうが近いですが,カタカナでは『ジレンマ』と書きます.日本語に訳すなら『板ばさみ』というのがいいでしょう.好ましくない二者択一を迫られる状況で,使用します.
dilemmaの例として,知っておくといいのは,『囚人のジレンマ』です.誰かと対話していて相手が何の予告もなしに『ジレンマ』を持ち出し,『ジレンマって…ご存知ですよね?』と尋ねられたときに,『ああ,“囚人のジレンマ”のジレンマですね』と答えられると,スムーズに会話ができると思います.とはいえ,名前だけ知っていてもいいわけありませんので,どんなジレンマに陥るのかは,Wikipediaまたはゲーム理論の本を見て,自習してください.
次に"trilemma"に行きます.カタカナで『トリレンマ』と書いて,かまいません..さて"di"は『2』を表す接頭語なのに対し,"tri"は『3』です.好ましくない三者択一,というわけですが,『三すくみ』と訳せば簡潔になります.
例としては『じゃんけん』ですね.グー・チョキ・パーのいずれの手を出しても,勝てる保証はありません.でも『最初はグー・じゃんけん…』と唱えたらその次には,いずれかの手を出さないと,いけないのです.
情報通信分野のtrilemmaとしては,『CAP定理』あるいはブリュワーの定理を,連想できるようになりたいものです.CAPと書いたとき,Cは一貫性(Consistency),Aは可用性(Availability),Pは分断耐性(Partition-tolerance)という,3つの性質に対応づけられ,分散システムにおいてはC・A・Pの3つをすべて満たすことができない,というのが,CAP定理の述べるところです.これまた詳細は自習してください.
最後になりましたが"lemma"です.これは日本語に訳すと『補題』または『補助定理』です.この単語の複数形は,lemmasでも一応いいのですが"lemmata"と書かれることがあります*1.論文なんかで一つの定理(theorem)の証明を示すときに,その足場となるような命題を,lemmaとして提示します.
情報工学,具体的には形式言語理論の分野では,pumping lemmaというのが知られています.『反復補題』と訳されますが,pumpとは『ポンプ』のことで,いくらでも膨らませることを意味します.
文脈自由言語の反復補題について,そのエッセンスを書いておきますと,一つの文脈自由言語というのは,集合で表すことができまして,その集合に属する文字列として,uvxyzと表されるものを(巧妙に)つくります.なおuからzまでは文字ではなく,文字列を表す変数で,uvxyzは連結して得られる1個の文字列を意味します.このとき,wvvxyyzも,wvvvxyyyzも,wvvvvxyyyyzも,他にいくらでも考えられますが,もとの文脈自由言語の集合に属します.そんなuvxyzという文字列は,文脈自由言語が与えられたら必ず存在する,というのです.
このpumping lemmaは,以前の授業でお話しした『擬似乱数生成器』と少しだけ,関連があります.擬似乱数生成器は内部状態を持っており,そのため,乱数生成の開始から十分な数だけ,乱数を生成すると,ある時点とある時点とで,内部状態が一致する状況ができます.そこでそれ以降は,その2つの時点以降で生成する乱数列が一致し,結局のところアルゴリズムに基づく擬似乱数生成器は周期を持つことになります(再現不可能性を満たしません).乱数生成は一次元的な見方なのに対し,pumping lemmaは,系列を木(ツリー構造)で見ることによって,直感的に知ることのできる性質となるのです*2

*1:"automaton"(オートメーションではなくオートマトン)の複数形は,"automata"(オートマタ)です.

*2:擬似乱数生成器が周期を持つことも,pumping lemmaも,「鳩の巣原理」が背景にあります.