[#20227] dyna_vars problem? — Tanaka Akira <akr@...17n.org>

しばらく前から、稀に Ruby が core を吐くという問題を追いかけているので

15 messages 2003/05/19
[#20234] Re: dyna_vars problem? — matz@... (Yukihiro Matsumoto) 2003/05/19

まつもと ゆきひろです

[#20236] Re: dyna_vars problem? — Tanaka Akira <akr@...17n.org> 2003/05/19

In article <1053363181.529491.30320.nullmailer@picachu.netlab.jp>,

[ruby-dev:20216] Re: /()*\1/ =~ ""

From: Tanaka Akira <akr@...17n.org>
Date: 2003-05-19 08:34:56 UTC
List: ruby-dev #20216
In article <5FD2F0CF7F5D7F44B00F36870B9E78B508DE5024@SBG-EX4>,
  kkosako@softbank.co.jp writes:

> こういう場合があるんですね。考えていませんでした。
> 選択肢の数だけの繰り返しは、必ず試すように変更すれば良いような気がしますが、
> それだけでどのようなパターンにも対応できるのか、わかりません。
> 誰か教えてください。
>
> 対処方法があっても、速度的な不利が大きすぎる場合は
> 放置するかもしれませんが。

backreference が入ると NP 完全になるので、もし効率良くできたら世界的に
有名になれるんじゃないですかね。
http://perl.plover.com/NPC/

さて、とすると、

(1) 指数関数的な時間を使って全部解く
(2) 適当にあきらめる

という選択肢があるわけですが、もし (2) をとるなら、どういうようにあき
らめるかが問題になります。あきらめかたをいかにわかりやすくするかという
か。

なんとなく、根拠はないんですが、繰り返しの中身は空文字列にマッチしない、
というのがいいかなぁ、と思い始めて来たんですが、どんなもんでしょう?
-- 
[田中 哲][たなか あきら][Tanaka Akira]

In This Thread