2007-09-09から1日間の記事一覧

Strong Bisimulation Checker

今までにみた関係を覚えておくことで、くるくる回ってもいいようにしてみた。ソースがいよいよ汚い。 import Control.Monad.State import Control.Monad (liftM) trans = [("p0","a","p1"),("p0","a","p2"),("p1","b","p0"),("p1","a","p2") ,("p2","b","p0"…

Strong Simulation Checker

すごい適当。明日には読めないソースであることよ(詠嘆)。 trans = [("p0","a","p1"),("p1","b","p2"),("p1","c","p3") ,("q0","a","q1"),("q0","a","q1'"),("q1","b","q2"),("q1'","c","q3")] simulates :: String -> String -> Bool simulates p q = let t…