[Problems with dirtyMap and polymorphic antiunification -> disabled
martin.hofmann@uni-bamberg.de**20091009110804] hunk ./src/RuleDevelopment/UniProp.hs 33
-tryDirtyMap cr evi = 
-    let ios = nub . concat . (mapMaybe mbMapIO) $ evi in 
-    if (all listAndSameLength evi) || (any hasFreeVars ios) || (null ios) then noFoldCall
-    -- check for naive map property, if there are ios, and if ios are a function
-      else do llogNO (text "Naive map detected!")
-              afnm  <- addIO . rules $ ios
-              afcr  <- coverAll afnm
-       --      the argument function
-          
-              -- map :: (a -> b) -> [a] -> [b]
-              -- map :: ^   afty   ^ -> ^  atys  ^
-              let afty = [typeOf . crul $ afcr]                
-              let atys = unArrowT . typeOf . crul $ cr        
-                  
-              -- f x0 = map fun1   x0
-              --            ^afExp^
-              --        ^ mExp      ^  
-              let afExp = foldTAppE ((mkTConE afnm) afty)(init . lhs . crul $ cr)
-              let mExp = foldTAppE 
-                          (mkTConE 'map (afty ++ atys))
-                          [afExp, last.lhs.crul $ cr]
-              let cr' = modifycrul cr (\r -> rule (lhs r) mExp)
-              return [(S.fromList [cr',afcr],[(name cr',afnm, LT)])]
-    where    
-    mbMapIO r = liftM (map (\(i,o) -> rule ((init . lhs $ r) ++ [i]) o)) $ liftM2 zip (mbListElems . last . lhs $ r)(mbListElems . rhs $ r)
+tryDirtyMap cr evi = noFoldCall
+--    let ios = nub . concat . (mapMaybe mbMapIO) $ evi in 
+--    if (all listAndSameLength evi) || (any hasFreeVars ios) || (null ios) then noFoldCall
+--    -- check for naive map property, if there are ios, and if ios are a function
+--      else do llogNO (text "Naive map detected!")
+--              afnm  <- addIO . rules $ ios
+--              afcr  <- coverAll afnm
+--       --      the argument function
+--          
+--              -- map :: (a -> b) -> [a] -> [b]
+--              -- map :: ^   afty   ^ -> ^  atys  ^
+--              let afty = [typeOf . crul $ afcr]                
+--              let atys = unArrowT . typeOf . crul $ cr        
+--                  
+--              -- f x0 = map fun1   x0
+--              --            ^afExp^
+--              --        ^ mExp      ^  
+--              let afExp = foldTAppE ((mkTConE afnm) afty)(init . lhs . crul $ cr)
+--              let mExp = foldTAppE 
+--                          (mkTConE 'map (afty ++ atys))
+--                          [afExp, last.lhs.crul $ cr]
+--              let cr' = modifycrul cr (\r -> rule (lhs r) mExp)
+--              return [(S.fromList [cr',afcr],[(name cr',afnm, LT)])]
+--    where    
+--    mbMapIO r = liftM (map (\(i,o) -> rule ((init . lhs $ r) ++ [i]) o)) $ liftM2 zip (mbListElems . last . lhs $ r)(mbListElems . rhs $ r)
hunk ./src/Syntax/Types.hs 115
-checkMatch = checkTys ((flip subsumesTy) `on` typeOf)  fail
-checkSubsume = checkTys (subsumesTy `on` typeOf)  fail -- (subsumesTy `on` typeOf) fail       
-checkSame  = checkTys sameTy fail
+checkMatch   = checkSame -- checkTys ((flip subsumesTy) `on` typeOf)  fail
+checkSubsume = checkSame -- checkTys (subsumesTy `on` typeOf)  fail -- (subsumesTy `on` typeOf) fail       
+checkSame    = checkTys sameTy fail