/export/starexec/sandbox/solver/bin/starexec_run_standard /export/starexec/sandbox/benchmark/theBenchmark.hs /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox/benchmark/theBenchmark.hs # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty H-Termination with start terms of the given HASKELL could be proven: (0) HASKELL (1) LR [EQUIVALENT, 0 ms] (2) HASKELL (3) CR [EQUIVALENT, 0 ms] (4) HASKELL (5) IFR [EQUIVALENT, 0 ms] (6) HASKELL (7) BR [EQUIVALENT, 0 ms] (8) HASKELL (9) COR [EQUIVALENT, 4 ms] (10) HASKELL (11) Narrow [SOUND, 0 ms] (12) AND (13) QDP (14) QDPSizeChangeProof [EQUIVALENT, 0 ms] (15) YES (16) QDP (17) QDPSizeChangeProof [EQUIVALENT, 36 ms] (18) YES (19) QDP (20) DependencyGraphProof [EQUIVALENT, 0 ms] (21) AND (22) QDP (23) QDPSizeChangeProof [EQUIVALENT, 0 ms] (24) YES (25) QDP (26) QDPSizeChangeProof [EQUIVALENT, 0 ms] (27) YES (28) QDP (29) QDPSizeChangeProof [EQUIVALENT, 0 ms] (30) YES (31) QDP (32) QDPSizeChangeProof [EQUIVALENT, 0 ms] (33) YES (34) QDP (35) QDPSizeChangeProof [EQUIVALENT, 0 ms] (36) YES ---------------------------------------- (0) Obligation: mainModule Main module Maybe where { import qualified List; import qualified Main; import qualified Prelude; } module List where { import qualified Main; import qualified Maybe; import qualified Prelude; intersect :: Eq a => [a] -> [a] -> [a]; intersect = intersectBy (==); intersectBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]; intersectBy eq xs ys = concatMap (\vv2 ->case vv2 of { x-> if any (eq x) ys then x : [] else []; _-> []; } ) xs; } module Main where { import qualified List; import qualified Maybe; import qualified Prelude; } ---------------------------------------- (1) LR (EQUIVALENT) Lambda Reductions: The following Lambda expression "\vv2->case vv2 of { x -> if any (eq x) ys then x : [] else []; _ -> []} " is transformed to "intersectBy0 eq ys vv2 = case vv2 of { x -> if any (eq x) ys then x : [] else []; _ -> []} ; " ---------------------------------------- (2) Obligation: mainModule Main module Maybe where { import qualified List; import qualified Main; import qualified Prelude; } module List where { import qualified Main; import qualified Maybe; import qualified Prelude; intersect :: Eq a => [a] -> [a] -> [a]; intersect = intersectBy (==); intersectBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]; intersectBy eq xs ys = concatMap (intersectBy0 eq ys) xs; intersectBy0 eq ys vv2 = case vv2 of { x-> if any (eq x) ys then x : [] else []; _-> []; } ; } module Main where { import qualified List; import qualified Maybe; import qualified Prelude; } ---------------------------------------- (3) CR (EQUIVALENT) Case Reductions: The following Case expression "case vv2 of { x -> if any (eq x) ys then x : [] else []; _ -> []} " is transformed to "intersectBy00 eq ys x = if any (eq x) ys then x : [] else []; intersectBy00 eq ys _ = []; " ---------------------------------------- (4) Obligation: mainModule Main module Maybe where { import qualified List; import qualified Main; import qualified Prelude; } module List where { import qualified Main; import qualified Maybe; import qualified Prelude; intersect :: Eq a => [a] -> [a] -> [a]; intersect = intersectBy (==); intersectBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]; intersectBy eq xs ys = concatMap (intersectBy0 eq ys) xs; intersectBy0 eq ys vv2 = intersectBy00 eq ys vv2; intersectBy00 eq ys x = if any (eq x) ys then x : [] else []; intersectBy00 eq ys _ = []; } module Main where { import qualified List; import qualified Maybe; import qualified Prelude; } ---------------------------------------- (5) IFR (EQUIVALENT) If Reductions: The following If expression "if any (eq x) ys then x : [] else []" is transformed to "intersectBy000 x True = x : []; intersectBy000 x False = []; " ---------------------------------------- (6) Obligation: mainModule Main module Maybe where { import qualified List; import qualified Main; import qualified Prelude; } module List where { import qualified Main; import qualified Maybe; import qualified Prelude; intersect :: Eq a => [a] -> [a] -> [a]; intersect = intersectBy (==); intersectBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]; intersectBy eq xs ys = concatMap (intersectBy0 eq ys) xs; intersectBy0 eq ys vv2 = intersectBy00 eq ys vv2; intersectBy00 eq ys x = intersectBy000 x (any (eq x) ys); intersectBy00 eq ys _ = []; intersectBy000 x True = x : []; intersectBy000 x False = []; } module Main where { import qualified List; import qualified Maybe; import qualified Prelude; } ---------------------------------------- (7) BR (EQUIVALENT) Replaced joker patterns by fresh variables and removed binding patterns. ---------------------------------------- (8) Obligation: mainModule Main module Maybe where { import qualified List; import qualified Main; import qualified Prelude; } module List where { import qualified Main; import qualified Maybe; import qualified Prelude; intersect :: Eq a => [a] -> [a] -> [a]; intersect = intersectBy (==); intersectBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]; intersectBy eq xs ys = concatMap (intersectBy0 eq ys) xs; intersectBy0 eq ys vv2 = intersectBy00 eq ys vv2; intersectBy00 eq ys x = intersectBy000 x (any (eq x) ys); intersectBy00 eq ys xw = []; intersectBy000 x True = x : []; intersectBy000 x False = []; } module Main where { import qualified List; import qualified Maybe; import qualified Prelude; } ---------------------------------------- (9) COR (EQUIVALENT) Cond Reductions: The following Function with conditions "undefined |Falseundefined; " is transformed to "undefined = undefined1; " "undefined0 True = undefined; " "undefined1 = undefined0 False; " ---------------------------------------- (10) Obligation: mainModule Main module Maybe where { import qualified List; import qualified Main; import qualified Prelude; } module List where { import qualified Main; import qualified Maybe; import qualified Prelude; intersect :: Eq a => [a] -> [a] -> [a]; intersect = intersectBy (==); intersectBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]; intersectBy eq xs ys = concatMap (intersectBy0 eq ys) xs; intersectBy0 eq ys vv2 = intersectBy00 eq ys vv2; intersectBy00 eq ys x = intersectBy000 x (any (eq x) ys); intersectBy00 eq ys xw = []; intersectBy000 x True = x : []; intersectBy000 x False = []; } module Main where { import qualified List; import qualified Maybe; import qualified Prelude; } ---------------------------------------- (11) Narrow (SOUND) Haskell To QDPs digraph dp_graph { node [outthreshold=100, inthreshold=100];1[label="List.intersect",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 3[label="List.intersect xx3",fontsize=16,color="grey",shape="box"];3 -> 4[label="",style="dashed", color="grey", weight=3]; 4[label="List.intersect xx3 xx4",fontsize=16,color="black",shape="triangle"];4 -> 5[label="",style="solid", color="black", weight=3]; 5[label="List.intersectBy (==) xx3 xx4",fontsize=16,color="black",shape="box"];5 -> 6[label="",style="solid", color="black", weight=3]; 6[label="concatMap (List.intersectBy0 (==) xx4) xx3",fontsize=16,color="black",shape="box"];6 -> 7[label="",style="solid", color="black", weight=3]; 7[label="concat . map (List.intersectBy0 (==) xx4)",fontsize=16,color="black",shape="box"];7 -> 8[label="",style="solid", color="black", weight=3]; 8[label="concat (map (List.intersectBy0 (==) xx4) xx3)",fontsize=16,color="black",shape="box"];8 -> 9[label="",style="solid", color="black", weight=3]; 9[label="foldr (++) [] (map (List.intersectBy0 (==) xx4) xx3)",fontsize=16,color="burlywood",shape="triangle"];985[label="xx3/xx30 : xx31",fontsize=10,color="white",style="solid",shape="box"];9 -> 985[label="",style="solid", color="burlywood", weight=9]; 985 -> 10[label="",style="solid", color="burlywood", weight=3]; 986[label="xx3/[]",fontsize=10,color="white",style="solid",shape="box"];9 -> 986[label="",style="solid", color="burlywood", weight=9]; 986 -> 11[label="",style="solid", color="burlywood", weight=3]; 10[label="foldr (++) [] (map (List.intersectBy0 (==) xx4) (xx30 : xx31))",fontsize=16,color="black",shape="box"];10 -> 12[label="",style="solid", color="black", weight=3]; 11[label="foldr (++) [] (map (List.intersectBy0 (==) xx4) [])",fontsize=16,color="black",shape="box"];11 -> 13[label="",style="solid", color="black", weight=3]; 12[label="foldr (++) [] (List.intersectBy0 (==) xx4 xx30 : map (List.intersectBy0 (==) xx4) xx31)",fontsize=16,color="black",shape="box"];12 -> 14[label="",style="solid", color="black", weight=3]; 13[label="foldr (++) [] []",fontsize=16,color="black",shape="box"];13 -> 15[label="",style="solid", color="black", weight=3]; 14 -> 16[label="",style="dashed", color="red", weight=0]; 14[label="(++) List.intersectBy0 (==) xx4 xx30 foldr (++) [] (map (List.intersectBy0 (==) xx4) xx31)",fontsize=16,color="magenta"];14 -> 17[label="",style="dashed", color="magenta", weight=3]; 15[label="[]",fontsize=16,color="green",shape="box"];17 -> 9[label="",style="dashed", color="red", weight=0]; 17[label="foldr (++) [] (map (List.intersectBy0 (==) xx4) xx31)",fontsize=16,color="magenta"];17 -> 18[label="",style="dashed", color="magenta", weight=3]; 16[label="(++) List.intersectBy0 (==) xx4 xx30 xx5",fontsize=16,color="black",shape="triangle"];16 -> 19[label="",style="solid", color="black", weight=3]; 18[label="xx31",fontsize=16,color="green",shape="box"];19[label="(++) List.intersectBy00 (==) xx4 xx30 xx5",fontsize=16,color="black",shape="box"];19 -> 20[label="",style="solid", color="black", weight=3]; 20[label="(++) List.intersectBy000 xx30 (any ((==) xx30) xx4) xx5",fontsize=16,color="black",shape="box"];20 -> 21[label="",style="solid", color="black", weight=3]; 21[label="(++) List.intersectBy000 xx30 (or . map ((==) xx30)) xx5",fontsize=16,color="black",shape="box"];21 -> 22[label="",style="solid", color="black", weight=3]; 22[label="(++) List.intersectBy000 xx30 (or (map ((==) xx30) xx4)) xx5",fontsize=16,color="black",shape="box"];22 -> 23[label="",style="solid", color="black", weight=3]; 23[label="(++) List.intersectBy000 xx30 (foldr (||) False (map ((==) xx30) xx4)) xx5",fontsize=16,color="burlywood",shape="triangle"];987[label="xx4/xx40 : xx41",fontsize=10,color="white",style="solid",shape="box"];23 -> 987[label="",style="solid", color="burlywood", weight=9]; 987 -> 24[label="",style="solid", color="burlywood", weight=3]; 988[label="xx4/[]",fontsize=10,color="white",style="solid",shape="box"];23 -> 988[label="",style="solid", color="burlywood", weight=9]; 988 -> 25[label="",style="solid", color="burlywood", weight=3]; 24[label="(++) List.intersectBy000 xx30 (foldr (||) False (map ((==) xx30) (xx40 : xx41))) xx5",fontsize=16,color="black",shape="box"];24 -> 26[label="",style="solid", color="black", weight=3]; 25[label="(++) List.intersectBy000 xx30 (foldr (||) False (map ((==) xx30) [])) xx5",fontsize=16,color="black",shape="box"];25 -> 27[label="",style="solid", color="black", weight=3]; 26[label="(++) List.intersectBy000 xx30 (foldr (||) False (((==) xx30 xx40) : map ((==) xx30) xx41)) xx5",fontsize=16,color="black",shape="box"];26 -> 28[label="",style="solid", color="black", weight=3]; 27[label="(++) List.intersectBy000 xx30 (foldr (||) False []) xx5",fontsize=16,color="black",shape="box"];27 -> 29[label="",style="solid", color="black", weight=3]; 28[label="(++) List.intersectBy000 xx30 ((||) (==) xx30 xx40 foldr (||) False (map ((==) xx30) xx41)) xx5",fontsize=16,color="burlywood",shape="box"];989[label="xx30/xx300 : xx301",fontsize=10,color="white",style="solid",shape="box"];28 -> 989[label="",style="solid", color="burlywood", weight=9]; 989 -> 30[label="",style="solid", color="burlywood", weight=3]; 990[label="xx30/[]",fontsize=10,color="white",style="solid",shape="box"];28 -> 990[label="",style="solid", color="burlywood", weight=9]; 990 -> 31[label="",style="solid", color="burlywood", weight=3]; 29[label="(++) List.intersectBy000 xx30 False xx5",fontsize=16,color="black",shape="box"];29 -> 32[label="",style="solid", color="black", weight=3]; 30[label="(++) List.intersectBy000 (xx300 : xx301) ((||) (==) xx300 : xx301 xx40 foldr (||) False (map ((==) xx300 : xx301) xx41)) xx5",fontsize=16,color="burlywood",shape="box"];991[label="xx40/xx400 : xx401",fontsize=10,color="white",style="solid",shape="box"];30 -> 991[label="",style="solid", color="burlywood", weight=9]; 991 -> 33[label="",style="solid", color="burlywood", weight=3]; 992[label="xx40/[]",fontsize=10,color="white",style="solid",shape="box"];30 -> 992[label="",style="solid", color="burlywood", weight=9]; 992 -> 34[label="",style="solid", color="burlywood", weight=3]; 31[label="(++) List.intersectBy000 [] ((||) (==) [] xx40 foldr (||) False (map ((==) []) xx41)) xx5",fontsize=16,color="burlywood",shape="box"];993[label="xx40/xx400 : xx401",fontsize=10,color="white",style="solid",shape="box"];31 -> 993[label="",style="solid", color="burlywood", weight=9]; 993 -> 35[label="",style="solid", color="burlywood", weight=3]; 994[label="xx40/[]",fontsize=10,color="white",style="solid",shape="box"];31 -> 994[label="",style="solid", color="burlywood", weight=9]; 994 -> 36[label="",style="solid", color="burlywood", weight=3]; 32[label="(++) [] xx5",fontsize=16,color="black",shape="triangle"];32 -> 37[label="",style="solid", color="black", weight=3]; 33[label="(++) List.intersectBy000 (xx300 : xx301) ((||) (==) xx300 : xx301 xx400 : xx401 foldr (||) False (map ((==) xx300 : xx301) xx41)) xx5",fontsize=16,color="black",shape="box"];33 -> 38[label="",style="solid", color="black", weight=3]; 34[label="(++) List.intersectBy000 (xx300 : xx301) ((||) (==) xx300 : xx301 [] foldr (||) False (map ((==) xx300 : xx301) xx41)) xx5",fontsize=16,color="black",shape="box"];34 -> 39[label="",style="solid", color="black", weight=3]; 35[label="(++) List.intersectBy000 [] ((||) (==) [] xx400 : xx401 foldr (||) False (map ((==) []) xx41)) xx5",fontsize=16,color="black",shape="box"];35 -> 40[label="",style="solid", color="black", weight=3]; 36[label="(++) List.intersectBy000 [] ((||) (==) [] [] foldr (||) False (map ((==) []) xx41)) xx5",fontsize=16,color="black",shape="box"];36 -> 41[label="",style="solid", color="black", weight=3]; 37[label="xx5",fontsize=16,color="green",shape="box"];38 -> 135[label="",style="dashed", color="red", weight=0]; 38[label="(++) List.intersectBy000 (xx300 : xx301) ((||) xx300 == xx400 && xx301 == xx401 foldr (||) False (map ((==) xx300 : xx301) xx41)) xx5",fontsize=16,color="magenta"];38 -> 136[label="",style="dashed", color="magenta", weight=3]; 38 -> 137[label="",style="dashed", color="magenta", weight=3]; 38 -> 138[label="",style="dashed", color="magenta", weight=3]; 38 -> 139[label="",style="dashed", color="magenta", weight=3]; 38 -> 140[label="",style="dashed", color="magenta", weight=3]; 39 -> 135[label="",style="dashed", color="red", weight=0]; 39[label="(++) List.intersectBy000 (xx300 : xx301) ((||) False foldr (||) False (map ((==) xx300 : xx301) xx41)) xx5",fontsize=16,color="magenta"];39 -> 141[label="",style="dashed", color="magenta", weight=3]; 39 -> 142[label="",style="dashed", color="magenta", weight=3]; 39 -> 143[label="",style="dashed", color="magenta", weight=3]; 39 -> 144[label="",style="dashed", color="magenta", weight=3]; 39 -> 145[label="",style="dashed", color="magenta", weight=3]; 40[label="(++) List.intersectBy000 [] ((||) False foldr (||) False (map ((==) []) xx41)) xx5",fontsize=16,color="black",shape="box"];40 -> 50[label="",style="solid", color="black", weight=3]; 41[label="(++) List.intersectBy000 [] ((||) True foldr (||) False (map ((==) []) xx41)) xx5",fontsize=16,color="black",shape="box"];41 -> 51[label="",style="solid", color="black", weight=3]; 136[label="xx301",fontsize=16,color="green",shape="box"];137[label="xx41",fontsize=16,color="green",shape="box"];138 -> 349[label="",style="dashed", color="red", weight=0]; 138[label="xx300 == xx400 && xx301 == xx401",fontsize=16,color="magenta"];138 -> 350[label="",style="dashed", color="magenta", weight=3]; 138 -> 351[label="",style="dashed", color="magenta", weight=3]; 139[label="xx5",fontsize=16,color="green",shape="box"];140[label="xx300",fontsize=16,color="green",shape="box"];135[label="(++) List.intersectBy000 (xx13 : xx14) ((||) xx19 foldr (||) False (map ((==) xx13 : xx14) xx17)) xx18",fontsize=16,color="burlywood",shape="triangle"];995[label="xx19/False",fontsize=10,color="white",style="solid",shape="box"];135 -> 995[label="",style="solid", color="burlywood", weight=9]; 995 -> 153[label="",style="solid", color="burlywood", weight=3]; 996[label="xx19/True",fontsize=10,color="white",style="solid",shape="box"];135 -> 996[label="",style="solid", color="burlywood", weight=9]; 996 -> 154[label="",style="solid", color="burlywood", weight=3]; 141[label="xx301",fontsize=16,color="green",shape="box"];142[label="xx41",fontsize=16,color="green",shape="box"];143[label="False",fontsize=16,color="green",shape="box"];144[label="xx5",fontsize=16,color="green",shape="box"];145[label="xx300",fontsize=16,color="green",shape="box"];50 -> 23[label="",style="dashed", color="red", weight=0]; 50[label="(++) List.intersectBy000 [] (foldr (||) False (map ((==) []) xx41)) xx5",fontsize=16,color="magenta"];50 -> 70[label="",style="dashed", color="magenta", weight=3]; 50 -> 71[label="",style="dashed", color="magenta", weight=3]; 51[label="(++) List.intersectBy000 [] True xx5",fontsize=16,color="black",shape="box"];51 -> 72[label="",style="solid", color="black", weight=3]; 350[label="xx301 == xx401",fontsize=16,color="burlywood",shape="triangle"];997[label="xx301/xx3010 : xx3011",fontsize=10,color="white",style="solid",shape="box"];350 -> 997[label="",style="solid", color="burlywood", weight=9]; 997 -> 354[label="",style="solid", color="burlywood", weight=3]; 998[label="xx301/[]",fontsize=10,color="white",style="solid",shape="box"];350 -> 998[label="",style="solid", color="burlywood", weight=9]; 998 -> 355[label="",style="solid", color="burlywood", weight=3]; 351[label="xx300 == xx400",fontsize=16,color="blue",shape="box"];999[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];351 -> 999[label="",style="solid", color="blue", weight=9]; 999 -> 356[label="",style="solid", color="blue", weight=3]; 1000[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];351 -> 1000[label="",style="solid", color="blue", weight=9]; 1000 -> 357[label="",style="solid", color="blue", weight=3]; 1001[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];351 -> 1001[label="",style="solid", color="blue", weight=9]; 1001 -> 358[label="",style="solid", color="blue", weight=3]; 1002[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];351 -> 1002[label="",style="solid", color="blue", weight=9]; 1002 -> 359[label="",style="solid", color="blue", weight=3]; 1003[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];351 -> 1003[label="",style="solid", color="blue", weight=9]; 1003 -> 360[label="",style="solid", color="blue", weight=3]; 1004[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];351 -> 1004[label="",style="solid", color="blue", weight=9]; 1004 -> 361[label="",style="solid", color="blue", weight=3]; 1005[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];351 -> 1005[label="",style="solid", color="blue", weight=9]; 1005 -> 362[label="",style="solid", color="blue", weight=3]; 1006[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];351 -> 1006[label="",style="solid", color="blue", weight=9]; 1006 -> 363[label="",style="solid", color="blue", weight=3]; 1007[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];351 -> 1007[label="",style="solid", color="blue", weight=9]; 1007 -> 364[label="",style="solid", color="blue", weight=3]; 1008[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];351 -> 1008[label="",style="solid", color="blue", weight=9]; 1008 -> 365[label="",style="solid", color="blue", weight=3]; 1009[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];351 -> 1009[label="",style="solid", color="blue", weight=9]; 1009 -> 366[label="",style="solid", color="blue", weight=3]; 1010[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];351 -> 1010[label="",style="solid", color="blue", weight=9]; 1010 -> 367[label="",style="solid", color="blue", weight=3]; 1011[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];351 -> 1011[label="",style="solid", color="blue", weight=9]; 1011 -> 368[label="",style="solid", color="blue", weight=3]; 1012[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];351 -> 1012[label="",style="solid", color="blue", weight=9]; 1012 -> 369[label="",style="solid", color="blue", weight=3]; 349[label="xx31 && xx32",fontsize=16,color="burlywood",shape="triangle"];1013[label="xx31/False",fontsize=10,color="white",style="solid",shape="box"];349 -> 1013[label="",style="solid", color="burlywood", weight=9]; 1013 -> 370[label="",style="solid", color="burlywood", weight=3]; 1014[label="xx31/True",fontsize=10,color="white",style="solid",shape="box"];349 -> 1014[label="",style="solid", color="burlywood", weight=9]; 1014 -> 371[label="",style="solid", color="burlywood", weight=3]; 153[label="(++) List.intersectBy000 (xx13 : xx14) ((||) False foldr (||) False (map ((==) xx13 : xx14) xx17)) xx18",fontsize=16,color="black",shape="box"];153 -> 172[label="",style="solid", color="black", weight=3]; 154[label="(++) List.intersectBy000 (xx13 : xx14) ((||) True foldr (||) False (map ((==) xx13 : xx14) xx17)) xx18",fontsize=16,color="black",shape="box"];154 -> 173[label="",style="solid", color="black", weight=3]; 70[label="xx41",fontsize=16,color="green",shape="box"];71[label="[]",fontsize=16,color="green",shape="box"];72[label="(++) ([] : []) xx5",fontsize=16,color="black",shape="box"];72 -> 95[label="",style="solid", color="black", weight=3]; 354[label="xx3010 : xx3011 == xx401",fontsize=16,color="burlywood",shape="box"];1015[label="xx401/xx4010 : xx4011",fontsize=10,color="white",style="solid",shape="box"];354 -> 1015[label="",style="solid", color="burlywood", weight=9]; 1015 -> 373[label="",style="solid", color="burlywood", weight=3]; 1016[label="xx401/[]",fontsize=10,color="white",style="solid",shape="box"];354 -> 1016[label="",style="solid", color="burlywood", weight=9]; 1016 -> 374[label="",style="solid", color="burlywood", weight=3]; 355[label="[] == xx401",fontsize=16,color="burlywood",shape="box"];1017[label="xx401/xx4010 : xx4011",fontsize=10,color="white",style="solid",shape="box"];355 -> 1017[label="",style="solid", color="burlywood", weight=9]; 1017 -> 375[label="",style="solid", color="burlywood", weight=3]; 1018[label="xx401/[]",fontsize=10,color="white",style="solid",shape="box"];355 -> 1018[label="",style="solid", color="burlywood", weight=9]; 1018 -> 376[label="",style="solid", color="burlywood", weight=3]; 356[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];1019[label="xx300/xx3000 :% xx3001",fontsize=10,color="white",style="solid",shape="box"];356 -> 1019[label="",style="solid", color="burlywood", weight=9]; 1019 -> 377[label="",style="solid", color="burlywood", weight=3]; 357[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];1020[label="xx300/Nothing",fontsize=10,color="white",style="solid",shape="box"];357 -> 1020[label="",style="solid", color="burlywood", weight=9]; 1020 -> 378[label="",style="solid", color="burlywood", weight=3]; 1021[label="xx300/Just xx3000",fontsize=10,color="white",style="solid",shape="box"];357 -> 1021[label="",style="solid", color="burlywood", weight=9]; 1021 -> 379[label="",style="solid", color="burlywood", weight=3]; 358[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];1022[label="xx300/()",fontsize=10,color="white",style="solid",shape="box"];358 -> 1022[label="",style="solid", color="burlywood", weight=9]; 1022 -> 380[label="",style="solid", color="burlywood", weight=3]; 359[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];1023[label="xx300/(xx3000,xx3001,xx3002)",fontsize=10,color="white",style="solid",shape="box"];359 -> 1023[label="",style="solid", color="burlywood", weight=9]; 1023 -> 381[label="",style="solid", color="burlywood", weight=3]; 360[label="xx300 == xx400",fontsize=16,color="black",shape="triangle"];360 -> 382[label="",style="solid", color="black", weight=3]; 361[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];1024[label="xx300/Integer xx3000",fontsize=10,color="white",style="solid",shape="box"];361 -> 1024[label="",style="solid", color="burlywood", weight=9]; 1024 -> 383[label="",style="solid", color="burlywood", weight=3]; 362[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];1025[label="xx300/LT",fontsize=10,color="white",style="solid",shape="box"];362 -> 1025[label="",style="solid", color="burlywood", weight=9]; 1025 -> 384[label="",style="solid", color="burlywood", weight=3]; 1026[label="xx300/EQ",fontsize=10,color="white",style="solid",shape="box"];362 -> 1026[label="",style="solid", color="burlywood", weight=9]; 1026 -> 385[label="",style="solid", color="burlywood", weight=3]; 1027[label="xx300/GT",fontsize=10,color="white",style="solid",shape="box"];362 -> 1027[label="",style="solid", color="burlywood", weight=9]; 1027 -> 386[label="",style="solid", color="burlywood", weight=3]; 363[label="xx300 == xx400",fontsize=16,color="black",shape="triangle"];363 -> 387[label="",style="solid", color="black", weight=3]; 364[label="xx300 == xx400",fontsize=16,color="black",shape="triangle"];364 -> 388[label="",style="solid", color="black", weight=3]; 365[label="xx300 == xx400",fontsize=16,color="black",shape="triangle"];365 -> 389[label="",style="solid", color="black", weight=3]; 366 -> 350[label="",style="dashed", color="red", weight=0]; 366[label="xx300 == xx400",fontsize=16,color="magenta"];366 -> 390[label="",style="dashed", color="magenta", weight=3]; 366 -> 391[label="",style="dashed", color="magenta", weight=3]; 367[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];1028[label="xx300/False",fontsize=10,color="white",style="solid",shape="box"];367 -> 1028[label="",style="solid", color="burlywood", weight=9]; 1028 -> 392[label="",style="solid", color="burlywood", weight=3]; 1029[label="xx300/True",fontsize=10,color="white",style="solid",shape="box"];367 -> 1029[label="",style="solid", color="burlywood", weight=9]; 1029 -> 393[label="",style="solid", color="burlywood", weight=3]; 368[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];1030[label="xx300/Left xx3000",fontsize=10,color="white",style="solid",shape="box"];368 -> 1030[label="",style="solid", color="burlywood", weight=9]; 1030 -> 394[label="",style="solid", color="burlywood", weight=3]; 1031[label="xx300/Right xx3000",fontsize=10,color="white",style="solid",shape="box"];368 -> 1031[label="",style="solid", color="burlywood", weight=9]; 1031 -> 395[label="",style="solid", color="burlywood", weight=3]; 369[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];1032[label="xx300/(xx3000,xx3001)",fontsize=10,color="white",style="solid",shape="box"];369 -> 1032[label="",style="solid", color="burlywood", weight=9]; 1032 -> 396[label="",style="solid", color="burlywood", weight=3]; 370[label="False && xx32",fontsize=16,color="black",shape="box"];370 -> 397[label="",style="solid", color="black", weight=3]; 371[label="True && xx32",fontsize=16,color="black",shape="box"];371 -> 398[label="",style="solid", color="black", weight=3]; 172 -> 23[label="",style="dashed", color="red", weight=0]; 172[label="(++) List.intersectBy000 (xx13 : xx14) (foldr (||) False (map ((==) xx13 : xx14) xx17)) xx18",fontsize=16,color="magenta"];172 -> 196[label="",style="dashed", color="magenta", weight=3]; 172 -> 197[label="",style="dashed", color="magenta", weight=3]; 172 -> 198[label="",style="dashed", color="magenta", weight=3]; 173[label="(++) List.intersectBy000 (xx13 : xx14) True xx18",fontsize=16,color="black",shape="box"];173 -> 199[label="",style="solid", color="black", weight=3]; 95[label="[] : [] ++ xx5",fontsize=16,color="green",shape="box"];95 -> 171[label="",style="dashed", color="green", weight=3]; 373[label="xx3010 : xx3011 == xx4010 : xx4011",fontsize=16,color="black",shape="box"];373 -> 399[label="",style="solid", color="black", weight=3]; 374[label="xx3010 : xx3011 == []",fontsize=16,color="black",shape="box"];374 -> 400[label="",style="solid", color="black", weight=3]; 375[label="[] == xx4010 : xx4011",fontsize=16,color="black",shape="box"];375 -> 401[label="",style="solid", color="black", weight=3]; 376[label="[] == []",fontsize=16,color="black",shape="box"];376 -> 402[label="",style="solid", color="black", weight=3]; 377[label="xx3000 :% xx3001 == xx400",fontsize=16,color="burlywood",shape="box"];1033[label="xx400/xx4000 :% xx4001",fontsize=10,color="white",style="solid",shape="box"];377 -> 1033[label="",style="solid", color="burlywood", weight=9]; 1033 -> 403[label="",style="solid", color="burlywood", weight=3]; 378[label="Nothing == xx400",fontsize=16,color="burlywood",shape="box"];1034[label="xx400/Nothing",fontsize=10,color="white",style="solid",shape="box"];378 -> 1034[label="",style="solid", color="burlywood", weight=9]; 1034 -> 404[label="",style="solid", color="burlywood", weight=3]; 1035[label="xx400/Just xx4000",fontsize=10,color="white",style="solid",shape="box"];378 -> 1035[label="",style="solid", color="burlywood", weight=9]; 1035 -> 405[label="",style="solid", color="burlywood", weight=3]; 379[label="Just xx3000 == xx400",fontsize=16,color="burlywood",shape="box"];1036[label="xx400/Nothing",fontsize=10,color="white",style="solid",shape="box"];379 -> 1036[label="",style="solid", color="burlywood", weight=9]; 1036 -> 406[label="",style="solid", color="burlywood", weight=3]; 1037[label="xx400/Just xx4000",fontsize=10,color="white",style="solid",shape="box"];379 -> 1037[label="",style="solid", color="burlywood", weight=9]; 1037 -> 407[label="",style="solid", color="burlywood", weight=3]; 380[label="() == xx400",fontsize=16,color="burlywood",shape="box"];1038[label="xx400/()",fontsize=10,color="white",style="solid",shape="box"];380 -> 1038[label="",style="solid", color="burlywood", weight=9]; 1038 -> 408[label="",style="solid", color="burlywood", weight=3]; 381[label="(xx3000,xx3001,xx3002) == xx400",fontsize=16,color="burlywood",shape="box"];1039[label="xx400/(xx4000,xx4001,xx4002)",fontsize=10,color="white",style="solid",shape="box"];381 -> 1039[label="",style="solid", color="burlywood", weight=9]; 1039 -> 409[label="",style="solid", color="burlywood", weight=3]; 382[label="primEqChar xx300 xx400",fontsize=16,color="burlywood",shape="box"];1040[label="xx300/Char xx3000",fontsize=10,color="white",style="solid",shape="box"];382 -> 1040[label="",style="solid", color="burlywood", weight=9]; 1040 -> 410[label="",style="solid", color="burlywood", weight=3]; 383[label="Integer xx3000 == xx400",fontsize=16,color="burlywood",shape="box"];1041[label="xx400/Integer xx4000",fontsize=10,color="white",style="solid",shape="box"];383 -> 1041[label="",style="solid", color="burlywood", weight=9]; 1041 -> 411[label="",style="solid", color="burlywood", weight=3]; 384[label="LT == xx400",fontsize=16,color="burlywood",shape="box"];1042[label="xx400/LT",fontsize=10,color="white",style="solid",shape="box"];384 -> 1042[label="",style="solid", color="burlywood", weight=9]; 1042 -> 412[label="",style="solid", color="burlywood", weight=3]; 1043[label="xx400/EQ",fontsize=10,color="white",style="solid",shape="box"];384 -> 1043[label="",style="solid", color="burlywood", weight=9]; 1043 -> 413[label="",style="solid", color="burlywood", weight=3]; 1044[label="xx400/GT",fontsize=10,color="white",style="solid",shape="box"];384 -> 1044[label="",style="solid", color="burlywood", weight=9]; 1044 -> 414[label="",style="solid", color="burlywood", weight=3]; 385[label="EQ == xx400",fontsize=16,color="burlywood",shape="box"];1045[label="xx400/LT",fontsize=10,color="white",style="solid",shape="box"];385 -> 1045[label="",style="solid", color="burlywood", weight=9]; 1045 -> 415[label="",style="solid", color="burlywood", weight=3]; 1046[label="xx400/EQ",fontsize=10,color="white",style="solid",shape="box"];385 -> 1046[label="",style="solid", color="burlywood", weight=9]; 1046 -> 416[label="",style="solid", color="burlywood", weight=3]; 1047[label="xx400/GT",fontsize=10,color="white",style="solid",shape="box"];385 -> 1047[label="",style="solid", color="burlywood", weight=9]; 1047 -> 417[label="",style="solid", color="burlywood", weight=3]; 386[label="GT == xx400",fontsize=16,color="burlywood",shape="box"];1048[label="xx400/LT",fontsize=10,color="white",style="solid",shape="box"];386 -> 1048[label="",style="solid", color="burlywood", weight=9]; 1048 -> 418[label="",style="solid", color="burlywood", weight=3]; 1049[label="xx400/EQ",fontsize=10,color="white",style="solid",shape="box"];386 -> 1049[label="",style="solid", color="burlywood", weight=9]; 1049 -> 419[label="",style="solid", color="burlywood", weight=3]; 1050[label="xx400/GT",fontsize=10,color="white",style="solid",shape="box"];386 -> 1050[label="",style="solid", color="burlywood", weight=9]; 1050 -> 420[label="",style="solid", color="burlywood", weight=3]; 387[label="primEqDouble xx300 xx400",fontsize=16,color="burlywood",shape="box"];1051[label="xx300/Double xx3000 xx3001",fontsize=10,color="white",style="solid",shape="box"];387 -> 1051[label="",style="solid", color="burlywood", weight=9]; 1051 -> 421[label="",style="solid", color="burlywood", weight=3]; 388[label="primEqFloat xx300 xx400",fontsize=16,color="burlywood",shape="box"];1052[label="xx300/Float xx3000 xx3001",fontsize=10,color="white",style="solid",shape="box"];388 -> 1052[label="",style="solid", color="burlywood", weight=9]; 1052 -> 422[label="",style="solid", color="burlywood", weight=3]; 389[label="primEqInt xx300 xx400",fontsize=16,color="burlywood",shape="triangle"];1053[label="xx300/Pos xx3000",fontsize=10,color="white",style="solid",shape="box"];389 -> 1053[label="",style="solid", color="burlywood", weight=9]; 1053 -> 423[label="",style="solid", color="burlywood", weight=3]; 1054[label="xx300/Neg xx3000",fontsize=10,color="white",style="solid",shape="box"];389 -> 1054[label="",style="solid", color="burlywood", weight=9]; 1054 -> 424[label="",style="solid", color="burlywood", weight=3]; 390[label="xx400",fontsize=16,color="green",shape="box"];391[label="xx300",fontsize=16,color="green",shape="box"];392[label="False == xx400",fontsize=16,color="burlywood",shape="box"];1055[label="xx400/False",fontsize=10,color="white",style="solid",shape="box"];392 -> 1055[label="",style="solid", color="burlywood", weight=9]; 1055 -> 425[label="",style="solid", color="burlywood", weight=3]; 1056[label="xx400/True",fontsize=10,color="white",style="solid",shape="box"];392 -> 1056[label="",style="solid", color="burlywood", weight=9]; 1056 -> 426[label="",style="solid", color="burlywood", weight=3]; 393[label="True == xx400",fontsize=16,color="burlywood",shape="box"];1057[label="xx400/False",fontsize=10,color="white",style="solid",shape="box"];393 -> 1057[label="",style="solid", color="burlywood", weight=9]; 1057 -> 427[label="",style="solid", color="burlywood", weight=3]; 1058[label="xx400/True",fontsize=10,color="white",style="solid",shape="box"];393 -> 1058[label="",style="solid", color="burlywood", weight=9]; 1058 -> 428[label="",style="solid", color="burlywood", weight=3]; 394[label="Left xx3000 == xx400",fontsize=16,color="burlywood",shape="box"];1059[label="xx400/Left xx4000",fontsize=10,color="white",style="solid",shape="box"];394 -> 1059[label="",style="solid", color="burlywood", weight=9]; 1059 -> 429[label="",style="solid", color="burlywood", weight=3]; 1060[label="xx400/Right xx4000",fontsize=10,color="white",style="solid",shape="box"];394 -> 1060[label="",style="solid", color="burlywood", weight=9]; 1060 -> 430[label="",style="solid", color="burlywood", weight=3]; 395[label="Right xx3000 == xx400",fontsize=16,color="burlywood",shape="box"];1061[label="xx400/Left xx4000",fontsize=10,color="white",style="solid",shape="box"];395 -> 1061[label="",style="solid", color="burlywood", weight=9]; 1061 -> 431[label="",style="solid", color="burlywood", weight=3]; 1062[label="xx400/Right xx4000",fontsize=10,color="white",style="solid",shape="box"];395 -> 1062[label="",style="solid", color="burlywood", weight=9]; 1062 -> 432[label="",style="solid", color="burlywood", weight=3]; 396[label="(xx3000,xx3001) == xx400",fontsize=16,color="burlywood",shape="box"];1063[label="xx400/(xx4000,xx4001)",fontsize=10,color="white",style="solid",shape="box"];396 -> 1063[label="",style="solid", color="burlywood", weight=9]; 1063 -> 433[label="",style="solid", color="burlywood", weight=3]; 397[label="False",fontsize=16,color="green",shape="box"];398[label="xx32",fontsize=16,color="green",shape="box"];196[label="xx17",fontsize=16,color="green",shape="box"];197[label="xx13 : xx14",fontsize=16,color="green",shape="box"];198[label="xx18",fontsize=16,color="green",shape="box"];199[label="(++) ((xx13 : xx14) : []) xx18",fontsize=16,color="black",shape="box"];199 -> 249[label="",style="solid", color="black", weight=3]; 171 -> 32[label="",style="dashed", color="red", weight=0]; 171[label="[] ++ xx5",fontsize=16,color="magenta"];399 -> 349[label="",style="dashed", color="red", weight=0]; 399[label="xx3010 == xx4010 && xx3011 == xx4011",fontsize=16,color="magenta"];399 -> 434[label="",style="dashed", color="magenta", weight=3]; 399 -> 435[label="",style="dashed", color="magenta", weight=3]; 400[label="False",fontsize=16,color="green",shape="box"];401[label="False",fontsize=16,color="green",shape="box"];402[label="True",fontsize=16,color="green",shape="box"];403[label="xx3000 :% xx3001 == xx4000 :% xx4001",fontsize=16,color="black",shape="box"];403 -> 436[label="",style="solid", color="black", weight=3]; 404[label="Nothing == Nothing",fontsize=16,color="black",shape="box"];404 -> 437[label="",style="solid", color="black", weight=3]; 405[label="Nothing == Just xx4000",fontsize=16,color="black",shape="box"];405 -> 438[label="",style="solid", color="black", weight=3]; 406[label="Just xx3000 == Nothing",fontsize=16,color="black",shape="box"];406 -> 439[label="",style="solid", color="black", weight=3]; 407[label="Just xx3000 == Just xx4000",fontsize=16,color="black",shape="box"];407 -> 440[label="",style="solid", color="black", weight=3]; 408[label="() == ()",fontsize=16,color="black",shape="box"];408 -> 441[label="",style="solid", color="black", weight=3]; 409[label="(xx3000,xx3001,xx3002) == (xx4000,xx4001,xx4002)",fontsize=16,color="black",shape="box"];409 -> 442[label="",style="solid", color="black", weight=3]; 410[label="primEqChar (Char xx3000) xx400",fontsize=16,color="burlywood",shape="box"];1064[label="xx400/Char xx4000",fontsize=10,color="white",style="solid",shape="box"];410 -> 1064[label="",style="solid", color="burlywood", weight=9]; 1064 -> 443[label="",style="solid", color="burlywood", weight=3]; 411[label="Integer xx3000 == Integer xx4000",fontsize=16,color="black",shape="box"];411 -> 444[label="",style="solid", color="black", weight=3]; 412[label="LT == LT",fontsize=16,color="black",shape="box"];412 -> 445[label="",style="solid", color="black", weight=3]; 413[label="LT == EQ",fontsize=16,color="black",shape="box"];413 -> 446[label="",style="solid", color="black", weight=3]; 414[label="LT == GT",fontsize=16,color="black",shape="box"];414 -> 447[label="",style="solid", color="black", weight=3]; 415[label="EQ == LT",fontsize=16,color="black",shape="box"];415 -> 448[label="",style="solid", color="black", weight=3]; 416[label="EQ == EQ",fontsize=16,color="black",shape="box"];416 -> 449[label="",style="solid", color="black", weight=3]; 417[label="EQ == GT",fontsize=16,color="black",shape="box"];417 -> 450[label="",style="solid", color="black", weight=3]; 418[label="GT == LT",fontsize=16,color="black",shape="box"];418 -> 451[label="",style="solid", color="black", weight=3]; 419[label="GT == EQ",fontsize=16,color="black",shape="box"];419 -> 452[label="",style="solid", color="black", weight=3]; 420[label="GT == GT",fontsize=16,color="black",shape="box"];420 -> 453[label="",style="solid", color="black", weight=3]; 421[label="primEqDouble (Double xx3000 xx3001) xx400",fontsize=16,color="burlywood",shape="box"];1065[label="xx400/Double xx4000 xx4001",fontsize=10,color="white",style="solid",shape="box"];421 -> 1065[label="",style="solid", color="burlywood", weight=9]; 1065 -> 454[label="",style="solid", color="burlywood", weight=3]; 422[label="primEqFloat (Float xx3000 xx3001) xx400",fontsize=16,color="burlywood",shape="box"];1066[label="xx400/Float xx4000 xx4001",fontsize=10,color="white",style="solid",shape="box"];422 -> 1066[label="",style="solid", color="burlywood", weight=9]; 1066 -> 455[label="",style="solid", color="burlywood", weight=3]; 423[label="primEqInt (Pos xx3000) xx400",fontsize=16,color="burlywood",shape="box"];1067[label="xx3000/Succ xx30000",fontsize=10,color="white",style="solid",shape="box"];423 -> 1067[label="",style="solid", color="burlywood", weight=9]; 1067 -> 456[label="",style="solid", color="burlywood", weight=3]; 1068[label="xx3000/Zero",fontsize=10,color="white",style="solid",shape="box"];423 -> 1068[label="",style="solid", color="burlywood", weight=9]; 1068 -> 457[label="",style="solid", color="burlywood", weight=3]; 424[label="primEqInt (Neg xx3000) xx400",fontsize=16,color="burlywood",shape="box"];1069[label="xx3000/Succ xx30000",fontsize=10,color="white",style="solid",shape="box"];424 -> 1069[label="",style="solid", color="burlywood", weight=9]; 1069 -> 458[label="",style="solid", color="burlywood", weight=3]; 1070[label="xx3000/Zero",fontsize=10,color="white",style="solid",shape="box"];424 -> 1070[label="",style="solid", color="burlywood", weight=9]; 1070 -> 459[label="",style="solid", color="burlywood", weight=3]; 425[label="False == False",fontsize=16,color="black",shape="box"];425 -> 460[label="",style="solid", color="black", weight=3]; 426[label="False == True",fontsize=16,color="black",shape="box"];426 -> 461[label="",style="solid", color="black", weight=3]; 427[label="True == False",fontsize=16,color="black",shape="box"];427 -> 462[label="",style="solid", color="black", weight=3]; 428[label="True == True",fontsize=16,color="black",shape="box"];428 -> 463[label="",style="solid", color="black", weight=3]; 429[label="Left xx3000 == Left xx4000",fontsize=16,color="black",shape="box"];429 -> 464[label="",style="solid", color="black", weight=3]; 430[label="Left xx3000 == Right xx4000",fontsize=16,color="black",shape="box"];430 -> 465[label="",style="solid", color="black", weight=3]; 431[label="Right xx3000 == Left xx4000",fontsize=16,color="black",shape="box"];431 -> 466[label="",style="solid", color="black", weight=3]; 432[label="Right xx3000 == Right xx4000",fontsize=16,color="black",shape="box"];432 -> 467[label="",style="solid", color="black", weight=3]; 433[label="(xx3000,xx3001) == (xx4000,xx4001)",fontsize=16,color="black",shape="box"];433 -> 468[label="",style="solid", color="black", weight=3]; 249[label="(xx13 : xx14) : [] ++ xx18",fontsize=16,color="green",shape="box"];249 -> 315[label="",style="dashed", color="green", weight=3]; 434 -> 350[label="",style="dashed", color="red", weight=0]; 434[label="xx3011 == xx4011",fontsize=16,color="magenta"];434 -> 469[label="",style="dashed", color="magenta", weight=3]; 434 -> 470[label="",style="dashed", color="magenta", weight=3]; 435[label="xx3010 == xx4010",fontsize=16,color="blue",shape="box"];1071[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];435 -> 1071[label="",style="solid", color="blue", weight=9]; 1071 -> 471[label="",style="solid", color="blue", weight=3]; 1072[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];435 -> 1072[label="",style="solid", color="blue", weight=9]; 1072 -> 472[label="",style="solid", color="blue", weight=3]; 1073[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];435 -> 1073[label="",style="solid", color="blue", weight=9]; 1073 -> 473[label="",style="solid", color="blue", weight=3]; 1074[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];435 -> 1074[label="",style="solid", color="blue", weight=9]; 1074 -> 474[label="",style="solid", color="blue", weight=3]; 1075[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];435 -> 1075[label="",style="solid", color="blue", weight=9]; 1075 -> 475[label="",style="solid", color="blue", weight=3]; 1076[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];435 -> 1076[label="",style="solid", color="blue", weight=9]; 1076 -> 476[label="",style="solid", color="blue", weight=3]; 1077[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];435 -> 1077[label="",style="solid", color="blue", weight=9]; 1077 -> 477[label="",style="solid", color="blue", weight=3]; 1078[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];435 -> 1078[label="",style="solid", color="blue", weight=9]; 1078 -> 478[label="",style="solid", color="blue", weight=3]; 1079[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];435 -> 1079[label="",style="solid", color="blue", weight=9]; 1079 -> 479[label="",style="solid", color="blue", weight=3]; 1080[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];435 -> 1080[label="",style="solid", color="blue", weight=9]; 1080 -> 480[label="",style="solid", color="blue", weight=3]; 1081[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];435 -> 1081[label="",style="solid", color="blue", weight=9]; 1081 -> 481[label="",style="solid", color="blue", weight=3]; 1082[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];435 -> 1082[label="",style="solid", color="blue", weight=9]; 1082 -> 482[label="",style="solid", color="blue", weight=3]; 1083[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];435 -> 1083[label="",style="solid", color="blue", weight=9]; 1083 -> 483[label="",style="solid", color="blue", weight=3]; 1084[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];435 -> 1084[label="",style="solid", color="blue", weight=9]; 1084 -> 484[label="",style="solid", color="blue", weight=3]; 436 -> 349[label="",style="dashed", color="red", weight=0]; 436[label="xx3000 == xx4000 && xx3001 == xx4001",fontsize=16,color="magenta"];436 -> 485[label="",style="dashed", color="magenta", weight=3]; 436 -> 486[label="",style="dashed", color="magenta", weight=3]; 437[label="True",fontsize=16,color="green",shape="box"];438[label="False",fontsize=16,color="green",shape="box"];439[label="False",fontsize=16,color="green",shape="box"];440[label="xx3000 == xx4000",fontsize=16,color="blue",shape="box"];1085[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];440 -> 1085[label="",style="solid", color="blue", weight=9]; 1085 -> 487[label="",style="solid", color="blue", weight=3]; 1086[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];440 -> 1086[label="",style="solid", color="blue", weight=9]; 1086 -> 488[label="",style="solid", color="blue", weight=3]; 1087[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];440 -> 1087[label="",style="solid", color="blue", weight=9]; 1087 -> 489[label="",style="solid", color="blue", weight=3]; 1088[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];440 -> 1088[label="",style="solid", color="blue", weight=9]; 1088 -> 490[label="",style="solid", color="blue", weight=3]; 1089[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];440 -> 1089[label="",style="solid", color="blue", weight=9]; 1089 -> 491[label="",style="solid", color="blue", weight=3]; 1090[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];440 -> 1090[label="",style="solid", color="blue", weight=9]; 1090 -> 492[label="",style="solid", color="blue", weight=3]; 1091[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];440 -> 1091[label="",style="solid", color="blue", weight=9]; 1091 -> 493[label="",style="solid", color="blue", weight=3]; 1092[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];440 -> 1092[label="",style="solid", color="blue", weight=9]; 1092 -> 494[label="",style="solid", color="blue", weight=3]; 1093[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];440 -> 1093[label="",style="solid", color="blue", weight=9]; 1093 -> 495[label="",style="solid", color="blue", weight=3]; 1094[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];440 -> 1094[label="",style="solid", color="blue", weight=9]; 1094 -> 496[label="",style="solid", color="blue", weight=3]; 1095[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];440 -> 1095[label="",style="solid", color="blue", weight=9]; 1095 -> 497[label="",style="solid", color="blue", weight=3]; 1096[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];440 -> 1096[label="",style="solid", color="blue", weight=9]; 1096 -> 498[label="",style="solid", color="blue", weight=3]; 1097[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];440 -> 1097[label="",style="solid", color="blue", weight=9]; 1097 -> 499[label="",style="solid", color="blue", weight=3]; 1098[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];440 -> 1098[label="",style="solid", color="blue", weight=9]; 1098 -> 500[label="",style="solid", color="blue", weight=3]; 441[label="True",fontsize=16,color="green",shape="box"];442 -> 349[label="",style="dashed", color="red", weight=0]; 442[label="xx3000 == xx4000 && xx3001 == xx4001 && xx3002 == xx4002",fontsize=16,color="magenta"];442 -> 501[label="",style="dashed", color="magenta", weight=3]; 442 -> 502[label="",style="dashed", color="magenta", weight=3]; 443[label="primEqChar (Char xx3000) (Char xx4000)",fontsize=16,color="black",shape="box"];443 -> 503[label="",style="solid", color="black", weight=3]; 444 -> 389[label="",style="dashed", color="red", weight=0]; 444[label="primEqInt xx3000 xx4000",fontsize=16,color="magenta"];444 -> 504[label="",style="dashed", color="magenta", weight=3]; 444 -> 505[label="",style="dashed", color="magenta", weight=3]; 445[label="True",fontsize=16,color="green",shape="box"];446[label="False",fontsize=16,color="green",shape="box"];447[label="False",fontsize=16,color="green",shape="box"];448[label="False",fontsize=16,color="green",shape="box"];449[label="True",fontsize=16,color="green",shape="box"];450[label="False",fontsize=16,color="green",shape="box"];451[label="False",fontsize=16,color="green",shape="box"];452[label="False",fontsize=16,color="green",shape="box"];453[label="True",fontsize=16,color="green",shape="box"];454[label="primEqDouble (Double xx3000 xx3001) (Double xx4000 xx4001)",fontsize=16,color="black",shape="box"];454 -> 506[label="",style="solid", color="black", weight=3]; 455[label="primEqFloat (Float xx3000 xx3001) (Float xx4000 xx4001)",fontsize=16,color="black",shape="box"];455 -> 507[label="",style="solid", color="black", weight=3]; 456[label="primEqInt (Pos (Succ xx30000)) xx400",fontsize=16,color="burlywood",shape="box"];1099[label="xx400/Pos xx4000",fontsize=10,color="white",style="solid",shape="box"];456 -> 1099[label="",style="solid", color="burlywood", weight=9]; 1099 -> 508[label="",style="solid", color="burlywood", weight=3]; 1100[label="xx400/Neg xx4000",fontsize=10,color="white",style="solid",shape="box"];456 -> 1100[label="",style="solid", color="burlywood", weight=9]; 1100 -> 509[label="",style="solid", color="burlywood", weight=3]; 457[label="primEqInt (Pos Zero) xx400",fontsize=16,color="burlywood",shape="box"];1101[label="xx400/Pos xx4000",fontsize=10,color="white",style="solid",shape="box"];457 -> 1101[label="",style="solid", color="burlywood", weight=9]; 1101 -> 510[label="",style="solid", color="burlywood", weight=3]; 1102[label="xx400/Neg xx4000",fontsize=10,color="white",style="solid",shape="box"];457 -> 1102[label="",style="solid", color="burlywood", weight=9]; 1102 -> 511[label="",style="solid", color="burlywood", weight=3]; 458[label="primEqInt (Neg (Succ xx30000)) xx400",fontsize=16,color="burlywood",shape="box"];1103[label="xx400/Pos xx4000",fontsize=10,color="white",style="solid",shape="box"];458 -> 1103[label="",style="solid", color="burlywood", weight=9]; 1103 -> 512[label="",style="solid", color="burlywood", weight=3]; 1104[label="xx400/Neg xx4000",fontsize=10,color="white",style="solid",shape="box"];458 -> 1104[label="",style="solid", color="burlywood", weight=9]; 1104 -> 513[label="",style="solid", color="burlywood", weight=3]; 459[label="primEqInt (Neg Zero) xx400",fontsize=16,color="burlywood",shape="box"];1105[label="xx400/Pos xx4000",fontsize=10,color="white",style="solid",shape="box"];459 -> 1105[label="",style="solid", color="burlywood", weight=9]; 1105 -> 514[label="",style="solid", color="burlywood", weight=3]; 1106[label="xx400/Neg xx4000",fontsize=10,color="white",style="solid",shape="box"];459 -> 1106[label="",style="solid", color="burlywood", weight=9]; 1106 -> 515[label="",style="solid", color="burlywood", weight=3]; 460[label="True",fontsize=16,color="green",shape="box"];461[label="False",fontsize=16,color="green",shape="box"];462[label="False",fontsize=16,color="green",shape="box"];463[label="True",fontsize=16,color="green",shape="box"];464[label="xx3000 == xx4000",fontsize=16,color="blue",shape="box"];1107[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];464 -> 1107[label="",style="solid", color="blue", weight=9]; 1107 -> 516[label="",style="solid", color="blue", weight=3]; 1108[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];464 -> 1108[label="",style="solid", color="blue", weight=9]; 1108 -> 517[label="",style="solid", color="blue", weight=3]; 1109[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];464 -> 1109[label="",style="solid", color="blue", weight=9]; 1109 -> 518[label="",style="solid", color="blue", weight=3]; 1110[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];464 -> 1110[label="",style="solid", color="blue", weight=9]; 1110 -> 519[label="",style="solid", color="blue", weight=3]; 1111[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];464 -> 1111[label="",style="solid", color="blue", weight=9]; 1111 -> 520[label="",style="solid", color="blue", weight=3]; 1112[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];464 -> 1112[label="",style="solid", color="blue", weight=9]; 1112 -> 521[label="",style="solid", color="blue", weight=3]; 1113[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];464 -> 1113[label="",style="solid", color="blue", weight=9]; 1113 -> 522[label="",style="solid", color="blue", weight=3]; 1114[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];464 -> 1114[label="",style="solid", color="blue", weight=9]; 1114 -> 523[label="",style="solid", color="blue", weight=3]; 1115[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];464 -> 1115[label="",style="solid", color="blue", weight=9]; 1115 -> 524[label="",style="solid", color="blue", weight=3]; 1116[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];464 -> 1116[label="",style="solid", color="blue", weight=9]; 1116 -> 525[label="",style="solid", color="blue", weight=3]; 1117[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];464 -> 1117[label="",style="solid", color="blue", weight=9]; 1117 -> 526[label="",style="solid", color="blue", weight=3]; 1118[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];464 -> 1118[label="",style="solid", color="blue", weight=9]; 1118 -> 527[label="",style="solid", color="blue", weight=3]; 1119[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];464 -> 1119[label="",style="solid", color="blue", weight=9]; 1119 -> 528[label="",style="solid", color="blue", weight=3]; 1120[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];464 -> 1120[label="",style="solid", color="blue", weight=9]; 1120 -> 529[label="",style="solid", color="blue", weight=3]; 465[label="False",fontsize=16,color="green",shape="box"];466[label="False",fontsize=16,color="green",shape="box"];467[label="xx3000 == xx4000",fontsize=16,color="blue",shape="box"];1121[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];467 -> 1121[label="",style="solid", color="blue", weight=9]; 1121 -> 530[label="",style="solid", color="blue", weight=3]; 1122[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];467 -> 1122[label="",style="solid", color="blue", weight=9]; 1122 -> 531[label="",style="solid", color="blue", weight=3]; 1123[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];467 -> 1123[label="",style="solid", color="blue", weight=9]; 1123 -> 532[label="",style="solid", color="blue", weight=3]; 1124[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];467 -> 1124[label="",style="solid", color="blue", weight=9]; 1124 -> 533[label="",style="solid", color="blue", weight=3]; 1125[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];467 -> 1125[label="",style="solid", color="blue", weight=9]; 1125 -> 534[label="",style="solid", color="blue", weight=3]; 1126[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];467 -> 1126[label="",style="solid", color="blue", weight=9]; 1126 -> 535[label="",style="solid", color="blue", weight=3]; 1127[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];467 -> 1127[label="",style="solid", color="blue", weight=9]; 1127 -> 536[label="",style="solid", color="blue", weight=3]; 1128[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];467 -> 1128[label="",style="solid", color="blue", weight=9]; 1128 -> 537[label="",style="solid", color="blue", weight=3]; 1129[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];467 -> 1129[label="",style="solid", color="blue", weight=9]; 1129 -> 538[label="",style="solid", color="blue", weight=3]; 1130[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];467 -> 1130[label="",style="solid", color="blue", weight=9]; 1130 -> 539[label="",style="solid", color="blue", weight=3]; 1131[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];467 -> 1131[label="",style="solid", color="blue", weight=9]; 1131 -> 540[label="",style="solid", color="blue", weight=3]; 1132[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];467 -> 1132[label="",style="solid", color="blue", weight=9]; 1132 -> 541[label="",style="solid", color="blue", weight=3]; 1133[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];467 -> 1133[label="",style="solid", color="blue", weight=9]; 1133 -> 542[label="",style="solid", color="blue", weight=3]; 1134[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];467 -> 1134[label="",style="solid", color="blue", weight=9]; 1134 -> 543[label="",style="solid", color="blue", weight=3]; 468 -> 349[label="",style="dashed", color="red", weight=0]; 468[label="xx3000 == xx4000 && xx3001 == xx4001",fontsize=16,color="magenta"];468 -> 544[label="",style="dashed", color="magenta", weight=3]; 468 -> 545[label="",style="dashed", color="magenta", weight=3]; 315 -> 32[label="",style="dashed", color="red", weight=0]; 315[label="[] ++ xx18",fontsize=16,color="magenta"];315 -> 372[label="",style="dashed", color="magenta", weight=3]; 469[label="xx4011",fontsize=16,color="green",shape="box"];470[label="xx3011",fontsize=16,color="green",shape="box"];471 -> 356[label="",style="dashed", color="red", weight=0]; 471[label="xx3010 == xx4010",fontsize=16,color="magenta"];471 -> 546[label="",style="dashed", color="magenta", weight=3]; 471 -> 547[label="",style="dashed", color="magenta", weight=3]; 472 -> 357[label="",style="dashed", color="red", weight=0]; 472[label="xx3010 == xx4010",fontsize=16,color="magenta"];472 -> 548[label="",style="dashed", color="magenta", weight=3]; 472 -> 549[label="",style="dashed", color="magenta", weight=3]; 473 -> 358[label="",style="dashed", color="red", weight=0]; 473[label="xx3010 == xx4010",fontsize=16,color="magenta"];473 -> 550[label="",style="dashed", color="magenta", weight=3]; 473 -> 551[label="",style="dashed", color="magenta", weight=3]; 474 -> 359[label="",style="dashed", color="red", weight=0]; 474[label="xx3010 == xx4010",fontsize=16,color="magenta"];474 -> 552[label="",style="dashed", color="magenta", weight=3]; 474 -> 553[label="",style="dashed", color="magenta", weight=3]; 475 -> 360[label="",style="dashed", color="red", weight=0]; 475[label="xx3010 == xx4010",fontsize=16,color="magenta"];475 -> 554[label="",style="dashed", color="magenta", weight=3]; 475 -> 555[label="",style="dashed", color="magenta", weight=3]; 476 -> 361[label="",style="dashed", color="red", weight=0]; 476[label="xx3010 == xx4010",fontsize=16,color="magenta"];476 -> 556[label="",style="dashed", color="magenta", weight=3]; 476 -> 557[label="",style="dashed", color="magenta", weight=3]; 477 -> 362[label="",style="dashed", color="red", weight=0]; 477[label="xx3010 == xx4010",fontsize=16,color="magenta"];477 -> 558[label="",style="dashed", color="magenta", weight=3]; 477 -> 559[label="",style="dashed", color="magenta", weight=3]; 478 -> 363[label="",style="dashed", color="red", weight=0]; 478[label="xx3010 == xx4010",fontsize=16,color="magenta"];478 -> 560[label="",style="dashed", color="magenta", weight=3]; 478 -> 561[label="",style="dashed", color="magenta", weight=3]; 479 -> 364[label="",style="dashed", color="red", weight=0]; 479[label="xx3010 == xx4010",fontsize=16,color="magenta"];479 -> 562[label="",style="dashed", color="magenta", weight=3]; 479 -> 563[label="",style="dashed", color="magenta", weight=3]; 480 -> 365[label="",style="dashed", color="red", weight=0]; 480[label="xx3010 == xx4010",fontsize=16,color="magenta"];480 -> 564[label="",style="dashed", color="magenta", weight=3]; 480 -> 565[label="",style="dashed", color="magenta", weight=3]; 481 -> 350[label="",style="dashed", color="red", weight=0]; 481[label="xx3010 == xx4010",fontsize=16,color="magenta"];481 -> 566[label="",style="dashed", color="magenta", weight=3]; 481 -> 567[label="",style="dashed", color="magenta", weight=3]; 482 -> 367[label="",style="dashed", color="red", weight=0]; 482[label="xx3010 == xx4010",fontsize=16,color="magenta"];482 -> 568[label="",style="dashed", color="magenta", weight=3]; 482 -> 569[label="",style="dashed", color="magenta", weight=3]; 483 -> 368[label="",style="dashed", color="red", weight=0]; 483[label="xx3010 == xx4010",fontsize=16,color="magenta"];483 -> 570[label="",style="dashed", color="magenta", weight=3]; 483 -> 571[label="",style="dashed", color="magenta", weight=3]; 484 -> 369[label="",style="dashed", color="red", weight=0]; 484[label="xx3010 == xx4010",fontsize=16,color="magenta"];484 -> 572[label="",style="dashed", color="magenta", weight=3]; 484 -> 573[label="",style="dashed", color="magenta", weight=3]; 485[label="xx3001 == xx4001",fontsize=16,color="blue",shape="box"];1135[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];485 -> 1135[label="",style="solid", color="blue", weight=9]; 1135 -> 574[label="",style="solid", color="blue", weight=3]; 1136[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];485 -> 1136[label="",style="solid", color="blue", weight=9]; 1136 -> 575[label="",style="solid", color="blue", weight=3]; 486[label="xx3000 == xx4000",fontsize=16,color="blue",shape="box"];1137[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];486 -> 1137[label="",style="solid", color="blue", weight=9]; 1137 -> 576[label="",style="solid", color="blue", weight=3]; 1138[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];486 -> 1138[label="",style="solid", color="blue", weight=9]; 1138 -> 577[label="",style="solid", color="blue", weight=3]; 487 -> 356[label="",style="dashed", color="red", weight=0]; 487[label="xx3000 == xx4000",fontsize=16,color="magenta"];487 -> 578[label="",style="dashed", color="magenta", weight=3]; 487 -> 579[label="",style="dashed", color="magenta", weight=3]; 488 -> 357[label="",style="dashed", color="red", weight=0]; 488[label="xx3000 == xx4000",fontsize=16,color="magenta"];488 -> 580[label="",style="dashed", color="magenta", weight=3]; 488 -> 581[label="",style="dashed", color="magenta", weight=3]; 489 -> 358[label="",style="dashed", color="red", weight=0]; 489[label="xx3000 == xx4000",fontsize=16,color="magenta"];489 -> 582[label="",style="dashed", color="magenta", weight=3]; 489 -> 583[label="",style="dashed", color="magenta", weight=3]; 490 -> 359[label="",style="dashed", color="red", weight=0]; 490[label="xx3000 == xx4000",fontsize=16,color="magenta"];490 -> 584[label="",style="dashed", color="magenta", weight=3]; 490 -> 585[label="",style="dashed", color="magenta", weight=3]; 491 -> 360[label="",style="dashed", color="red", weight=0]; 491[label="xx3000 == xx4000",fontsize=16,color="magenta"];491 -> 586[label="",style="dashed", color="magenta", weight=3]; 491 -> 587[label="",style="dashed", color="magenta", weight=3]; 492 -> 361[label="",style="dashed", color="red", weight=0]; 492[label="xx3000 == xx4000",fontsize=16,color="magenta"];492 -> 588[label="",style="dashed", color="magenta", weight=3]; 492 -> 589[label="",style="dashed", color="magenta", weight=3]; 493 -> 362[label="",style="dashed", color="red", weight=0]; 493[label="xx3000 == xx4000",fontsize=16,color="magenta"];493 -> 590[label="",style="dashed", color="magenta", weight=3]; 493 -> 591[label="",style="dashed", color="magenta", weight=3]; 494 -> 363[label="",style="dashed", color="red", weight=0]; 494[label="xx3000 == xx4000",fontsize=16,color="magenta"];494 -> 592[label="",style="dashed", color="magenta", weight=3]; 494 -> 593[label="",style="dashed", color="magenta", weight=3]; 495 -> 364[label="",style="dashed", color="red", weight=0]; 495[label="xx3000 == xx4000",fontsize=16,color="magenta"];495 -> 594[label="",style="dashed", color="magenta", weight=3]; 495 -> 595[label="",style="dashed", color="magenta", weight=3]; 496 -> 365[label="",style="dashed", color="red", weight=0]; 496[label="xx3000 == xx4000",fontsize=16,color="magenta"];496 -> 596[label="",style="dashed", color="magenta", weight=3]; 496 -> 597[label="",style="dashed", color="magenta", weight=3]; 497 -> 350[label="",style="dashed", color="red", weight=0]; 497[label="xx3000 == xx4000",fontsize=16,color="magenta"];497 -> 598[label="",style="dashed", color="magenta", weight=3]; 497 -> 599[label="",style="dashed", color="magenta", weight=3]; 498 -> 367[label="",style="dashed", color="red", weight=0]; 498[label="xx3000 == xx4000",fontsize=16,color="magenta"];498 -> 600[label="",style="dashed", color="magenta", weight=3]; 498 -> 601[label="",style="dashed", color="magenta", weight=3]; 499 -> 368[label="",style="dashed", color="red", weight=0]; 499[label="xx3000 == xx4000",fontsize=16,color="magenta"];499 -> 602[label="",style="dashed", color="magenta", weight=3]; 499 -> 603[label="",style="dashed", color="magenta", weight=3]; 500 -> 369[label="",style="dashed", color="red", weight=0]; 500[label="xx3000 == xx4000",fontsize=16,color="magenta"];500 -> 604[label="",style="dashed", color="magenta", weight=3]; 500 -> 605[label="",style="dashed", color="magenta", weight=3]; 501 -> 349[label="",style="dashed", color="red", weight=0]; 501[label="xx3001 == xx4001 && xx3002 == xx4002",fontsize=16,color="magenta"];501 -> 606[label="",style="dashed", color="magenta", weight=3]; 501 -> 607[label="",style="dashed", color="magenta", weight=3]; 502[label="xx3000 == xx4000",fontsize=16,color="blue",shape="box"];1139[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];502 -> 1139[label="",style="solid", color="blue", weight=9]; 1139 -> 608[label="",style="solid", color="blue", weight=3]; 1140[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];502 -> 1140[label="",style="solid", color="blue", weight=9]; 1140 -> 609[label="",style="solid", color="blue", weight=3]; 1141[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];502 -> 1141[label="",style="solid", color="blue", weight=9]; 1141 -> 610[label="",style="solid", color="blue", weight=3]; 1142[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];502 -> 1142[label="",style="solid", color="blue", weight=9]; 1142 -> 611[label="",style="solid", color="blue", weight=3]; 1143[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];502 -> 1143[label="",style="solid", color="blue", weight=9]; 1143 -> 612[label="",style="solid", color="blue", weight=3]; 1144[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];502 -> 1144[label="",style="solid", color="blue", weight=9]; 1144 -> 613[label="",style="solid", color="blue", weight=3]; 1145[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];502 -> 1145[label="",style="solid", color="blue", weight=9]; 1145 -> 614[label="",style="solid", color="blue", weight=3]; 1146[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];502 -> 1146[label="",style="solid", color="blue", weight=9]; 1146 -> 615[label="",style="solid", color="blue", weight=3]; 1147[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];502 -> 1147[label="",style="solid", color="blue", weight=9]; 1147 -> 616[label="",style="solid", color="blue", weight=3]; 1148[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];502 -> 1148[label="",style="solid", color="blue", weight=9]; 1148 -> 617[label="",style="solid", color="blue", weight=3]; 1149[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];502 -> 1149[label="",style="solid", color="blue", weight=9]; 1149 -> 618[label="",style="solid", color="blue", weight=3]; 1150[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];502 -> 1150[label="",style="solid", color="blue", weight=9]; 1150 -> 619[label="",style="solid", color="blue", weight=3]; 1151[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];502 -> 1151[label="",style="solid", color="blue", weight=9]; 1151 -> 620[label="",style="solid", color="blue", weight=3]; 1152[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];502 -> 1152[label="",style="solid", color="blue", weight=9]; 1152 -> 621[label="",style="solid", color="blue", weight=3]; 503[label="primEqNat xx3000 xx4000",fontsize=16,color="burlywood",shape="triangle"];1153[label="xx3000/Succ xx30000",fontsize=10,color="white",style="solid",shape="box"];503 -> 1153[label="",style="solid", color="burlywood", weight=9]; 1153 -> 622[label="",style="solid", color="burlywood", weight=3]; 1154[label="xx3000/Zero",fontsize=10,color="white",style="solid",shape="box"];503 -> 1154[label="",style="solid", color="burlywood", weight=9]; 1154 -> 623[label="",style="solid", color="burlywood", weight=3]; 504[label="xx4000",fontsize=16,color="green",shape="box"];505[label="xx3000",fontsize=16,color="green",shape="box"];506 -> 365[label="",style="dashed", color="red", weight=0]; 506[label="xx3000 * xx4001 == xx3001 * xx4000",fontsize=16,color="magenta"];506 -> 624[label="",style="dashed", color="magenta", weight=3]; 506 -> 625[label="",style="dashed", color="magenta", weight=3]; 507 -> 365[label="",style="dashed", color="red", weight=0]; 507[label="xx3000 * xx4001 == xx3001 * xx4000",fontsize=16,color="magenta"];507 -> 626[label="",style="dashed", color="magenta", weight=3]; 507 -> 627[label="",style="dashed", color="magenta", weight=3]; 508[label="primEqInt (Pos (Succ xx30000)) (Pos xx4000)",fontsize=16,color="burlywood",shape="box"];1155[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];508 -> 1155[label="",style="solid", color="burlywood", weight=9]; 1155 -> 628[label="",style="solid", color="burlywood", weight=3]; 1156[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];508 -> 1156[label="",style="solid", color="burlywood", weight=9]; 1156 -> 629[label="",style="solid", color="burlywood", weight=3]; 509[label="primEqInt (Pos (Succ xx30000)) (Neg xx4000)",fontsize=16,color="black",shape="box"];509 -> 630[label="",style="solid", color="black", weight=3]; 510[label="primEqInt (Pos Zero) (Pos xx4000)",fontsize=16,color="burlywood",shape="box"];1157[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];510 -> 1157[label="",style="solid", color="burlywood", weight=9]; 1157 -> 631[label="",style="solid", color="burlywood", weight=3]; 1158[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];510 -> 1158[label="",style="solid", color="burlywood", weight=9]; 1158 -> 632[label="",style="solid", color="burlywood", weight=3]; 511[label="primEqInt (Pos Zero) (Neg xx4000)",fontsize=16,color="burlywood",shape="box"];1159[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];511 -> 1159[label="",style="solid", color="burlywood", weight=9]; 1159 -> 633[label="",style="solid", color="burlywood", weight=3]; 1160[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];511 -> 1160[label="",style="solid", color="burlywood", weight=9]; 1160 -> 634[label="",style="solid", color="burlywood", weight=3]; 512[label="primEqInt (Neg (Succ xx30000)) (Pos xx4000)",fontsize=16,color="black",shape="box"];512 -> 635[label="",style="solid", color="black", weight=3]; 513[label="primEqInt (Neg (Succ xx30000)) (Neg xx4000)",fontsize=16,color="burlywood",shape="box"];1161[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];513 -> 1161[label="",style="solid", color="burlywood", weight=9]; 1161 -> 636[label="",style="solid", color="burlywood", weight=3]; 1162[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];513 -> 1162[label="",style="solid", color="burlywood", weight=9]; 1162 -> 637[label="",style="solid", color="burlywood", weight=3]; 514[label="primEqInt (Neg Zero) (Pos xx4000)",fontsize=16,color="burlywood",shape="box"];1163[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];514 -> 1163[label="",style="solid", color="burlywood", weight=9]; 1163 -> 638[label="",style="solid", color="burlywood", weight=3]; 1164[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];514 -> 1164[label="",style="solid", color="burlywood", weight=9]; 1164 -> 639[label="",style="solid", color="burlywood", weight=3]; 515[label="primEqInt (Neg Zero) (Neg xx4000)",fontsize=16,color="burlywood",shape="box"];1165[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];515 -> 1165[label="",style="solid", color="burlywood", weight=9]; 1165 -> 640[label="",style="solid", color="burlywood", weight=3]; 1166[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];515 -> 1166[label="",style="solid", color="burlywood", weight=9]; 1166 -> 641[label="",style="solid", color="burlywood", weight=3]; 516 -> 356[label="",style="dashed", color="red", weight=0]; 516[label="xx3000 == xx4000",fontsize=16,color="magenta"];516 -> 642[label="",style="dashed", color="magenta", weight=3]; 516 -> 643[label="",style="dashed", color="magenta", weight=3]; 517 -> 357[label="",style="dashed", color="red", weight=0]; 517[label="xx3000 == xx4000",fontsize=16,color="magenta"];517 -> 644[label="",style="dashed", color="magenta", weight=3]; 517 -> 645[label="",style="dashed", color="magenta", weight=3]; 518 -> 358[label="",style="dashed", color="red", weight=0]; 518[label="xx3000 == xx4000",fontsize=16,color="magenta"];518 -> 646[label="",style="dashed", color="magenta", weight=3]; 518 -> 647[label="",style="dashed", color="magenta", weight=3]; 519 -> 359[label="",style="dashed", color="red", weight=0]; 519[label="xx3000 == xx4000",fontsize=16,color="magenta"];519 -> 648[label="",style="dashed", color="magenta", weight=3]; 519 -> 649[label="",style="dashed", color="magenta", weight=3]; 520 -> 360[label="",style="dashed", color="red", weight=0]; 520[label="xx3000 == xx4000",fontsize=16,color="magenta"];520 -> 650[label="",style="dashed", color="magenta", weight=3]; 520 -> 651[label="",style="dashed", color="magenta", weight=3]; 521 -> 361[label="",style="dashed", color="red", weight=0]; 521[label="xx3000 == xx4000",fontsize=16,color="magenta"];521 -> 652[label="",style="dashed", color="magenta", weight=3]; 521 -> 653[label="",style="dashed", color="magenta", weight=3]; 522 -> 362[label="",style="dashed", color="red", weight=0]; 522[label="xx3000 == xx4000",fontsize=16,color="magenta"];522 -> 654[label="",style="dashed", color="magenta", weight=3]; 522 -> 655[label="",style="dashed", color="magenta", weight=3]; 523 -> 363[label="",style="dashed", color="red", weight=0]; 523[label="xx3000 == xx4000",fontsize=16,color="magenta"];523 -> 656[label="",style="dashed", color="magenta", weight=3]; 523 -> 657[label="",style="dashed", color="magenta", weight=3]; 524 -> 364[label="",style="dashed", color="red", weight=0]; 524[label="xx3000 == xx4000",fontsize=16,color="magenta"];524 -> 658[label="",style="dashed", color="magenta", weight=3]; 524 -> 659[label="",style="dashed", color="magenta", weight=3]; 525 -> 365[label="",style="dashed", color="red", weight=0]; 525[label="xx3000 == xx4000",fontsize=16,color="magenta"];525 -> 660[label="",style="dashed", color="magenta", weight=3]; 525 -> 661[label="",style="dashed", color="magenta", weight=3]; 526 -> 350[label="",style="dashed", color="red", weight=0]; 526[label="xx3000 == xx4000",fontsize=16,color="magenta"];526 -> 662[label="",style="dashed", color="magenta", weight=3]; 526 -> 663[label="",style="dashed", color="magenta", weight=3]; 527 -> 367[label="",style="dashed", color="red", weight=0]; 527[label="xx3000 == xx4000",fontsize=16,color="magenta"];527 -> 664[label="",style="dashed", color="magenta", weight=3]; 527 -> 665[label="",style="dashed", color="magenta", weight=3]; 528 -> 368[label="",style="dashed", color="red", weight=0]; 528[label="xx3000 == xx4000",fontsize=16,color="magenta"];528 -> 666[label="",style="dashed", color="magenta", weight=3]; 528 -> 667[label="",style="dashed", color="magenta", weight=3]; 529 -> 369[label="",style="dashed", color="red", weight=0]; 529[label="xx3000 == xx4000",fontsize=16,color="magenta"];529 -> 668[label="",style="dashed", color="magenta", weight=3]; 529 -> 669[label="",style="dashed", color="magenta", weight=3]; 530 -> 356[label="",style="dashed", color="red", weight=0]; 530[label="xx3000 == xx4000",fontsize=16,color="magenta"];530 -> 670[label="",style="dashed", color="magenta", weight=3]; 530 -> 671[label="",style="dashed", color="magenta", weight=3]; 531 -> 357[label="",style="dashed", color="red", weight=0]; 531[label="xx3000 == xx4000",fontsize=16,color="magenta"];531 -> 672[label="",style="dashed", color="magenta", weight=3]; 531 -> 673[label="",style="dashed", color="magenta", weight=3]; 532 -> 358[label="",style="dashed", color="red", weight=0]; 532[label="xx3000 == xx4000",fontsize=16,color="magenta"];532 -> 674[label="",style="dashed", color="magenta", weight=3]; 532 -> 675[label="",style="dashed", color="magenta", weight=3]; 533 -> 359[label="",style="dashed", color="red", weight=0]; 533[label="xx3000 == xx4000",fontsize=16,color="magenta"];533 -> 676[label="",style="dashed", color="magenta", weight=3]; 533 -> 677[label="",style="dashed", color="magenta", weight=3]; 534 -> 360[label="",style="dashed", color="red", weight=0]; 534[label="xx3000 == xx4000",fontsize=16,color="magenta"];534 -> 678[label="",style="dashed", color="magenta", weight=3]; 534 -> 679[label="",style="dashed", color="magenta", weight=3]; 535 -> 361[label="",style="dashed", color="red", weight=0]; 535[label="xx3000 == xx4000",fontsize=16,color="magenta"];535 -> 680[label="",style="dashed", color="magenta", weight=3]; 535 -> 681[label="",style="dashed", color="magenta", weight=3]; 536 -> 362[label="",style="dashed", color="red", weight=0]; 536[label="xx3000 == xx4000",fontsize=16,color="magenta"];536 -> 682[label="",style="dashed", color="magenta", weight=3]; 536 -> 683[label="",style="dashed", color="magenta", weight=3]; 537 -> 363[label="",style="dashed", color="red", weight=0]; 537[label="xx3000 == xx4000",fontsize=16,color="magenta"];537 -> 684[label="",style="dashed", color="magenta", weight=3]; 537 -> 685[label="",style="dashed", color="magenta", weight=3]; 538 -> 364[label="",style="dashed", color="red", weight=0]; 538[label="xx3000 == xx4000",fontsize=16,color="magenta"];538 -> 686[label="",style="dashed", color="magenta", weight=3]; 538 -> 687[label="",style="dashed", color="magenta", weight=3]; 539 -> 365[label="",style="dashed", color="red", weight=0]; 539[label="xx3000 == xx4000",fontsize=16,color="magenta"];539 -> 688[label="",style="dashed", color="magenta", weight=3]; 539 -> 689[label="",style="dashed", color="magenta", weight=3]; 540 -> 350[label="",style="dashed", color="red", weight=0]; 540[label="xx3000 == xx4000",fontsize=16,color="magenta"];540 -> 690[label="",style="dashed", color="magenta", weight=3]; 540 -> 691[label="",style="dashed", color="magenta", weight=3]; 541 -> 367[label="",style="dashed", color="red", weight=0]; 541[label="xx3000 == xx4000",fontsize=16,color="magenta"];541 -> 692[label="",style="dashed", color="magenta", weight=3]; 541 -> 693[label="",style="dashed", color="magenta", weight=3]; 542 -> 368[label="",style="dashed", color="red", weight=0]; 542[label="xx3000 == xx4000",fontsize=16,color="magenta"];542 -> 694[label="",style="dashed", color="magenta", weight=3]; 542 -> 695[label="",style="dashed", color="magenta", weight=3]; 543 -> 369[label="",style="dashed", color="red", weight=0]; 543[label="xx3000 == xx4000",fontsize=16,color="magenta"];543 -> 696[label="",style="dashed", color="magenta", weight=3]; 543 -> 697[label="",style="dashed", color="magenta", weight=3]; 544[label="xx3001 == xx4001",fontsize=16,color="blue",shape="box"];1167[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];544 -> 1167[label="",style="solid", color="blue", weight=9]; 1167 -> 698[label="",style="solid", color="blue", weight=3]; 1168[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];544 -> 1168[label="",style="solid", color="blue", weight=9]; 1168 -> 699[label="",style="solid", color="blue", weight=3]; 1169[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];544 -> 1169[label="",style="solid", color="blue", weight=9]; 1169 -> 700[label="",style="solid", color="blue", weight=3]; 1170[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];544 -> 1170[label="",style="solid", color="blue", weight=9]; 1170 -> 701[label="",style="solid", color="blue", weight=3]; 1171[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];544 -> 1171[label="",style="solid", color="blue", weight=9]; 1171 -> 702[label="",style="solid", color="blue", weight=3]; 1172[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];544 -> 1172[label="",style="solid", color="blue", weight=9]; 1172 -> 703[label="",style="solid", color="blue", weight=3]; 1173[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];544 -> 1173[label="",style="solid", color="blue", weight=9]; 1173 -> 704[label="",style="solid", color="blue", weight=3]; 1174[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];544 -> 1174[label="",style="solid", color="blue", weight=9]; 1174 -> 705[label="",style="solid", color="blue", weight=3]; 1175[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];544 -> 1175[label="",style="solid", color="blue", weight=9]; 1175 -> 706[label="",style="solid", color="blue", weight=3]; 1176[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];544 -> 1176[label="",style="solid", color="blue", weight=9]; 1176 -> 707[label="",style="solid", color="blue", weight=3]; 1177[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];544 -> 1177[label="",style="solid", color="blue", weight=9]; 1177 -> 708[label="",style="solid", color="blue", weight=3]; 1178[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];544 -> 1178[label="",style="solid", color="blue", weight=9]; 1178 -> 709[label="",style="solid", color="blue", weight=3]; 1179[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];544 -> 1179[label="",style="solid", color="blue", weight=9]; 1179 -> 710[label="",style="solid", color="blue", weight=3]; 1180[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];544 -> 1180[label="",style="solid", color="blue", weight=9]; 1180 -> 711[label="",style="solid", color="blue", weight=3]; 545[label="xx3000 == xx4000",fontsize=16,color="blue",shape="box"];1181[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];545 -> 1181[label="",style="solid", color="blue", weight=9]; 1181 -> 712[label="",style="solid", color="blue", weight=3]; 1182[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];545 -> 1182[label="",style="solid", color="blue", weight=9]; 1182 -> 713[label="",style="solid", color="blue", weight=3]; 1183[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];545 -> 1183[label="",style="solid", color="blue", weight=9]; 1183 -> 714[label="",style="solid", color="blue", weight=3]; 1184[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];545 -> 1184[label="",style="solid", color="blue", weight=9]; 1184 -> 715[label="",style="solid", color="blue", weight=3]; 1185[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];545 -> 1185[label="",style="solid", color="blue", weight=9]; 1185 -> 716[label="",style="solid", color="blue", weight=3]; 1186[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];545 -> 1186[label="",style="solid", color="blue", weight=9]; 1186 -> 717[label="",style="solid", color="blue", weight=3]; 1187[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];545 -> 1187[label="",style="solid", color="blue", weight=9]; 1187 -> 718[label="",style="solid", color="blue", weight=3]; 1188[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];545 -> 1188[label="",style="solid", color="blue", weight=9]; 1188 -> 719[label="",style="solid", color="blue", weight=3]; 1189[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];545 -> 1189[label="",style="solid", color="blue", weight=9]; 1189 -> 720[label="",style="solid", color="blue", weight=3]; 1190[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];545 -> 1190[label="",style="solid", color="blue", weight=9]; 1190 -> 721[label="",style="solid", color="blue", weight=3]; 1191[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];545 -> 1191[label="",style="solid", color="blue", weight=9]; 1191 -> 722[label="",style="solid", color="blue", weight=3]; 1192[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];545 -> 1192[label="",style="solid", color="blue", weight=9]; 1192 -> 723[label="",style="solid", color="blue", weight=3]; 1193[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];545 -> 1193[label="",style="solid", color="blue", weight=9]; 1193 -> 724[label="",style="solid", color="blue", weight=3]; 1194[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];545 -> 1194[label="",style="solid", color="blue", weight=9]; 1194 -> 725[label="",style="solid", color="blue", weight=3]; 372[label="xx18",fontsize=16,color="green",shape="box"];546[label="xx4010",fontsize=16,color="green",shape="box"];547[label="xx3010",fontsize=16,color="green",shape="box"];548[label="xx4010",fontsize=16,color="green",shape="box"];549[label="xx3010",fontsize=16,color="green",shape="box"];550[label="xx4010",fontsize=16,color="green",shape="box"];551[label="xx3010",fontsize=16,color="green",shape="box"];552[label="xx4010",fontsize=16,color="green",shape="box"];553[label="xx3010",fontsize=16,color="green",shape="box"];554[label="xx4010",fontsize=16,color="green",shape="box"];555[label="xx3010",fontsize=16,color="green",shape="box"];556[label="xx4010",fontsize=16,color="green",shape="box"];557[label="xx3010",fontsize=16,color="green",shape="box"];558[label="xx4010",fontsize=16,color="green",shape="box"];559[label="xx3010",fontsize=16,color="green",shape="box"];560[label="xx4010",fontsize=16,color="green",shape="box"];561[label="xx3010",fontsize=16,color="green",shape="box"];562[label="xx4010",fontsize=16,color="green",shape="box"];563[label="xx3010",fontsize=16,color="green",shape="box"];564[label="xx4010",fontsize=16,color="green",shape="box"];565[label="xx3010",fontsize=16,color="green",shape="box"];566[label="xx4010",fontsize=16,color="green",shape="box"];567[label="xx3010",fontsize=16,color="green",shape="box"];568[label="xx4010",fontsize=16,color="green",shape="box"];569[label="xx3010",fontsize=16,color="green",shape="box"];570[label="xx4010",fontsize=16,color="green",shape="box"];571[label="xx3010",fontsize=16,color="green",shape="box"];572[label="xx4010",fontsize=16,color="green",shape="box"];573[label="xx3010",fontsize=16,color="green",shape="box"];574 -> 361[label="",style="dashed", color="red", weight=0]; 574[label="xx3001 == xx4001",fontsize=16,color="magenta"];574 -> 726[label="",style="dashed", color="magenta", weight=3]; 574 -> 727[label="",style="dashed", color="magenta", weight=3]; 575 -> 365[label="",style="dashed", color="red", weight=0]; 575[label="xx3001 == xx4001",fontsize=16,color="magenta"];575 -> 728[label="",style="dashed", color="magenta", weight=3]; 575 -> 729[label="",style="dashed", color="magenta", weight=3]; 576 -> 361[label="",style="dashed", color="red", weight=0]; 576[label="xx3000 == xx4000",fontsize=16,color="magenta"];576 -> 730[label="",style="dashed", color="magenta", weight=3]; 576 -> 731[label="",style="dashed", color="magenta", weight=3]; 577 -> 365[label="",style="dashed", color="red", weight=0]; 577[label="xx3000 == xx4000",fontsize=16,color="magenta"];577 -> 732[label="",style="dashed", color="magenta", weight=3]; 577 -> 733[label="",style="dashed", color="magenta", weight=3]; 578[label="xx4000",fontsize=16,color="green",shape="box"];579[label="xx3000",fontsize=16,color="green",shape="box"];580[label="xx4000",fontsize=16,color="green",shape="box"];581[label="xx3000",fontsize=16,color="green",shape="box"];582[label="xx4000",fontsize=16,color="green",shape="box"];583[label="xx3000",fontsize=16,color="green",shape="box"];584[label="xx4000",fontsize=16,color="green",shape="box"];585[label="xx3000",fontsize=16,color="green",shape="box"];586[label="xx4000",fontsize=16,color="green",shape="box"];587[label="xx3000",fontsize=16,color="green",shape="box"];588[label="xx4000",fontsize=16,color="green",shape="box"];589[label="xx3000",fontsize=16,color="green",shape="box"];590[label="xx4000",fontsize=16,color="green",shape="box"];591[label="xx3000",fontsize=16,color="green",shape="box"];592[label="xx4000",fontsize=16,color="green",shape="box"];593[label="xx3000",fontsize=16,color="green",shape="box"];594[label="xx4000",fontsize=16,color="green",shape="box"];595[label="xx3000",fontsize=16,color="green",shape="box"];596[label="xx4000",fontsize=16,color="green",shape="box"];597[label="xx3000",fontsize=16,color="green",shape="box"];598[label="xx4000",fontsize=16,color="green",shape="box"];599[label="xx3000",fontsize=16,color="green",shape="box"];600[label="xx4000",fontsize=16,color="green",shape="box"];601[label="xx3000",fontsize=16,color="green",shape="box"];602[label="xx4000",fontsize=16,color="green",shape="box"];603[label="xx3000",fontsize=16,color="green",shape="box"];604[label="xx4000",fontsize=16,color="green",shape="box"];605[label="xx3000",fontsize=16,color="green",shape="box"];606[label="xx3002 == xx4002",fontsize=16,color="blue",shape="box"];1195[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];606 -> 1195[label="",style="solid", color="blue", weight=9]; 1195 -> 734[label="",style="solid", color="blue", weight=3]; 1196[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];606 -> 1196[label="",style="solid", color="blue", weight=9]; 1196 -> 735[label="",style="solid", color="blue", weight=3]; 1197[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];606 -> 1197[label="",style="solid", color="blue", weight=9]; 1197 -> 736[label="",style="solid", color="blue", weight=3]; 1198[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];606 -> 1198[label="",style="solid", color="blue", weight=9]; 1198 -> 737[label="",style="solid", color="blue", weight=3]; 1199[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];606 -> 1199[label="",style="solid", color="blue", weight=9]; 1199 -> 738[label="",style="solid", color="blue", weight=3]; 1200[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];606 -> 1200[label="",style="solid", color="blue", weight=9]; 1200 -> 739[label="",style="solid", color="blue", weight=3]; 1201[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];606 -> 1201[label="",style="solid", color="blue", weight=9]; 1201 -> 740[label="",style="solid", color="blue", weight=3]; 1202[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];606 -> 1202[label="",style="solid", color="blue", weight=9]; 1202 -> 741[label="",style="solid", color="blue", weight=3]; 1203[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];606 -> 1203[label="",style="solid", color="blue", weight=9]; 1203 -> 742[label="",style="solid", color="blue", weight=3]; 1204[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];606 -> 1204[label="",style="solid", color="blue", weight=9]; 1204 -> 743[label="",style="solid", color="blue", weight=3]; 1205[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];606 -> 1205[label="",style="solid", color="blue", weight=9]; 1205 -> 744[label="",style="solid", color="blue", weight=3]; 1206[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];606 -> 1206[label="",style="solid", color="blue", weight=9]; 1206 -> 745[label="",style="solid", color="blue", weight=3]; 1207[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];606 -> 1207[label="",style="solid", color="blue", weight=9]; 1207 -> 746[label="",style="solid", color="blue", weight=3]; 1208[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];606 -> 1208[label="",style="solid", color="blue", weight=9]; 1208 -> 747[label="",style="solid", color="blue", weight=3]; 607[label="xx3001 == xx4001",fontsize=16,color="blue",shape="box"];1209[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];607 -> 1209[label="",style="solid", color="blue", weight=9]; 1209 -> 748[label="",style="solid", color="blue", weight=3]; 1210[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];607 -> 1210[label="",style="solid", color="blue", weight=9]; 1210 -> 749[label="",style="solid", color="blue", weight=3]; 1211[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];607 -> 1211[label="",style="solid", color="blue", weight=9]; 1211 -> 750[label="",style="solid", color="blue", weight=3]; 1212[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];607 -> 1212[label="",style="solid", color="blue", weight=9]; 1212 -> 751[label="",style="solid", color="blue", weight=3]; 1213[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];607 -> 1213[label="",style="solid", color="blue", weight=9]; 1213 -> 752[label="",style="solid", color="blue", weight=3]; 1214[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];607 -> 1214[label="",style="solid", color="blue", weight=9]; 1214 -> 753[label="",style="solid", color="blue", weight=3]; 1215[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];607 -> 1215[label="",style="solid", color="blue", weight=9]; 1215 -> 754[label="",style="solid", color="blue", weight=3]; 1216[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];607 -> 1216[label="",style="solid", color="blue", weight=9]; 1216 -> 755[label="",style="solid", color="blue", weight=3]; 1217[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];607 -> 1217[label="",style="solid", color="blue", weight=9]; 1217 -> 756[label="",style="solid", color="blue", weight=3]; 1218[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];607 -> 1218[label="",style="solid", color="blue", weight=9]; 1218 -> 757[label="",style="solid", color="blue", weight=3]; 1219[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];607 -> 1219[label="",style="solid", color="blue", weight=9]; 1219 -> 758[label="",style="solid", color="blue", weight=3]; 1220[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];607 -> 1220[label="",style="solid", color="blue", weight=9]; 1220 -> 759[label="",style="solid", color="blue", weight=3]; 1221[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];607 -> 1221[label="",style="solid", color="blue", weight=9]; 1221 -> 760[label="",style="solid", color="blue", weight=3]; 1222[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];607 -> 1222[label="",style="solid", color="blue", weight=9]; 1222 -> 761[label="",style="solid", color="blue", weight=3]; 608 -> 356[label="",style="dashed", color="red", weight=0]; 608[label="xx3000 == xx4000",fontsize=16,color="magenta"];608 -> 762[label="",style="dashed", color="magenta", weight=3]; 608 -> 763[label="",style="dashed", color="magenta", weight=3]; 609 -> 357[label="",style="dashed", color="red", weight=0]; 609[label="xx3000 == xx4000",fontsize=16,color="magenta"];609 -> 764[label="",style="dashed", color="magenta", weight=3]; 609 -> 765[label="",style="dashed", color="magenta", weight=3]; 610 -> 358[label="",style="dashed", color="red", weight=0]; 610[label="xx3000 == xx4000",fontsize=16,color="magenta"];610 -> 766[label="",style="dashed", color="magenta", weight=3]; 610 -> 767[label="",style="dashed", color="magenta", weight=3]; 611 -> 359[label="",style="dashed", color="red", weight=0]; 611[label="xx3000 == xx4000",fontsize=16,color="magenta"];611 -> 768[label="",style="dashed", color="magenta", weight=3]; 611 -> 769[label="",style="dashed", color="magenta", weight=3]; 612 -> 360[label="",style="dashed", color="red", weight=0]; 612[label="xx3000 == xx4000",fontsize=16,color="magenta"];612 -> 770[label="",style="dashed", color="magenta", weight=3]; 612 -> 771[label="",style="dashed", color="magenta", weight=3]; 613 -> 361[label="",style="dashed", color="red", weight=0]; 613[label="xx3000 == xx4000",fontsize=16,color="magenta"];613 -> 772[label="",style="dashed", color="magenta", weight=3]; 613 -> 773[label="",style="dashed", color="magenta", weight=3]; 614 -> 362[label="",style="dashed", color="red", weight=0]; 614[label="xx3000 == xx4000",fontsize=16,color="magenta"];614 -> 774[label="",style="dashed", color="magenta", weight=3]; 614 -> 775[label="",style="dashed", color="magenta", weight=3]; 615 -> 363[label="",style="dashed", color="red", weight=0]; 615[label="xx3000 == xx4000",fontsize=16,color="magenta"];615 -> 776[label="",style="dashed", color="magenta", weight=3]; 615 -> 777[label="",style="dashed", color="magenta", weight=3]; 616 -> 364[label="",style="dashed", color="red", weight=0]; 616[label="xx3000 == xx4000",fontsize=16,color="magenta"];616 -> 778[label="",style="dashed", color="magenta", weight=3]; 616 -> 779[label="",style="dashed", color="magenta", weight=3]; 617 -> 365[label="",style="dashed", color="red", weight=0]; 617[label="xx3000 == xx4000",fontsize=16,color="magenta"];617 -> 780[label="",style="dashed", color="magenta", weight=3]; 617 -> 781[label="",style="dashed", color="magenta", weight=3]; 618 -> 350[label="",style="dashed", color="red", weight=0]; 618[label="xx3000 == xx4000",fontsize=16,color="magenta"];618 -> 782[label="",style="dashed", color="magenta", weight=3]; 618 -> 783[label="",style="dashed", color="magenta", weight=3]; 619 -> 367[label="",style="dashed", color="red", weight=0]; 619[label="xx3000 == xx4000",fontsize=16,color="magenta"];619 -> 784[label="",style="dashed", color="magenta", weight=3]; 619 -> 785[label="",style="dashed", color="magenta", weight=3]; 620 -> 368[label="",style="dashed", color="red", weight=0]; 620[label="xx3000 == xx4000",fontsize=16,color="magenta"];620 -> 786[label="",style="dashed", color="magenta", weight=3]; 620 -> 787[label="",style="dashed", color="magenta", weight=3]; 621 -> 369[label="",style="dashed", color="red", weight=0]; 621[label="xx3000 == xx4000",fontsize=16,color="magenta"];621 -> 788[label="",style="dashed", color="magenta", weight=3]; 621 -> 789[label="",style="dashed", color="magenta", weight=3]; 622[label="primEqNat (Succ xx30000) xx4000",fontsize=16,color="burlywood",shape="box"];1223[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];622 -> 1223[label="",style="solid", color="burlywood", weight=9]; 1223 -> 790[label="",style="solid", color="burlywood", weight=3]; 1224[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];622 -> 1224[label="",style="solid", color="burlywood", weight=9]; 1224 -> 791[label="",style="solid", color="burlywood", weight=3]; 623[label="primEqNat Zero xx4000",fontsize=16,color="burlywood",shape="box"];1225[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];623 -> 1225[label="",style="solid", color="burlywood", weight=9]; 1225 -> 792[label="",style="solid", color="burlywood", weight=3]; 1226[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];623 -> 1226[label="",style="solid", color="burlywood", weight=9]; 1226 -> 793[label="",style="solid", color="burlywood", weight=3]; 624[label="xx3001 * xx4000",fontsize=16,color="black",shape="triangle"];624 -> 794[label="",style="solid", color="black", weight=3]; 625 -> 624[label="",style="dashed", color="red", weight=0]; 625[label="xx3000 * xx4001",fontsize=16,color="magenta"];625 -> 795[label="",style="dashed", color="magenta", weight=3]; 625 -> 796[label="",style="dashed", color="magenta", weight=3]; 626 -> 624[label="",style="dashed", color="red", weight=0]; 626[label="xx3001 * xx4000",fontsize=16,color="magenta"];626 -> 797[label="",style="dashed", color="magenta", weight=3]; 626 -> 798[label="",style="dashed", color="magenta", weight=3]; 627 -> 624[label="",style="dashed", color="red", weight=0]; 627[label="xx3000 * xx4001",fontsize=16,color="magenta"];627 -> 799[label="",style="dashed", color="magenta", weight=3]; 627 -> 800[label="",style="dashed", color="magenta", weight=3]; 628[label="primEqInt (Pos (Succ xx30000)) (Pos (Succ xx40000))",fontsize=16,color="black",shape="box"];628 -> 801[label="",style="solid", color="black", weight=3]; 629[label="primEqInt (Pos (Succ xx30000)) (Pos Zero)",fontsize=16,color="black",shape="box"];629 -> 802[label="",style="solid", color="black", weight=3]; 630[label="False",fontsize=16,color="green",shape="box"];631[label="primEqInt (Pos Zero) (Pos (Succ xx40000))",fontsize=16,color="black",shape="box"];631 -> 803[label="",style="solid", color="black", weight=3]; 632[label="primEqInt (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];632 -> 804[label="",style="solid", color="black", weight=3]; 633[label="primEqInt (Pos Zero) (Neg (Succ xx40000))",fontsize=16,color="black",shape="box"];633 -> 805[label="",style="solid", color="black", weight=3]; 634[label="primEqInt (Pos Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];634 -> 806[label="",style="solid", color="black", weight=3]; 635[label="False",fontsize=16,color="green",shape="box"];636[label="primEqInt (Neg (Succ xx30000)) (Neg (Succ xx40000))",fontsize=16,color="black",shape="box"];636 -> 807[label="",style="solid", color="black", weight=3]; 637[label="primEqInt (Neg (Succ xx30000)) (Neg Zero)",fontsize=16,color="black",shape="box"];637 -> 808[label="",style="solid", color="black", weight=3]; 638[label="primEqInt (Neg Zero) (Pos (Succ xx40000))",fontsize=16,color="black",shape="box"];638 -> 809[label="",style="solid", color="black", weight=3]; 639[label="primEqInt (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];639 -> 810[label="",style="solid", color="black", weight=3]; 640[label="primEqInt (Neg Zero) (Neg (Succ xx40000))",fontsize=16,color="black",shape="box"];640 -> 811[label="",style="solid", color="black", weight=3]; 641[label="primEqInt (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];641 -> 812[label="",style="solid", color="black", weight=3]; 642[label="xx4000",fontsize=16,color="green",shape="box"];643[label="xx3000",fontsize=16,color="green",shape="box"];644[label="xx4000",fontsize=16,color="green",shape="box"];645[label="xx3000",fontsize=16,color="green",shape="box"];646[label="xx4000",fontsize=16,color="green",shape="box"];647[label="xx3000",fontsize=16,color="green",shape="box"];648[label="xx4000",fontsize=16,color="green",shape="box"];649[label="xx3000",fontsize=16,color="green",shape="box"];650[label="xx4000",fontsize=16,color="green",shape="box"];651[label="xx3000",fontsize=16,color="green",shape="box"];652[label="xx4000",fontsize=16,color="green",shape="box"];653[label="xx3000",fontsize=16,color="green",shape="box"];654[label="xx4000",fontsize=16,color="green",shape="box"];655[label="xx3000",fontsize=16,color="green",shape="box"];656[label="xx4000",fontsize=16,color="green",shape="box"];657[label="xx3000",fontsize=16,color="green",shape="box"];658[label="xx4000",fontsize=16,color="green",shape="box"];659[label="xx3000",fontsize=16,color="green",shape="box"];660[label="xx4000",fontsize=16,color="green",shape="box"];661[label="xx3000",fontsize=16,color="green",shape="box"];662[label="xx4000",fontsize=16,color="green",shape="box"];663[label="xx3000",fontsize=16,color="green",shape="box"];664[label="xx4000",fontsize=16,color="green",shape="box"];665[label="xx3000",fontsize=16,color="green",shape="box"];666[label="xx4000",fontsize=16,color="green",shape="box"];667[label="xx3000",fontsize=16,color="green",shape="box"];668[label="xx4000",fontsize=16,color="green",shape="box"];669[label="xx3000",fontsize=16,color="green",shape="box"];670[label="xx4000",fontsize=16,color="green",shape="box"];671[label="xx3000",fontsize=16,color="green",shape="box"];672[label="xx4000",fontsize=16,color="green",shape="box"];673[label="xx3000",fontsize=16,color="green",shape="box"];674[label="xx4000",fontsize=16,color="green",shape="box"];675[label="xx3000",fontsize=16,color="green",shape="box"];676[label="xx4000",fontsize=16,color="green",shape="box"];677[label="xx3000",fontsize=16,color="green",shape="box"];678[label="xx4000",fontsize=16,color="green",shape="box"];679[label="xx3000",fontsize=16,color="green",shape="box"];680[label="xx4000",fontsize=16,color="green",shape="box"];681[label="xx3000",fontsize=16,color="green",shape="box"];682[label="xx4000",fontsize=16,color="green",shape="box"];683[label="xx3000",fontsize=16,color="green",shape="box"];684[label="xx4000",fontsize=16,color="green",shape="box"];685[label="xx3000",fontsize=16,color="green",shape="box"];686[label="xx4000",fontsize=16,color="green",shape="box"];687[label="xx3000",fontsize=16,color="green",shape="box"];688[label="xx4000",fontsize=16,color="green",shape="box"];689[label="xx3000",fontsize=16,color="green",shape="box"];690[label="xx4000",fontsize=16,color="green",shape="box"];691[label="xx3000",fontsize=16,color="green",shape="box"];692[label="xx4000",fontsize=16,color="green",shape="box"];693[label="xx3000",fontsize=16,color="green",shape="box"];694[label="xx4000",fontsize=16,color="green",shape="box"];695[label="xx3000",fontsize=16,color="green",shape="box"];696[label="xx4000",fontsize=16,color="green",shape="box"];697[label="xx3000",fontsize=16,color="green",shape="box"];698 -> 356[label="",style="dashed", color="red", weight=0]; 698[label="xx3001 == xx4001",fontsize=16,color="magenta"];698 -> 813[label="",style="dashed", color="magenta", weight=3]; 698 -> 814[label="",style="dashed", color="magenta", weight=3]; 699 -> 357[label="",style="dashed", color="red", weight=0]; 699[label="xx3001 == xx4001",fontsize=16,color="magenta"];699 -> 815[label="",style="dashed", color="magenta", weight=3]; 699 -> 816[label="",style="dashed", color="magenta", weight=3]; 700 -> 358[label="",style="dashed", color="red", weight=0]; 700[label="xx3001 == xx4001",fontsize=16,color="magenta"];700 -> 817[label="",style="dashed", color="magenta", weight=3]; 700 -> 818[label="",style="dashed", color="magenta", weight=3]; 701 -> 359[label="",style="dashed", color="red", weight=0]; 701[label="xx3001 == xx4001",fontsize=16,color="magenta"];701 -> 819[label="",style="dashed", color="magenta", weight=3]; 701 -> 820[label="",style="dashed", color="magenta", weight=3]; 702 -> 360[label="",style="dashed", color="red", weight=0]; 702[label="xx3001 == xx4001",fontsize=16,color="magenta"];702 -> 821[label="",style="dashed", color="magenta", weight=3]; 702 -> 822[label="",style="dashed", color="magenta", weight=3]; 703 -> 361[label="",style="dashed", color="red", weight=0]; 703[label="xx3001 == xx4001",fontsize=16,color="magenta"];703 -> 823[label="",style="dashed", color="magenta", weight=3]; 703 -> 824[label="",style="dashed", color="magenta", weight=3]; 704 -> 362[label="",style="dashed", color="red", weight=0]; 704[label="xx3001 == xx4001",fontsize=16,color="magenta"];704 -> 825[label="",style="dashed", color="magenta", weight=3]; 704 -> 826[label="",style="dashed", color="magenta", weight=3]; 705 -> 363[label="",style="dashed", color="red", weight=0]; 705[label="xx3001 == xx4001",fontsize=16,color="magenta"];705 -> 827[label="",style="dashed", color="magenta", weight=3]; 705 -> 828[label="",style="dashed", color="magenta", weight=3]; 706 -> 364[label="",style="dashed", color="red", weight=0]; 706[label="xx3001 == xx4001",fontsize=16,color="magenta"];706 -> 829[label="",style="dashed", color="magenta", weight=3]; 706 -> 830[label="",style="dashed", color="magenta", weight=3]; 707 -> 365[label="",style="dashed", color="red", weight=0]; 707[label="xx3001 == xx4001",fontsize=16,color="magenta"];707 -> 831[label="",style="dashed", color="magenta", weight=3]; 707 -> 832[label="",style="dashed", color="magenta", weight=3]; 708 -> 350[label="",style="dashed", color="red", weight=0]; 708[label="xx3001 == xx4001",fontsize=16,color="magenta"];708 -> 833[label="",style="dashed", color="magenta", weight=3]; 708 -> 834[label="",style="dashed", color="magenta", weight=3]; 709 -> 367[label="",style="dashed", color="red", weight=0]; 709[label="xx3001 == xx4001",fontsize=16,color="magenta"];709 -> 835[label="",style="dashed", color="magenta", weight=3]; 709 -> 836[label="",style="dashed", color="magenta", weight=3]; 710 -> 368[label="",style="dashed", color="red", weight=0]; 710[label="xx3001 == xx4001",fontsize=16,color="magenta"];710 -> 837[label="",style="dashed", color="magenta", weight=3]; 710 -> 838[label="",style="dashed", color="magenta", weight=3]; 711 -> 369[label="",style="dashed", color="red", weight=0]; 711[label="xx3001 == xx4001",fontsize=16,color="magenta"];711 -> 839[label="",style="dashed", color="magenta", weight=3]; 711 -> 840[label="",style="dashed", color="magenta", weight=3]; 712 -> 356[label="",style="dashed", color="red", weight=0]; 712[label="xx3000 == xx4000",fontsize=16,color="magenta"];712 -> 841[label="",style="dashed", color="magenta", weight=3]; 712 -> 842[label="",style="dashed", color="magenta", weight=3]; 713 -> 357[label="",style="dashed", color="red", weight=0]; 713[label="xx3000 == xx4000",fontsize=16,color="magenta"];713 -> 843[label="",style="dashed", color="magenta", weight=3]; 713 -> 844[label="",style="dashed", color="magenta", weight=3]; 714 -> 358[label="",style="dashed", color="red", weight=0]; 714[label="xx3000 == xx4000",fontsize=16,color="magenta"];714 -> 845[label="",style="dashed", color="magenta", weight=3]; 714 -> 846[label="",style="dashed", color="magenta", weight=3]; 715 -> 359[label="",style="dashed", color="red", weight=0]; 715[label="xx3000 == xx4000",fontsize=16,color="magenta"];715 -> 847[label="",style="dashed", color="magenta", weight=3]; 715 -> 848[label="",style="dashed", color="magenta", weight=3]; 716 -> 360[label="",style="dashed", color="red", weight=0]; 716[label="xx3000 == xx4000",fontsize=16,color="magenta"];716 -> 849[label="",style="dashed", color="magenta", weight=3]; 716 -> 850[label="",style="dashed", color="magenta", weight=3]; 717 -> 361[label="",style="dashed", color="red", weight=0]; 717[label="xx3000 == xx4000",fontsize=16,color="magenta"];717 -> 851[label="",style="dashed", color="magenta", weight=3]; 717 -> 852[label="",style="dashed", color="magenta", weight=3]; 718 -> 362[label="",style="dashed", color="red", weight=0]; 718[label="xx3000 == xx4000",fontsize=16,color="magenta"];718 -> 853[label="",style="dashed", color="magenta", weight=3]; 718 -> 854[label="",style="dashed", color="magenta", weight=3]; 719 -> 363[label="",style="dashed", color="red", weight=0]; 719[label="xx3000 == xx4000",fontsize=16,color="magenta"];719 -> 855[label="",style="dashed", color="magenta", weight=3]; 719 -> 856[label="",style="dashed", color="magenta", weight=3]; 720 -> 364[label="",style="dashed", color="red", weight=0]; 720[label="xx3000 == xx4000",fontsize=16,color="magenta"];720 -> 857[label="",style="dashed", color="magenta", weight=3]; 720 -> 858[label="",style="dashed", color="magenta", weight=3]; 721 -> 365[label="",style="dashed", color="red", weight=0]; 721[label="xx3000 == xx4000",fontsize=16,color="magenta"];721 -> 859[label="",style="dashed", color="magenta", weight=3]; 721 -> 860[label="",style="dashed", color="magenta", weight=3]; 722 -> 350[label="",style="dashed", color="red", weight=0]; 722[label="xx3000 == xx4000",fontsize=16,color="magenta"];722 -> 861[label="",style="dashed", color="magenta", weight=3]; 722 -> 862[label="",style="dashed", color="magenta", weight=3]; 723 -> 367[label="",style="dashed", color="red", weight=0]; 723[label="xx3000 == xx4000",fontsize=16,color="magenta"];723 -> 863[label="",style="dashed", color="magenta", weight=3]; 723 -> 864[label="",style="dashed", color="magenta", weight=3]; 724 -> 368[label="",style="dashed", color="red", weight=0]; 724[label="xx3000 == xx4000",fontsize=16,color="magenta"];724 -> 865[label="",style="dashed", color="magenta", weight=3]; 724 -> 866[label="",style="dashed", color="magenta", weight=3]; 725 -> 369[label="",style="dashed", color="red", weight=0]; 725[label="xx3000 == xx4000",fontsize=16,color="magenta"];725 -> 867[label="",style="dashed", color="magenta", weight=3]; 725 -> 868[label="",style="dashed", color="magenta", weight=3]; 726[label="xx4001",fontsize=16,color="green",shape="box"];727[label="xx3001",fontsize=16,color="green",shape="box"];728[label="xx4001",fontsize=16,color="green",shape="box"];729[label="xx3001",fontsize=16,color="green",shape="box"];730[label="xx4000",fontsize=16,color="green",shape="box"];731[label="xx3000",fontsize=16,color="green",shape="box"];732[label="xx4000",fontsize=16,color="green",shape="box"];733[label="xx3000",fontsize=16,color="green",shape="box"];734 -> 356[label="",style="dashed", color="red", weight=0]; 734[label="xx3002 == xx4002",fontsize=16,color="magenta"];734 -> 869[label="",style="dashed", color="magenta", weight=3]; 734 -> 870[label="",style="dashed", color="magenta", weight=3]; 735 -> 357[label="",style="dashed", color="red", weight=0]; 735[label="xx3002 == xx4002",fontsize=16,color="magenta"];735 -> 871[label="",style="dashed", color="magenta", weight=3]; 735 -> 872[label="",style="dashed", color="magenta", weight=3]; 736 -> 358[label="",style="dashed", color="red", weight=0]; 736[label="xx3002 == xx4002",fontsize=16,color="magenta"];736 -> 873[label="",style="dashed", color="magenta", weight=3]; 736 -> 874[label="",style="dashed", color="magenta", weight=3]; 737 -> 359[label="",style="dashed", color="red", weight=0]; 737[label="xx3002 == xx4002",fontsize=16,color="magenta"];737 -> 875[label="",style="dashed", color="magenta", weight=3]; 737 -> 876[label="",style="dashed", color="magenta", weight=3]; 738 -> 360[label="",style="dashed", color="red", weight=0]; 738[label="xx3002 == xx4002",fontsize=16,color="magenta"];738 -> 877[label="",style="dashed", color="magenta", weight=3]; 738 -> 878[label="",style="dashed", color="magenta", weight=3]; 739 -> 361[label="",style="dashed", color="red", weight=0]; 739[label="xx3002 == xx4002",fontsize=16,color="magenta"];739 -> 879[label="",style="dashed", color="magenta", weight=3]; 739 -> 880[label="",style="dashed", color="magenta", weight=3]; 740 -> 362[label="",style="dashed", color="red", weight=0]; 740[label="xx3002 == xx4002",fontsize=16,color="magenta"];740 -> 881[label="",style="dashed", color="magenta", weight=3]; 740 -> 882[label="",style="dashed", color="magenta", weight=3]; 741 -> 363[label="",style="dashed", color="red", weight=0]; 741[label="xx3002 == xx4002",fontsize=16,color="magenta"];741 -> 883[label="",style="dashed", color="magenta", weight=3]; 741 -> 884[label="",style="dashed", color="magenta", weight=3]; 742 -> 364[label="",style="dashed", color="red", weight=0]; 742[label="xx3002 == xx4002",fontsize=16,color="magenta"];742 -> 885[label="",style="dashed", color="magenta", weight=3]; 742 -> 886[label="",style="dashed", color="magenta", weight=3]; 743 -> 365[label="",style="dashed", color="red", weight=0]; 743[label="xx3002 == xx4002",fontsize=16,color="magenta"];743 -> 887[label="",style="dashed", color="magenta", weight=3]; 743 -> 888[label="",style="dashed", color="magenta", weight=3]; 744 -> 350[label="",style="dashed", color="red", weight=0]; 744[label="xx3002 == xx4002",fontsize=16,color="magenta"];744 -> 889[label="",style="dashed", color="magenta", weight=3]; 744 -> 890[label="",style="dashed", color="magenta", weight=3]; 745 -> 367[label="",style="dashed", color="red", weight=0]; 745[label="xx3002 == xx4002",fontsize=16,color="magenta"];745 -> 891[label="",style="dashed", color="magenta", weight=3]; 745 -> 892[label="",style="dashed", color="magenta", weight=3]; 746 -> 368[label="",style="dashed", color="red", weight=0]; 746[label="xx3002 == xx4002",fontsize=16,color="magenta"];746 -> 893[label="",style="dashed", color="magenta", weight=3]; 746 -> 894[label="",style="dashed", color="magenta", weight=3]; 747 -> 369[label="",style="dashed", color="red", weight=0]; 747[label="xx3002 == xx4002",fontsize=16,color="magenta"];747 -> 895[label="",style="dashed", color="magenta", weight=3]; 747 -> 896[label="",style="dashed", color="magenta", weight=3]; 748 -> 356[label="",style="dashed", color="red", weight=0]; 748[label="xx3001 == xx4001",fontsize=16,color="magenta"];748 -> 897[label="",style="dashed", color="magenta", weight=3]; 748 -> 898[label="",style="dashed", color="magenta", weight=3]; 749 -> 357[label="",style="dashed", color="red", weight=0]; 749[label="xx3001 == xx4001",fontsize=16,color="magenta"];749 -> 899[label="",style="dashed", color="magenta", weight=3]; 749 -> 900[label="",style="dashed", color="magenta", weight=3]; 750 -> 358[label="",style="dashed", color="red", weight=0]; 750[label="xx3001 == xx4001",fontsize=16,color="magenta"];750 -> 901[label="",style="dashed", color="magenta", weight=3]; 750 -> 902[label="",style="dashed", color="magenta", weight=3]; 751 -> 359[label="",style="dashed", color="red", weight=0]; 751[label="xx3001 == xx4001",fontsize=16,color="magenta"];751 -> 903[label="",style="dashed", color="magenta", weight=3]; 751 -> 904[label="",style="dashed", color="magenta", weight=3]; 752 -> 360[label="",style="dashed", color="red", weight=0]; 752[label="xx3001 == xx4001",fontsize=16,color="magenta"];752 -> 905[label="",style="dashed", color="magenta", weight=3]; 752 -> 906[label="",style="dashed", color="magenta", weight=3]; 753 -> 361[label="",style="dashed", color="red", weight=0]; 753[label="xx3001 == xx4001",fontsize=16,color="magenta"];753 -> 907[label="",style="dashed", color="magenta", weight=3]; 753 -> 908[label="",style="dashed", color="magenta", weight=3]; 754 -> 362[label="",style="dashed", color="red", weight=0]; 754[label="xx3001 == xx4001",fontsize=16,color="magenta"];754 -> 909[label="",style="dashed", color="magenta", weight=3]; 754 -> 910[label="",style="dashed", color="magenta", weight=3]; 755 -> 363[label="",style="dashed", color="red", weight=0]; 755[label="xx3001 == xx4001",fontsize=16,color="magenta"];755 -> 911[label="",style="dashed", color="magenta", weight=3]; 755 -> 912[label="",style="dashed", color="magenta", weight=3]; 756 -> 364[label="",style="dashed", color="red", weight=0]; 756[label="xx3001 == xx4001",fontsize=16,color="magenta"];756 -> 913[label="",style="dashed", color="magenta", weight=3]; 756 -> 914[label="",style="dashed", color="magenta", weight=3]; 757 -> 365[label="",style="dashed", color="red", weight=0]; 757[label="xx3001 == xx4001",fontsize=16,color="magenta"];757 -> 915[label="",style="dashed", color="magenta", weight=3]; 757 -> 916[label="",style="dashed", color="magenta", weight=3]; 758 -> 350[label="",style="dashed", color="red", weight=0]; 758[label="xx3001 == xx4001",fontsize=16,color="magenta"];758 -> 917[label="",style="dashed", color="magenta", weight=3]; 758 -> 918[label="",style="dashed", color="magenta", weight=3]; 759 -> 367[label="",style="dashed", color="red", weight=0]; 759[label="xx3001 == xx4001",fontsize=16,color="magenta"];759 -> 919[label="",style="dashed", color="magenta", weight=3]; 759 -> 920[label="",style="dashed", color="magenta", weight=3]; 760 -> 368[label="",style="dashed", color="red", weight=0]; 760[label="xx3001 == xx4001",fontsize=16,color="magenta"];760 -> 921[label="",style="dashed", color="magenta", weight=3]; 760 -> 922[label="",style="dashed", color="magenta", weight=3]; 761 -> 369[label="",style="dashed", color="red", weight=0]; 761[label="xx3001 == xx4001",fontsize=16,color="magenta"];761 -> 923[label="",style="dashed", color="magenta", weight=3]; 761 -> 924[label="",style="dashed", color="magenta", weight=3]; 762[label="xx4000",fontsize=16,color="green",shape="box"];763[label="xx3000",fontsize=16,color="green",shape="box"];764[label="xx4000",fontsize=16,color="green",shape="box"];765[label="xx3000",fontsize=16,color="green",shape="box"];766[label="xx4000",fontsize=16,color="green",shape="box"];767[label="xx3000",fontsize=16,color="green",shape="box"];768[label="xx4000",fontsize=16,color="green",shape="box"];769[label="xx3000",fontsize=16,color="green",shape="box"];770[label="xx4000",fontsize=16,color="green",shape="box"];771[label="xx3000",fontsize=16,color="green",shape="box"];772[label="xx4000",fontsize=16,color="green",shape="box"];773[label="xx3000",fontsize=16,color="green",shape="box"];774[label="xx4000",fontsize=16,color="green",shape="box"];775[label="xx3000",fontsize=16,color="green",shape="box"];776[label="xx4000",fontsize=16,color="green",shape="box"];777[label="xx3000",fontsize=16,color="green",shape="box"];778[label="xx4000",fontsize=16,color="green",shape="box"];779[label="xx3000",fontsize=16,color="green",shape="box"];780[label="xx4000",fontsize=16,color="green",shape="box"];781[label="xx3000",fontsize=16,color="green",shape="box"];782[label="xx4000",fontsize=16,color="green",shape="box"];783[label="xx3000",fontsize=16,color="green",shape="box"];784[label="xx4000",fontsize=16,color="green",shape="box"];785[label="xx3000",fontsize=16,color="green",shape="box"];786[label="xx4000",fontsize=16,color="green",shape="box"];787[label="xx3000",fontsize=16,color="green",shape="box"];788[label="xx4000",fontsize=16,color="green",shape="box"];789[label="xx3000",fontsize=16,color="green",shape="box"];790[label="primEqNat (Succ xx30000) (Succ xx40000)",fontsize=16,color="black",shape="box"];790 -> 925[label="",style="solid", color="black", weight=3]; 791[label="primEqNat (Succ xx30000) Zero",fontsize=16,color="black",shape="box"];791 -> 926[label="",style="solid", color="black", weight=3]; 792[label="primEqNat Zero (Succ xx40000)",fontsize=16,color="black",shape="box"];792 -> 927[label="",style="solid", color="black", weight=3]; 793[label="primEqNat Zero Zero",fontsize=16,color="black",shape="box"];793 -> 928[label="",style="solid", color="black", weight=3]; 794[label="primMulInt xx3001 xx4000",fontsize=16,color="burlywood",shape="box"];1227[label="xx3001/Pos xx30010",fontsize=10,color="white",style="solid",shape="box"];794 -> 1227[label="",style="solid", color="burlywood", weight=9]; 1227 -> 929[label="",style="solid", color="burlywood", weight=3]; 1228[label="xx3001/Neg xx30010",fontsize=10,color="white",style="solid",shape="box"];794 -> 1228[label="",style="solid", color="burlywood", weight=9]; 1228 -> 930[label="",style="solid", color="burlywood", weight=3]; 795[label="xx4001",fontsize=16,color="green",shape="box"];796[label="xx3000",fontsize=16,color="green",shape="box"];797[label="xx4000",fontsize=16,color="green",shape="box"];798[label="xx3001",fontsize=16,color="green",shape="box"];799[label="xx4001",fontsize=16,color="green",shape="box"];800[label="xx3000",fontsize=16,color="green",shape="box"];801 -> 503[label="",style="dashed", color="red", weight=0]; 801[label="primEqNat xx30000 xx40000",fontsize=16,color="magenta"];801 -> 931[label="",style="dashed", color="magenta", weight=3]; 801 -> 932[label="",style="dashed", color="magenta", weight=3]; 802[label="False",fontsize=16,color="green",shape="box"];803[label="False",fontsize=16,color="green",shape="box"];804[label="True",fontsize=16,color="green",shape="box"];805[label="False",fontsize=16,color="green",shape="box"];806[label="True",fontsize=16,color="green",shape="box"];807 -> 503[label="",style="dashed", color="red", weight=0]; 807[label="primEqNat xx30000 xx40000",fontsize=16,color="magenta"];807 -> 933[label="",style="dashed", color="magenta", weight=3]; 807 -> 934[label="",style="dashed", color="magenta", weight=3]; 808[label="False",fontsize=16,color="green",shape="box"];809[label="False",fontsize=16,color="green",shape="box"];810[label="True",fontsize=16,color="green",shape="box"];811[label="False",fontsize=16,color="green",shape="box"];812[label="True",fontsize=16,color="green",shape="box"];813[label="xx4001",fontsize=16,color="green",shape="box"];814[label="xx3001",fontsize=16,color="green",shape="box"];815[label="xx4001",fontsize=16,color="green",shape="box"];816[label="xx3001",fontsize=16,color="green",shape="box"];817[label="xx4001",fontsize=16,color="green",shape="box"];818[label="xx3001",fontsize=16,color="green",shape="box"];819[label="xx4001",fontsize=16,color="green",shape="box"];820[label="xx3001",fontsize=16,color="green",shape="box"];821[label="xx4001",fontsize=16,color="green",shape="box"];822[label="xx3001",fontsize=16,color="green",shape="box"];823[label="xx4001",fontsize=16,color="green",shape="box"];824[label="xx3001",fontsize=16,color="green",shape="box"];825[label="xx4001",fontsize=16,color="green",shape="box"];826[label="xx3001",fontsize=16,color="green",shape="box"];827[label="xx4001",fontsize=16,color="green",shape="box"];828[label="xx3001",fontsize=16,color="green",shape="box"];829[label="xx4001",fontsize=16,color="green",shape="box"];830[label="xx3001",fontsize=16,color="green",shape="box"];831[label="xx4001",fontsize=16,color="green",shape="box"];832[label="xx3001",fontsize=16,color="green",shape="box"];833[label="xx4001",fontsize=16,color="green",shape="box"];834[label="xx3001",fontsize=16,color="green",shape="box"];835[label="xx4001",fontsize=16,color="green",shape="box"];836[label="xx3001",fontsize=16,color="green",shape="box"];837[label="xx4001",fontsize=16,color="green",shape="box"];838[label="xx3001",fontsize=16,color="green",shape="box"];839[label="xx4001",fontsize=16,color="green",shape="box"];840[label="xx3001",fontsize=16,color="green",shape="box"];841[label="xx4000",fontsize=16,color="green",shape="box"];842[label="xx3000",fontsize=16,color="green",shape="box"];843[label="xx4000",fontsize=16,color="green",shape="box"];844[label="xx3000",fontsize=16,color="green",shape="box"];845[label="xx4000",fontsize=16,color="green",shape="box"];846[label="xx3000",fontsize=16,color="green",shape="box"];847[label="xx4000",fontsize=16,color="green",shape="box"];848[label="xx3000",fontsize=16,color="green",shape="box"];849[label="xx4000",fontsize=16,color="green",shape="box"];850[label="xx3000",fontsize=16,color="green",shape="box"];851[label="xx4000",fontsize=16,color="green",shape="box"];852[label="xx3000",fontsize=16,color="green",shape="box"];853[label="xx4000",fontsize=16,color="green",shape="box"];854[label="xx3000",fontsize=16,color="green",shape="box"];855[label="xx4000",fontsize=16,color="green",shape="box"];856[label="xx3000",fontsize=16,color="green",shape="box"];857[label="xx4000",fontsize=16,color="green",shape="box"];858[label="xx3000",fontsize=16,color="green",shape="box"];859[label="xx4000",fontsize=16,color="green",shape="box"];860[label="xx3000",fontsize=16,color="green",shape="box"];861[label="xx4000",fontsize=16,color="green",shape="box"];862[label="xx3000",fontsize=16,color="green",shape="box"];863[label="xx4000",fontsize=16,color="green",shape="box"];864[label="xx3000",fontsize=16,color="green",shape="box"];865[label="xx4000",fontsize=16,color="green",shape="box"];866[label="xx3000",fontsize=16,color="green",shape="box"];867[label="xx4000",fontsize=16,color="green",shape="box"];868[label="xx3000",fontsize=16,color="green",shape="box"];869[label="xx4002",fontsize=16,color="green",shape="box"];870[label="xx3002",fontsize=16,color="green",shape="box"];871[label="xx4002",fontsize=16,color="green",shape="box"];872[label="xx3002",fontsize=16,color="green",shape="box"];873[label="xx4002",fontsize=16,color="green",shape="box"];874[label="xx3002",fontsize=16,color="green",shape="box"];875[label="xx4002",fontsize=16,color="green",shape="box"];876[label="xx3002",fontsize=16,color="green",shape="box"];877[label="xx4002",fontsize=16,color="green",shape="box"];878[label="xx3002",fontsize=16,color="green",shape="box"];879[label="xx4002",fontsize=16,color="green",shape="box"];880[label="xx3002",fontsize=16,color="green",shape="box"];881[label="xx4002",fontsize=16,color="green",shape="box"];882[label="xx3002",fontsize=16,color="green",shape="box"];883[label="xx4002",fontsize=16,color="green",shape="box"];884[label="xx3002",fontsize=16,color="green",shape="box"];885[label="xx4002",fontsize=16,color="green",shape="box"];886[label="xx3002",fontsize=16,color="green",shape="box"];887[label="xx4002",fontsize=16,color="green",shape="box"];888[label="xx3002",fontsize=16,color="green",shape="box"];889[label="xx4002",fontsize=16,color="green",shape="box"];890[label="xx3002",fontsize=16,color="green",shape="box"];891[label="xx4002",fontsize=16,color="green",shape="box"];892[label="xx3002",fontsize=16,color="green",shape="box"];893[label="xx4002",fontsize=16,color="green",shape="box"];894[label="xx3002",fontsize=16,color="green",shape="box"];895[label="xx4002",fontsize=16,color="green",shape="box"];896[label="xx3002",fontsize=16,color="green",shape="box"];897[label="xx4001",fontsize=16,color="green",shape="box"];898[label="xx3001",fontsize=16,color="green",shape="box"];899[label="xx4001",fontsize=16,color="green",shape="box"];900[label="xx3001",fontsize=16,color="green",shape="box"];901[label="xx4001",fontsize=16,color="green",shape="box"];902[label="xx3001",fontsize=16,color="green",shape="box"];903[label="xx4001",fontsize=16,color="green",shape="box"];904[label="xx3001",fontsize=16,color="green",shape="box"];905[label="xx4001",fontsize=16,color="green",shape="box"];906[label="xx3001",fontsize=16,color="green",shape="box"];907[label="xx4001",fontsize=16,color="green",shape="box"];908[label="xx3001",fontsize=16,color="green",shape="box"];909[label="xx4001",fontsize=16,color="green",shape="box"];910[label="xx3001",fontsize=16,color="green",shape="box"];911[label="xx4001",fontsize=16,color="green",shape="box"];912[label="xx3001",fontsize=16,color="green",shape="box"];913[label="xx4001",fontsize=16,color="green",shape="box"];914[label="xx3001",fontsize=16,color="green",shape="box"];915[label="xx4001",fontsize=16,color="green",shape="box"];916[label="xx3001",fontsize=16,color="green",shape="box"];917[label="xx4001",fontsize=16,color="green",shape="box"];918[label="xx3001",fontsize=16,color="green",shape="box"];919[label="xx4001",fontsize=16,color="green",shape="box"];920[label="xx3001",fontsize=16,color="green",shape="box"];921[label="xx4001",fontsize=16,color="green",shape="box"];922[label="xx3001",fontsize=16,color="green",shape="box"];923[label="xx4001",fontsize=16,color="green",shape="box"];924[label="xx3001",fontsize=16,color="green",shape="box"];925 -> 503[label="",style="dashed", color="red", weight=0]; 925[label="primEqNat xx30000 xx40000",fontsize=16,color="magenta"];925 -> 935[label="",style="dashed", color="magenta", weight=3]; 925 -> 936[label="",style="dashed", color="magenta", weight=3]; 926[label="False",fontsize=16,color="green",shape="box"];927[label="False",fontsize=16,color="green",shape="box"];928[label="True",fontsize=16,color="green",shape="box"];929[label="primMulInt (Pos xx30010) xx4000",fontsize=16,color="burlywood",shape="box"];1229[label="xx4000/Pos xx40000",fontsize=10,color="white",style="solid",shape="box"];929 -> 1229[label="",style="solid", color="burlywood", weight=9]; 1229 -> 937[label="",style="solid", color="burlywood", weight=3]; 1230[label="xx4000/Neg xx40000",fontsize=10,color="white",style="solid",shape="box"];929 -> 1230[label="",style="solid", color="burlywood", weight=9]; 1230 -> 938[label="",style="solid", color="burlywood", weight=3]; 930[label="primMulInt (Neg xx30010) xx4000",fontsize=16,color="burlywood",shape="box"];1231[label="xx4000/Pos xx40000",fontsize=10,color="white",style="solid",shape="box"];930 -> 1231[label="",style="solid", color="burlywood", weight=9]; 1231 -> 939[label="",style="solid", color="burlywood", weight=3]; 1232[label="xx4000/Neg xx40000",fontsize=10,color="white",style="solid",shape="box"];930 -> 1232[label="",style="solid", color="burlywood", weight=9]; 1232 -> 940[label="",style="solid", color="burlywood", weight=3]; 931[label="xx30000",fontsize=16,color="green",shape="box"];932[label="xx40000",fontsize=16,color="green",shape="box"];933[label="xx30000",fontsize=16,color="green",shape="box"];934[label="xx40000",fontsize=16,color="green",shape="box"];935[label="xx30000",fontsize=16,color="green",shape="box"];936[label="xx40000",fontsize=16,color="green",shape="box"];937[label="primMulInt (Pos xx30010) (Pos xx40000)",fontsize=16,color="black",shape="box"];937 -> 941[label="",style="solid", color="black", weight=3]; 938[label="primMulInt (Pos xx30010) (Neg xx40000)",fontsize=16,color="black",shape="box"];938 -> 942[label="",style="solid", color="black", weight=3]; 939[label="primMulInt (Neg xx30010) (Pos xx40000)",fontsize=16,color="black",shape="box"];939 -> 943[label="",style="solid", color="black", weight=3]; 940[label="primMulInt (Neg xx30010) (Neg xx40000)",fontsize=16,color="black",shape="box"];940 -> 944[label="",style="solid", color="black", weight=3]; 941[label="Pos (primMulNat xx30010 xx40000)",fontsize=16,color="green",shape="box"];941 -> 945[label="",style="dashed", color="green", weight=3]; 942[label="Neg (primMulNat xx30010 xx40000)",fontsize=16,color="green",shape="box"];942 -> 946[label="",style="dashed", color="green", weight=3]; 943[label="Neg (primMulNat xx30010 xx40000)",fontsize=16,color="green",shape="box"];943 -> 947[label="",style="dashed", color="green", weight=3]; 944[label="Pos (primMulNat xx30010 xx40000)",fontsize=16,color="green",shape="box"];944 -> 948[label="",style="dashed", color="green", weight=3]; 945[label="primMulNat xx30010 xx40000",fontsize=16,color="burlywood",shape="triangle"];1233[label="xx30010/Succ xx300100",fontsize=10,color="white",style="solid",shape="box"];945 -> 1233[label="",style="solid", color="burlywood", weight=9]; 1233 -> 949[label="",style="solid", color="burlywood", weight=3]; 1234[label="xx30010/Zero",fontsize=10,color="white",style="solid",shape="box"];945 -> 1234[label="",style="solid", color="burlywood", weight=9]; 1234 -> 950[label="",style="solid", color="burlywood", weight=3]; 946 -> 945[label="",style="dashed", color="red", weight=0]; 946[label="primMulNat xx30010 xx40000",fontsize=16,color="magenta"];946 -> 951[label="",style="dashed", color="magenta", weight=3]; 947 -> 945[label="",style="dashed", color="red", weight=0]; 947[label="primMulNat xx30010 xx40000",fontsize=16,color="magenta"];947 -> 952[label="",style="dashed", color="magenta", weight=3]; 948 -> 945[label="",style="dashed", color="red", weight=0]; 948[label="primMulNat xx30010 xx40000",fontsize=16,color="magenta"];948 -> 953[label="",style="dashed", color="magenta", weight=3]; 948 -> 954[label="",style="dashed", color="magenta", weight=3]; 949[label="primMulNat (Succ xx300100) xx40000",fontsize=16,color="burlywood",shape="box"];1235[label="xx40000/Succ xx400000",fontsize=10,color="white",style="solid",shape="box"];949 -> 1235[label="",style="solid", color="burlywood", weight=9]; 1235 -> 955[label="",style="solid", color="burlywood", weight=3]; 1236[label="xx40000/Zero",fontsize=10,color="white",style="solid",shape="box"];949 -> 1236[label="",style="solid", color="burlywood", weight=9]; 1236 -> 956[label="",style="solid", color="burlywood", weight=3]; 950[label="primMulNat Zero xx40000",fontsize=16,color="burlywood",shape="box"];1237[label="xx40000/Succ xx400000",fontsize=10,color="white",style="solid",shape="box"];950 -> 1237[label="",style="solid", color="burlywood", weight=9]; 1237 -> 957[label="",style="solid", color="burlywood", weight=3]; 1238[label="xx40000/Zero",fontsize=10,color="white",style="solid",shape="box"];950 -> 1238[label="",style="solid", color="burlywood", weight=9]; 1238 -> 958[label="",style="solid", color="burlywood", weight=3]; 951[label="xx40000",fontsize=16,color="green",shape="box"];952[label="xx30010",fontsize=16,color="green",shape="box"];953[label="xx30010",fontsize=16,color="green",shape="box"];954[label="xx40000",fontsize=16,color="green",shape="box"];955[label="primMulNat (Succ xx300100) (Succ xx400000)",fontsize=16,color="black",shape="box"];955 -> 959[label="",style="solid", color="black", weight=3]; 956[label="primMulNat (Succ xx300100) Zero",fontsize=16,color="black",shape="box"];956 -> 960[label="",style="solid", color="black", weight=3]; 957[label="primMulNat Zero (Succ xx400000)",fontsize=16,color="black",shape="box"];957 -> 961[label="",style="solid", color="black", weight=3]; 958[label="primMulNat Zero Zero",fontsize=16,color="black",shape="box"];958 -> 962[label="",style="solid", color="black", weight=3]; 959 -> 963[label="",style="dashed", color="red", weight=0]; 959[label="primPlusNat (primMulNat xx300100 (Succ xx400000)) (Succ xx400000)",fontsize=16,color="magenta"];959 -> 964[label="",style="dashed", color="magenta", weight=3]; 960[label="Zero",fontsize=16,color="green",shape="box"];961[label="Zero",fontsize=16,color="green",shape="box"];962[label="Zero",fontsize=16,color="green",shape="box"];964 -> 945[label="",style="dashed", color="red", weight=0]; 964[label="primMulNat xx300100 (Succ xx400000)",fontsize=16,color="magenta"];964 -> 965[label="",style="dashed", color="magenta", weight=3]; 964 -> 966[label="",style="dashed", color="magenta", weight=3]; 963[label="primPlusNat xx33 (Succ xx400000)",fontsize=16,color="burlywood",shape="triangle"];1239[label="xx33/Succ xx330",fontsize=10,color="white",style="solid",shape="box"];963 -> 1239[label="",style="solid", color="burlywood", weight=9]; 1239 -> 967[label="",style="solid", color="burlywood", weight=3]; 1240[label="xx33/Zero",fontsize=10,color="white",style="solid",shape="box"];963 -> 1240[label="",style="solid", color="burlywood", weight=9]; 1240 -> 968[label="",style="solid", color="burlywood", weight=3]; 965[label="xx300100",fontsize=16,color="green",shape="box"];966[label="Succ xx400000",fontsize=16,color="green",shape="box"];967[label="primPlusNat (Succ xx330) (Succ xx400000)",fontsize=16,color="black",shape="box"];967 -> 969[label="",style="solid", color="black", weight=3]; 968[label="primPlusNat Zero (Succ xx400000)",fontsize=16,color="black",shape="box"];968 -> 970[label="",style="solid", color="black", weight=3]; 969[label="Succ (Succ (primPlusNat xx330 xx400000))",fontsize=16,color="green",shape="box"];969 -> 971[label="",style="dashed", color="green", weight=3]; 970[label="Succ xx400000",fontsize=16,color="green",shape="box"];971[label="primPlusNat xx330 xx400000",fontsize=16,color="burlywood",shape="triangle"];1241[label="xx330/Succ xx3300",fontsize=10,color="white",style="solid",shape="box"];971 -> 1241[label="",style="solid", color="burlywood", weight=9]; 1241 -> 972[label="",style="solid", color="burlywood", weight=3]; 1242[label="xx330/Zero",fontsize=10,color="white",style="solid",shape="box"];971 -> 1242[label="",style="solid", color="burlywood", weight=9]; 1242 -> 973[label="",style="solid", color="burlywood", weight=3]; 972[label="primPlusNat (Succ xx3300) xx400000",fontsize=16,color="burlywood",shape="box"];1243[label="xx400000/Succ xx4000000",fontsize=10,color="white",style="solid",shape="box"];972 -> 1243[label="",style="solid", color="burlywood", weight=9]; 1243 -> 974[label="",style="solid", color="burlywood", weight=3]; 1244[label="xx400000/Zero",fontsize=10,color="white",style="solid",shape="box"];972 -> 1244[label="",style="solid", color="burlywood", weight=9]; 1244 -> 975[label="",style="solid", color="burlywood", weight=3]; 973[label="primPlusNat Zero xx400000",fontsize=16,color="burlywood",shape="box"];1245[label="xx400000/Succ xx4000000",fontsize=10,color="white",style="solid",shape="box"];973 -> 1245[label="",style="solid", color="burlywood", weight=9]; 1245 -> 976[label="",style="solid", color="burlywood", weight=3]; 1246[label="xx400000/Zero",fontsize=10,color="white",style="solid",shape="box"];973 -> 1246[label="",style="solid", color="burlywood", weight=9]; 1246 -> 977[label="",style="solid", color="burlywood", weight=3]; 974[label="primPlusNat (Succ xx3300) (Succ xx4000000)",fontsize=16,color="black",shape="box"];974 -> 978[label="",style="solid", color="black", weight=3]; 975[label="primPlusNat (Succ xx3300) Zero",fontsize=16,color="black",shape="box"];975 -> 979[label="",style="solid", color="black", weight=3]; 976[label="primPlusNat Zero (Succ xx4000000)",fontsize=16,color="black",shape="box"];976 -> 980[label="",style="solid", color="black", weight=3]; 977[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];977 -> 981[label="",style="solid", color="black", weight=3]; 978[label="Succ (Succ (primPlusNat xx3300 xx4000000))",fontsize=16,color="green",shape="box"];978 -> 982[label="",style="dashed", color="green", weight=3]; 979[label="Succ xx3300",fontsize=16,color="green",shape="box"];980[label="Succ xx4000000",fontsize=16,color="green",shape="box"];981[label="Zero",fontsize=16,color="green",shape="box"];982 -> 971[label="",style="dashed", color="red", weight=0]; 982[label="primPlusNat xx3300 xx4000000",fontsize=16,color="magenta"];982 -> 983[label="",style="dashed", color="magenta", weight=3]; 982 -> 984[label="",style="dashed", color="magenta", weight=3]; 983[label="xx4000000",fontsize=16,color="green",shape="box"];984[label="xx3300",fontsize=16,color="green",shape="box"];} ---------------------------------------- (12) Complex Obligation (AND) ---------------------------------------- (13) Obligation: Q DP problem: The TRS P consists of the following rules: new_foldr(xx4, :(xx30, xx31), ba) -> new_foldr(xx4, xx31, ba) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (14) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_foldr(xx4, :(xx30, xx31), ba) -> new_foldr(xx4, xx31, ba) The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3 ---------------------------------------- (15) YES ---------------------------------------- (16) Obligation: Q DP problem: The TRS P consists of the following rules: new_esEs(:(xx3010, xx3011), :(xx4010, xx4011), app(app(app(ty_@3, bc), bd), be)) -> new_esEs1(xx3010, xx4010, bc, bd, be) new_esEs2(Left(xx3000), Left(xx4000), app(app(ty_@2, hh), baa), bh) -> new_esEs3(xx3000, xx4000, hh, baa) new_esEs2(Left(xx3000), Left(xx4000), app(app(app(ty_@3, hb), hc), hd), bh) -> new_esEs1(xx3000, xx4000, hb, hc, hd) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(ty_Maybe, bcd), cb) -> new_esEs0(xx3000, xx4000, bcd) new_esEs2(Right(xx3000), Right(xx4000), bg, app(app(ty_Either, bag), bah)) -> new_esEs2(xx3000, xx4000, bag, bah) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), ca, app(app(ty_Either, bbh), bca)) -> new_esEs2(xx3001, xx4001, bbh, bca) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, bd, app(app(ty_Either, eb), ec)) -> new_esEs2(xx3002, xx4002, eb, ec) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(app(app(ty_@3, ga), gb), gc), bd, be) -> new_esEs1(xx3000, xx4000, ga, gb, gc) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), ca, app(ty_Maybe, bbc)) -> new_esEs0(xx3001, xx4001, bbc) new_esEs(:(xx3010, xx3011), :(xx4010, xx4011), ba) -> new_esEs(xx3011, xx4011, ba) new_esEs(:(xx3010, xx3011), :(xx4010, xx4011), app(app(ty_@2, ca), cb)) -> new_esEs3(xx3010, xx4010, ca, cb) new_esEs0(Just(xx3000), Just(xx4000), app(app(app(ty_@3, cd), ce), cf)) -> new_esEs1(xx3000, xx4000, cd, ce, cf) new_esEs0(Just(xx3000), Just(xx4000), app(app(ty_Either, da), db)) -> new_esEs2(xx3000, xx4000, da, db) new_esEs0(Just(xx3000), Just(xx4000), app(ty_[], cg)) -> new_esEs(xx3000, xx4000, cg) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(app(ty_Either, ge), gf), bd, be) -> new_esEs2(xx3000, xx4000, ge, gf) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), ca, app(app(app(ty_@3, bbd), bbe), bbf)) -> new_esEs1(xx3001, xx4001, bbd, bbe, bbf) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, app(ty_Maybe, ef), be) -> new_esEs0(xx3001, xx4001, ef) new_esEs2(Left(xx3000), Left(xx4000), app(ty_Maybe, ha), bh) -> new_esEs0(xx3000, xx4000, ha) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(app(app(ty_@3, bce), bcf), bcg), cb) -> new_esEs1(xx3000, xx4000, bce, bcf, bcg) new_esEs(:(xx3010, xx3011), :(xx4010, xx4011), app(ty_[], bf)) -> new_esEs(xx3010, xx4010, bf) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(app(ty_Either, bda), bdb), cb) -> new_esEs2(xx3000, xx4000, bda, bdb) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, bd, app(ty_Maybe, de)) -> new_esEs0(xx3002, xx4002, de) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), ca, app(app(ty_@2, bcb), bcc)) -> new_esEs3(xx3001, xx4001, bcb, bcc) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(ty_Maybe, fh), bd, be) -> new_esEs0(xx3000, xx4000, fh) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, app(app(ty_Either, fc), fd), be) -> new_esEs2(xx3001, xx4001, fc, fd) new_esEs2(Left(xx3000), Left(xx4000), app(app(ty_Either, hf), hg), bh) -> new_esEs2(xx3000, xx4000, hf, hg) new_esEs(:(xx3010, xx3011), :(xx4010, xx4011), app(app(ty_Either, bg), bh)) -> new_esEs2(xx3010, xx4010, bg, bh) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, bd, app(app(app(ty_@3, df), dg), dh)) -> new_esEs1(xx3002, xx4002, df, dg, dh) new_esEs2(Right(xx3000), Right(xx4000), bg, app(ty_[], baf)) -> new_esEs(xx3000, xx4000, baf) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(app(ty_@2, bdc), bdd), cb) -> new_esEs3(xx3000, xx4000, bdc, bdd) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), ca, app(ty_[], bbg)) -> new_esEs(xx3001, xx4001, bbg) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, bd, app(app(ty_@2, ed), ee)) -> new_esEs3(xx3002, xx4002, ed, ee) new_esEs2(Right(xx3000), Right(xx4000), bg, app(app(ty_@2, bba), bbb)) -> new_esEs3(xx3000, xx4000, bba, bbb) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(ty_[], bch), cb) -> new_esEs(xx3000, xx4000, bch) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, bd, app(ty_[], ea)) -> new_esEs(xx3002, xx4002, ea) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, app(app(ty_@2, ff), fg), be) -> new_esEs3(xx3001, xx4001, ff, fg) new_esEs0(Just(xx3000), Just(xx4000), app(app(ty_@2, dc), dd)) -> new_esEs3(xx3000, xx4000, dc, dd) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, app(ty_[], fb), be) -> new_esEs(xx3001, xx4001, fb) new_esEs0(Just(xx3000), Just(xx4000), app(ty_Maybe, cc)) -> new_esEs0(xx3000, xx4000, cc) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(app(ty_@2, gg), gh), bd, be) -> new_esEs3(xx3000, xx4000, gg, gh) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, app(app(app(ty_@3, eg), eh), fa), be) -> new_esEs1(xx3001, xx4001, eg, eh, fa) new_esEs2(Right(xx3000), Right(xx4000), bg, app(ty_Maybe, bab)) -> new_esEs0(xx3000, xx4000, bab) new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(ty_[], gd), bd, be) -> new_esEs(xx3000, xx4000, gd) new_esEs(:(xx3010, xx3011), :(xx4010, xx4011), app(ty_Maybe, bb)) -> new_esEs0(xx3010, xx4010, bb) new_esEs2(Left(xx3000), Left(xx4000), app(ty_[], he), bh) -> new_esEs(xx3000, xx4000, he) new_esEs2(Right(xx3000), Right(xx4000), bg, app(app(app(ty_@3, bac), bad), bae)) -> new_esEs1(xx3000, xx4000, bac, bad, bae) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (17) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_esEs0(Just(xx3000), Just(xx4000), app(ty_[], cg)) -> new_esEs(xx3000, xx4000, cg) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs0(Just(xx3000), Just(xx4000), app(app(ty_Either, da), db)) -> new_esEs2(xx3000, xx4000, da, db) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs0(Just(xx3000), Just(xx4000), app(app(ty_@2, dc), dd)) -> new_esEs3(xx3000, xx4000, dc, dd) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs(:(xx3010, xx3011), :(xx4010, xx4011), app(app(ty_Either, bg), bh)) -> new_esEs2(xx3010, xx4010, bg, bh) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs(:(xx3010, xx3011), :(xx4010, xx4011), app(app(ty_@2, ca), cb)) -> new_esEs3(xx3010, xx4010, ca, cb) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs0(Just(xx3000), Just(xx4000), app(app(app(ty_@3, cd), ce), cf)) -> new_esEs1(xx3000, xx4000, cd, ce, cf) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5 *new_esEs0(Just(xx3000), Just(xx4000), app(ty_Maybe, cc)) -> new_esEs0(xx3000, xx4000, cc) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs(:(xx3010, xx3011), :(xx4010, xx4011), app(app(app(ty_@3, bc), bd), be)) -> new_esEs1(xx3010, xx4010, bc, bd, be) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5 *new_esEs(:(xx3010, xx3011), :(xx4010, xx4011), app(ty_Maybe, bb)) -> new_esEs0(xx3010, xx4010, bb) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, bd, app(ty_[], ea)) -> new_esEs(xx3002, xx4002, ea) The graph contains the following edges 1 > 1, 2 > 2, 5 > 3 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, app(ty_[], fb), be) -> new_esEs(xx3001, xx4001, fb) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(ty_[], gd), bd, be) -> new_esEs(xx3000, xx4000, gd) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, bd, app(app(ty_Either, eb), ec)) -> new_esEs2(xx3002, xx4002, eb, ec) The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(app(ty_Either, ge), gf), bd, be) -> new_esEs2(xx3000, xx4000, ge, gf) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, app(app(ty_Either, fc), fd), be) -> new_esEs2(xx3001, xx4001, fc, fd) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, bd, app(app(ty_@2, ed), ee)) -> new_esEs3(xx3002, xx4002, ed, ee) The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, app(app(ty_@2, ff), fg), be) -> new_esEs3(xx3001, xx4001, ff, fg) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(app(ty_@2, gg), gh), bd, be) -> new_esEs3(xx3000, xx4000, gg, gh) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(app(app(ty_@3, ga), gb), gc), bd, be) -> new_esEs1(xx3000, xx4000, ga, gb, gc) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, bd, app(app(app(ty_@3, df), dg), dh)) -> new_esEs1(xx3002, xx4002, df, dg, dh) The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4, 5 > 5 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, app(app(app(ty_@3, eg), eh), fa), be) -> new_esEs1(xx3001, xx4001, eg, eh, fa) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, app(ty_Maybe, ef), be) -> new_esEs0(xx3001, xx4001, ef) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, bd, app(ty_Maybe, de)) -> new_esEs0(xx3002, xx4002, de) The graph contains the following edges 1 > 1, 2 > 2, 5 > 3 *new_esEs1(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(ty_Maybe, fh), bd, be) -> new_esEs0(xx3000, xx4000, fh) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), ca, app(ty_[], bbg)) -> new_esEs(xx3001, xx4001, bbg) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(ty_[], bch), cb) -> new_esEs(xx3000, xx4000, bch) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs2(Right(xx3000), Right(xx4000), bg, app(ty_[], baf)) -> new_esEs(xx3000, xx4000, baf) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3 *new_esEs2(Left(xx3000), Left(xx4000), app(ty_[], he), bh) -> new_esEs(xx3000, xx4000, he) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs(:(xx3010, xx3011), :(xx4010, xx4011), ba) -> new_esEs(xx3011, xx4011, ba) The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3 *new_esEs(:(xx3010, xx3011), :(xx4010, xx4011), app(ty_[], bf)) -> new_esEs(xx3010, xx4010, bf) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), ca, app(app(ty_Either, bbh), bca)) -> new_esEs2(xx3001, xx4001, bbh, bca) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(app(ty_Either, bda), bdb), cb) -> new_esEs2(xx3000, xx4000, bda, bdb) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), ca, app(app(ty_@2, bcb), bcc)) -> new_esEs3(xx3001, xx4001, bcb, bcc) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(app(ty_@2, bdc), bdd), cb) -> new_esEs3(xx3000, xx4000, bdc, bdd) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), ca, app(app(app(ty_@3, bbd), bbe), bbf)) -> new_esEs1(xx3001, xx4001, bbd, bbe, bbf) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(app(app(ty_@3, bce), bcf), bcg), cb) -> new_esEs1(xx3000, xx4000, bce, bcf, bcg) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(ty_Maybe, bcd), cb) -> new_esEs0(xx3000, xx4000, bcd) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), ca, app(ty_Maybe, bbc)) -> new_esEs0(xx3001, xx4001, bbc) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3 *new_esEs2(Right(xx3000), Right(xx4000), bg, app(app(ty_Either, bag), bah)) -> new_esEs2(xx3000, xx4000, bag, bah) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4 *new_esEs2(Left(xx3000), Left(xx4000), app(app(ty_Either, hf), hg), bh) -> new_esEs2(xx3000, xx4000, hf, hg) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs2(Left(xx3000), Left(xx4000), app(app(ty_@2, hh), baa), bh) -> new_esEs3(xx3000, xx4000, hh, baa) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs2(Right(xx3000), Right(xx4000), bg, app(app(ty_@2, bba), bbb)) -> new_esEs3(xx3000, xx4000, bba, bbb) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4 *new_esEs2(Left(xx3000), Left(xx4000), app(app(app(ty_@3, hb), hc), hd), bh) -> new_esEs1(xx3000, xx4000, hb, hc, hd) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5 *new_esEs2(Right(xx3000), Right(xx4000), bg, app(app(app(ty_@3, bac), bad), bae)) -> new_esEs1(xx3000, xx4000, bac, bad, bae) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5 *new_esEs2(Left(xx3000), Left(xx4000), app(ty_Maybe, ha), bh) -> new_esEs0(xx3000, xx4000, ha) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs2(Right(xx3000), Right(xx4000), bg, app(ty_Maybe, bab)) -> new_esEs0(xx3000, xx4000, bab) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3 ---------------------------------------- (18) YES ---------------------------------------- (19) Obligation: Q DP problem: The TRS P consists of the following rules: new_psPs0(:(xx300, xx301), :([], xx41), xx5, bb) -> new_psPs(xx300, xx301, False, xx41, xx5, bb) new_psPs0(:(xx300, xx301), :(:(xx400, xx401), xx41), xx5, bb) -> new_psPs(xx300, xx301, new_asAs(new_esEs5(xx300, xx400, bb), new_esEs4(xx301, xx401, bb)), xx41, xx5, bb) new_psPs(xx13, xx14, False, xx17, xx18, ba) -> new_psPs0(:(xx13, xx14), xx17, xx18, ba) new_psPs0([], :(:(xx400, xx401), xx41), xx5, bb) -> new_psPs0([], xx41, xx5, bb) The TRS R consists of the following rules: new_esEs14(Just(xx3000), Just(xx4000), app(app(app(ty_@3, ga), gb), gc)) -> new_esEs9(xx3000, xx4000, ga, gb, gc) new_esEs20(Left(xx3000), Left(xx4000), app(app(app(ty_@3, baa), bab), bac), hd) -> new_esEs9(xx3000, xx4000, baa, bab, bac) new_primEqInt(Pos(Zero), Pos(Zero)) -> True new_esEs24(xx3000, xx4000, ty_Integer) -> new_esEs7(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), ty_Float, hd) -> new_esEs18(xx3000, xx4000) new_esEs12(xx3000, xx4000, ty_Ordering) -> new_esEs16(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_Double) -> new_esEs17(xx3000, xx4000) new_esEs19(False, True) -> False new_esEs19(True, False) -> False new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Ordering) -> new_esEs16(xx3000, xx4000) new_esEs22(xx3010, xx4010, ty_Char) -> new_esEs15(xx3010, xx4010) new_esEs14(Just(xx3000), Just(xx4000), ty_Ordering) -> new_esEs16(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), ty_Ordering, hd) -> new_esEs16(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), app(app(ty_Either, bae), baf), hd) -> new_esEs20(xx3000, xx4000, bae, baf) new_esEs5(xx300, xx400, ty_Integer) -> new_esEs7(xx300, xx400) new_esEs11(xx3001, xx4001, ty_Double) -> new_esEs17(xx3001, xx4001) new_esEs4(:(xx3010, xx3011), :(xx4010, xx4011), bb) -> new_asAs(new_esEs22(xx3010, xx4010, bb), new_esEs4(xx3011, xx4011, bb)) new_esEs11(xx3001, xx4001, app(ty_Maybe, db)) -> new_esEs14(xx3001, xx4001, db) new_esEs22(xx3010, xx4010, ty_Int) -> new_esEs8(xx3010, xx4010) new_esEs16(GT, GT) -> True new_esEs10(xx3002, xx4002, app(ty_Ratio, bf)) -> new_esEs13(xx3002, xx4002, bf) new_esEs26(xx3000, xx4000, app(app(ty_Either, bec), bed)) -> new_esEs20(xx3000, xx4000, bec, bed) new_esEs10(xx3002, xx4002, ty_Float) -> new_esEs18(xx3002, xx4002) new_esEs22(xx3010, xx4010, app(ty_[], hb)) -> new_esEs4(xx3010, xx4010, hb) new_esEs5(xx300, xx400, app(ty_[], hb)) -> new_esEs4(xx300, xx400, hb) new_esEs25(xx3001, xx4001, ty_Float) -> new_esEs18(xx3001, xx4001) new_esEs14(Just(xx3000), Just(xx4000), app(ty_[], gd)) -> new_esEs4(xx3000, xx4000, gd) new_esEs20(Left(xx3000), Left(xx4000), app(ty_Maybe, hh), hd) -> new_esEs14(xx3000, xx4000, hh) new_esEs25(xx3001, xx4001, app(ty_Ratio, bcc)) -> new_esEs13(xx3001, xx4001, bcc) new_esEs14(Just(xx3000), Just(xx4000), ty_Int) -> new_esEs8(xx3000, xx4000) new_asAs(True, xx32) -> xx32 new_esEs5(xx300, xx400, app(app(ty_Either, hc), hd)) -> new_esEs20(xx300, xx400, hc, hd) new_esEs11(xx3001, xx4001, ty_@0) -> new_esEs6(xx3001, xx4001) new_esEs10(xx3002, xx4002, ty_Ordering) -> new_esEs16(xx3002, xx4002) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Int) -> new_esEs8(xx3000, xx4000) new_esEs5(xx300, xx400, ty_Char) -> new_esEs15(xx300, xx400) new_esEs22(xx3010, xx4010, ty_Integer) -> new_esEs7(xx3010, xx4010) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Char) -> new_esEs15(xx3000, xx4000) new_esEs20(Right(xx3000), Right(xx4000), hc, app(ty_Maybe, bbb)) -> new_esEs14(xx3000, xx4000, bbb) new_esEs26(xx3000, xx4000, app(app(ty_@2, bee), bef)) -> new_esEs21(xx3000, xx4000, bee, bef) new_primEqInt(Pos(Succ(xx30000)), Pos(Zero)) -> False new_primEqInt(Pos(Zero), Pos(Succ(xx40000))) -> False new_esEs5(xx300, xx400, app(app(ty_@2, he), hf)) -> new_esEs21(xx300, xx400, he, hf) new_esEs26(xx3000, xx4000, app(ty_Maybe, bdf)) -> new_esEs14(xx3000, xx4000, bdf) new_esEs14(Just(xx3000), Just(xx4000), app(app(ty_@2, gg), gh)) -> new_esEs21(xx3000, xx4000, gg, gh) new_esEs26(xx3000, xx4000, ty_Char) -> new_esEs15(xx3000, xx4000) new_esEs14(Just(xx3000), Just(xx4000), ty_Char) -> new_esEs15(xx3000, xx4000) new_esEs11(xx3001, xx4001, ty_Integer) -> new_esEs7(xx3001, xx4001) new_esEs12(xx3000, xx4000, app(app(app(ty_@3, ee), ef), eg)) -> new_esEs9(xx3000, xx4000, ee, ef, eg) new_esEs12(xx3000, xx4000, ty_Char) -> new_esEs15(xx3000, xx4000) new_primEqNat0(Succ(xx30000), Succ(xx40000)) -> new_primEqNat0(xx30000, xx40000) new_esEs22(xx3010, xx4010, ty_Float) -> new_esEs18(xx3010, xx4010) new_esEs12(xx3000, xx4000, app(app(ty_@2, fc), fd)) -> new_esEs21(xx3000, xx4000, fc, fd) new_esEs22(xx3010, xx4010, app(ty_Ratio, ha)) -> new_esEs13(xx3010, xx4010, ha) new_esEs13(:%(xx3000, xx3001), :%(xx4000, xx4001), ha) -> new_asAs(new_esEs24(xx3000, xx4000, ha), new_esEs23(xx3001, xx4001, ha)) new_esEs24(xx3000, xx4000, ty_Int) -> new_esEs8(xx3000, xx4000) new_esEs16(EQ, GT) -> False new_esEs16(GT, EQ) -> False new_esEs5(xx300, xx400, app(ty_Maybe, ff)) -> new_esEs14(xx300, xx400, ff) new_esEs11(xx3001, xx4001, app(ty_[], df)) -> new_esEs4(xx3001, xx4001, df) new_esEs22(xx3010, xx4010, ty_Double) -> new_esEs17(xx3010, xx4010) new_esEs11(xx3001, xx4001, ty_Int) -> new_esEs8(xx3001, xx4001) new_primMulNat0(Zero, Zero) -> Zero new_esEs11(xx3001, xx4001, app(app(ty_@2, ea), eb)) -> new_esEs21(xx3001, xx4001, ea, eb) new_esEs5(xx300, xx400, app(app(app(ty_@3, bc), bd), be)) -> new_esEs9(xx300, xx400, bc, bd, be) new_esEs10(xx3002, xx4002, ty_Bool) -> new_esEs19(xx3002, xx4002) new_esEs21(@2(xx3000, xx3001), @2(xx4000, xx4001), he, hf) -> new_asAs(new_esEs26(xx3000, xx4000, he), new_esEs25(xx3001, xx4001, hf)) new_esEs20(Left(xx3000), Left(xx4000), ty_Integer, hd) -> new_esEs7(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), ty_Char, hd) -> new_esEs15(xx3000, xx4000) new_esEs12(xx3000, xx4000, ty_Int) -> new_esEs8(xx3000, xx4000) new_esEs12(xx3000, xx4000, app(ty_[], eh)) -> new_esEs4(xx3000, xx4000, eh) new_primEqNat0(Succ(xx30000), Zero) -> False new_primEqNat0(Zero, Succ(xx40000)) -> False new_esEs10(xx3002, xx4002, app(app(ty_@2, cf), cg)) -> new_esEs21(xx3002, xx4002, cf, cg) new_esEs10(xx3002, xx4002, app(app(app(ty_@3, bh), ca), cb)) -> new_esEs9(xx3002, xx4002, bh, ca, cb) new_esEs25(xx3001, xx4001, app(ty_Maybe, bcd)) -> new_esEs14(xx3001, xx4001, bcd) new_esEs26(xx3000, xx4000, ty_@0) -> new_esEs6(xx3000, xx4000) new_esEs16(LT, EQ) -> False new_esEs16(EQ, LT) -> False new_esEs20(Left(xx3000), Left(xx4000), ty_@0, hd) -> new_esEs6(xx3000, xx4000) new_esEs5(xx300, xx400, app(ty_Ratio, ha)) -> new_esEs13(xx300, xx400, ha) new_esEs26(xx3000, xx4000, ty_Integer) -> new_esEs7(xx3000, xx4000) new_esEs14(Just(xx3000), Just(xx4000), app(ty_Ratio, fg)) -> new_esEs13(xx3000, xx4000, fg) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Float) -> new_esEs18(xx3000, xx4000) new_esEs5(xx300, xx400, ty_Int) -> new_esEs8(xx300, xx400) new_esEs22(xx3010, xx4010, app(app(app(ty_@3, bc), bd), be)) -> new_esEs9(xx3010, xx4010, bc, bd, be) new_esEs12(xx3000, xx4000, ty_Double) -> new_esEs17(xx3000, xx4000) new_primEqInt(Neg(Succ(xx30000)), Neg(Zero)) -> False new_primEqInt(Neg(Zero), Neg(Succ(xx40000))) -> False new_esEs19(False, False) -> True new_esEs25(xx3001, xx4001, app(app(ty_Either, bda), bdb)) -> new_esEs20(xx3001, xx4001, bda, bdb) new_esEs10(xx3002, xx4002, ty_Integer) -> new_esEs7(xx3002, xx4002) new_primEqInt(Pos(Succ(xx30000)), Pos(Succ(xx40000))) -> new_primEqNat0(xx30000, xx40000) new_esEs11(xx3001, xx4001, app(app(app(ty_@3, dc), dd), de)) -> new_esEs9(xx3001, xx4001, dc, dd, de) new_esEs5(xx300, xx400, ty_Double) -> new_esEs17(xx300, xx400) new_esEs18(Float(xx3000, xx3001), Float(xx4000, xx4001)) -> new_esEs8(new_sr(xx3000, xx4001), new_sr(xx3001, xx4000)) new_esEs10(xx3002, xx4002, ty_@0) -> new_esEs6(xx3002, xx4002) new_esEs12(xx3000, xx4000, app(ty_Ratio, ec)) -> new_esEs13(xx3000, xx4000, ec) new_sr(Pos(xx30010), Neg(xx40000)) -> Neg(new_primMulNat0(xx30010, xx40000)) new_sr(Neg(xx30010), Pos(xx40000)) -> Neg(new_primMulNat0(xx30010, xx40000)) new_esEs22(xx3010, xx4010, app(app(ty_@2, he), hf)) -> new_esEs21(xx3010, xx4010, he, hf) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Integer) -> new_esEs7(xx3000, xx4000) new_primPlusNat1(Succ(xx3300), Succ(xx4000000)) -> Succ(Succ(new_primPlusNat1(xx3300, xx4000000))) new_esEs11(xx3001, xx4001, ty_Bool) -> new_esEs19(xx3001, xx4001) new_primEqInt(Pos(Succ(xx30000)), Neg(xx4000)) -> False new_primEqInt(Neg(Succ(xx30000)), Pos(xx4000)) -> False new_esEs26(xx3000, xx4000, ty_Float) -> new_esEs18(xx3000, xx4000) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_@0) -> new_esEs6(xx3000, xx4000) new_esEs16(EQ, EQ) -> True new_esEs25(xx3001, xx4001, ty_Ordering) -> new_esEs16(xx3001, xx4001) new_esEs25(xx3001, xx4001, ty_Char) -> new_esEs15(xx3001, xx4001) new_esEs20(Right(xx3000), Right(xx4000), hc, app(app(app(ty_@3, bbc), bbd), bbe)) -> new_esEs9(xx3000, xx4000, bbc, bbd, bbe) new_esEs8(xx300, xx400) -> new_primEqInt(xx300, xx400) new_esEs11(xx3001, xx4001, app(ty_Ratio, da)) -> new_esEs13(xx3001, xx4001, da) new_esEs10(xx3002, xx4002, ty_Double) -> new_esEs17(xx3002, xx4002) new_esEs14(Just(xx3000), Just(xx4000), app(ty_Maybe, fh)) -> new_esEs14(xx3000, xx4000, fh) new_esEs23(xx3001, xx4001, ty_Int) -> new_esEs8(xx3001, xx4001) new_esEs20(Left(xx3000), Left(xx4000), app(ty_[], bad), hd) -> new_esEs4(xx3000, xx4000, bad) new_esEs10(xx3002, xx4002, app(app(ty_Either, cd), ce)) -> new_esEs20(xx3002, xx4002, cd, ce) new_sr(Neg(xx30010), Neg(xx40000)) -> Pos(new_primMulNat0(xx30010, xx40000)) new_esEs14(Just(xx3000), Just(xx4000), ty_Bool) -> new_esEs19(xx3000, xx4000) new_esEs11(xx3001, xx4001, ty_Float) -> new_esEs18(xx3001, xx4001) new_esEs22(xx3010, xx4010, ty_Bool) -> new_esEs19(xx3010, xx4010) new_esEs20(Left(xx3000), Left(xx4000), ty_Double, hd) -> new_esEs17(xx3000, xx4000) new_esEs22(xx3010, xx4010, ty_@0) -> new_esEs6(xx3010, xx4010) new_esEs12(xx3000, xx4000, app(ty_Maybe, ed)) -> new_esEs14(xx3000, xx4000, ed) new_esEs12(xx3000, xx4000, ty_@0) -> new_esEs6(xx3000, xx4000) new_primEqInt(Pos(Zero), Neg(Succ(xx40000))) -> False new_primEqInt(Neg(Zero), Pos(Succ(xx40000))) -> False new_esEs16(LT, LT) -> True new_esEs23(xx3001, xx4001, ty_Integer) -> new_esEs7(xx3001, xx4001) new_esEs25(xx3001, xx4001, ty_Double) -> new_esEs17(xx3001, xx4001) new_esEs12(xx3000, xx4000, ty_Bool) -> new_esEs19(xx3000, xx4000) new_esEs20(Right(xx3000), Right(xx4000), hc, app(app(ty_Either, bbg), bbh)) -> new_esEs20(xx3000, xx4000, bbg, bbh) new_primEqInt(Neg(Succ(xx30000)), Neg(Succ(xx40000))) -> new_primEqNat0(xx30000, xx40000) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Double) -> new_esEs17(xx3000, xx4000) new_primPlusNat0(Succ(xx330), xx400000) -> Succ(Succ(new_primPlusNat1(xx330, xx400000))) new_esEs12(xx3000, xx4000, app(app(ty_Either, fa), fb)) -> new_esEs20(xx3000, xx4000, fa, fb) new_esEs5(xx300, xx400, ty_Bool) -> new_esEs19(xx300, xx400) new_esEs20(Left(xx3000), Left(xx4000), ty_Bool, hd) -> new_esEs19(xx3000, xx4000) new_esEs14(Just(xx3000), Just(xx4000), ty_Double) -> new_esEs17(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_Ordering) -> new_esEs16(xx3000, xx4000) new_esEs26(xx3000, xx4000, app(app(app(ty_@3, bdg), bdh), bea)) -> new_esEs9(xx3000, xx4000, bdg, bdh, bea) new_esEs9(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, bd, be) -> new_asAs(new_esEs12(xx3000, xx4000, bc), new_asAs(new_esEs11(xx3001, xx4001, bd), new_esEs10(xx3002, xx4002, be))) new_esEs20(Right(xx3000), Right(xx4000), hc, app(app(ty_@2, bca), bcb)) -> new_esEs21(xx3000, xx4000, bca, bcb) new_esEs25(xx3001, xx4001, ty_Integer) -> new_esEs7(xx3001, xx4001) new_esEs6(@0, @0) -> True new_primPlusNat1(Zero, Zero) -> Zero new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Bool) -> new_esEs19(xx3000, xx4000) new_primMulNat0(Succ(xx300100), Zero) -> Zero new_primMulNat0(Zero, Succ(xx400000)) -> Zero new_esEs10(xx3002, xx4002, app(ty_[], cc)) -> new_esEs4(xx3002, xx4002, cc) new_sr(Pos(xx30010), Pos(xx40000)) -> Pos(new_primMulNat0(xx30010, xx40000)) new_primPlusNat0(Zero, xx400000) -> Succ(xx400000) new_esEs14(Just(xx3000), Just(xx4000), app(app(ty_Either, ge), gf)) -> new_esEs20(xx3000, xx4000, ge, gf) new_esEs10(xx3002, xx4002, ty_Int) -> new_esEs8(xx3002, xx4002) new_esEs17(Double(xx3000, xx3001), Double(xx4000, xx4001)) -> new_esEs8(new_sr(xx3000, xx4001), new_sr(xx3001, xx4000)) new_esEs12(xx3000, xx4000, ty_Integer) -> new_esEs7(xx3000, xx4000) new_esEs22(xx3010, xx4010, app(app(ty_Either, hc), hd)) -> new_esEs20(xx3010, xx4010, hc, hd) new_esEs26(xx3000, xx4000, ty_Bool) -> new_esEs19(xx3000, xx4000) new_esEs25(xx3001, xx4001, app(app(app(ty_@3, bce), bcf), bcg)) -> new_esEs9(xx3001, xx4001, bce, bcf, bcg) new_primEqInt(Neg(Zero), Neg(Zero)) -> True new_esEs11(xx3001, xx4001, ty_Char) -> new_esEs15(xx3001, xx4001) new_primMulNat0(Succ(xx300100), Succ(xx400000)) -> new_primPlusNat0(new_primMulNat0(xx300100, Succ(xx400000)), xx400000) new_esEs5(xx300, xx400, ty_Ordering) -> new_esEs16(xx300, xx400) new_esEs25(xx3001, xx4001, ty_@0) -> new_esEs6(xx3001, xx4001) new_esEs16(LT, GT) -> False new_esEs16(GT, LT) -> False new_esEs20(Left(xx3000), Left(xx4000), app(ty_Ratio, hg), hd) -> new_esEs13(xx3000, xx4000, hg) new_esEs4(:(xx3010, xx3011), [], bb) -> False new_esEs4([], :(xx4010, xx4011), bb) -> False new_esEs14(Nothing, Just(xx4000), ff) -> False new_esEs14(Just(xx3000), Nothing, ff) -> False new_primPlusNat1(Succ(xx3300), Zero) -> Succ(xx3300) new_primPlusNat1(Zero, Succ(xx4000000)) -> Succ(xx4000000) new_esEs26(xx3000, xx4000, ty_Int) -> new_esEs8(xx3000, xx4000) new_esEs14(Nothing, Nothing, ff) -> True new_esEs10(xx3002, xx4002, ty_Char) -> new_esEs15(xx3002, xx4002) new_esEs5(xx300, xx400, ty_@0) -> new_esEs6(xx300, xx400) new_esEs20(Left(xx3000), Left(xx4000), ty_Int, hd) -> new_esEs8(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), app(app(ty_@2, bag), bah), hd) -> new_esEs21(xx3000, xx4000, bag, bah) new_primEqInt(Pos(Zero), Neg(Zero)) -> True new_primEqInt(Neg(Zero), Pos(Zero)) -> True new_esEs20(Right(xx3000), Right(xx4000), hc, app(ty_Ratio, bba)) -> new_esEs13(xx3000, xx4000, bba) new_esEs26(xx3000, xx4000, app(ty_[], beb)) -> new_esEs4(xx3000, xx4000, beb) new_esEs25(xx3001, xx4001, app(ty_[], bch)) -> new_esEs4(xx3001, xx4001, bch) new_primEqNat0(Zero, Zero) -> True new_esEs25(xx3001, xx4001, ty_Int) -> new_esEs8(xx3001, xx4001) new_esEs5(xx300, xx400, ty_Float) -> new_esEs18(xx300, xx400) new_esEs14(Just(xx3000), Just(xx4000), ty_Float) -> new_esEs18(xx3000, xx4000) new_esEs15(Char(xx3000), Char(xx4000)) -> new_primEqNat0(xx3000, xx4000) new_esEs4([], [], bb) -> True new_esEs10(xx3002, xx4002, app(ty_Maybe, bg)) -> new_esEs14(xx3002, xx4002, bg) new_esEs22(xx3010, xx4010, ty_Ordering) -> new_esEs16(xx3010, xx4010) new_asAs(False, xx32) -> False new_esEs22(xx3010, xx4010, app(ty_Maybe, ff)) -> new_esEs14(xx3010, xx4010, ff) new_esEs26(xx3000, xx4000, app(ty_Ratio, bde)) -> new_esEs13(xx3000, xx4000, bde) new_esEs14(Just(xx3000), Just(xx4000), ty_Integer) -> new_esEs7(xx3000, xx4000) new_esEs11(xx3001, xx4001, ty_Ordering) -> new_esEs16(xx3001, xx4001) new_esEs25(xx3001, xx4001, app(app(ty_@2, bdc), bdd)) -> new_esEs21(xx3001, xx4001, bdc, bdd) new_esEs11(xx3001, xx4001, app(app(ty_Either, dg), dh)) -> new_esEs20(xx3001, xx4001, dg, dh) new_esEs7(Integer(xx3000), Integer(xx4000)) -> new_primEqInt(xx3000, xx4000) new_esEs14(Just(xx3000), Just(xx4000), ty_@0) -> new_esEs6(xx3000, xx4000) new_esEs20(Left(xx3000), Right(xx4000), hc, hd) -> False new_esEs20(Right(xx3000), Left(xx4000), hc, hd) -> False new_esEs19(True, True) -> True new_esEs20(Right(xx3000), Right(xx4000), hc, app(ty_[], bbf)) -> new_esEs4(xx3000, xx4000, bbf) new_esEs25(xx3001, xx4001, ty_Bool) -> new_esEs19(xx3001, xx4001) new_esEs12(xx3000, xx4000, ty_Float) -> new_esEs18(xx3000, xx4000) The set Q consists of the following terms: new_esEs26(x0, x1, app(app(ty_@2, x2), x3)) new_esEs26(x0, x1, ty_Integer) new_esEs11(x0, x1, ty_Integer) new_esEs15(Char(x0), Char(x1)) new_esEs20(Right(x0), Right(x1), x2, ty_Bool) new_primPlusNat1(Succ(x0), Succ(x1)) new_esEs12(x0, x1, app(ty_Ratio, x2)) new_esEs5(x0, x1, ty_Float) new_esEs22(x0, x1, ty_Ordering) new_primEqInt(Neg(Succ(x0)), Neg(Zero)) new_esEs12(x0, x1, ty_@0) new_primPlusNat1(Zero, Succ(x0)) new_esEs20(Left(x0), Right(x1), x2, x3) new_esEs20(Right(x0), Left(x1), x2, x3) new_esEs22(x0, x1, ty_Int) new_primMulNat0(Zero, Zero) new_primPlusNat1(Zero, Zero) new_esEs5(x0, x1, app(app(ty_Either, x2), x3)) new_esEs22(x0, x1, ty_Double) new_esEs24(x0, x1, ty_Integer) new_esEs12(x0, x1, ty_Bool) new_primPlusNat1(Succ(x0), Zero) new_primPlusNat0(Zero, x0) new_esEs26(x0, x1, app(ty_Maybe, x2)) new_esEs19(False, False) new_esEs20(Right(x0), Right(x1), x2, ty_@0) new_esEs22(x0, x1, app(app(ty_Either, x2), x3)) new_esEs5(x0, x1, ty_Double) new_esEs14(Just(x0), Just(x1), app(ty_[], x2)) new_esEs20(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4) new_primEqInt(Pos(Zero), Pos(Zero)) new_esEs10(x0, x1, ty_Float) new_esEs20(Left(x0), Left(x1), ty_Float, x2) new_esEs4(:(x0, x1), [], x2) new_esEs20(Right(x0), Right(x1), x2, app(ty_Ratio, x3)) new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs5(x0, x1, ty_Int) new_esEs20(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4) new_esEs26(x0, x1, app(ty_[], x2)) new_esEs20(Left(x0), Left(x1), ty_Ordering, x2) new_esEs14(Just(x0), Just(x1), app(ty_Ratio, x2)) new_esEs14(Just(x0), Nothing, x1) new_esEs14(Just(x0), Just(x1), app(ty_Maybe, x2)) new_esEs16(EQ, EQ) new_esEs26(x0, x1, ty_@0) new_esEs10(x0, x1, app(app(ty_@2, x2), x3)) new_sr(Pos(x0), Neg(x1)) new_sr(Neg(x0), Pos(x1)) new_esEs10(x0, x1, ty_Integer) new_esEs25(x0, x1, app(app(ty_Either, x2), x3)) new_primEqInt(Pos(Succ(x0)), Pos(Zero)) new_primEqInt(Neg(Zero), Neg(Zero)) new_esEs5(x0, x1, ty_Ordering) new_esEs12(x0, x1, app(ty_Maybe, x2)) new_esEs23(x0, x1, ty_Int) new_sr(Pos(x0), Pos(x1)) new_esEs10(x0, x1, ty_Int) new_esEs14(Just(x0), Just(x1), ty_Ordering) new_esEs14(Just(x0), Just(x1), app(app(ty_@2, x2), x3)) new_esEs25(x0, x1, ty_Integer) new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1))) new_primPlusNat0(Succ(x0), x1) new_esEs12(x0, x1, ty_Integer) new_esEs5(x0, x1, app(ty_Ratio, x2)) new_esEs10(x0, x1, app(ty_Maybe, x2)) new_esEs11(x0, x1, ty_Bool) new_esEs12(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs22(x0, x1, app(ty_Ratio, x2)) new_primEqInt(Pos(Zero), Neg(Zero)) new_primEqInt(Neg(Zero), Pos(Zero)) new_esEs10(x0, x1, ty_Double) new_esEs11(x0, x1, app(app(ty_@2, x2), x3)) new_esEs14(Nothing, Nothing, x0) new_esEs10(x0, x1, ty_Char) new_esEs22(x0, x1, ty_Integer) new_esEs11(x0, x1, app(ty_Ratio, x2)) new_esEs4([], [], x0) new_esEs11(x0, x1, app(ty_[], x2)) new_esEs20(Right(x0), Right(x1), x2, ty_Integer) new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs20(Left(x0), Left(x1), app(ty_[], x2), x3) new_esEs4(:(x0, x1), :(x2, x3), x4) new_esEs10(x0, x1, ty_Bool) new_esEs6(@0, @0) new_esEs22(x0, x1, app(ty_[], x2)) new_asAs(False, x0) new_esEs25(x0, x1, ty_Ordering) new_esEs20(Left(x0), Left(x1), app(ty_Maybe, x2), x3) new_esEs25(x0, x1, app(ty_[], x2)) new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs19(True, True) new_esEs7(Integer(x0), Integer(x1)) new_esEs14(Nothing, Just(x0), x1) new_esEs9(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8) new_esEs11(x0, x1, app(app(ty_Either, x2), x3)) new_primMulNat0(Zero, Succ(x0)) new_esEs12(x0, x1, app(app(ty_@2, x2), x3)) new_esEs14(Just(x0), Just(x1), ty_Integer) new_esEs25(x0, x1, app(ty_Ratio, x2)) new_esEs24(x0, x1, ty_Int) new_esEs20(Right(x0), Right(x1), x2, ty_Float) new_esEs5(x0, x1, ty_Bool) new_esEs5(x0, x1, app(ty_[], x2)) new_primEqInt(Pos(Succ(x0)), Neg(x1)) new_primEqInt(Neg(Succ(x0)), Pos(x1)) new_primEqInt(Neg(Zero), Neg(Succ(x0))) new_esEs16(LT, GT) new_esEs16(GT, LT) new_esEs12(x0, x1, ty_Double) new_esEs11(x0, x1, ty_Int) new_primEqNat0(Succ(x0), Succ(x1)) new_esEs26(x0, x1, ty_Int) new_esEs12(x0, x1, ty_Ordering) new_esEs26(x0, x1, ty_Char) new_primEqInt(Pos(Zero), Pos(Succ(x0))) new_esEs10(x0, x1, app(ty_Ratio, x2)) new_esEs5(x0, x1, app(ty_Maybe, x2)) new_esEs18(Float(x0, x1), Float(x2, x3)) new_esEs12(x0, x1, ty_Float) new_esEs10(x0, x1, ty_@0) new_esEs8(x0, x1) new_esEs20(Right(x0), Right(x1), x2, ty_Ordering) new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs26(x0, x1, ty_Ordering) new_esEs20(Right(x0), Right(x1), x2, ty_Int) new_esEs20(Left(x0), Left(x1), ty_Char, x2) new_esEs22(x0, x1, app(ty_Maybe, x2)) new_esEs20(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5)) new_esEs4([], :(x0, x1), x2) new_esEs11(x0, x1, ty_Ordering) new_esEs10(x0, x1, app(ty_[], x2)) new_esEs14(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4)) new_esEs26(x0, x1, ty_Float) new_esEs14(Just(x0), Just(x1), ty_Char) new_primMulNat0(Succ(x0), Zero) new_esEs19(False, True) new_esEs19(True, False) new_esEs5(x0, x1, ty_Integer) new_esEs25(x0, x1, ty_Bool) new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs12(x0, x1, app(ty_[], x2)) new_esEs20(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4)) new_asAs(True, x0) new_esEs22(x0, x1, ty_Bool) new_esEs11(x0, x1, ty_Double) new_primMulNat0(Succ(x0), Succ(x1)) new_esEs13(:%(x0, x1), :%(x2, x3), x4) new_esEs20(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4)) new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs10(x0, x1, app(app(ty_Either, x2), x3)) new_esEs25(x0, x1, app(app(ty_@2, x2), x3)) new_primEqInt(Pos(Zero), Neg(Succ(x0))) new_primEqInt(Neg(Zero), Pos(Succ(x0))) new_esEs20(Right(x0), Right(x1), x2, ty_Char) new_esEs20(Right(x0), Right(x1), x2, app(ty_Maybe, x3)) new_esEs20(Right(x0), Right(x1), x2, ty_Double) new_esEs14(Just(x0), Just(x1), ty_Bool) new_primEqNat0(Zero, Succ(x0)) new_esEs11(x0, x1, ty_Char) new_esEs5(x0, x1, ty_@0) new_primEqNat0(Succ(x0), Zero) new_esEs20(Left(x0), Left(x1), ty_@0, x2) new_primEqNat0(Zero, Zero) new_esEs12(x0, x1, ty_Char) new_esEs23(x0, x1, ty_Integer) new_esEs17(Double(x0, x1), Double(x2, x3)) new_esEs20(Left(x0), Left(x1), ty_Int, x2) new_esEs16(LT, LT) new_esEs26(x0, x1, app(app(ty_Either, x2), x3)) new_esEs20(Right(x0), Right(x1), x2, app(ty_[], x3)) new_esEs5(x0, x1, ty_Char) new_esEs20(Left(x0), Left(x1), ty_Integer, x2) new_esEs20(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5) new_esEs14(Just(x0), Just(x1), ty_Double) new_esEs26(x0, x1, ty_Double) new_esEs14(Just(x0), Just(x1), ty_Int) new_esEs11(x0, x1, ty_@0) new_esEs5(x0, x1, app(app(ty_@2, x2), x3)) new_esEs26(x0, x1, app(ty_Ratio, x2)) new_esEs22(x0, x1, app(app(ty_@2, x2), x3)) new_esEs22(x0, x1, ty_Char) new_esEs16(EQ, GT) new_esEs16(GT, EQ) new_esEs10(x0, x1, ty_Ordering) new_esEs20(Left(x0), Left(x1), ty_Double, x2) new_esEs25(x0, x1, ty_Double) new_esEs22(x0, x1, ty_@0) new_esEs26(x0, x1, ty_Bool) new_esEs25(x0, x1, ty_Float) new_esEs25(x0, x1, ty_Char) new_esEs14(Just(x0), Just(x1), ty_@0) new_esEs11(x0, x1, ty_Float) new_esEs11(x0, x1, app(ty_Maybe, x2)) new_esEs20(Left(x0), Left(x1), ty_Bool, x2) new_esEs14(Just(x0), Just(x1), app(app(ty_Either, x2), x3)) new_sr(Neg(x0), Neg(x1)) new_esEs20(Left(x0), Left(x1), app(ty_Ratio, x2), x3) new_esEs14(Just(x0), Just(x1), ty_Float) new_esEs16(LT, EQ) new_esEs16(EQ, LT) new_esEs22(x0, x1, ty_Float) new_esEs25(x0, x1, ty_Int) new_esEs12(x0, x1, ty_Int) new_esEs21(@2(x0, x1), @2(x2, x3), x4, x5) new_esEs25(x0, x1, app(ty_Maybe, x2)) new_esEs25(x0, x1, ty_@0) new_esEs12(x0, x1, app(app(ty_Either, x2), x3)) new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1))) new_esEs16(GT, GT) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (20) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. ---------------------------------------- (21) Complex Obligation (AND) ---------------------------------------- (22) Obligation: Q DP problem: The TRS P consists of the following rules: new_psPs0([], :(:(xx400, xx401), xx41), xx5, bb) -> new_psPs0([], xx41, xx5, bb) The TRS R consists of the following rules: new_esEs14(Just(xx3000), Just(xx4000), app(app(app(ty_@3, ga), gb), gc)) -> new_esEs9(xx3000, xx4000, ga, gb, gc) new_esEs20(Left(xx3000), Left(xx4000), app(app(app(ty_@3, baa), bab), bac), hd) -> new_esEs9(xx3000, xx4000, baa, bab, bac) new_primEqInt(Pos(Zero), Pos(Zero)) -> True new_esEs24(xx3000, xx4000, ty_Integer) -> new_esEs7(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), ty_Float, hd) -> new_esEs18(xx3000, xx4000) new_esEs12(xx3000, xx4000, ty_Ordering) -> new_esEs16(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_Double) -> new_esEs17(xx3000, xx4000) new_esEs19(False, True) -> False new_esEs19(True, False) -> False new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Ordering) -> new_esEs16(xx3000, xx4000) new_esEs22(xx3010, xx4010, ty_Char) -> new_esEs15(xx3010, xx4010) new_esEs14(Just(xx3000), Just(xx4000), ty_Ordering) -> new_esEs16(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), ty_Ordering, hd) -> new_esEs16(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), app(app(ty_Either, bae), baf), hd) -> new_esEs20(xx3000, xx4000, bae, baf) new_esEs5(xx300, xx400, ty_Integer) -> new_esEs7(xx300, xx400) new_esEs11(xx3001, xx4001, ty_Double) -> new_esEs17(xx3001, xx4001) new_esEs4(:(xx3010, xx3011), :(xx4010, xx4011), bb) -> new_asAs(new_esEs22(xx3010, xx4010, bb), new_esEs4(xx3011, xx4011, bb)) new_esEs11(xx3001, xx4001, app(ty_Maybe, db)) -> new_esEs14(xx3001, xx4001, db) new_esEs22(xx3010, xx4010, ty_Int) -> new_esEs8(xx3010, xx4010) new_esEs16(GT, GT) -> True new_esEs10(xx3002, xx4002, app(ty_Ratio, bf)) -> new_esEs13(xx3002, xx4002, bf) new_esEs26(xx3000, xx4000, app(app(ty_Either, bec), bed)) -> new_esEs20(xx3000, xx4000, bec, bed) new_esEs10(xx3002, xx4002, ty_Float) -> new_esEs18(xx3002, xx4002) new_esEs22(xx3010, xx4010, app(ty_[], hb)) -> new_esEs4(xx3010, xx4010, hb) new_esEs5(xx300, xx400, app(ty_[], hb)) -> new_esEs4(xx300, xx400, hb) new_esEs25(xx3001, xx4001, ty_Float) -> new_esEs18(xx3001, xx4001) new_esEs14(Just(xx3000), Just(xx4000), app(ty_[], gd)) -> new_esEs4(xx3000, xx4000, gd) new_esEs20(Left(xx3000), Left(xx4000), app(ty_Maybe, hh), hd) -> new_esEs14(xx3000, xx4000, hh) new_esEs25(xx3001, xx4001, app(ty_Ratio, bcc)) -> new_esEs13(xx3001, xx4001, bcc) new_esEs14(Just(xx3000), Just(xx4000), ty_Int) -> new_esEs8(xx3000, xx4000) new_asAs(True, xx32) -> xx32 new_esEs5(xx300, xx400, app(app(ty_Either, hc), hd)) -> new_esEs20(xx300, xx400, hc, hd) new_esEs11(xx3001, xx4001, ty_@0) -> new_esEs6(xx3001, xx4001) new_esEs10(xx3002, xx4002, ty_Ordering) -> new_esEs16(xx3002, xx4002) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Int) -> new_esEs8(xx3000, xx4000) new_esEs5(xx300, xx400, ty_Char) -> new_esEs15(xx300, xx400) new_esEs22(xx3010, xx4010, ty_Integer) -> new_esEs7(xx3010, xx4010) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Char) -> new_esEs15(xx3000, xx4000) new_esEs20(Right(xx3000), Right(xx4000), hc, app(ty_Maybe, bbb)) -> new_esEs14(xx3000, xx4000, bbb) new_esEs26(xx3000, xx4000, app(app(ty_@2, bee), bef)) -> new_esEs21(xx3000, xx4000, bee, bef) new_primEqInt(Pos(Succ(xx30000)), Pos(Zero)) -> False new_primEqInt(Pos(Zero), Pos(Succ(xx40000))) -> False new_esEs5(xx300, xx400, app(app(ty_@2, he), hf)) -> new_esEs21(xx300, xx400, he, hf) new_esEs26(xx3000, xx4000, app(ty_Maybe, bdf)) -> new_esEs14(xx3000, xx4000, bdf) new_esEs14(Just(xx3000), Just(xx4000), app(app(ty_@2, gg), gh)) -> new_esEs21(xx3000, xx4000, gg, gh) new_esEs26(xx3000, xx4000, ty_Char) -> new_esEs15(xx3000, xx4000) new_esEs14(Just(xx3000), Just(xx4000), ty_Char) -> new_esEs15(xx3000, xx4000) new_esEs11(xx3001, xx4001, ty_Integer) -> new_esEs7(xx3001, xx4001) new_esEs12(xx3000, xx4000, app(app(app(ty_@3, ee), ef), eg)) -> new_esEs9(xx3000, xx4000, ee, ef, eg) new_esEs12(xx3000, xx4000, ty_Char) -> new_esEs15(xx3000, xx4000) new_primEqNat0(Succ(xx30000), Succ(xx40000)) -> new_primEqNat0(xx30000, xx40000) new_esEs22(xx3010, xx4010, ty_Float) -> new_esEs18(xx3010, xx4010) new_esEs12(xx3000, xx4000, app(app(ty_@2, fc), fd)) -> new_esEs21(xx3000, xx4000, fc, fd) new_esEs22(xx3010, xx4010, app(ty_Ratio, ha)) -> new_esEs13(xx3010, xx4010, ha) new_esEs13(:%(xx3000, xx3001), :%(xx4000, xx4001), ha) -> new_asAs(new_esEs24(xx3000, xx4000, ha), new_esEs23(xx3001, xx4001, ha)) new_esEs24(xx3000, xx4000, ty_Int) -> new_esEs8(xx3000, xx4000) new_esEs16(EQ, GT) -> False new_esEs16(GT, EQ) -> False new_esEs5(xx300, xx400, app(ty_Maybe, ff)) -> new_esEs14(xx300, xx400, ff) new_esEs11(xx3001, xx4001, app(ty_[], df)) -> new_esEs4(xx3001, xx4001, df) new_esEs22(xx3010, xx4010, ty_Double) -> new_esEs17(xx3010, xx4010) new_esEs11(xx3001, xx4001, ty_Int) -> new_esEs8(xx3001, xx4001) new_primMulNat0(Zero, Zero) -> Zero new_esEs11(xx3001, xx4001, app(app(ty_@2, ea), eb)) -> new_esEs21(xx3001, xx4001, ea, eb) new_esEs5(xx300, xx400, app(app(app(ty_@3, bc), bd), be)) -> new_esEs9(xx300, xx400, bc, bd, be) new_esEs10(xx3002, xx4002, ty_Bool) -> new_esEs19(xx3002, xx4002) new_esEs21(@2(xx3000, xx3001), @2(xx4000, xx4001), he, hf) -> new_asAs(new_esEs26(xx3000, xx4000, he), new_esEs25(xx3001, xx4001, hf)) new_esEs20(Left(xx3000), Left(xx4000), ty_Integer, hd) -> new_esEs7(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), ty_Char, hd) -> new_esEs15(xx3000, xx4000) new_esEs12(xx3000, xx4000, ty_Int) -> new_esEs8(xx3000, xx4000) new_esEs12(xx3000, xx4000, app(ty_[], eh)) -> new_esEs4(xx3000, xx4000, eh) new_primEqNat0(Succ(xx30000), Zero) -> False new_primEqNat0(Zero, Succ(xx40000)) -> False new_esEs10(xx3002, xx4002, app(app(ty_@2, cf), cg)) -> new_esEs21(xx3002, xx4002, cf, cg) new_esEs10(xx3002, xx4002, app(app(app(ty_@3, bh), ca), cb)) -> new_esEs9(xx3002, xx4002, bh, ca, cb) new_esEs25(xx3001, xx4001, app(ty_Maybe, bcd)) -> new_esEs14(xx3001, xx4001, bcd) new_esEs26(xx3000, xx4000, ty_@0) -> new_esEs6(xx3000, xx4000) new_esEs16(LT, EQ) -> False new_esEs16(EQ, LT) -> False new_esEs20(Left(xx3000), Left(xx4000), ty_@0, hd) -> new_esEs6(xx3000, xx4000) new_esEs5(xx300, xx400, app(ty_Ratio, ha)) -> new_esEs13(xx300, xx400, ha) new_esEs26(xx3000, xx4000, ty_Integer) -> new_esEs7(xx3000, xx4000) new_esEs14(Just(xx3000), Just(xx4000), app(ty_Ratio, fg)) -> new_esEs13(xx3000, xx4000, fg) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Float) -> new_esEs18(xx3000, xx4000) new_esEs5(xx300, xx400, ty_Int) -> new_esEs8(xx300, xx400) new_esEs22(xx3010, xx4010, app(app(app(ty_@3, bc), bd), be)) -> new_esEs9(xx3010, xx4010, bc, bd, be) new_esEs12(xx3000, xx4000, ty_Double) -> new_esEs17(xx3000, xx4000) new_primEqInt(Neg(Succ(xx30000)), Neg(Zero)) -> False new_primEqInt(Neg(Zero), Neg(Succ(xx40000))) -> False new_esEs19(False, False) -> True new_esEs25(xx3001, xx4001, app(app(ty_Either, bda), bdb)) -> new_esEs20(xx3001, xx4001, bda, bdb) new_esEs10(xx3002, xx4002, ty_Integer) -> new_esEs7(xx3002, xx4002) new_primEqInt(Pos(Succ(xx30000)), Pos(Succ(xx40000))) -> new_primEqNat0(xx30000, xx40000) new_esEs11(xx3001, xx4001, app(app(app(ty_@3, dc), dd), de)) -> new_esEs9(xx3001, xx4001, dc, dd, de) new_esEs5(xx300, xx400, ty_Double) -> new_esEs17(xx300, xx400) new_esEs18(Float(xx3000, xx3001), Float(xx4000, xx4001)) -> new_esEs8(new_sr(xx3000, xx4001), new_sr(xx3001, xx4000)) new_esEs10(xx3002, xx4002, ty_@0) -> new_esEs6(xx3002, xx4002) new_esEs12(xx3000, xx4000, app(ty_Ratio, ec)) -> new_esEs13(xx3000, xx4000, ec) new_sr(Pos(xx30010), Neg(xx40000)) -> Neg(new_primMulNat0(xx30010, xx40000)) new_sr(Neg(xx30010), Pos(xx40000)) -> Neg(new_primMulNat0(xx30010, xx40000)) new_esEs22(xx3010, xx4010, app(app(ty_@2, he), hf)) -> new_esEs21(xx3010, xx4010, he, hf) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Integer) -> new_esEs7(xx3000, xx4000) new_primPlusNat1(Succ(xx3300), Succ(xx4000000)) -> Succ(Succ(new_primPlusNat1(xx3300, xx4000000))) new_esEs11(xx3001, xx4001, ty_Bool) -> new_esEs19(xx3001, xx4001) new_primEqInt(Pos(Succ(xx30000)), Neg(xx4000)) -> False new_primEqInt(Neg(Succ(xx30000)), Pos(xx4000)) -> False new_esEs26(xx3000, xx4000, ty_Float) -> new_esEs18(xx3000, xx4000) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_@0) -> new_esEs6(xx3000, xx4000) new_esEs16(EQ, EQ) -> True new_esEs25(xx3001, xx4001, ty_Ordering) -> new_esEs16(xx3001, xx4001) new_esEs25(xx3001, xx4001, ty_Char) -> new_esEs15(xx3001, xx4001) new_esEs20(Right(xx3000), Right(xx4000), hc, app(app(app(ty_@3, bbc), bbd), bbe)) -> new_esEs9(xx3000, xx4000, bbc, bbd, bbe) new_esEs8(xx300, xx400) -> new_primEqInt(xx300, xx400) new_esEs11(xx3001, xx4001, app(ty_Ratio, da)) -> new_esEs13(xx3001, xx4001, da) new_esEs10(xx3002, xx4002, ty_Double) -> new_esEs17(xx3002, xx4002) new_esEs14(Just(xx3000), Just(xx4000), app(ty_Maybe, fh)) -> new_esEs14(xx3000, xx4000, fh) new_esEs23(xx3001, xx4001, ty_Int) -> new_esEs8(xx3001, xx4001) new_esEs20(Left(xx3000), Left(xx4000), app(ty_[], bad), hd) -> new_esEs4(xx3000, xx4000, bad) new_esEs10(xx3002, xx4002, app(app(ty_Either, cd), ce)) -> new_esEs20(xx3002, xx4002, cd, ce) new_sr(Neg(xx30010), Neg(xx40000)) -> Pos(new_primMulNat0(xx30010, xx40000)) new_esEs14(Just(xx3000), Just(xx4000), ty_Bool) -> new_esEs19(xx3000, xx4000) new_esEs11(xx3001, xx4001, ty_Float) -> new_esEs18(xx3001, xx4001) new_esEs22(xx3010, xx4010, ty_Bool) -> new_esEs19(xx3010, xx4010) new_esEs20(Left(xx3000), Left(xx4000), ty_Double, hd) -> new_esEs17(xx3000, xx4000) new_esEs22(xx3010, xx4010, ty_@0) -> new_esEs6(xx3010, xx4010) new_esEs12(xx3000, xx4000, app(ty_Maybe, ed)) -> new_esEs14(xx3000, xx4000, ed) new_esEs12(xx3000, xx4000, ty_@0) -> new_esEs6(xx3000, xx4000) new_primEqInt(Pos(Zero), Neg(Succ(xx40000))) -> False new_primEqInt(Neg(Zero), Pos(Succ(xx40000))) -> False new_esEs16(LT, LT) -> True new_esEs23(xx3001, xx4001, ty_Integer) -> new_esEs7(xx3001, xx4001) new_esEs25(xx3001, xx4001, ty_Double) -> new_esEs17(xx3001, xx4001) new_esEs12(xx3000, xx4000, ty_Bool) -> new_esEs19(xx3000, xx4000) new_esEs20(Right(xx3000), Right(xx4000), hc, app(app(ty_Either, bbg), bbh)) -> new_esEs20(xx3000, xx4000, bbg, bbh) new_primEqInt(Neg(Succ(xx30000)), Neg(Succ(xx40000))) -> new_primEqNat0(xx30000, xx40000) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Double) -> new_esEs17(xx3000, xx4000) new_primPlusNat0(Succ(xx330), xx400000) -> Succ(Succ(new_primPlusNat1(xx330, xx400000))) new_esEs12(xx3000, xx4000, app(app(ty_Either, fa), fb)) -> new_esEs20(xx3000, xx4000, fa, fb) new_esEs5(xx300, xx400, ty_Bool) -> new_esEs19(xx300, xx400) new_esEs20(Left(xx3000), Left(xx4000), ty_Bool, hd) -> new_esEs19(xx3000, xx4000) new_esEs14(Just(xx3000), Just(xx4000), ty_Double) -> new_esEs17(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_Ordering) -> new_esEs16(xx3000, xx4000) new_esEs26(xx3000, xx4000, app(app(app(ty_@3, bdg), bdh), bea)) -> new_esEs9(xx3000, xx4000, bdg, bdh, bea) new_esEs9(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, bd, be) -> new_asAs(new_esEs12(xx3000, xx4000, bc), new_asAs(new_esEs11(xx3001, xx4001, bd), new_esEs10(xx3002, xx4002, be))) new_esEs20(Right(xx3000), Right(xx4000), hc, app(app(ty_@2, bca), bcb)) -> new_esEs21(xx3000, xx4000, bca, bcb) new_esEs25(xx3001, xx4001, ty_Integer) -> new_esEs7(xx3001, xx4001) new_esEs6(@0, @0) -> True new_primPlusNat1(Zero, Zero) -> Zero new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Bool) -> new_esEs19(xx3000, xx4000) new_primMulNat0(Succ(xx300100), Zero) -> Zero new_primMulNat0(Zero, Succ(xx400000)) -> Zero new_esEs10(xx3002, xx4002, app(ty_[], cc)) -> new_esEs4(xx3002, xx4002, cc) new_sr(Pos(xx30010), Pos(xx40000)) -> Pos(new_primMulNat0(xx30010, xx40000)) new_primPlusNat0(Zero, xx400000) -> Succ(xx400000) new_esEs14(Just(xx3000), Just(xx4000), app(app(ty_Either, ge), gf)) -> new_esEs20(xx3000, xx4000, ge, gf) new_esEs10(xx3002, xx4002, ty_Int) -> new_esEs8(xx3002, xx4002) new_esEs17(Double(xx3000, xx3001), Double(xx4000, xx4001)) -> new_esEs8(new_sr(xx3000, xx4001), new_sr(xx3001, xx4000)) new_esEs12(xx3000, xx4000, ty_Integer) -> new_esEs7(xx3000, xx4000) new_esEs22(xx3010, xx4010, app(app(ty_Either, hc), hd)) -> new_esEs20(xx3010, xx4010, hc, hd) new_esEs26(xx3000, xx4000, ty_Bool) -> new_esEs19(xx3000, xx4000) new_esEs25(xx3001, xx4001, app(app(app(ty_@3, bce), bcf), bcg)) -> new_esEs9(xx3001, xx4001, bce, bcf, bcg) new_primEqInt(Neg(Zero), Neg(Zero)) -> True new_esEs11(xx3001, xx4001, ty_Char) -> new_esEs15(xx3001, xx4001) new_primMulNat0(Succ(xx300100), Succ(xx400000)) -> new_primPlusNat0(new_primMulNat0(xx300100, Succ(xx400000)), xx400000) new_esEs5(xx300, xx400, ty_Ordering) -> new_esEs16(xx300, xx400) new_esEs25(xx3001, xx4001, ty_@0) -> new_esEs6(xx3001, xx4001) new_esEs16(LT, GT) -> False new_esEs16(GT, LT) -> False new_esEs20(Left(xx3000), Left(xx4000), app(ty_Ratio, hg), hd) -> new_esEs13(xx3000, xx4000, hg) new_esEs4(:(xx3010, xx3011), [], bb) -> False new_esEs4([], :(xx4010, xx4011), bb) -> False new_esEs14(Nothing, Just(xx4000), ff) -> False new_esEs14(Just(xx3000), Nothing, ff) -> False new_primPlusNat1(Succ(xx3300), Zero) -> Succ(xx3300) new_primPlusNat1(Zero, Succ(xx4000000)) -> Succ(xx4000000) new_esEs26(xx3000, xx4000, ty_Int) -> new_esEs8(xx3000, xx4000) new_esEs14(Nothing, Nothing, ff) -> True new_esEs10(xx3002, xx4002, ty_Char) -> new_esEs15(xx3002, xx4002) new_esEs5(xx300, xx400, ty_@0) -> new_esEs6(xx300, xx400) new_esEs20(Left(xx3000), Left(xx4000), ty_Int, hd) -> new_esEs8(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), app(app(ty_@2, bag), bah), hd) -> new_esEs21(xx3000, xx4000, bag, bah) new_primEqInt(Pos(Zero), Neg(Zero)) -> True new_primEqInt(Neg(Zero), Pos(Zero)) -> True new_esEs20(Right(xx3000), Right(xx4000), hc, app(ty_Ratio, bba)) -> new_esEs13(xx3000, xx4000, bba) new_esEs26(xx3000, xx4000, app(ty_[], beb)) -> new_esEs4(xx3000, xx4000, beb) new_esEs25(xx3001, xx4001, app(ty_[], bch)) -> new_esEs4(xx3001, xx4001, bch) new_primEqNat0(Zero, Zero) -> True new_esEs25(xx3001, xx4001, ty_Int) -> new_esEs8(xx3001, xx4001) new_esEs5(xx300, xx400, ty_Float) -> new_esEs18(xx300, xx400) new_esEs14(Just(xx3000), Just(xx4000), ty_Float) -> new_esEs18(xx3000, xx4000) new_esEs15(Char(xx3000), Char(xx4000)) -> new_primEqNat0(xx3000, xx4000) new_esEs4([], [], bb) -> True new_esEs10(xx3002, xx4002, app(ty_Maybe, bg)) -> new_esEs14(xx3002, xx4002, bg) new_esEs22(xx3010, xx4010, ty_Ordering) -> new_esEs16(xx3010, xx4010) new_asAs(False, xx32) -> False new_esEs22(xx3010, xx4010, app(ty_Maybe, ff)) -> new_esEs14(xx3010, xx4010, ff) new_esEs26(xx3000, xx4000, app(ty_Ratio, bde)) -> new_esEs13(xx3000, xx4000, bde) new_esEs14(Just(xx3000), Just(xx4000), ty_Integer) -> new_esEs7(xx3000, xx4000) new_esEs11(xx3001, xx4001, ty_Ordering) -> new_esEs16(xx3001, xx4001) new_esEs25(xx3001, xx4001, app(app(ty_@2, bdc), bdd)) -> new_esEs21(xx3001, xx4001, bdc, bdd) new_esEs11(xx3001, xx4001, app(app(ty_Either, dg), dh)) -> new_esEs20(xx3001, xx4001, dg, dh) new_esEs7(Integer(xx3000), Integer(xx4000)) -> new_primEqInt(xx3000, xx4000) new_esEs14(Just(xx3000), Just(xx4000), ty_@0) -> new_esEs6(xx3000, xx4000) new_esEs20(Left(xx3000), Right(xx4000), hc, hd) -> False new_esEs20(Right(xx3000), Left(xx4000), hc, hd) -> False new_esEs19(True, True) -> True new_esEs20(Right(xx3000), Right(xx4000), hc, app(ty_[], bbf)) -> new_esEs4(xx3000, xx4000, bbf) new_esEs25(xx3001, xx4001, ty_Bool) -> new_esEs19(xx3001, xx4001) new_esEs12(xx3000, xx4000, ty_Float) -> new_esEs18(xx3000, xx4000) The set Q consists of the following terms: new_esEs26(x0, x1, app(app(ty_@2, x2), x3)) new_esEs26(x0, x1, ty_Integer) new_esEs11(x0, x1, ty_Integer) new_esEs15(Char(x0), Char(x1)) new_esEs20(Right(x0), Right(x1), x2, ty_Bool) new_primPlusNat1(Succ(x0), Succ(x1)) new_esEs12(x0, x1, app(ty_Ratio, x2)) new_esEs5(x0, x1, ty_Float) new_esEs22(x0, x1, ty_Ordering) new_primEqInt(Neg(Succ(x0)), Neg(Zero)) new_esEs12(x0, x1, ty_@0) new_primPlusNat1(Zero, Succ(x0)) new_esEs20(Left(x0), Right(x1), x2, x3) new_esEs20(Right(x0), Left(x1), x2, x3) new_esEs22(x0, x1, ty_Int) new_primMulNat0(Zero, Zero) new_primPlusNat1(Zero, Zero) new_esEs5(x0, x1, app(app(ty_Either, x2), x3)) new_esEs22(x0, x1, ty_Double) new_esEs24(x0, x1, ty_Integer) new_esEs12(x0, x1, ty_Bool) new_primPlusNat1(Succ(x0), Zero) new_primPlusNat0(Zero, x0) new_esEs26(x0, x1, app(ty_Maybe, x2)) new_esEs19(False, False) new_esEs20(Right(x0), Right(x1), x2, ty_@0) new_esEs22(x0, x1, app(app(ty_Either, x2), x3)) new_esEs5(x0, x1, ty_Double) new_esEs14(Just(x0), Just(x1), app(ty_[], x2)) new_esEs20(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4) new_primEqInt(Pos(Zero), Pos(Zero)) new_esEs10(x0, x1, ty_Float) new_esEs20(Left(x0), Left(x1), ty_Float, x2) new_esEs4(:(x0, x1), [], x2) new_esEs20(Right(x0), Right(x1), x2, app(ty_Ratio, x3)) new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs5(x0, x1, ty_Int) new_esEs20(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4) new_esEs26(x0, x1, app(ty_[], x2)) new_esEs20(Left(x0), Left(x1), ty_Ordering, x2) new_esEs14(Just(x0), Just(x1), app(ty_Ratio, x2)) new_esEs14(Just(x0), Nothing, x1) new_esEs14(Just(x0), Just(x1), app(ty_Maybe, x2)) new_esEs16(EQ, EQ) new_esEs26(x0, x1, ty_@0) new_esEs10(x0, x1, app(app(ty_@2, x2), x3)) new_sr(Pos(x0), Neg(x1)) new_sr(Neg(x0), Pos(x1)) new_esEs10(x0, x1, ty_Integer) new_esEs25(x0, x1, app(app(ty_Either, x2), x3)) new_primEqInt(Pos(Succ(x0)), Pos(Zero)) new_primEqInt(Neg(Zero), Neg(Zero)) new_esEs5(x0, x1, ty_Ordering) new_esEs12(x0, x1, app(ty_Maybe, x2)) new_esEs23(x0, x1, ty_Int) new_sr(Pos(x0), Pos(x1)) new_esEs10(x0, x1, ty_Int) new_esEs14(Just(x0), Just(x1), ty_Ordering) new_esEs14(Just(x0), Just(x1), app(app(ty_@2, x2), x3)) new_esEs25(x0, x1, ty_Integer) new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1))) new_primPlusNat0(Succ(x0), x1) new_esEs12(x0, x1, ty_Integer) new_esEs5(x0, x1, app(ty_Ratio, x2)) new_esEs10(x0, x1, app(ty_Maybe, x2)) new_esEs11(x0, x1, ty_Bool) new_esEs12(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs22(x0, x1, app(ty_Ratio, x2)) new_primEqInt(Pos(Zero), Neg(Zero)) new_primEqInt(Neg(Zero), Pos(Zero)) new_esEs10(x0, x1, ty_Double) new_esEs11(x0, x1, app(app(ty_@2, x2), x3)) new_esEs14(Nothing, Nothing, x0) new_esEs10(x0, x1, ty_Char) new_esEs22(x0, x1, ty_Integer) new_esEs11(x0, x1, app(ty_Ratio, x2)) new_esEs4([], [], x0) new_esEs11(x0, x1, app(ty_[], x2)) new_esEs20(Right(x0), Right(x1), x2, ty_Integer) new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs20(Left(x0), Left(x1), app(ty_[], x2), x3) new_esEs4(:(x0, x1), :(x2, x3), x4) new_esEs10(x0, x1, ty_Bool) new_esEs6(@0, @0) new_esEs22(x0, x1, app(ty_[], x2)) new_asAs(False, x0) new_esEs25(x0, x1, ty_Ordering) new_esEs20(Left(x0), Left(x1), app(ty_Maybe, x2), x3) new_esEs25(x0, x1, app(ty_[], x2)) new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs19(True, True) new_esEs7(Integer(x0), Integer(x1)) new_esEs14(Nothing, Just(x0), x1) new_esEs9(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8) new_esEs11(x0, x1, app(app(ty_Either, x2), x3)) new_primMulNat0(Zero, Succ(x0)) new_esEs12(x0, x1, app(app(ty_@2, x2), x3)) new_esEs14(Just(x0), Just(x1), ty_Integer) new_esEs25(x0, x1, app(ty_Ratio, x2)) new_esEs24(x0, x1, ty_Int) new_esEs20(Right(x0), Right(x1), x2, ty_Float) new_esEs5(x0, x1, ty_Bool) new_esEs5(x0, x1, app(ty_[], x2)) new_primEqInt(Pos(Succ(x0)), Neg(x1)) new_primEqInt(Neg(Succ(x0)), Pos(x1)) new_primEqInt(Neg(Zero), Neg(Succ(x0))) new_esEs16(LT, GT) new_esEs16(GT, LT) new_esEs12(x0, x1, ty_Double) new_esEs11(x0, x1, ty_Int) new_primEqNat0(Succ(x0), Succ(x1)) new_esEs26(x0, x1, ty_Int) new_esEs12(x0, x1, ty_Ordering) new_esEs26(x0, x1, ty_Char) new_primEqInt(Pos(Zero), Pos(Succ(x0))) new_esEs10(x0, x1, app(ty_Ratio, x2)) new_esEs5(x0, x1, app(ty_Maybe, x2)) new_esEs18(Float(x0, x1), Float(x2, x3)) new_esEs12(x0, x1, ty_Float) new_esEs10(x0, x1, ty_@0) new_esEs8(x0, x1) new_esEs20(Right(x0), Right(x1), x2, ty_Ordering) new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs26(x0, x1, ty_Ordering) new_esEs20(Right(x0), Right(x1), x2, ty_Int) new_esEs20(Left(x0), Left(x1), ty_Char, x2) new_esEs22(x0, x1, app(ty_Maybe, x2)) new_esEs20(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5)) new_esEs4([], :(x0, x1), x2) new_esEs11(x0, x1, ty_Ordering) new_esEs10(x0, x1, app(ty_[], x2)) new_esEs14(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4)) new_esEs26(x0, x1, ty_Float) new_esEs14(Just(x0), Just(x1), ty_Char) new_primMulNat0(Succ(x0), Zero) new_esEs19(False, True) new_esEs19(True, False) new_esEs5(x0, x1, ty_Integer) new_esEs25(x0, x1, ty_Bool) new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs12(x0, x1, app(ty_[], x2)) new_esEs20(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4)) new_asAs(True, x0) new_esEs22(x0, x1, ty_Bool) new_esEs11(x0, x1, ty_Double) new_primMulNat0(Succ(x0), Succ(x1)) new_esEs13(:%(x0, x1), :%(x2, x3), x4) new_esEs20(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4)) new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs10(x0, x1, app(app(ty_Either, x2), x3)) new_esEs25(x0, x1, app(app(ty_@2, x2), x3)) new_primEqInt(Pos(Zero), Neg(Succ(x0))) new_primEqInt(Neg(Zero), Pos(Succ(x0))) new_esEs20(Right(x0), Right(x1), x2, ty_Char) new_esEs20(Right(x0), Right(x1), x2, app(ty_Maybe, x3)) new_esEs20(Right(x0), Right(x1), x2, ty_Double) new_esEs14(Just(x0), Just(x1), ty_Bool) new_primEqNat0(Zero, Succ(x0)) new_esEs11(x0, x1, ty_Char) new_esEs5(x0, x1, ty_@0) new_primEqNat0(Succ(x0), Zero) new_esEs20(Left(x0), Left(x1), ty_@0, x2) new_primEqNat0(Zero, Zero) new_esEs12(x0, x1, ty_Char) new_esEs23(x0, x1, ty_Integer) new_esEs17(Double(x0, x1), Double(x2, x3)) new_esEs20(Left(x0), Left(x1), ty_Int, x2) new_esEs16(LT, LT) new_esEs26(x0, x1, app(app(ty_Either, x2), x3)) new_esEs20(Right(x0), Right(x1), x2, app(ty_[], x3)) new_esEs5(x0, x1, ty_Char) new_esEs20(Left(x0), Left(x1), ty_Integer, x2) new_esEs20(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5) new_esEs14(Just(x0), Just(x1), ty_Double) new_esEs26(x0, x1, ty_Double) new_esEs14(Just(x0), Just(x1), ty_Int) new_esEs11(x0, x1, ty_@0) new_esEs5(x0, x1, app(app(ty_@2, x2), x3)) new_esEs26(x0, x1, app(ty_Ratio, x2)) new_esEs22(x0, x1, app(app(ty_@2, x2), x3)) new_esEs22(x0, x1, ty_Char) new_esEs16(EQ, GT) new_esEs16(GT, EQ) new_esEs10(x0, x1, ty_Ordering) new_esEs20(Left(x0), Left(x1), ty_Double, x2) new_esEs25(x0, x1, ty_Double) new_esEs22(x0, x1, ty_@0) new_esEs26(x0, x1, ty_Bool) new_esEs25(x0, x1, ty_Float) new_esEs25(x0, x1, ty_Char) new_esEs14(Just(x0), Just(x1), ty_@0) new_esEs11(x0, x1, ty_Float) new_esEs11(x0, x1, app(ty_Maybe, x2)) new_esEs20(Left(x0), Left(x1), ty_Bool, x2) new_esEs14(Just(x0), Just(x1), app(app(ty_Either, x2), x3)) new_sr(Neg(x0), Neg(x1)) new_esEs20(Left(x0), Left(x1), app(ty_Ratio, x2), x3) new_esEs14(Just(x0), Just(x1), ty_Float) new_esEs16(LT, EQ) new_esEs16(EQ, LT) new_esEs22(x0, x1, ty_Float) new_esEs25(x0, x1, ty_Int) new_esEs12(x0, x1, ty_Int) new_esEs21(@2(x0, x1), @2(x2, x3), x4, x5) new_esEs25(x0, x1, app(ty_Maybe, x2)) new_esEs25(x0, x1, ty_@0) new_esEs12(x0, x1, app(app(ty_Either, x2), x3)) new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1))) new_esEs16(GT, GT) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (23) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_psPs0([], :(:(xx400, xx401), xx41), xx5, bb) -> new_psPs0([], xx41, xx5, bb) The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3, 4 >= 4 ---------------------------------------- (24) YES ---------------------------------------- (25) Obligation: Q DP problem: The TRS P consists of the following rules: new_psPs(xx13, xx14, False, xx17, xx18, ba) -> new_psPs0(:(xx13, xx14), xx17, xx18, ba) new_psPs0(:(xx300, xx301), :([], xx41), xx5, bb) -> new_psPs(xx300, xx301, False, xx41, xx5, bb) new_psPs0(:(xx300, xx301), :(:(xx400, xx401), xx41), xx5, bb) -> new_psPs(xx300, xx301, new_asAs(new_esEs5(xx300, xx400, bb), new_esEs4(xx301, xx401, bb)), xx41, xx5, bb) The TRS R consists of the following rules: new_esEs14(Just(xx3000), Just(xx4000), app(app(app(ty_@3, ga), gb), gc)) -> new_esEs9(xx3000, xx4000, ga, gb, gc) new_esEs20(Left(xx3000), Left(xx4000), app(app(app(ty_@3, baa), bab), bac), hd) -> new_esEs9(xx3000, xx4000, baa, bab, bac) new_primEqInt(Pos(Zero), Pos(Zero)) -> True new_esEs24(xx3000, xx4000, ty_Integer) -> new_esEs7(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), ty_Float, hd) -> new_esEs18(xx3000, xx4000) new_esEs12(xx3000, xx4000, ty_Ordering) -> new_esEs16(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_Double) -> new_esEs17(xx3000, xx4000) new_esEs19(False, True) -> False new_esEs19(True, False) -> False new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Ordering) -> new_esEs16(xx3000, xx4000) new_esEs22(xx3010, xx4010, ty_Char) -> new_esEs15(xx3010, xx4010) new_esEs14(Just(xx3000), Just(xx4000), ty_Ordering) -> new_esEs16(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), ty_Ordering, hd) -> new_esEs16(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), app(app(ty_Either, bae), baf), hd) -> new_esEs20(xx3000, xx4000, bae, baf) new_esEs5(xx300, xx400, ty_Integer) -> new_esEs7(xx300, xx400) new_esEs11(xx3001, xx4001, ty_Double) -> new_esEs17(xx3001, xx4001) new_esEs4(:(xx3010, xx3011), :(xx4010, xx4011), bb) -> new_asAs(new_esEs22(xx3010, xx4010, bb), new_esEs4(xx3011, xx4011, bb)) new_esEs11(xx3001, xx4001, app(ty_Maybe, db)) -> new_esEs14(xx3001, xx4001, db) new_esEs22(xx3010, xx4010, ty_Int) -> new_esEs8(xx3010, xx4010) new_esEs16(GT, GT) -> True new_esEs10(xx3002, xx4002, app(ty_Ratio, bf)) -> new_esEs13(xx3002, xx4002, bf) new_esEs26(xx3000, xx4000, app(app(ty_Either, bec), bed)) -> new_esEs20(xx3000, xx4000, bec, bed) new_esEs10(xx3002, xx4002, ty_Float) -> new_esEs18(xx3002, xx4002) new_esEs22(xx3010, xx4010, app(ty_[], hb)) -> new_esEs4(xx3010, xx4010, hb) new_esEs5(xx300, xx400, app(ty_[], hb)) -> new_esEs4(xx300, xx400, hb) new_esEs25(xx3001, xx4001, ty_Float) -> new_esEs18(xx3001, xx4001) new_esEs14(Just(xx3000), Just(xx4000), app(ty_[], gd)) -> new_esEs4(xx3000, xx4000, gd) new_esEs20(Left(xx3000), Left(xx4000), app(ty_Maybe, hh), hd) -> new_esEs14(xx3000, xx4000, hh) new_esEs25(xx3001, xx4001, app(ty_Ratio, bcc)) -> new_esEs13(xx3001, xx4001, bcc) new_esEs14(Just(xx3000), Just(xx4000), ty_Int) -> new_esEs8(xx3000, xx4000) new_asAs(True, xx32) -> xx32 new_esEs5(xx300, xx400, app(app(ty_Either, hc), hd)) -> new_esEs20(xx300, xx400, hc, hd) new_esEs11(xx3001, xx4001, ty_@0) -> new_esEs6(xx3001, xx4001) new_esEs10(xx3002, xx4002, ty_Ordering) -> new_esEs16(xx3002, xx4002) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Int) -> new_esEs8(xx3000, xx4000) new_esEs5(xx300, xx400, ty_Char) -> new_esEs15(xx300, xx400) new_esEs22(xx3010, xx4010, ty_Integer) -> new_esEs7(xx3010, xx4010) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Char) -> new_esEs15(xx3000, xx4000) new_esEs20(Right(xx3000), Right(xx4000), hc, app(ty_Maybe, bbb)) -> new_esEs14(xx3000, xx4000, bbb) new_esEs26(xx3000, xx4000, app(app(ty_@2, bee), bef)) -> new_esEs21(xx3000, xx4000, bee, bef) new_primEqInt(Pos(Succ(xx30000)), Pos(Zero)) -> False new_primEqInt(Pos(Zero), Pos(Succ(xx40000))) -> False new_esEs5(xx300, xx400, app(app(ty_@2, he), hf)) -> new_esEs21(xx300, xx400, he, hf) new_esEs26(xx3000, xx4000, app(ty_Maybe, bdf)) -> new_esEs14(xx3000, xx4000, bdf) new_esEs14(Just(xx3000), Just(xx4000), app(app(ty_@2, gg), gh)) -> new_esEs21(xx3000, xx4000, gg, gh) new_esEs26(xx3000, xx4000, ty_Char) -> new_esEs15(xx3000, xx4000) new_esEs14(Just(xx3000), Just(xx4000), ty_Char) -> new_esEs15(xx3000, xx4000) new_esEs11(xx3001, xx4001, ty_Integer) -> new_esEs7(xx3001, xx4001) new_esEs12(xx3000, xx4000, app(app(app(ty_@3, ee), ef), eg)) -> new_esEs9(xx3000, xx4000, ee, ef, eg) new_esEs12(xx3000, xx4000, ty_Char) -> new_esEs15(xx3000, xx4000) new_primEqNat0(Succ(xx30000), Succ(xx40000)) -> new_primEqNat0(xx30000, xx40000) new_esEs22(xx3010, xx4010, ty_Float) -> new_esEs18(xx3010, xx4010) new_esEs12(xx3000, xx4000, app(app(ty_@2, fc), fd)) -> new_esEs21(xx3000, xx4000, fc, fd) new_esEs22(xx3010, xx4010, app(ty_Ratio, ha)) -> new_esEs13(xx3010, xx4010, ha) new_esEs13(:%(xx3000, xx3001), :%(xx4000, xx4001), ha) -> new_asAs(new_esEs24(xx3000, xx4000, ha), new_esEs23(xx3001, xx4001, ha)) new_esEs24(xx3000, xx4000, ty_Int) -> new_esEs8(xx3000, xx4000) new_esEs16(EQ, GT) -> False new_esEs16(GT, EQ) -> False new_esEs5(xx300, xx400, app(ty_Maybe, ff)) -> new_esEs14(xx300, xx400, ff) new_esEs11(xx3001, xx4001, app(ty_[], df)) -> new_esEs4(xx3001, xx4001, df) new_esEs22(xx3010, xx4010, ty_Double) -> new_esEs17(xx3010, xx4010) new_esEs11(xx3001, xx4001, ty_Int) -> new_esEs8(xx3001, xx4001) new_primMulNat0(Zero, Zero) -> Zero new_esEs11(xx3001, xx4001, app(app(ty_@2, ea), eb)) -> new_esEs21(xx3001, xx4001, ea, eb) new_esEs5(xx300, xx400, app(app(app(ty_@3, bc), bd), be)) -> new_esEs9(xx300, xx400, bc, bd, be) new_esEs10(xx3002, xx4002, ty_Bool) -> new_esEs19(xx3002, xx4002) new_esEs21(@2(xx3000, xx3001), @2(xx4000, xx4001), he, hf) -> new_asAs(new_esEs26(xx3000, xx4000, he), new_esEs25(xx3001, xx4001, hf)) new_esEs20(Left(xx3000), Left(xx4000), ty_Integer, hd) -> new_esEs7(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), ty_Char, hd) -> new_esEs15(xx3000, xx4000) new_esEs12(xx3000, xx4000, ty_Int) -> new_esEs8(xx3000, xx4000) new_esEs12(xx3000, xx4000, app(ty_[], eh)) -> new_esEs4(xx3000, xx4000, eh) new_primEqNat0(Succ(xx30000), Zero) -> False new_primEqNat0(Zero, Succ(xx40000)) -> False new_esEs10(xx3002, xx4002, app(app(ty_@2, cf), cg)) -> new_esEs21(xx3002, xx4002, cf, cg) new_esEs10(xx3002, xx4002, app(app(app(ty_@3, bh), ca), cb)) -> new_esEs9(xx3002, xx4002, bh, ca, cb) new_esEs25(xx3001, xx4001, app(ty_Maybe, bcd)) -> new_esEs14(xx3001, xx4001, bcd) new_esEs26(xx3000, xx4000, ty_@0) -> new_esEs6(xx3000, xx4000) new_esEs16(LT, EQ) -> False new_esEs16(EQ, LT) -> False new_esEs20(Left(xx3000), Left(xx4000), ty_@0, hd) -> new_esEs6(xx3000, xx4000) new_esEs5(xx300, xx400, app(ty_Ratio, ha)) -> new_esEs13(xx300, xx400, ha) new_esEs26(xx3000, xx4000, ty_Integer) -> new_esEs7(xx3000, xx4000) new_esEs14(Just(xx3000), Just(xx4000), app(ty_Ratio, fg)) -> new_esEs13(xx3000, xx4000, fg) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Float) -> new_esEs18(xx3000, xx4000) new_esEs5(xx300, xx400, ty_Int) -> new_esEs8(xx300, xx400) new_esEs22(xx3010, xx4010, app(app(app(ty_@3, bc), bd), be)) -> new_esEs9(xx3010, xx4010, bc, bd, be) new_esEs12(xx3000, xx4000, ty_Double) -> new_esEs17(xx3000, xx4000) new_primEqInt(Neg(Succ(xx30000)), Neg(Zero)) -> False new_primEqInt(Neg(Zero), Neg(Succ(xx40000))) -> False new_esEs19(False, False) -> True new_esEs25(xx3001, xx4001, app(app(ty_Either, bda), bdb)) -> new_esEs20(xx3001, xx4001, bda, bdb) new_esEs10(xx3002, xx4002, ty_Integer) -> new_esEs7(xx3002, xx4002) new_primEqInt(Pos(Succ(xx30000)), Pos(Succ(xx40000))) -> new_primEqNat0(xx30000, xx40000) new_esEs11(xx3001, xx4001, app(app(app(ty_@3, dc), dd), de)) -> new_esEs9(xx3001, xx4001, dc, dd, de) new_esEs5(xx300, xx400, ty_Double) -> new_esEs17(xx300, xx400) new_esEs18(Float(xx3000, xx3001), Float(xx4000, xx4001)) -> new_esEs8(new_sr(xx3000, xx4001), new_sr(xx3001, xx4000)) new_esEs10(xx3002, xx4002, ty_@0) -> new_esEs6(xx3002, xx4002) new_esEs12(xx3000, xx4000, app(ty_Ratio, ec)) -> new_esEs13(xx3000, xx4000, ec) new_sr(Pos(xx30010), Neg(xx40000)) -> Neg(new_primMulNat0(xx30010, xx40000)) new_sr(Neg(xx30010), Pos(xx40000)) -> Neg(new_primMulNat0(xx30010, xx40000)) new_esEs22(xx3010, xx4010, app(app(ty_@2, he), hf)) -> new_esEs21(xx3010, xx4010, he, hf) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Integer) -> new_esEs7(xx3000, xx4000) new_primPlusNat1(Succ(xx3300), Succ(xx4000000)) -> Succ(Succ(new_primPlusNat1(xx3300, xx4000000))) new_esEs11(xx3001, xx4001, ty_Bool) -> new_esEs19(xx3001, xx4001) new_primEqInt(Pos(Succ(xx30000)), Neg(xx4000)) -> False new_primEqInt(Neg(Succ(xx30000)), Pos(xx4000)) -> False new_esEs26(xx3000, xx4000, ty_Float) -> new_esEs18(xx3000, xx4000) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_@0) -> new_esEs6(xx3000, xx4000) new_esEs16(EQ, EQ) -> True new_esEs25(xx3001, xx4001, ty_Ordering) -> new_esEs16(xx3001, xx4001) new_esEs25(xx3001, xx4001, ty_Char) -> new_esEs15(xx3001, xx4001) new_esEs20(Right(xx3000), Right(xx4000), hc, app(app(app(ty_@3, bbc), bbd), bbe)) -> new_esEs9(xx3000, xx4000, bbc, bbd, bbe) new_esEs8(xx300, xx400) -> new_primEqInt(xx300, xx400) new_esEs11(xx3001, xx4001, app(ty_Ratio, da)) -> new_esEs13(xx3001, xx4001, da) new_esEs10(xx3002, xx4002, ty_Double) -> new_esEs17(xx3002, xx4002) new_esEs14(Just(xx3000), Just(xx4000), app(ty_Maybe, fh)) -> new_esEs14(xx3000, xx4000, fh) new_esEs23(xx3001, xx4001, ty_Int) -> new_esEs8(xx3001, xx4001) new_esEs20(Left(xx3000), Left(xx4000), app(ty_[], bad), hd) -> new_esEs4(xx3000, xx4000, bad) new_esEs10(xx3002, xx4002, app(app(ty_Either, cd), ce)) -> new_esEs20(xx3002, xx4002, cd, ce) new_sr(Neg(xx30010), Neg(xx40000)) -> Pos(new_primMulNat0(xx30010, xx40000)) new_esEs14(Just(xx3000), Just(xx4000), ty_Bool) -> new_esEs19(xx3000, xx4000) new_esEs11(xx3001, xx4001, ty_Float) -> new_esEs18(xx3001, xx4001) new_esEs22(xx3010, xx4010, ty_Bool) -> new_esEs19(xx3010, xx4010) new_esEs20(Left(xx3000), Left(xx4000), ty_Double, hd) -> new_esEs17(xx3000, xx4000) new_esEs22(xx3010, xx4010, ty_@0) -> new_esEs6(xx3010, xx4010) new_esEs12(xx3000, xx4000, app(ty_Maybe, ed)) -> new_esEs14(xx3000, xx4000, ed) new_esEs12(xx3000, xx4000, ty_@0) -> new_esEs6(xx3000, xx4000) new_primEqInt(Pos(Zero), Neg(Succ(xx40000))) -> False new_primEqInt(Neg(Zero), Pos(Succ(xx40000))) -> False new_esEs16(LT, LT) -> True new_esEs23(xx3001, xx4001, ty_Integer) -> new_esEs7(xx3001, xx4001) new_esEs25(xx3001, xx4001, ty_Double) -> new_esEs17(xx3001, xx4001) new_esEs12(xx3000, xx4000, ty_Bool) -> new_esEs19(xx3000, xx4000) new_esEs20(Right(xx3000), Right(xx4000), hc, app(app(ty_Either, bbg), bbh)) -> new_esEs20(xx3000, xx4000, bbg, bbh) new_primEqInt(Neg(Succ(xx30000)), Neg(Succ(xx40000))) -> new_primEqNat0(xx30000, xx40000) new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Double) -> new_esEs17(xx3000, xx4000) new_primPlusNat0(Succ(xx330), xx400000) -> Succ(Succ(new_primPlusNat1(xx330, xx400000))) new_esEs12(xx3000, xx4000, app(app(ty_Either, fa), fb)) -> new_esEs20(xx3000, xx4000, fa, fb) new_esEs5(xx300, xx400, ty_Bool) -> new_esEs19(xx300, xx400) new_esEs20(Left(xx3000), Left(xx4000), ty_Bool, hd) -> new_esEs19(xx3000, xx4000) new_esEs14(Just(xx3000), Just(xx4000), ty_Double) -> new_esEs17(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_Ordering) -> new_esEs16(xx3000, xx4000) new_esEs26(xx3000, xx4000, app(app(app(ty_@3, bdg), bdh), bea)) -> new_esEs9(xx3000, xx4000, bdg, bdh, bea) new_esEs9(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), bc, bd, be) -> new_asAs(new_esEs12(xx3000, xx4000, bc), new_asAs(new_esEs11(xx3001, xx4001, bd), new_esEs10(xx3002, xx4002, be))) new_esEs20(Right(xx3000), Right(xx4000), hc, app(app(ty_@2, bca), bcb)) -> new_esEs21(xx3000, xx4000, bca, bcb) new_esEs25(xx3001, xx4001, ty_Integer) -> new_esEs7(xx3001, xx4001) new_esEs6(@0, @0) -> True new_primPlusNat1(Zero, Zero) -> Zero new_esEs20(Right(xx3000), Right(xx4000), hc, ty_Bool) -> new_esEs19(xx3000, xx4000) new_primMulNat0(Succ(xx300100), Zero) -> Zero new_primMulNat0(Zero, Succ(xx400000)) -> Zero new_esEs10(xx3002, xx4002, app(ty_[], cc)) -> new_esEs4(xx3002, xx4002, cc) new_sr(Pos(xx30010), Pos(xx40000)) -> Pos(new_primMulNat0(xx30010, xx40000)) new_primPlusNat0(Zero, xx400000) -> Succ(xx400000) new_esEs14(Just(xx3000), Just(xx4000), app(app(ty_Either, ge), gf)) -> new_esEs20(xx3000, xx4000, ge, gf) new_esEs10(xx3002, xx4002, ty_Int) -> new_esEs8(xx3002, xx4002) new_esEs17(Double(xx3000, xx3001), Double(xx4000, xx4001)) -> new_esEs8(new_sr(xx3000, xx4001), new_sr(xx3001, xx4000)) new_esEs12(xx3000, xx4000, ty_Integer) -> new_esEs7(xx3000, xx4000) new_esEs22(xx3010, xx4010, app(app(ty_Either, hc), hd)) -> new_esEs20(xx3010, xx4010, hc, hd) new_esEs26(xx3000, xx4000, ty_Bool) -> new_esEs19(xx3000, xx4000) new_esEs25(xx3001, xx4001, app(app(app(ty_@3, bce), bcf), bcg)) -> new_esEs9(xx3001, xx4001, bce, bcf, bcg) new_primEqInt(Neg(Zero), Neg(Zero)) -> True new_esEs11(xx3001, xx4001, ty_Char) -> new_esEs15(xx3001, xx4001) new_primMulNat0(Succ(xx300100), Succ(xx400000)) -> new_primPlusNat0(new_primMulNat0(xx300100, Succ(xx400000)), xx400000) new_esEs5(xx300, xx400, ty_Ordering) -> new_esEs16(xx300, xx400) new_esEs25(xx3001, xx4001, ty_@0) -> new_esEs6(xx3001, xx4001) new_esEs16(LT, GT) -> False new_esEs16(GT, LT) -> False new_esEs20(Left(xx3000), Left(xx4000), app(ty_Ratio, hg), hd) -> new_esEs13(xx3000, xx4000, hg) new_esEs4(:(xx3010, xx3011), [], bb) -> False new_esEs4([], :(xx4010, xx4011), bb) -> False new_esEs14(Nothing, Just(xx4000), ff) -> False new_esEs14(Just(xx3000), Nothing, ff) -> False new_primPlusNat1(Succ(xx3300), Zero) -> Succ(xx3300) new_primPlusNat1(Zero, Succ(xx4000000)) -> Succ(xx4000000) new_esEs26(xx3000, xx4000, ty_Int) -> new_esEs8(xx3000, xx4000) new_esEs14(Nothing, Nothing, ff) -> True new_esEs10(xx3002, xx4002, ty_Char) -> new_esEs15(xx3002, xx4002) new_esEs5(xx300, xx400, ty_@0) -> new_esEs6(xx300, xx400) new_esEs20(Left(xx3000), Left(xx4000), ty_Int, hd) -> new_esEs8(xx3000, xx4000) new_esEs20(Left(xx3000), Left(xx4000), app(app(ty_@2, bag), bah), hd) -> new_esEs21(xx3000, xx4000, bag, bah) new_primEqInt(Pos(Zero), Neg(Zero)) -> True new_primEqInt(Neg(Zero), Pos(Zero)) -> True new_esEs20(Right(xx3000), Right(xx4000), hc, app(ty_Ratio, bba)) -> new_esEs13(xx3000, xx4000, bba) new_esEs26(xx3000, xx4000, app(ty_[], beb)) -> new_esEs4(xx3000, xx4000, beb) new_esEs25(xx3001, xx4001, app(ty_[], bch)) -> new_esEs4(xx3001, xx4001, bch) new_primEqNat0(Zero, Zero) -> True new_esEs25(xx3001, xx4001, ty_Int) -> new_esEs8(xx3001, xx4001) new_esEs5(xx300, xx400, ty_Float) -> new_esEs18(xx300, xx400) new_esEs14(Just(xx3000), Just(xx4000), ty_Float) -> new_esEs18(xx3000, xx4000) new_esEs15(Char(xx3000), Char(xx4000)) -> new_primEqNat0(xx3000, xx4000) new_esEs4([], [], bb) -> True new_esEs10(xx3002, xx4002, app(ty_Maybe, bg)) -> new_esEs14(xx3002, xx4002, bg) new_esEs22(xx3010, xx4010, ty_Ordering) -> new_esEs16(xx3010, xx4010) new_asAs(False, xx32) -> False new_esEs22(xx3010, xx4010, app(ty_Maybe, ff)) -> new_esEs14(xx3010, xx4010, ff) new_esEs26(xx3000, xx4000, app(ty_Ratio, bde)) -> new_esEs13(xx3000, xx4000, bde) new_esEs14(Just(xx3000), Just(xx4000), ty_Integer) -> new_esEs7(xx3000, xx4000) new_esEs11(xx3001, xx4001, ty_Ordering) -> new_esEs16(xx3001, xx4001) new_esEs25(xx3001, xx4001, app(app(ty_@2, bdc), bdd)) -> new_esEs21(xx3001, xx4001, bdc, bdd) new_esEs11(xx3001, xx4001, app(app(ty_Either, dg), dh)) -> new_esEs20(xx3001, xx4001, dg, dh) new_esEs7(Integer(xx3000), Integer(xx4000)) -> new_primEqInt(xx3000, xx4000) new_esEs14(Just(xx3000), Just(xx4000), ty_@0) -> new_esEs6(xx3000, xx4000) new_esEs20(Left(xx3000), Right(xx4000), hc, hd) -> False new_esEs20(Right(xx3000), Left(xx4000), hc, hd) -> False new_esEs19(True, True) -> True new_esEs20(Right(xx3000), Right(xx4000), hc, app(ty_[], bbf)) -> new_esEs4(xx3000, xx4000, bbf) new_esEs25(xx3001, xx4001, ty_Bool) -> new_esEs19(xx3001, xx4001) new_esEs12(xx3000, xx4000, ty_Float) -> new_esEs18(xx3000, xx4000) The set Q consists of the following terms: new_esEs26(x0, x1, app(app(ty_@2, x2), x3)) new_esEs26(x0, x1, ty_Integer) new_esEs11(x0, x1, ty_Integer) new_esEs15(Char(x0), Char(x1)) new_esEs20(Right(x0), Right(x1), x2, ty_Bool) new_primPlusNat1(Succ(x0), Succ(x1)) new_esEs12(x0, x1, app(ty_Ratio, x2)) new_esEs5(x0, x1, ty_Float) new_esEs22(x0, x1, ty_Ordering) new_primEqInt(Neg(Succ(x0)), Neg(Zero)) new_esEs12(x0, x1, ty_@0) new_primPlusNat1(Zero, Succ(x0)) new_esEs20(Left(x0), Right(x1), x2, x3) new_esEs20(Right(x0), Left(x1), x2, x3) new_esEs22(x0, x1, ty_Int) new_primMulNat0(Zero, Zero) new_primPlusNat1(Zero, Zero) new_esEs5(x0, x1, app(app(ty_Either, x2), x3)) new_esEs22(x0, x1, ty_Double) new_esEs24(x0, x1, ty_Integer) new_esEs12(x0, x1, ty_Bool) new_primPlusNat1(Succ(x0), Zero) new_primPlusNat0(Zero, x0) new_esEs26(x0, x1, app(ty_Maybe, x2)) new_esEs19(False, False) new_esEs20(Right(x0), Right(x1), x2, ty_@0) new_esEs22(x0, x1, app(app(ty_Either, x2), x3)) new_esEs5(x0, x1, ty_Double) new_esEs14(Just(x0), Just(x1), app(ty_[], x2)) new_esEs20(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4) new_primEqInt(Pos(Zero), Pos(Zero)) new_esEs10(x0, x1, ty_Float) new_esEs20(Left(x0), Left(x1), ty_Float, x2) new_esEs4(:(x0, x1), [], x2) new_esEs20(Right(x0), Right(x1), x2, app(ty_Ratio, x3)) new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs5(x0, x1, ty_Int) new_esEs20(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4) new_esEs26(x0, x1, app(ty_[], x2)) new_esEs20(Left(x0), Left(x1), ty_Ordering, x2) new_esEs14(Just(x0), Just(x1), app(ty_Ratio, x2)) new_esEs14(Just(x0), Nothing, x1) new_esEs14(Just(x0), Just(x1), app(ty_Maybe, x2)) new_esEs16(EQ, EQ) new_esEs26(x0, x1, ty_@0) new_esEs10(x0, x1, app(app(ty_@2, x2), x3)) new_sr(Pos(x0), Neg(x1)) new_sr(Neg(x0), Pos(x1)) new_esEs10(x0, x1, ty_Integer) new_esEs25(x0, x1, app(app(ty_Either, x2), x3)) new_primEqInt(Pos(Succ(x0)), Pos(Zero)) new_primEqInt(Neg(Zero), Neg(Zero)) new_esEs5(x0, x1, ty_Ordering) new_esEs12(x0, x1, app(ty_Maybe, x2)) new_esEs23(x0, x1, ty_Int) new_sr(Pos(x0), Pos(x1)) new_esEs10(x0, x1, ty_Int) new_esEs14(Just(x0), Just(x1), ty_Ordering) new_esEs14(Just(x0), Just(x1), app(app(ty_@2, x2), x3)) new_esEs25(x0, x1, ty_Integer) new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1))) new_primPlusNat0(Succ(x0), x1) new_esEs12(x0, x1, ty_Integer) new_esEs5(x0, x1, app(ty_Ratio, x2)) new_esEs10(x0, x1, app(ty_Maybe, x2)) new_esEs11(x0, x1, ty_Bool) new_esEs12(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs22(x0, x1, app(ty_Ratio, x2)) new_primEqInt(Pos(Zero), Neg(Zero)) new_primEqInt(Neg(Zero), Pos(Zero)) new_esEs10(x0, x1, ty_Double) new_esEs11(x0, x1, app(app(ty_@2, x2), x3)) new_esEs14(Nothing, Nothing, x0) new_esEs10(x0, x1, ty_Char) new_esEs22(x0, x1, ty_Integer) new_esEs11(x0, x1, app(ty_Ratio, x2)) new_esEs4([], [], x0) new_esEs11(x0, x1, app(ty_[], x2)) new_esEs20(Right(x0), Right(x1), x2, ty_Integer) new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs20(Left(x0), Left(x1), app(ty_[], x2), x3) new_esEs4(:(x0, x1), :(x2, x3), x4) new_esEs10(x0, x1, ty_Bool) new_esEs6(@0, @0) new_esEs22(x0, x1, app(ty_[], x2)) new_asAs(False, x0) new_esEs25(x0, x1, ty_Ordering) new_esEs20(Left(x0), Left(x1), app(ty_Maybe, x2), x3) new_esEs25(x0, x1, app(ty_[], x2)) new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs19(True, True) new_esEs7(Integer(x0), Integer(x1)) new_esEs14(Nothing, Just(x0), x1) new_esEs9(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8) new_esEs11(x0, x1, app(app(ty_Either, x2), x3)) new_primMulNat0(Zero, Succ(x0)) new_esEs12(x0, x1, app(app(ty_@2, x2), x3)) new_esEs14(Just(x0), Just(x1), ty_Integer) new_esEs25(x0, x1, app(ty_Ratio, x2)) new_esEs24(x0, x1, ty_Int) new_esEs20(Right(x0), Right(x1), x2, ty_Float) new_esEs5(x0, x1, ty_Bool) new_esEs5(x0, x1, app(ty_[], x2)) new_primEqInt(Pos(Succ(x0)), Neg(x1)) new_primEqInt(Neg(Succ(x0)), Pos(x1)) new_primEqInt(Neg(Zero), Neg(Succ(x0))) new_esEs16(LT, GT) new_esEs16(GT, LT) new_esEs12(x0, x1, ty_Double) new_esEs11(x0, x1, ty_Int) new_primEqNat0(Succ(x0), Succ(x1)) new_esEs26(x0, x1, ty_Int) new_esEs12(x0, x1, ty_Ordering) new_esEs26(x0, x1, ty_Char) new_primEqInt(Pos(Zero), Pos(Succ(x0))) new_esEs10(x0, x1, app(ty_Ratio, x2)) new_esEs5(x0, x1, app(ty_Maybe, x2)) new_esEs18(Float(x0, x1), Float(x2, x3)) new_esEs12(x0, x1, ty_Float) new_esEs10(x0, x1, ty_@0) new_esEs8(x0, x1) new_esEs20(Right(x0), Right(x1), x2, ty_Ordering) new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs26(x0, x1, ty_Ordering) new_esEs20(Right(x0), Right(x1), x2, ty_Int) new_esEs20(Left(x0), Left(x1), ty_Char, x2) new_esEs22(x0, x1, app(ty_Maybe, x2)) new_esEs20(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5)) new_esEs4([], :(x0, x1), x2) new_esEs11(x0, x1, ty_Ordering) new_esEs10(x0, x1, app(ty_[], x2)) new_esEs14(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4)) new_esEs26(x0, x1, ty_Float) new_esEs14(Just(x0), Just(x1), ty_Char) new_primMulNat0(Succ(x0), Zero) new_esEs19(False, True) new_esEs19(True, False) new_esEs5(x0, x1, ty_Integer) new_esEs25(x0, x1, ty_Bool) new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs12(x0, x1, app(ty_[], x2)) new_esEs20(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4)) new_asAs(True, x0) new_esEs22(x0, x1, ty_Bool) new_esEs11(x0, x1, ty_Double) new_primMulNat0(Succ(x0), Succ(x1)) new_esEs13(:%(x0, x1), :%(x2, x3), x4) new_esEs20(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4)) new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs10(x0, x1, app(app(ty_Either, x2), x3)) new_esEs25(x0, x1, app(app(ty_@2, x2), x3)) new_primEqInt(Pos(Zero), Neg(Succ(x0))) new_primEqInt(Neg(Zero), Pos(Succ(x0))) new_esEs20(Right(x0), Right(x1), x2, ty_Char) new_esEs20(Right(x0), Right(x1), x2, app(ty_Maybe, x3)) new_esEs20(Right(x0), Right(x1), x2, ty_Double) new_esEs14(Just(x0), Just(x1), ty_Bool) new_primEqNat0(Zero, Succ(x0)) new_esEs11(x0, x1, ty_Char) new_esEs5(x0, x1, ty_@0) new_primEqNat0(Succ(x0), Zero) new_esEs20(Left(x0), Left(x1), ty_@0, x2) new_primEqNat0(Zero, Zero) new_esEs12(x0, x1, ty_Char) new_esEs23(x0, x1, ty_Integer) new_esEs17(Double(x0, x1), Double(x2, x3)) new_esEs20(Left(x0), Left(x1), ty_Int, x2) new_esEs16(LT, LT) new_esEs26(x0, x1, app(app(ty_Either, x2), x3)) new_esEs20(Right(x0), Right(x1), x2, app(ty_[], x3)) new_esEs5(x0, x1, ty_Char) new_esEs20(Left(x0), Left(x1), ty_Integer, x2) new_esEs20(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5) new_esEs14(Just(x0), Just(x1), ty_Double) new_esEs26(x0, x1, ty_Double) new_esEs14(Just(x0), Just(x1), ty_Int) new_esEs11(x0, x1, ty_@0) new_esEs5(x0, x1, app(app(ty_@2, x2), x3)) new_esEs26(x0, x1, app(ty_Ratio, x2)) new_esEs22(x0, x1, app(app(ty_@2, x2), x3)) new_esEs22(x0, x1, ty_Char) new_esEs16(EQ, GT) new_esEs16(GT, EQ) new_esEs10(x0, x1, ty_Ordering) new_esEs20(Left(x0), Left(x1), ty_Double, x2) new_esEs25(x0, x1, ty_Double) new_esEs22(x0, x1, ty_@0) new_esEs26(x0, x1, ty_Bool) new_esEs25(x0, x1, ty_Float) new_esEs25(x0, x1, ty_Char) new_esEs14(Just(x0), Just(x1), ty_@0) new_esEs11(x0, x1, ty_Float) new_esEs11(x0, x1, app(ty_Maybe, x2)) new_esEs20(Left(x0), Left(x1), ty_Bool, x2) new_esEs14(Just(x0), Just(x1), app(app(ty_Either, x2), x3)) new_sr(Neg(x0), Neg(x1)) new_esEs20(Left(x0), Left(x1), app(ty_Ratio, x2), x3) new_esEs14(Just(x0), Just(x1), ty_Float) new_esEs16(LT, EQ) new_esEs16(EQ, LT) new_esEs22(x0, x1, ty_Float) new_esEs25(x0, x1, ty_Int) new_esEs12(x0, x1, ty_Int) new_esEs21(@2(x0, x1), @2(x2, x3), x4, x5) new_esEs25(x0, x1, app(ty_Maybe, x2)) new_esEs25(x0, x1, ty_@0) new_esEs12(x0, x1, app(app(ty_Either, x2), x3)) new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1))) new_esEs16(GT, GT) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (26) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_psPs(xx13, xx14, False, xx17, xx18, ba) -> new_psPs0(:(xx13, xx14), xx17, xx18, ba) The graph contains the following edges 4 >= 2, 5 >= 3, 6 >= 4 *new_psPs0(:(xx300, xx301), :([], xx41), xx5, bb) -> new_psPs(xx300, xx301, False, xx41, xx5, bb) The graph contains the following edges 1 > 1, 1 > 2, 2 > 4, 3 >= 5, 4 >= 6 *new_psPs0(:(xx300, xx301), :(:(xx400, xx401), xx41), xx5, bb) -> new_psPs(xx300, xx301, new_asAs(new_esEs5(xx300, xx400, bb), new_esEs4(xx301, xx401, bb)), xx41, xx5, bb) The graph contains the following edges 1 > 1, 1 > 2, 2 > 4, 3 >= 5, 4 >= 6 ---------------------------------------- (27) YES ---------------------------------------- (28) Obligation: Q DP problem: The TRS P consists of the following rules: new_primMulNat(Succ(xx300100), Succ(xx400000)) -> new_primMulNat(xx300100, Succ(xx400000)) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (29) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_primMulNat(Succ(xx300100), Succ(xx400000)) -> new_primMulNat(xx300100, Succ(xx400000)) The graph contains the following edges 1 > 1, 2 >= 2 ---------------------------------------- (30) YES ---------------------------------------- (31) Obligation: Q DP problem: The TRS P consists of the following rules: new_primPlusNat(Succ(xx3300), Succ(xx4000000)) -> new_primPlusNat(xx3300, xx4000000) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (32) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_primPlusNat(Succ(xx3300), Succ(xx4000000)) -> new_primPlusNat(xx3300, xx4000000) The graph contains the following edges 1 > 1, 2 > 2 ---------------------------------------- (33) YES ---------------------------------------- (34) Obligation: Q DP problem: The TRS P consists of the following rules: new_primEqNat(Succ(xx30000), Succ(xx40000)) -> new_primEqNat(xx30000, xx40000) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (35) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_primEqNat(Succ(xx30000), Succ(xx40000)) -> new_primEqNat(xx30000, xx40000) The graph contains the following edges 1 > 1, 2 > 2 ---------------------------------------- (36) YES