Chat (Lingr.com)
Informaiton
Daily
Column
- MySQL日本語の旅(5/1)
- アクセス向上秘伝(5/9)
- 一風変ったHaskellλ門(6/13)
- SICP Answer Book (5/31) 問題3.26追加
Zope Solution
Extra
アーカイブ
OSS案内所
Site Info
関連リンク
2006-08-01 [Haskell] 入試問題(その11)
http://www.i.u-tokyo.ac.jp/edu/course/ci/pdf/ci-2006-programming-2nd.pdf の問題 4-1 である.
追加ルールをかませてある.
-- 4-1 cs41 :: CellSpace cs41 = take 100 [ if count n == 3 then 1 else 0 | n <- [0..] ] m41 :: StateFun m41 = gen 53 a41 :: IO () a41 = printTransition 2000 501 $ iterate (extrarule . trans m41) cs41
a41 を評価してみると,
*Main> a41 .......#...#.##....#.##..##.#......#.##..##.#....##.#...#..........#.##..##.#....##.#...#........##. ######.##.##..##.##..#....######.##..#....####....###.#########.##..#....####....###.#######.... ......#..#..#....#..#.###........#..#.###......##.....#..........#..#.###......##.....#........##.. #####.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....# .....#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##... ####.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....## ....#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##.... ###.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....### ...#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##..... ##.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....#### ..#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##...... #.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....##### .#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##....... .##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....###### #..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........ ##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######. ..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........# #.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.# .#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#. .##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.## #..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#.. ##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##. ..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..# #.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.# .#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#. .###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.## #....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.. .###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.## #....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.. .###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.## #....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.. .###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.## #....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.. .###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.## #....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.. .###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.## #....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.. .###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.## #....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.. .###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.## #....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.. .###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.## #....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.. .###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.## #....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.. .###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.## #....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.. .###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.## #....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.. .###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.## #....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..
初期パターンが右へ移動していき,あるところから動かなくなる. なるほど,これが, c0 を特別あつかいした結果なんですねぇ.
では,ただし書きを無視するとどうなるかな.後のほうの extrarule 関数を 使って,a0 を評価すると...
*main:Main> a41 .......#...#.##....#.##..##.#......#.##..##.#....##.#...#..........#.##..##.#....##.#...#........##. ######.##.##..##.##..#....######.##..#....####....###.#########.##..#....####....###.#######.... ......#..#..#....#..#.###........#..#.###......##.....#..........#..#.###......##.....#........##.. #####.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....# .....#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##... ####.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....## ....#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##.... ###.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....### ...#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##..... ##.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....#### ..#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##...... #.##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....##### .#..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##....... .##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....###### #..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........ ##.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######. ..#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........# #.##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.# .#..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#. .##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.## #..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#.. ##.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##. ..#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..# #.###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.# .#....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#. .###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.## #....#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#.. ###.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##. ...#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#. ##.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.# ..#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#.. #.##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.## .#..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#... .##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.### #..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#.... ##.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###. ..#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....# #.##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.# .#..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#. .##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.## #..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#.. ##....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.##. ..##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#..# #....######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.##.# .##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#..#. ...######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.##.##. ##........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#..#.. ..######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.##.##.. #........#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#..#..# .######.##.##....####....###.#########.##.##....####....###.#######....######.##.##.###.##.##... .......#..#..##......##.....#..........#..#..##......##.....#........##........#..#..#....#..#..##.
今度はパターンが左へ左へと流れているようだ.
--nobsun
There is no comment.