Change gensym
authorAnders Mörtberg <mortberg@chalmers.se>
Thu, 16 Apr 2015 09:17:12 +0000 (11:17 +0200)
committerAnders Mörtberg <mortberg@chalmers.se>
Thu, 16 Apr 2015 09:17:12 +0000 (11:17 +0200)
Connections.hs

index e5c456588f9d26567208e42b8c2c7e69439a4f3e..da48162e00c54ef78b0c6f4b04e66bbf6c948ee5 100644 (file)
@@ -240,10 +240,14 @@ propInvFormulaIncomp phi b = incomparables (invFormula phi b)
 
 -- | Nominal
 gensym :: [Name] -> Name
-gensym xs = Name ('?' : show max)
-  where max = maximum' [ read x | Name ('?':x) <- xs ]
-        maximum' [] = 0
-        maximum' xs = maximum xs + 1
+gensym xs = head (ys \\ xs)
+  where ys = map Name $ ["i","j","k","l"] ++ map (('i':) . show) [0..]
+
+-- gensym :: [Name] -> Name
+-- gensym xs = Name ('?' : show max)
+--   where max = maximum' [ read x | Name ('?':x) <- xs ]
+--         maximum' [] = 0
+--         maximum' xs = maximum xs + 1
 
 gensyms :: [Name] -> [Name]
 gensyms d = let x = gensym d in x : gensyms (x : d)