/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, 5 ms] (10) HASKELL (11) Narrow [SOUND, 0 ms] (12) AND (13) QDP (14) DependencyGraphProof [EQUIVALENT, 0 ms] (15) AND (16) QDP (17) QDPSizeChangeProof [EQUIVALENT, 0 ms] (18) YES (19) QDP (20) QDPSizeChangeProof [EQUIVALENT, 0 ms] (21) YES (22) QDP (23) QDPSizeChangeProof [EQUIVALENT, 0 ms] (24) YES (25) QDP (26) QDPSizeChangeProof [EQUIVALENT, 0 ms] (27) YES (28) QDP (29) QDPSizeChangeProof [EQUIVALENT, 40 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"];726[label="xx3/xx30 : xx31",fontsize=10,color="white",style="solid",shape="box"];9 -> 726[label="",style="solid", color="burlywood", weight=9]; 726 -> 10[label="",style="solid", color="burlywood", weight=3]; 727[label="xx3/[]",fontsize=10,color="white",style="solid",shape="box"];9 -> 727[label="",style="solid", color="burlywood", weight=9]; 727 -> 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"];728[label="xx4/xx40 : xx41",fontsize=10,color="white",style="solid",shape="box"];23 -> 728[label="",style="solid", color="burlywood", weight=9]; 728 -> 24[label="",style="solid", color="burlywood", weight=3]; 729[label="xx4/[]",fontsize=10,color="white",style="solid",shape="box"];23 -> 729[label="",style="solid", color="burlywood", weight=9]; 729 -> 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"];730[label="xx30/Nothing",fontsize=10,color="white",style="solid",shape="box"];28 -> 730[label="",style="solid", color="burlywood", weight=9]; 730 -> 30[label="",style="solid", color="burlywood", weight=3]; 731[label="xx30/Just xx300",fontsize=10,color="white",style="solid",shape="box"];28 -> 731[label="",style="solid", color="burlywood", weight=9]; 731 -> 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 Nothing ((||) (==) Nothing xx40 foldr (||) False (map ((==) Nothing) xx41)) xx5",fontsize=16,color="burlywood",shape="box"];732[label="xx40/Nothing",fontsize=10,color="white",style="solid",shape="box"];30 -> 732[label="",style="solid", color="burlywood", weight=9]; 732 -> 33[label="",style="solid", color="burlywood", weight=3]; 733[label="xx40/Just xx400",fontsize=10,color="white",style="solid",shape="box"];30 -> 733[label="",style="solid", color="burlywood", weight=9]; 733 -> 34[label="",style="solid", color="burlywood", weight=3]; 31[label="(++) List.intersectBy000 (Just xx300) ((||) (==) Just xx300 xx40 foldr (||) False (map ((==) Just xx300) xx41)) xx5",fontsize=16,color="burlywood",shape="box"];734[label="xx40/Nothing",fontsize=10,color="white",style="solid",shape="box"];31 -> 734[label="",style="solid", color="burlywood", weight=9]; 734 -> 35[label="",style="solid", color="burlywood", weight=3]; 735[label="xx40/Just xx400",fontsize=10,color="white",style="solid",shape="box"];31 -> 735[label="",style="solid", color="burlywood", weight=9]; 735 -> 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 Nothing ((||) (==) Nothing Nothing foldr (||) False (map ((==) Nothing) xx41)) xx5",fontsize=16,color="black",shape="box"];33 -> 38[label="",style="solid", color="black", weight=3]; 34[label="(++) List.intersectBy000 Nothing ((||) (==) Nothing Just xx400 foldr (||) False (map ((==) Nothing) xx41)) xx5",fontsize=16,color="black",shape="box"];34 -> 39[label="",style="solid", color="black", weight=3]; 35[label="(++) List.intersectBy000 (Just xx300) ((||) (==) Just xx300 Nothing foldr (||) False (map ((==) Just xx300) xx41)) xx5",fontsize=16,color="black",shape="box"];35 -> 40[label="",style="solid", color="black", weight=3]; 36[label="(++) List.intersectBy000 (Just xx300) ((||) (==) Just xx300 Just xx400 foldr (||) False (map ((==) Just xx300) 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[label="(++) List.intersectBy000 Nothing ((||) True foldr (||) False (map ((==) Nothing) xx41)) xx5",fontsize=16,color="black",shape="box"];38 -> 42[label="",style="solid", color="black", weight=3]; 39[label="(++) List.intersectBy000 Nothing ((||) False foldr (||) False (map ((==) Nothing) xx41)) xx5",fontsize=16,color="black",shape="box"];39 -> 43[label="",style="solid", color="black", weight=3]; 40 -> 45[label="",style="dashed", color="red", weight=0]; 40[label="(++) List.intersectBy000 (Just xx300) ((||) False foldr (||) False (map ((==) Just xx300) xx41)) xx5",fontsize=16,color="magenta"];40 -> 46[label="",style="dashed", color="magenta", weight=3]; 40 -> 47[label="",style="dashed", color="magenta", weight=3]; 40 -> 48[label="",style="dashed", color="magenta", weight=3]; 40 -> 49[label="",style="dashed", color="magenta", weight=3]; 41 -> 45[label="",style="dashed", color="red", weight=0]; 41[label="(++) List.intersectBy000 (Just xx300) ((||) xx300 == xx400 foldr (||) False (map ((==) Just xx300) xx41)) xx5",fontsize=16,color="magenta"];41 -> 50[label="",style="dashed", color="magenta", weight=3]; 41 -> 51[label="",style="dashed", color="magenta", weight=3]; 41 -> 52[label="",style="dashed", color="magenta", weight=3]; 41 -> 53[label="",style="dashed", color="magenta", weight=3]; 42[label="(++) List.intersectBy000 Nothing True xx5",fontsize=16,color="black",shape="box"];42 -> 54[label="",style="solid", color="black", weight=3]; 43 -> 23[label="",style="dashed", color="red", weight=0]; 43[label="(++) List.intersectBy000 Nothing (foldr (||) False (map ((==) Nothing) xx41)) xx5",fontsize=16,color="magenta"];43 -> 55[label="",style="dashed", color="magenta", weight=3]; 43 -> 56[label="",style="dashed", color="magenta", weight=3]; 46[label="xx300",fontsize=16,color="green",shape="box"];47[label="False",fontsize=16,color="green",shape="box"];48[label="xx5",fontsize=16,color="green",shape="box"];49[label="xx41",fontsize=16,color="green",shape="box"];45[label="(++) List.intersectBy000 (Just xx11) ((||) xx12 foldr (||) False (map ((==) Just xx11) xx13)) xx14",fontsize=16,color="burlywood",shape="triangle"];736[label="xx12/False",fontsize=10,color="white",style="solid",shape="box"];45 -> 736[label="",style="solid", color="burlywood", weight=9]; 736 -> 57[label="",style="solid", color="burlywood", weight=3]; 737[label="xx12/True",fontsize=10,color="white",style="solid",shape="box"];45 -> 737[label="",style="solid", color="burlywood", weight=9]; 737 -> 58[label="",style="solid", color="burlywood", weight=3]; 50[label="xx300",fontsize=16,color="green",shape="box"];51[label="xx300 == xx400",fontsize=16,color="blue",shape="box"];738[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];51 -> 738[label="",style="solid", color="blue", weight=9]; 738 -> 59[label="",style="solid", color="blue", weight=3]; 739[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];51 -> 739[label="",style="solid", color="blue", weight=9]; 739 -> 60[label="",style="solid", color="blue", weight=3]; 740[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];51 -> 740[label="",style="solid", color="blue", weight=9]; 740 -> 61[label="",style="solid", color="blue", weight=3]; 741[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];51 -> 741[label="",style="solid", color="blue", weight=9]; 741 -> 62[label="",style="solid", color="blue", weight=3]; 742[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];51 -> 742[label="",style="solid", color="blue", weight=9]; 742 -> 63[label="",style="solid", color="blue", weight=3]; 743[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];51 -> 743[label="",style="solid", color="blue", weight=9]; 743 -> 64[label="",style="solid", color="blue", weight=3]; 744[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];51 -> 744[label="",style="solid", color="blue", weight=9]; 744 -> 65[label="",style="solid", color="blue", weight=3]; 745[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];51 -> 745[label="",style="solid", color="blue", weight=9]; 745 -> 66[label="",style="solid", color="blue", weight=3]; 746[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];51 -> 746[label="",style="solid", color="blue", weight=9]; 746 -> 67[label="",style="solid", color="blue", weight=3]; 747[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];51 -> 747[label="",style="solid", color="blue", weight=9]; 747 -> 68[label="",style="solid", color="blue", weight=3]; 748[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];51 -> 748[label="",style="solid", color="blue", weight=9]; 748 -> 69[label="",style="solid", color="blue", weight=3]; 749[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];51 -> 749[label="",style="solid", color="blue", weight=9]; 749 -> 70[label="",style="solid", color="blue", weight=3]; 750[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];51 -> 750[label="",style="solid", color="blue", weight=9]; 750 -> 71[label="",style="solid", color="blue", weight=3]; 751[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];51 -> 751[label="",style="solid", color="blue", weight=9]; 751 -> 72[label="",style="solid", color="blue", weight=3]; 52[label="xx5",fontsize=16,color="green",shape="box"];53[label="xx41",fontsize=16,color="green",shape="box"];54[label="(++) (Nothing : []) xx5",fontsize=16,color="black",shape="box"];54 -> 73[label="",style="solid", color="black", weight=3]; 55[label="xx41",fontsize=16,color="green",shape="box"];56[label="Nothing",fontsize=16,color="green",shape="box"];57[label="(++) List.intersectBy000 (Just xx11) ((||) False foldr (||) False (map ((==) Just xx11) xx13)) xx14",fontsize=16,color="black",shape="box"];57 -> 74[label="",style="solid", color="black", weight=3]; 58[label="(++) List.intersectBy000 (Just xx11) ((||) True foldr (||) False (map ((==) Just xx11) xx13)) xx14",fontsize=16,color="black",shape="box"];58 -> 75[label="",style="solid", color="black", weight=3]; 59[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];752[label="xx300/xx3000 :% xx3001",fontsize=10,color="white",style="solid",shape="box"];59 -> 752[label="",style="solid", color="burlywood", weight=9]; 752 -> 76[label="",style="solid", color="burlywood", weight=3]; 60[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];753[label="xx300/Nothing",fontsize=10,color="white",style="solid",shape="box"];60 -> 753[label="",style="solid", color="burlywood", weight=9]; 753 -> 77[label="",style="solid", color="burlywood", weight=3]; 754[label="xx300/Just xx3000",fontsize=10,color="white",style="solid",shape="box"];60 -> 754[label="",style="solid", color="burlywood", weight=9]; 754 -> 78[label="",style="solid", color="burlywood", weight=3]; 61[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];755[label="xx300/()",fontsize=10,color="white",style="solid",shape="box"];61 -> 755[label="",style="solid", color="burlywood", weight=9]; 755 -> 79[label="",style="solid", color="burlywood", weight=3]; 62[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];756[label="xx300/(xx3000,xx3001,xx3002)",fontsize=10,color="white",style="solid",shape="box"];62 -> 756[label="",style="solid", color="burlywood", weight=9]; 756 -> 80[label="",style="solid", color="burlywood", weight=3]; 63[label="xx300 == xx400",fontsize=16,color="black",shape="triangle"];63 -> 81[label="",style="solid", color="black", weight=3]; 64[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];757[label="xx300/Integer xx3000",fontsize=10,color="white",style="solid",shape="box"];64 -> 757[label="",style="solid", color="burlywood", weight=9]; 757 -> 82[label="",style="solid", color="burlywood", weight=3]; 65[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];758[label="xx300/LT",fontsize=10,color="white",style="solid",shape="box"];65 -> 758[label="",style="solid", color="burlywood", weight=9]; 758 -> 83[label="",style="solid", color="burlywood", weight=3]; 759[label="xx300/EQ",fontsize=10,color="white",style="solid",shape="box"];65 -> 759[label="",style="solid", color="burlywood", weight=9]; 759 -> 84[label="",style="solid", color="burlywood", weight=3]; 760[label="xx300/GT",fontsize=10,color="white",style="solid",shape="box"];65 -> 760[label="",style="solid", color="burlywood", weight=9]; 760 -> 85[label="",style="solid", color="burlywood", weight=3]; 66[label="xx300 == xx400",fontsize=16,color="black",shape="triangle"];66 -> 86[label="",style="solid", color="black", weight=3]; 67[label="xx300 == xx400",fontsize=16,color="black",shape="triangle"];67 -> 87[label="",style="solid", color="black", weight=3]; 68[label="xx300 == xx400",fontsize=16,color="black",shape="triangle"];68 -> 88[label="",style="solid", color="black", weight=3]; 69[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];761[label="xx300/xx3000 : xx3001",fontsize=10,color="white",style="solid",shape="box"];69 -> 761[label="",style="solid", color="burlywood", weight=9]; 761 -> 89[label="",style="solid", color="burlywood", weight=3]; 762[label="xx300/[]",fontsize=10,color="white",style="solid",shape="box"];69 -> 762[label="",style="solid", color="burlywood", weight=9]; 762 -> 90[label="",style="solid", color="burlywood", weight=3]; 70[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];763[label="xx300/False",fontsize=10,color="white",style="solid",shape="box"];70 -> 763[label="",style="solid", color="burlywood", weight=9]; 763 -> 91[label="",style="solid", color="burlywood", weight=3]; 764[label="xx300/True",fontsize=10,color="white",style="solid",shape="box"];70 -> 764[label="",style="solid", color="burlywood", weight=9]; 764 -> 92[label="",style="solid", color="burlywood", weight=3]; 71[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];765[label="xx300/Left xx3000",fontsize=10,color="white",style="solid",shape="box"];71 -> 765[label="",style="solid", color="burlywood", weight=9]; 765 -> 93[label="",style="solid", color="burlywood", weight=3]; 766[label="xx300/Right xx3000",fontsize=10,color="white",style="solid",shape="box"];71 -> 766[label="",style="solid", color="burlywood", weight=9]; 766 -> 94[label="",style="solid", color="burlywood", weight=3]; 72[label="xx300 == xx400",fontsize=16,color="burlywood",shape="triangle"];767[label="xx300/(xx3000,xx3001)",fontsize=10,color="white",style="solid",shape="box"];72 -> 767[label="",style="solid", color="burlywood", weight=9]; 767 -> 95[label="",style="solid", color="burlywood", weight=3]; 73[label="Nothing : [] ++ xx5",fontsize=16,color="green",shape="box"];73 -> 96[label="",style="dashed", color="green", weight=3]; 74 -> 23[label="",style="dashed", color="red", weight=0]; 74[label="(++) List.intersectBy000 (Just xx11) (foldr (||) False (map ((==) Just xx11) xx13)) xx14",fontsize=16,color="magenta"];74 -> 97[label="",style="dashed", color="magenta", weight=3]; 74 -> 98[label="",style="dashed", color="magenta", weight=3]; 74 -> 99[label="",style="dashed", color="magenta", weight=3]; 75[label="(++) List.intersectBy000 (Just xx11) True xx14",fontsize=16,color="black",shape="box"];75 -> 100[label="",style="solid", color="black", weight=3]; 76[label="xx3000 :% xx3001 == xx400",fontsize=16,color="burlywood",shape="box"];768[label="xx400/xx4000 :% xx4001",fontsize=10,color="white",style="solid",shape="box"];76 -> 768[label="",style="solid", color="burlywood", weight=9]; 768 -> 101[label="",style="solid", color="burlywood", weight=3]; 77[label="Nothing == xx400",fontsize=16,color="burlywood",shape="box"];769[label="xx400/Nothing",fontsize=10,color="white",style="solid",shape="box"];77 -> 769[label="",style="solid", color="burlywood", weight=9]; 769 -> 102[label="",style="solid", color="burlywood", weight=3]; 770[label="xx400/Just xx4000",fontsize=10,color="white",style="solid",shape="box"];77 -> 770[label="",style="solid", color="burlywood", weight=9]; 770 -> 103[label="",style="solid", color="burlywood", weight=3]; 78[label="Just xx3000 == xx400",fontsize=16,color="burlywood",shape="box"];771[label="xx400/Nothing",fontsize=10,color="white",style="solid",shape="box"];78 -> 771[label="",style="solid", color="burlywood", weight=9]; 771 -> 104[label="",style="solid", color="burlywood", weight=3]; 772[label="xx400/Just xx4000",fontsize=10,color="white",style="solid",shape="box"];78 -> 772[label="",style="solid", color="burlywood", weight=9]; 772 -> 105[label="",style="solid", color="burlywood", weight=3]; 79[label="() == xx400",fontsize=16,color="burlywood",shape="box"];773[label="xx400/()",fontsize=10,color="white",style="solid",shape="box"];79 -> 773[label="",style="solid", color="burlywood", weight=9]; 773 -> 106[label="",style="solid", color="burlywood", weight=3]; 80[label="(xx3000,xx3001,xx3002) == xx400",fontsize=16,color="burlywood",shape="box"];774[label="xx400/(xx4000,xx4001,xx4002)",fontsize=10,color="white",style="solid",shape="box"];80 -> 774[label="",style="solid", color="burlywood", weight=9]; 774 -> 107[label="",style="solid", color="burlywood", weight=3]; 81[label="primEqChar xx300 xx400",fontsize=16,color="burlywood",shape="box"];775[label="xx300/Char xx3000",fontsize=10,color="white",style="solid",shape="box"];81 -> 775[label="",style="solid", color="burlywood", weight=9]; 775 -> 108[label="",style="solid", color="burlywood", weight=3]; 82[label="Integer xx3000 == xx400",fontsize=16,color="burlywood",shape="box"];776[label="xx400/Integer xx4000",fontsize=10,color="white",style="solid",shape="box"];82 -> 776[label="",style="solid", color="burlywood", weight=9]; 776 -> 109[label="",style="solid", color="burlywood", weight=3]; 83[label="LT == xx400",fontsize=16,color="burlywood",shape="box"];777[label="xx400/LT",fontsize=10,color="white",style="solid",shape="box"];83 -> 777[label="",style="solid", color="burlywood", weight=9]; 777 -> 110[label="",style="solid", color="burlywood", weight=3]; 778[label="xx400/EQ",fontsize=10,color="white",style="solid",shape="box"];83 -> 778[label="",style="solid", color="burlywood", weight=9]; 778 -> 111[label="",style="solid", color="burlywood", weight=3]; 779[label="xx400/GT",fontsize=10,color="white",style="solid",shape="box"];83 -> 779[label="",style="solid", color="burlywood", weight=9]; 779 -> 112[label="",style="solid", color="burlywood", weight=3]; 84[label="EQ == xx400",fontsize=16,color="burlywood",shape="box"];780[label="xx400/LT",fontsize=10,color="white",style="solid",shape="box"];84 -> 780[label="",style="solid", color="burlywood", weight=9]; 780 -> 113[label="",style="solid", color="burlywood", weight=3]; 781[label="xx400/EQ",fontsize=10,color="white",style="solid",shape="box"];84 -> 781[label="",style="solid", color="burlywood", weight=9]; 781 -> 114[label="",style="solid", color="burlywood", weight=3]; 782[label="xx400/GT",fontsize=10,color="white",style="solid",shape="box"];84 -> 782[label="",style="solid", color="burlywood", weight=9]; 782 -> 115[label="",style="solid", color="burlywood", weight=3]; 85[label="GT == xx400",fontsize=16,color="burlywood",shape="box"];783[label="xx400/LT",fontsize=10,color="white",style="solid",shape="box"];85 -> 783[label="",style="solid", color="burlywood", weight=9]; 783 -> 116[label="",style="solid", color="burlywood", weight=3]; 784[label="xx400/EQ",fontsize=10,color="white",style="solid",shape="box"];85 -> 784[label="",style="solid", color="burlywood", weight=9]; 784 -> 117[label="",style="solid", color="burlywood", weight=3]; 785[label="xx400/GT",fontsize=10,color="white",style="solid",shape="box"];85 -> 785[label="",style="solid", color="burlywood", weight=9]; 785 -> 118[label="",style="solid", color="burlywood", weight=3]; 86[label="primEqDouble xx300 xx400",fontsize=16,color="burlywood",shape="box"];786[label="xx300/Double xx3000 xx3001",fontsize=10,color="white",style="solid",shape="box"];86 -> 786[label="",style="solid", color="burlywood", weight=9]; 786 -> 119[label="",style="solid", color="burlywood", weight=3]; 87[label="primEqFloat xx300 xx400",fontsize=16,color="burlywood",shape="box"];787[label="xx300/Float xx3000 xx3001",fontsize=10,color="white",style="solid",shape="box"];87 -> 787[label="",style="solid", color="burlywood", weight=9]; 787 -> 120[label="",style="solid", color="burlywood", weight=3]; 88[label="primEqInt xx300 xx400",fontsize=16,color="burlywood",shape="triangle"];788[label="xx300/Pos xx3000",fontsize=10,color="white",style="solid",shape="box"];88 -> 788[label="",style="solid", color="burlywood", weight=9]; 788 -> 121[label="",style="solid", color="burlywood", weight=3]; 789[label="xx300/Neg xx3000",fontsize=10,color="white",style="solid",shape="box"];88 -> 789[label="",style="solid", color="burlywood", weight=9]; 789 -> 122[label="",style="solid", color="burlywood", weight=3]; 89[label="xx3000 : xx3001 == xx400",fontsize=16,color="burlywood",shape="box"];790[label="xx400/xx4000 : xx4001",fontsize=10,color="white",style="solid",shape="box"];89 -> 790[label="",style="solid", color="burlywood", weight=9]; 790 -> 123[label="",style="solid", color="burlywood", weight=3]; 791[label="xx400/[]",fontsize=10,color="white",style="solid",shape="box"];89 -> 791[label="",style="solid", color="burlywood", weight=9]; 791 -> 124[label="",style="solid", color="burlywood", weight=3]; 90[label="[] == xx400",fontsize=16,color="burlywood",shape="box"];792[label="xx400/xx4000 : xx4001",fontsize=10,color="white",style="solid",shape="box"];90 -> 792[label="",style="solid", color="burlywood", weight=9]; 792 -> 125[label="",style="solid", color="burlywood", weight=3]; 793[label="xx400/[]",fontsize=10,color="white",style="solid",shape="box"];90 -> 793[label="",style="solid", color="burlywood", weight=9]; 793 -> 126[label="",style="solid", color="burlywood", weight=3]; 91[label="False == xx400",fontsize=16,color="burlywood",shape="box"];794[label="xx400/False",fontsize=10,color="white",style="solid",shape="box"];91 -> 794[label="",style="solid", color="burlywood", weight=9]; 794 -> 127[label="",style="solid", color="burlywood", weight=3]; 795[label="xx400/True",fontsize=10,color="white",style="solid",shape="box"];91 -> 795[label="",style="solid", color="burlywood", weight=9]; 795 -> 128[label="",style="solid", color="burlywood", weight=3]; 92[label="True == xx400",fontsize=16,color="burlywood",shape="box"];796[label="xx400/False",fontsize=10,color="white",style="solid",shape="box"];92 -> 796[label="",style="solid", color="burlywood", weight=9]; 796 -> 129[label="",style="solid", color="burlywood", weight=3]; 797[label="xx400/True",fontsize=10,color="white",style="solid",shape="box"];92 -> 797[label="",style="solid", color="burlywood", weight=9]; 797 -> 130[label="",style="solid", color="burlywood", weight=3]; 93[label="Left xx3000 == xx400",fontsize=16,color="burlywood",shape="box"];798[label="xx400/Left xx4000",fontsize=10,color="white",style="solid",shape="box"];93 -> 798[label="",style="solid", color="burlywood", weight=9]; 798 -> 131[label="",style="solid", color="burlywood", weight=3]; 799[label="xx400/Right xx4000",fontsize=10,color="white",style="solid",shape="box"];93 -> 799[label="",style="solid", color="burlywood", weight=9]; 799 -> 132[label="",style="solid", color="burlywood", weight=3]; 94[label="Right xx3000 == xx400",fontsize=16,color="burlywood",shape="box"];800[label="xx400/Left xx4000",fontsize=10,color="white",style="solid",shape="box"];94 -> 800[label="",style="solid", color="burlywood", weight=9]; 800 -> 133[label="",style="solid", color="burlywood", weight=3]; 801[label="xx400/Right xx4000",fontsize=10,color="white",style="solid",shape="box"];94 -> 801[label="",style="solid", color="burlywood", weight=9]; 801 -> 134[label="",style="solid", color="burlywood", weight=3]; 95[label="(xx3000,xx3001) == xx400",fontsize=16,color="burlywood",shape="box"];802[label="xx400/(xx4000,xx4001)",fontsize=10,color="white",style="solid",shape="box"];95 -> 802[label="",style="solid", color="burlywood", weight=9]; 802 -> 135[label="",style="solid", color="burlywood", weight=3]; 96 -> 32[label="",style="dashed", color="red", weight=0]; 96[label="[] ++ xx5",fontsize=16,color="magenta"];97[label="xx13",fontsize=16,color="green",shape="box"];98[label="Just xx11",fontsize=16,color="green",shape="box"];99[label="xx14",fontsize=16,color="green",shape="box"];100[label="(++) (Just xx11 : []) xx14",fontsize=16,color="black",shape="box"];100 -> 136[label="",style="solid", color="black", weight=3]; 101[label="xx3000 :% xx3001 == xx4000 :% xx4001",fontsize=16,color="black",shape="box"];101 -> 137[label="",style="solid", color="black", weight=3]; 102[label="Nothing == Nothing",fontsize=16,color="black",shape="box"];102 -> 138[label="",style="solid", color="black", weight=3]; 103[label="Nothing == Just xx4000",fontsize=16,color="black",shape="box"];103 -> 139[label="",style="solid", color="black", weight=3]; 104[label="Just xx3000 == Nothing",fontsize=16,color="black",shape="box"];104 -> 140[label="",style="solid", color="black", weight=3]; 105[label="Just xx3000 == Just xx4000",fontsize=16,color="black",shape="box"];105 -> 141[label="",style="solid", color="black", weight=3]; 106[label="() == ()",fontsize=16,color="black",shape="box"];106 -> 142[label="",style="solid", color="black", weight=3]; 107[label="(xx3000,xx3001,xx3002) == (xx4000,xx4001,xx4002)",fontsize=16,color="black",shape="box"];107 -> 143[label="",style="solid", color="black", weight=3]; 108[label="primEqChar (Char xx3000) xx400",fontsize=16,color="burlywood",shape="box"];803[label="xx400/Char xx4000",fontsize=10,color="white",style="solid",shape="box"];108 -> 803[label="",style="solid", color="burlywood", weight=9]; 803 -> 144[label="",style="solid", color="burlywood", weight=3]; 109[label="Integer xx3000 == Integer xx4000",fontsize=16,color="black",shape="box"];109 -> 145[label="",style="solid", color="black", weight=3]; 110[label="LT == LT",fontsize=16,color="black",shape="box"];110 -> 146[label="",style="solid", color="black", weight=3]; 111[label="LT == EQ",fontsize=16,color="black",shape="box"];111 -> 147[label="",style="solid", color="black", weight=3]; 112[label="LT == GT",fontsize=16,color="black",shape="box"];112 -> 148[label="",style="solid", color="black", weight=3]; 113[label="EQ == LT",fontsize=16,color="black",shape="box"];113 -> 149[label="",style="solid", color="black", weight=3]; 114[label="EQ == EQ",fontsize=16,color="black",shape="box"];114 -> 150[label="",style="solid", color="black", weight=3]; 115[label="EQ == GT",fontsize=16,color="black",shape="box"];115 -> 151[label="",style="solid", color="black", weight=3]; 116[label="GT == LT",fontsize=16,color="black",shape="box"];116 -> 152[label="",style="solid", color="black", weight=3]; 117[label="GT == EQ",fontsize=16,color="black",shape="box"];117 -> 153[label="",style="solid", color="black", weight=3]; 118[label="GT == GT",fontsize=16,color="black",shape="box"];118 -> 154[label="",style="solid", color="black", weight=3]; 119[label="primEqDouble (Double xx3000 xx3001) xx400",fontsize=16,color="burlywood",shape="box"];804[label="xx400/Double xx4000 xx4001",fontsize=10,color="white",style="solid",shape="box"];119 -> 804[label="",style="solid", color="burlywood", weight=9]; 804 -> 155[label="",style="solid", color="burlywood", weight=3]; 120[label="primEqFloat (Float xx3000 xx3001) xx400",fontsize=16,color="burlywood",shape="box"];805[label="xx400/Float xx4000 xx4001",fontsize=10,color="white",style="solid",shape="box"];120 -> 805[label="",style="solid", color="burlywood", weight=9]; 805 -> 156[label="",style="solid", color="burlywood", weight=3]; 121[label="primEqInt (Pos xx3000) xx400",fontsize=16,color="burlywood",shape="box"];806[label="xx3000/Succ xx30000",fontsize=10,color="white",style="solid",shape="box"];121 -> 806[label="",style="solid", color="burlywood", weight=9]; 806 -> 157[label="",style="solid", color="burlywood", weight=3]; 807[label="xx3000/Zero",fontsize=10,color="white",style="solid",shape="box"];121 -> 807[label="",style="solid", color="burlywood", weight=9]; 807 -> 158[label="",style="solid", color="burlywood", weight=3]; 122[label="primEqInt (Neg xx3000) xx400",fontsize=16,color="burlywood",shape="box"];808[label="xx3000/Succ xx30000",fontsize=10,color="white",style="solid",shape="box"];122 -> 808[label="",style="solid", color="burlywood", weight=9]; 808 -> 159[label="",style="solid", color="burlywood", weight=3]; 809[label="xx3000/Zero",fontsize=10,color="white",style="solid",shape="box"];122 -> 809[label="",style="solid", color="burlywood", weight=9]; 809 -> 160[label="",style="solid", color="burlywood", weight=3]; 123[label="xx3000 : xx3001 == xx4000 : xx4001",fontsize=16,color="black",shape="box"];123 -> 161[label="",style="solid", color="black", weight=3]; 124[label="xx3000 : xx3001 == []",fontsize=16,color="black",shape="box"];124 -> 162[label="",style="solid", color="black", weight=3]; 125[label="[] == xx4000 : xx4001",fontsize=16,color="black",shape="box"];125 -> 163[label="",style="solid", color="black", weight=3]; 126[label="[] == []",fontsize=16,color="black",shape="box"];126 -> 164[label="",style="solid", color="black", weight=3]; 127[label="False == False",fontsize=16,color="black",shape="box"];127 -> 165[label="",style="solid", color="black", weight=3]; 128[label="False == True",fontsize=16,color="black",shape="box"];128 -> 166[label="",style="solid", color="black", weight=3]; 129[label="True == False",fontsize=16,color="black",shape="box"];129 -> 167[label="",style="solid", color="black", weight=3]; 130[label="True == True",fontsize=16,color="black",shape="box"];130 -> 168[label="",style="solid", color="black", weight=3]; 131[label="Left xx3000 == Left xx4000",fontsize=16,color="black",shape="box"];131 -> 169[label="",style="solid", color="black", weight=3]; 132[label="Left xx3000 == Right xx4000",fontsize=16,color="black",shape="box"];132 -> 170[label="",style="solid", color="black", weight=3]; 133[label="Right xx3000 == Left xx4000",fontsize=16,color="black",shape="box"];133 -> 171[label="",style="solid", color="black", weight=3]; 134[label="Right xx3000 == Right xx4000",fontsize=16,color="black",shape="box"];134 -> 172[label="",style="solid", color="black", weight=3]; 135[label="(xx3000,xx3001) == (xx4000,xx4001)",fontsize=16,color="black",shape="box"];135 -> 173[label="",style="solid", color="black", weight=3]; 136[label="Just xx11 : [] ++ xx14",fontsize=16,color="green",shape="box"];136 -> 174[label="",style="dashed", color="green", weight=3]; 137 -> 254[label="",style="dashed", color="red", weight=0]; 137[label="xx3000 == xx4000 && xx3001 == xx4001",fontsize=16,color="magenta"];137 -> 255[label="",style="dashed", color="magenta", weight=3]; 137 -> 256[label="",style="dashed", color="magenta", weight=3]; 138[label="True",fontsize=16,color="green",shape="box"];139[label="False",fontsize=16,color="green",shape="box"];140[label="False",fontsize=16,color="green",shape="box"];141[label="xx3000 == xx4000",fontsize=16,color="blue",shape="box"];810[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];141 -> 810[label="",style="solid", color="blue", weight=9]; 810 -> 185[label="",style="solid", color="blue", weight=3]; 811[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];141 -> 811[label="",style="solid", color="blue", weight=9]; 811 -> 186[label="",style="solid", color="blue", weight=3]; 812[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];141 -> 812[label="",style="solid", color="blue", weight=9]; 812 -> 187[label="",style="solid", color="blue", weight=3]; 813[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];141 -> 813[label="",style="solid", color="blue", weight=9]; 813 -> 188[label="",style="solid", color="blue", weight=3]; 814[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];141 -> 814[label="",style="solid", color="blue", weight=9]; 814 -> 189[label="",style="solid", color="blue", weight=3]; 815[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];141 -> 815[label="",style="solid", color="blue", weight=9]; 815 -> 190[label="",style="solid", color="blue", weight=3]; 816[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];141 -> 816[label="",style="solid", color="blue", weight=9]; 816 -> 191[label="",style="solid", color="blue", weight=3]; 817[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];141 -> 817[label="",style="solid", color="blue", weight=9]; 817 -> 192[label="",style="solid", color="blue", weight=3]; 818[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];141 -> 818[label="",style="solid", color="blue", weight=9]; 818 -> 193[label="",style="solid", color="blue", weight=3]; 819[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];141 -> 819[label="",style="solid", color="blue", weight=9]; 819 -> 194[label="",style="solid", color="blue", weight=3]; 820[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];141 -> 820[label="",style="solid", color="blue", weight=9]; 820 -> 195[label="",style="solid", color="blue", weight=3]; 821[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];141 -> 821[label="",style="solid", color="blue", weight=9]; 821 -> 196[label="",style="solid", color="blue", weight=3]; 822[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];141 -> 822[label="",style="solid", color="blue", weight=9]; 822 -> 197[label="",style="solid", color="blue", weight=3]; 823[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];141 -> 823[label="",style="solid", color="blue", weight=9]; 823 -> 198[label="",style="solid", color="blue", weight=3]; 142[label="True",fontsize=16,color="green",shape="box"];143 -> 254[label="",style="dashed", color="red", weight=0]; 143[label="xx3000 == xx4000 && xx3001 == xx4001 && xx3002 == xx4002",fontsize=16,color="magenta"];143 -> 257[label="",style="dashed", color="magenta", weight=3]; 143 -> 258[label="",style="dashed", color="magenta", weight=3]; 144[label="primEqChar (Char xx3000) (Char xx4000)",fontsize=16,color="black",shape="box"];144 -> 210[label="",style="solid", color="black", weight=3]; 145 -> 88[label="",style="dashed", color="red", weight=0]; 145[label="primEqInt xx3000 xx4000",fontsize=16,color="magenta"];145 -> 211[label="",style="dashed", color="magenta", weight=3]; 145 -> 212[label="",style="dashed", color="magenta", weight=3]; 146[label="True",fontsize=16,color="green",shape="box"];147[label="False",fontsize=16,color="green",shape="box"];148[label="False",fontsize=16,color="green",shape="box"];149[label="False",fontsize=16,color="green",shape="box"];150[label="True",fontsize=16,color="green",shape="box"];151[label="False",fontsize=16,color="green",shape="box"];152[label="False",fontsize=16,color="green",shape="box"];153[label="False",fontsize=16,color="green",shape="box"];154[label="True",fontsize=16,color="green",shape="box"];155[label="primEqDouble (Double xx3000 xx3001) (Double xx4000 xx4001)",fontsize=16,color="black",shape="box"];155 -> 213[label="",style="solid", color="black", weight=3]; 156[label="primEqFloat (Float xx3000 xx3001) (Float xx4000 xx4001)",fontsize=16,color="black",shape="box"];156 -> 214[label="",style="solid", color="black", weight=3]; 157[label="primEqInt (Pos (Succ xx30000)) xx400",fontsize=16,color="burlywood",shape="box"];824[label="xx400/Pos xx4000",fontsize=10,color="white",style="solid",shape="box"];157 -> 824[label="",style="solid", color="burlywood", weight=9]; 824 -> 215[label="",style="solid", color="burlywood", weight=3]; 825[label="xx400/Neg xx4000",fontsize=10,color="white",style="solid",shape="box"];157 -> 825[label="",style="solid", color="burlywood", weight=9]; 825 -> 216[label="",style="solid", color="burlywood", weight=3]; 158[label="primEqInt (Pos Zero) xx400",fontsize=16,color="burlywood",shape="box"];826[label="xx400/Pos xx4000",fontsize=10,color="white",style="solid",shape="box"];158 -> 826[label="",style="solid", color="burlywood", weight=9]; 826 -> 217[label="",style="solid", color="burlywood", weight=3]; 827[label="xx400/Neg xx4000",fontsize=10,color="white",style="solid",shape="box"];158 -> 827[label="",style="solid", color="burlywood", weight=9]; 827 -> 218[label="",style="solid", color="burlywood", weight=3]; 159[label="primEqInt (Neg (Succ xx30000)) xx400",fontsize=16,color="burlywood",shape="box"];828[label="xx400/Pos xx4000",fontsize=10,color="white",style="solid",shape="box"];159 -> 828[label="",style="solid", color="burlywood", weight=9]; 828 -> 219[label="",style="solid", color="burlywood", weight=3]; 829[label="xx400/Neg xx4000",fontsize=10,color="white",style="solid",shape="box"];159 -> 829[label="",style="solid", color="burlywood", weight=9]; 829 -> 220[label="",style="solid", color="burlywood", weight=3]; 160[label="primEqInt (Neg Zero) xx400",fontsize=16,color="burlywood",shape="box"];830[label="xx400/Pos xx4000",fontsize=10,color="white",style="solid",shape="box"];160 -> 830[label="",style="solid", color="burlywood", weight=9]; 830 -> 221[label="",style="solid", color="burlywood", weight=3]; 831[label="xx400/Neg xx4000",fontsize=10,color="white",style="solid",shape="box"];160 -> 831[label="",style="solid", color="burlywood", weight=9]; 831 -> 222[label="",style="solid", color="burlywood", weight=3]; 161 -> 254[label="",style="dashed", color="red", weight=0]; 161[label="xx3000 == xx4000 && xx3001 == xx4001",fontsize=16,color="magenta"];161 -> 259[label="",style="dashed", color="magenta", weight=3]; 161 -> 260[label="",style="dashed", color="magenta", weight=3]; 162[label="False",fontsize=16,color="green",shape="box"];163[label="False",fontsize=16,color="green",shape="box"];164[label="True",fontsize=16,color="green",shape="box"];165[label="True",fontsize=16,color="green",shape="box"];166[label="False",fontsize=16,color="green",shape="box"];167[label="False",fontsize=16,color="green",shape="box"];168[label="True",fontsize=16,color="green",shape="box"];169[label="xx3000 == xx4000",fontsize=16,color="blue",shape="box"];832[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];169 -> 832[label="",style="solid", color="blue", weight=9]; 832 -> 223[label="",style="solid", color="blue", weight=3]; 833[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];169 -> 833[label="",style="solid", color="blue", weight=9]; 833 -> 224[label="",style="solid", color="blue", weight=3]; 834[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];169 -> 834[label="",style="solid", color="blue", weight=9]; 834 -> 225[label="",style="solid", color="blue", weight=3]; 835[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];169 -> 835[label="",style="solid", color="blue", weight=9]; 835 -> 226[label="",style="solid", color="blue", weight=3]; 836[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];169 -> 836[label="",style="solid", color="blue", weight=9]; 836 -> 227[label="",style="solid", color="blue", weight=3]; 837[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];169 -> 837[label="",style="solid", color="blue", weight=9]; 837 -> 228[label="",style="solid", color="blue", weight=3]; 838[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];169 -> 838[label="",style="solid", color="blue", weight=9]; 838 -> 229[label="",style="solid", color="blue", weight=3]; 839[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];169 -> 839[label="",style="solid", color="blue", weight=9]; 839 -> 230[label="",style="solid", color="blue", weight=3]; 840[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];169 -> 840[label="",style="solid", color="blue", weight=9]; 840 -> 231[label="",style="solid", color="blue", weight=3]; 841[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];169 -> 841[label="",style="solid", color="blue", weight=9]; 841 -> 232[label="",style="solid", color="blue", weight=3]; 842[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];169 -> 842[label="",style="solid", color="blue", weight=9]; 842 -> 233[label="",style="solid", color="blue", weight=3]; 843[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];169 -> 843[label="",style="solid", color="blue", weight=9]; 843 -> 234[label="",style="solid", color="blue", weight=3]; 844[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];169 -> 844[label="",style="solid", color="blue", weight=9]; 844 -> 235[label="",style="solid", color="blue", weight=3]; 845[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];169 -> 845[label="",style="solid", color="blue", weight=9]; 845 -> 236[label="",style="solid", color="blue", weight=3]; 170[label="False",fontsize=16,color="green",shape="box"];171[label="False",fontsize=16,color="green",shape="box"];172[label="xx3000 == xx4000",fontsize=16,color="blue",shape="box"];846[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];172 -> 846[label="",style="solid", color="blue", weight=9]; 846 -> 237[label="",style="solid", color="blue", weight=3]; 847[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];172 -> 847[label="",style="solid", color="blue", weight=9]; 847 -> 238[label="",style="solid", color="blue", weight=3]; 848[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];172 -> 848[label="",style="solid", color="blue", weight=9]; 848 -> 239[label="",style="solid", color="blue", weight=3]; 849[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];172 -> 849[label="",style="solid", color="blue", weight=9]; 849 -> 240[label="",style="solid", color="blue", weight=3]; 850[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];172 -> 850[label="",style="solid", color="blue", weight=9]; 850 -> 241[label="",style="solid", color="blue", weight=3]; 851[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];172 -> 851[label="",style="solid", color="blue", weight=9]; 851 -> 242[label="",style="solid", color="blue", weight=3]; 852[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];172 -> 852[label="",style="solid", color="blue", weight=9]; 852 -> 243[label="",style="solid", color="blue", weight=3]; 853[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];172 -> 853[label="",style="solid", color="blue", weight=9]; 853 -> 244[label="",style="solid", color="blue", weight=3]; 854[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];172 -> 854[label="",style="solid", color="blue", weight=9]; 854 -> 245[label="",style="solid", color="blue", weight=3]; 855[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];172 -> 855[label="",style="solid", color="blue", weight=9]; 855 -> 246[label="",style="solid", color="blue", weight=3]; 856[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];172 -> 856[label="",style="solid", color="blue", weight=9]; 856 -> 247[label="",style="solid", color="blue", weight=3]; 857[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];172 -> 857[label="",style="solid", color="blue", weight=9]; 857 -> 248[label="",style="solid", color="blue", weight=3]; 858[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];172 -> 858[label="",style="solid", color="blue", weight=9]; 858 -> 249[label="",style="solid", color="blue", weight=3]; 859[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];172 -> 859[label="",style="solid", color="blue", weight=9]; 859 -> 250[label="",style="solid", color="blue", weight=3]; 173 -> 254[label="",style="dashed", color="red", weight=0]; 173[label="xx3000 == xx4000 && xx3001 == xx4001",fontsize=16,color="magenta"];173 -> 261[label="",style="dashed", color="magenta", weight=3]; 173 -> 262[label="",style="dashed", color="magenta", weight=3]; 174 -> 32[label="",style="dashed", color="red", weight=0]; 174[label="[] ++ xx14",fontsize=16,color="magenta"];174 -> 251[label="",style="dashed", color="magenta", weight=3]; 255[label="xx3001 == xx4001",fontsize=16,color="blue",shape="box"];860[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];255 -> 860[label="",style="solid", color="blue", weight=9]; 860 -> 267[label="",style="solid", color="blue", weight=3]; 861[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];255 -> 861[label="",style="solid", color="blue", weight=9]; 861 -> 268[label="",style="solid", color="blue", weight=3]; 256[label="xx3000 == xx4000",fontsize=16,color="blue",shape="box"];862[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];256 -> 862[label="",style="solid", color="blue", weight=9]; 862 -> 269[label="",style="solid", color="blue", weight=3]; 863[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];256 -> 863[label="",style="solid", color="blue", weight=9]; 863 -> 270[label="",style="solid", color="blue", weight=3]; 254[label="xx26 && xx27",fontsize=16,color="burlywood",shape="triangle"];864[label="xx26/False",fontsize=10,color="white",style="solid",shape="box"];254 -> 864[label="",style="solid", color="burlywood", weight=9]; 864 -> 271[label="",style="solid", color="burlywood", weight=3]; 865[label="xx26/True",fontsize=10,color="white",style="solid",shape="box"];254 -> 865[label="",style="solid", color="burlywood", weight=9]; 865 -> 272[label="",style="solid", color="burlywood", weight=3]; 185 -> 59[label="",style="dashed", color="red", weight=0]; 185[label="xx3000 == xx4000",fontsize=16,color="magenta"];185 -> 273[label="",style="dashed", color="magenta", weight=3]; 185 -> 274[label="",style="dashed", color="magenta", weight=3]; 186 -> 60[label="",style="dashed", color="red", weight=0]; 186[label="xx3000 == xx4000",fontsize=16,color="magenta"];186 -> 275[label="",style="dashed", color="magenta", weight=3]; 186 -> 276[label="",style="dashed", color="magenta", weight=3]; 187 -> 61[label="",style="dashed", color="red", weight=0]; 187[label="xx3000 == xx4000",fontsize=16,color="magenta"];187 -> 277[label="",style="dashed", color="magenta", weight=3]; 187 -> 278[label="",style="dashed", color="magenta", weight=3]; 188 -> 62[label="",style="dashed", color="red", weight=0]; 188[label="xx3000 == xx4000",fontsize=16,color="magenta"];188 -> 279[label="",style="dashed", color="magenta", weight=3]; 188 -> 280[label="",style="dashed", color="magenta", weight=3]; 189 -> 63[label="",style="dashed", color="red", weight=0]; 189[label="xx3000 == xx4000",fontsize=16,color="magenta"];189 -> 281[label="",style="dashed", color="magenta", weight=3]; 189 -> 282[label="",style="dashed", color="magenta", weight=3]; 190 -> 64[label="",style="dashed", color="red", weight=0]; 190[label="xx3000 == xx4000",fontsize=16,color="magenta"];190 -> 283[label="",style="dashed", color="magenta", weight=3]; 190 -> 284[label="",style="dashed", color="magenta", weight=3]; 191 -> 65[label="",style="dashed", color="red", weight=0]; 191[label="xx3000 == xx4000",fontsize=16,color="magenta"];191 -> 285[label="",style="dashed", color="magenta", weight=3]; 191 -> 286[label="",style="dashed", color="magenta", weight=3]; 192 -> 66[label="",style="dashed", color="red", weight=0]; 192[label="xx3000 == xx4000",fontsize=16,color="magenta"];192 -> 287[label="",style="dashed", color="magenta", weight=3]; 192 -> 288[label="",style="dashed", color="magenta", weight=3]; 193 -> 67[label="",style="dashed", color="red", weight=0]; 193[label="xx3000 == xx4000",fontsize=16,color="magenta"];193 -> 289[label="",style="dashed", color="magenta", weight=3]; 193 -> 290[label="",style="dashed", color="magenta", weight=3]; 194 -> 68[label="",style="dashed", color="red", weight=0]; 194[label="xx3000 == xx4000",fontsize=16,color="magenta"];194 -> 291[label="",style="dashed", color="magenta", weight=3]; 194 -> 292[label="",style="dashed", color="magenta", weight=3]; 195 -> 69[label="",style="dashed", color="red", weight=0]; 195[label="xx3000 == xx4000",fontsize=16,color="magenta"];195 -> 293[label="",style="dashed", color="magenta", weight=3]; 195 -> 294[label="",style="dashed", color="magenta", weight=3]; 196 -> 70[label="",style="dashed", color="red", weight=0]; 196[label="xx3000 == xx4000",fontsize=16,color="magenta"];196 -> 295[label="",style="dashed", color="magenta", weight=3]; 196 -> 296[label="",style="dashed", color="magenta", weight=3]; 197 -> 71[label="",style="dashed", color="red", weight=0]; 197[label="xx3000 == xx4000",fontsize=16,color="magenta"];197 -> 297[label="",style="dashed", color="magenta", weight=3]; 197 -> 298[label="",style="dashed", color="magenta", weight=3]; 198 -> 72[label="",style="dashed", color="red", weight=0]; 198[label="xx3000 == xx4000",fontsize=16,color="magenta"];198 -> 299[label="",style="dashed", color="magenta", weight=3]; 198 -> 300[label="",style="dashed", color="magenta", weight=3]; 257 -> 254[label="",style="dashed", color="red", weight=0]; 257[label="xx3001 == xx4001 && xx3002 == xx4002",fontsize=16,color="magenta"];257 -> 301[label="",style="dashed", color="magenta", weight=3]; 257 -> 302[label="",style="dashed", color="magenta", weight=3]; 258[label="xx3000 == xx4000",fontsize=16,color="blue",shape="box"];866[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];258 -> 866[label="",style="solid", color="blue", weight=9]; 866 -> 303[label="",style="solid", color="blue", weight=3]; 867[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];258 -> 867[label="",style="solid", color="blue", weight=9]; 867 -> 304[label="",style="solid", color="blue", weight=3]; 868[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];258 -> 868[label="",style="solid", color="blue", weight=9]; 868 -> 305[label="",style="solid", color="blue", weight=3]; 869[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];258 -> 869[label="",style="solid", color="blue", weight=9]; 869 -> 306[label="",style="solid", color="blue", weight=3]; 870[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];258 -> 870[label="",style="solid", color="blue", weight=9]; 870 -> 307[label="",style="solid", color="blue", weight=3]; 871[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];258 -> 871[label="",style="solid", color="blue", weight=9]; 871 -> 308[label="",style="solid", color="blue", weight=3]; 872[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];258 -> 872[label="",style="solid", color="blue", weight=9]; 872 -> 309[label="",style="solid", color="blue", weight=3]; 873[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];258 -> 873[label="",style="solid", color="blue", weight=9]; 873 -> 310[label="",style="solid", color="blue", weight=3]; 874[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];258 -> 874[label="",style="solid", color="blue", weight=9]; 874 -> 311[label="",style="solid", color="blue", weight=3]; 875[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];258 -> 875[label="",style="solid", color="blue", weight=9]; 875 -> 312[label="",style="solid", color="blue", weight=3]; 876[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];258 -> 876[label="",style="solid", color="blue", weight=9]; 876 -> 313[label="",style="solid", color="blue", weight=3]; 877[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];258 -> 877[label="",style="solid", color="blue", weight=9]; 877 -> 314[label="",style="solid", color="blue", weight=3]; 878[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];258 -> 878[label="",style="solid", color="blue", weight=9]; 878 -> 315[label="",style="solid", color="blue", weight=3]; 879[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];258 -> 879[label="",style="solid", color="blue", weight=9]; 879 -> 316[label="",style="solid", color="blue", weight=3]; 210[label="primEqNat xx3000 xx4000",fontsize=16,color="burlywood",shape="triangle"];880[label="xx3000/Succ xx30000",fontsize=10,color="white",style="solid",shape="box"];210 -> 880[label="",style="solid", color="burlywood", weight=9]; 880 -> 317[label="",style="solid", color="burlywood", weight=3]; 881[label="xx3000/Zero",fontsize=10,color="white",style="solid",shape="box"];210 -> 881[label="",style="solid", color="burlywood", weight=9]; 881 -> 318[label="",style="solid", color="burlywood", weight=3]; 211[label="xx4000",fontsize=16,color="green",shape="box"];212[label="xx3000",fontsize=16,color="green",shape="box"];213 -> 68[label="",style="dashed", color="red", weight=0]; 213[label="xx3000 * xx4001 == xx3001 * xx4000",fontsize=16,color="magenta"];213 -> 319[label="",style="dashed", color="magenta", weight=3]; 213 -> 320[label="",style="dashed", color="magenta", weight=3]; 214 -> 68[label="",style="dashed", color="red", weight=0]; 214[label="xx3000 * xx4001 == xx3001 * xx4000",fontsize=16,color="magenta"];214 -> 321[label="",style="dashed", color="magenta", weight=3]; 214 -> 322[label="",style="dashed", color="magenta", weight=3]; 215[label="primEqInt (Pos (Succ xx30000)) (Pos xx4000)",fontsize=16,color="burlywood",shape="box"];882[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];215 -> 882[label="",style="solid", color="burlywood", weight=9]; 882 -> 323[label="",style="solid", color="burlywood", weight=3]; 883[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];215 -> 883[label="",style="solid", color="burlywood", weight=9]; 883 -> 324[label="",style="solid", color="burlywood", weight=3]; 216[label="primEqInt (Pos (Succ xx30000)) (Neg xx4000)",fontsize=16,color="black",shape="box"];216 -> 325[label="",style="solid", color="black", weight=3]; 217[label="primEqInt (Pos Zero) (Pos xx4000)",fontsize=16,color="burlywood",shape="box"];884[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];217 -> 884[label="",style="solid", color="burlywood", weight=9]; 884 -> 326[label="",style="solid", color="burlywood", weight=3]; 885[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];217 -> 885[label="",style="solid", color="burlywood", weight=9]; 885 -> 327[label="",style="solid", color="burlywood", weight=3]; 218[label="primEqInt (Pos Zero) (Neg xx4000)",fontsize=16,color="burlywood",shape="box"];886[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];218 -> 886[label="",style="solid", color="burlywood", weight=9]; 886 -> 328[label="",style="solid", color="burlywood", weight=3]; 887[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];218 -> 887[label="",style="solid", color="burlywood", weight=9]; 887 -> 329[label="",style="solid", color="burlywood", weight=3]; 219[label="primEqInt (Neg (Succ xx30000)) (Pos xx4000)",fontsize=16,color="black",shape="box"];219 -> 330[label="",style="solid", color="black", weight=3]; 220[label="primEqInt (Neg (Succ xx30000)) (Neg xx4000)",fontsize=16,color="burlywood",shape="box"];888[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];220 -> 888[label="",style="solid", color="burlywood", weight=9]; 888 -> 331[label="",style="solid", color="burlywood", weight=3]; 889[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];220 -> 889[label="",style="solid", color="burlywood", weight=9]; 889 -> 332[label="",style="solid", color="burlywood", weight=3]; 221[label="primEqInt (Neg Zero) (Pos xx4000)",fontsize=16,color="burlywood",shape="box"];890[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];221 -> 890[label="",style="solid", color="burlywood", weight=9]; 890 -> 333[label="",style="solid", color="burlywood", weight=3]; 891[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];221 -> 891[label="",style="solid", color="burlywood", weight=9]; 891 -> 334[label="",style="solid", color="burlywood", weight=3]; 222[label="primEqInt (Neg Zero) (Neg xx4000)",fontsize=16,color="burlywood",shape="box"];892[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];222 -> 892[label="",style="solid", color="burlywood", weight=9]; 892 -> 335[label="",style="solid", color="burlywood", weight=3]; 893[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];222 -> 893[label="",style="solid", color="burlywood", weight=9]; 893 -> 336[label="",style="solid", color="burlywood", weight=3]; 259 -> 69[label="",style="dashed", color="red", weight=0]; 259[label="xx3001 == xx4001",fontsize=16,color="magenta"];259 -> 337[label="",style="dashed", color="magenta", weight=3]; 259 -> 338[label="",style="dashed", color="magenta", weight=3]; 260[label="xx3000 == xx4000",fontsize=16,color="blue",shape="box"];894[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];260 -> 894[label="",style="solid", color="blue", weight=9]; 894 -> 339[label="",style="solid", color="blue", weight=3]; 895[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];260 -> 895[label="",style="solid", color="blue", weight=9]; 895 -> 340[label="",style="solid", color="blue", weight=3]; 896[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];260 -> 896[label="",style="solid", color="blue", weight=9]; 896 -> 341[label="",style="solid", color="blue", weight=3]; 897[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];260 -> 897[label="",style="solid", color="blue", weight=9]; 897 -> 342[label="",style="solid", color="blue", weight=3]; 898[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];260 -> 898[label="",style="solid", color="blue", weight=9]; 898 -> 343[label="",style="solid", color="blue", weight=3]; 899[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];260 -> 899[label="",style="solid", color="blue", weight=9]; 899 -> 344[label="",style="solid", color="blue", weight=3]; 900[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];260 -> 900[label="",style="solid", color="blue", weight=9]; 900 -> 345[label="",style="solid", color="blue", weight=3]; 901[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];260 -> 901[label="",style="solid", color="blue", weight=9]; 901 -> 346[label="",style="solid", color="blue", weight=3]; 902[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];260 -> 902[label="",style="solid", color="blue", weight=9]; 902 -> 347[label="",style="solid", color="blue", weight=3]; 903[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];260 -> 903[label="",style="solid", color="blue", weight=9]; 903 -> 348[label="",style="solid", color="blue", weight=3]; 904[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];260 -> 904[label="",style="solid", color="blue", weight=9]; 904 -> 349[label="",style="solid", color="blue", weight=3]; 905[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];260 -> 905[label="",style="solid", color="blue", weight=9]; 905 -> 350[label="",style="solid", color="blue", weight=3]; 906[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];260 -> 906[label="",style="solid", color="blue", weight=9]; 906 -> 351[label="",style="solid", color="blue", weight=3]; 907[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];260 -> 907[label="",style="solid", color="blue", weight=9]; 907 -> 352[label="",style="solid", color="blue", weight=3]; 223 -> 59[label="",style="dashed", color="red", weight=0]; 223[label="xx3000 == xx4000",fontsize=16,color="magenta"];223 -> 353[label="",style="dashed", color="magenta", weight=3]; 223 -> 354[label="",style="dashed", color="magenta", weight=3]; 224 -> 60[label="",style="dashed", color="red", weight=0]; 224[label="xx3000 == xx4000",fontsize=16,color="magenta"];224 -> 355[label="",style="dashed", color="magenta", weight=3]; 224 -> 356[label="",style="dashed", color="magenta", weight=3]; 225 -> 61[label="",style="dashed", color="red", weight=0]; 225[label="xx3000 == xx4000",fontsize=16,color="magenta"];225 -> 357[label="",style="dashed", color="magenta", weight=3]; 225 -> 358[label="",style="dashed", color="magenta", weight=3]; 226 -> 62[label="",style="dashed", color="red", weight=0]; 226[label="xx3000 == xx4000",fontsize=16,color="magenta"];226 -> 359[label="",style="dashed", color="magenta", weight=3]; 226 -> 360[label="",style="dashed", color="magenta", weight=3]; 227 -> 63[label="",style="dashed", color="red", weight=0]; 227[label="xx3000 == xx4000",fontsize=16,color="magenta"];227 -> 361[label="",style="dashed", color="magenta", weight=3]; 227 -> 362[label="",style="dashed", color="magenta", weight=3]; 228 -> 64[label="",style="dashed", color="red", weight=0]; 228[label="xx3000 == xx4000",fontsize=16,color="magenta"];228 -> 363[label="",style="dashed", color="magenta", weight=3]; 228 -> 364[label="",style="dashed", color="magenta", weight=3]; 229 -> 65[label="",style="dashed", color="red", weight=0]; 229[label="xx3000 == xx4000",fontsize=16,color="magenta"];229 -> 365[label="",style="dashed", color="magenta", weight=3]; 229 -> 366[label="",style="dashed", color="magenta", weight=3]; 230 -> 66[label="",style="dashed", color="red", weight=0]; 230[label="xx3000 == xx4000",fontsize=16,color="magenta"];230 -> 367[label="",style="dashed", color="magenta", weight=3]; 230 -> 368[label="",style="dashed", color="magenta", weight=3]; 231 -> 67[label="",style="dashed", color="red", weight=0]; 231[label="xx3000 == xx4000",fontsize=16,color="magenta"];231 -> 369[label="",style="dashed", color="magenta", weight=3]; 231 -> 370[label="",style="dashed", color="magenta", weight=3]; 232 -> 68[label="",style="dashed", color="red", weight=0]; 232[label="xx3000 == xx4000",fontsize=16,color="magenta"];232 -> 371[label="",style="dashed", color="magenta", weight=3]; 232 -> 372[label="",style="dashed", color="magenta", weight=3]; 233 -> 69[label="",style="dashed", color="red", weight=0]; 233[label="xx3000 == xx4000",fontsize=16,color="magenta"];233 -> 373[label="",style="dashed", color="magenta", weight=3]; 233 -> 374[label="",style="dashed", color="magenta", weight=3]; 234 -> 70[label="",style="dashed", color="red", weight=0]; 234[label="xx3000 == xx4000",fontsize=16,color="magenta"];234 -> 375[label="",style="dashed", color="magenta", weight=3]; 234 -> 376[label="",style="dashed", color="magenta", weight=3]; 235 -> 71[label="",style="dashed", color="red", weight=0]; 235[label="xx3000 == xx4000",fontsize=16,color="magenta"];235 -> 377[label="",style="dashed", color="magenta", weight=3]; 235 -> 378[label="",style="dashed", color="magenta", weight=3]; 236 -> 72[label="",style="dashed", color="red", weight=0]; 236[label="xx3000 == xx4000",fontsize=16,color="magenta"];236 -> 379[label="",style="dashed", color="magenta", weight=3]; 236 -> 380[label="",style="dashed", color="magenta", weight=3]; 237 -> 59[label="",style="dashed", color="red", weight=0]; 237[label="xx3000 == xx4000",fontsize=16,color="magenta"];237 -> 381[label="",style="dashed", color="magenta", weight=3]; 237 -> 382[label="",style="dashed", color="magenta", weight=3]; 238 -> 60[label="",style="dashed", color="red", weight=0]; 238[label="xx3000 == xx4000",fontsize=16,color="magenta"];238 -> 383[label="",style="dashed", color="magenta", weight=3]; 238 -> 384[label="",style="dashed", color="magenta", weight=3]; 239 -> 61[label="",style="dashed", color="red", weight=0]; 239[label="xx3000 == xx4000",fontsize=16,color="magenta"];239 -> 385[label="",style="dashed", color="magenta", weight=3]; 239 -> 386[label="",style="dashed", color="magenta", weight=3]; 240 -> 62[label="",style="dashed", color="red", weight=0]; 240[label="xx3000 == xx4000",fontsize=16,color="magenta"];240 -> 387[label="",style="dashed", color="magenta", weight=3]; 240 -> 388[label="",style="dashed", color="magenta", weight=3]; 241 -> 63[label="",style="dashed", color="red", weight=0]; 241[label="xx3000 == xx4000",fontsize=16,color="magenta"];241 -> 389[label="",style="dashed", color="magenta", weight=3]; 241 -> 390[label="",style="dashed", color="magenta", weight=3]; 242 -> 64[label="",style="dashed", color="red", weight=0]; 242[label="xx3000 == xx4000",fontsize=16,color="magenta"];242 -> 391[label="",style="dashed", color="magenta", weight=3]; 242 -> 392[label="",style="dashed", color="magenta", weight=3]; 243 -> 65[label="",style="dashed", color="red", weight=0]; 243[label="xx3000 == xx4000",fontsize=16,color="magenta"];243 -> 393[label="",style="dashed", color="magenta", weight=3]; 243 -> 394[label="",style="dashed", color="magenta", weight=3]; 244 -> 66[label="",style="dashed", color="red", weight=0]; 244[label="xx3000 == xx4000",fontsize=16,color="magenta"];244 -> 395[label="",style="dashed", color="magenta", weight=3]; 244 -> 396[label="",style="dashed", color="magenta", weight=3]; 245 -> 67[label="",style="dashed", color="red", weight=0]; 245[label="xx3000 == xx4000",fontsize=16,color="magenta"];245 -> 397[label="",style="dashed", color="magenta", weight=3]; 245 -> 398[label="",style="dashed", color="magenta", weight=3]; 246 -> 68[label="",style="dashed", color="red", weight=0]; 246[label="xx3000 == xx4000",fontsize=16,color="magenta"];246 -> 399[label="",style="dashed", color="magenta", weight=3]; 246 -> 400[label="",style="dashed", color="magenta", weight=3]; 247 -> 69[label="",style="dashed", color="red", weight=0]; 247[label="xx3000 == xx4000",fontsize=16,color="magenta"];247 -> 401[label="",style="dashed", color="magenta", weight=3]; 247 -> 402[label="",style="dashed", color="magenta", weight=3]; 248 -> 70[label="",style="dashed", color="red", weight=0]; 248[label="xx3000 == xx4000",fontsize=16,color="magenta"];248 -> 403[label="",style="dashed", color="magenta", weight=3]; 248 -> 404[label="",style="dashed", color="magenta", weight=3]; 249 -> 71[label="",style="dashed", color="red", weight=0]; 249[label="xx3000 == xx4000",fontsize=16,color="magenta"];249 -> 405[label="",style="dashed", color="magenta", weight=3]; 249 -> 406[label="",style="dashed", color="magenta", weight=3]; 250 -> 72[label="",style="dashed", color="red", weight=0]; 250[label="xx3000 == xx4000",fontsize=16,color="magenta"];250 -> 407[label="",style="dashed", color="magenta", weight=3]; 250 -> 408[label="",style="dashed", color="magenta", weight=3]; 261[label="xx3001 == xx4001",fontsize=16,color="blue",shape="box"];908[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];261 -> 908[label="",style="solid", color="blue", weight=9]; 908 -> 409[label="",style="solid", color="blue", weight=3]; 909[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];261 -> 909[label="",style="solid", color="blue", weight=9]; 909 -> 410[label="",style="solid", color="blue", weight=3]; 910[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];261 -> 910[label="",style="solid", color="blue", weight=9]; 910 -> 411[label="",style="solid", color="blue", weight=3]; 911[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];261 -> 911[label="",style="solid", color="blue", weight=9]; 911 -> 412[label="",style="solid", color="blue", weight=3]; 912[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];261 -> 912[label="",style="solid", color="blue", weight=9]; 912 -> 413[label="",style="solid", color="blue", weight=3]; 913[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];261 -> 913[label="",style="solid", color="blue", weight=9]; 913 -> 414[label="",style="solid", color="blue", weight=3]; 914[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];261 -> 914[label="",style="solid", color="blue", weight=9]; 914 -> 415[label="",style="solid", color="blue", weight=3]; 915[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];261 -> 915[label="",style="solid", color="blue", weight=9]; 915 -> 416[label="",style="solid", color="blue", weight=3]; 916[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];261 -> 916[label="",style="solid", color="blue", weight=9]; 916 -> 417[label="",style="solid", color="blue", weight=3]; 917[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];261 -> 917[label="",style="solid", color="blue", weight=9]; 917 -> 418[label="",style="solid", color="blue", weight=3]; 918[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];261 -> 918[label="",style="solid", color="blue", weight=9]; 918 -> 419[label="",style="solid", color="blue", weight=3]; 919[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];261 -> 919[label="",style="solid", color="blue", weight=9]; 919 -> 420[label="",style="solid", color="blue", weight=3]; 920[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];261 -> 920[label="",style="solid", color="blue", weight=9]; 920 -> 421[label="",style="solid", color="blue", weight=3]; 921[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];261 -> 921[label="",style="solid", color="blue", weight=9]; 921 -> 422[label="",style="solid", color="blue", weight=3]; 262[label="xx3000 == xx4000",fontsize=16,color="blue",shape="box"];922[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];262 -> 922[label="",style="solid", color="blue", weight=9]; 922 -> 423[label="",style="solid", color="blue", weight=3]; 923[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];262 -> 923[label="",style="solid", color="blue", weight=9]; 923 -> 424[label="",style="solid", color="blue", weight=3]; 924[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];262 -> 924[label="",style="solid", color="blue", weight=9]; 924 -> 425[label="",style="solid", color="blue", weight=3]; 925[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];262 -> 925[label="",style="solid", color="blue", weight=9]; 925 -> 426[label="",style="solid", color="blue", weight=3]; 926[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];262 -> 926[label="",style="solid", color="blue", weight=9]; 926 -> 427[label="",style="solid", color="blue", weight=3]; 927[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];262 -> 927[label="",style="solid", color="blue", weight=9]; 927 -> 428[label="",style="solid", color="blue", weight=3]; 928[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];262 -> 928[label="",style="solid", color="blue", weight=9]; 928 -> 429[label="",style="solid", color="blue", weight=3]; 929[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];262 -> 929[label="",style="solid", color="blue", weight=9]; 929 -> 430[label="",style="solid", color="blue", weight=3]; 930[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];262 -> 930[label="",style="solid", color="blue", weight=9]; 930 -> 431[label="",style="solid", color="blue", weight=3]; 931[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];262 -> 931[label="",style="solid", color="blue", weight=9]; 931 -> 432[label="",style="solid", color="blue", weight=3]; 932[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];262 -> 932[label="",style="solid", color="blue", weight=9]; 932 -> 433[label="",style="solid", color="blue", weight=3]; 933[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];262 -> 933[label="",style="solid", color="blue", weight=9]; 933 -> 434[label="",style="solid", color="blue", weight=3]; 934[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];262 -> 934[label="",style="solid", color="blue", weight=9]; 934 -> 435[label="",style="solid", color="blue", weight=3]; 935[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];262 -> 935[label="",style="solid", color="blue", weight=9]; 935 -> 436[label="",style="solid", color="blue", weight=3]; 251[label="xx14",fontsize=16,color="green",shape="box"];267 -> 64[label="",style="dashed", color="red", weight=0]; 267[label="xx3001 == xx4001",fontsize=16,color="magenta"];267 -> 437[label="",style="dashed", color="magenta", weight=3]; 267 -> 438[label="",style="dashed", color="magenta", weight=3]; 268 -> 68[label="",style="dashed", color="red", weight=0]; 268[label="xx3001 == xx4001",fontsize=16,color="magenta"];268 -> 439[label="",style="dashed", color="magenta", weight=3]; 268 -> 440[label="",style="dashed", color="magenta", weight=3]; 269 -> 64[label="",style="dashed", color="red", weight=0]; 269[label="xx3000 == xx4000",fontsize=16,color="magenta"];269 -> 441[label="",style="dashed", color="magenta", weight=3]; 269 -> 442[label="",style="dashed", color="magenta", weight=3]; 270 -> 68[label="",style="dashed", color="red", weight=0]; 270[label="xx3000 == xx4000",fontsize=16,color="magenta"];270 -> 443[label="",style="dashed", color="magenta", weight=3]; 270 -> 444[label="",style="dashed", color="magenta", weight=3]; 271[label="False && xx27",fontsize=16,color="black",shape="box"];271 -> 445[label="",style="solid", color="black", weight=3]; 272[label="True && xx27",fontsize=16,color="black",shape="box"];272 -> 446[label="",style="solid", color="black", weight=3]; 273[label="xx4000",fontsize=16,color="green",shape="box"];274[label="xx3000",fontsize=16,color="green",shape="box"];275[label="xx4000",fontsize=16,color="green",shape="box"];276[label="xx3000",fontsize=16,color="green",shape="box"];277[label="xx4000",fontsize=16,color="green",shape="box"];278[label="xx3000",fontsize=16,color="green",shape="box"];279[label="xx4000",fontsize=16,color="green",shape="box"];280[label="xx3000",fontsize=16,color="green",shape="box"];281[label="xx4000",fontsize=16,color="green",shape="box"];282[label="xx3000",fontsize=16,color="green",shape="box"];283[label="xx4000",fontsize=16,color="green",shape="box"];284[label="xx3000",fontsize=16,color="green",shape="box"];285[label="xx4000",fontsize=16,color="green",shape="box"];286[label="xx3000",fontsize=16,color="green",shape="box"];287[label="xx4000",fontsize=16,color="green",shape="box"];288[label="xx3000",fontsize=16,color="green",shape="box"];289[label="xx4000",fontsize=16,color="green",shape="box"];290[label="xx3000",fontsize=16,color="green",shape="box"];291[label="xx4000",fontsize=16,color="green",shape="box"];292[label="xx3000",fontsize=16,color="green",shape="box"];293[label="xx4000",fontsize=16,color="green",shape="box"];294[label="xx3000",fontsize=16,color="green",shape="box"];295[label="xx4000",fontsize=16,color="green",shape="box"];296[label="xx3000",fontsize=16,color="green",shape="box"];297[label="xx4000",fontsize=16,color="green",shape="box"];298[label="xx3000",fontsize=16,color="green",shape="box"];299[label="xx4000",fontsize=16,color="green",shape="box"];300[label="xx3000",fontsize=16,color="green",shape="box"];301[label="xx3002 == xx4002",fontsize=16,color="blue",shape="box"];936[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];301 -> 936[label="",style="solid", color="blue", weight=9]; 936 -> 447[label="",style="solid", color="blue", weight=3]; 937[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];301 -> 937[label="",style="solid", color="blue", weight=9]; 937 -> 448[label="",style="solid", color="blue", weight=3]; 938[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];301 -> 938[label="",style="solid", color="blue", weight=9]; 938 -> 449[label="",style="solid", color="blue", weight=3]; 939[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];301 -> 939[label="",style="solid", color="blue", weight=9]; 939 -> 450[label="",style="solid", color="blue", weight=3]; 940[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];301 -> 940[label="",style="solid", color="blue", weight=9]; 940 -> 451[label="",style="solid", color="blue", weight=3]; 941[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];301 -> 941[label="",style="solid", color="blue", weight=9]; 941 -> 452[label="",style="solid", color="blue", weight=3]; 942[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];301 -> 942[label="",style="solid", color="blue", weight=9]; 942 -> 453[label="",style="solid", color="blue", weight=3]; 943[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];301 -> 943[label="",style="solid", color="blue", weight=9]; 943 -> 454[label="",style="solid", color="blue", weight=3]; 944[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];301 -> 944[label="",style="solid", color="blue", weight=9]; 944 -> 455[label="",style="solid", color="blue", weight=3]; 945[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];301 -> 945[label="",style="solid", color="blue", weight=9]; 945 -> 456[label="",style="solid", color="blue", weight=3]; 946[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];301 -> 946[label="",style="solid", color="blue", weight=9]; 946 -> 457[label="",style="solid", color="blue", weight=3]; 947[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];301 -> 947[label="",style="solid", color="blue", weight=9]; 947 -> 458[label="",style="solid", color="blue", weight=3]; 948[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];301 -> 948[label="",style="solid", color="blue", weight=9]; 948 -> 459[label="",style="solid", color="blue", weight=3]; 949[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];301 -> 949[label="",style="solid", color="blue", weight=9]; 949 -> 460[label="",style="solid", color="blue", weight=3]; 302[label="xx3001 == xx4001",fontsize=16,color="blue",shape="box"];950[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];302 -> 950[label="",style="solid", color="blue", weight=9]; 950 -> 461[label="",style="solid", color="blue", weight=3]; 951[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];302 -> 951[label="",style="solid", color="blue", weight=9]; 951 -> 462[label="",style="solid", color="blue", weight=3]; 952[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];302 -> 952[label="",style="solid", color="blue", weight=9]; 952 -> 463[label="",style="solid", color="blue", weight=3]; 953[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];302 -> 953[label="",style="solid", color="blue", weight=9]; 953 -> 464[label="",style="solid", color="blue", weight=3]; 954[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];302 -> 954[label="",style="solid", color="blue", weight=9]; 954 -> 465[label="",style="solid", color="blue", weight=3]; 955[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];302 -> 955[label="",style="solid", color="blue", weight=9]; 955 -> 466[label="",style="solid", color="blue", weight=3]; 956[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];302 -> 956[label="",style="solid", color="blue", weight=9]; 956 -> 467[label="",style="solid", color="blue", weight=3]; 957[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];302 -> 957[label="",style="solid", color="blue", weight=9]; 957 -> 468[label="",style="solid", color="blue", weight=3]; 958[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];302 -> 958[label="",style="solid", color="blue", weight=9]; 958 -> 469[label="",style="solid", color="blue", weight=3]; 959[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];302 -> 959[label="",style="solid", color="blue", weight=9]; 959 -> 470[label="",style="solid", color="blue", weight=3]; 960[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];302 -> 960[label="",style="solid", color="blue", weight=9]; 960 -> 471[label="",style="solid", color="blue", weight=3]; 961[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];302 -> 961[label="",style="solid", color="blue", weight=9]; 961 -> 472[label="",style="solid", color="blue", weight=3]; 962[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];302 -> 962[label="",style="solid", color="blue", weight=9]; 962 -> 473[label="",style="solid", color="blue", weight=3]; 963[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];302 -> 963[label="",style="solid", color="blue", weight=9]; 963 -> 474[label="",style="solid", color="blue", weight=3]; 303 -> 59[label="",style="dashed", color="red", weight=0]; 303[label="xx3000 == xx4000",fontsize=16,color="magenta"];303 -> 475[label="",style="dashed", color="magenta", weight=3]; 303 -> 476[label="",style="dashed", color="magenta", weight=3]; 304 -> 60[label="",style="dashed", color="red", weight=0]; 304[label="xx3000 == xx4000",fontsize=16,color="magenta"];304 -> 477[label="",style="dashed", color="magenta", weight=3]; 304 -> 478[label="",style="dashed", color="magenta", weight=3]; 305 -> 61[label="",style="dashed", color="red", weight=0]; 305[label="xx3000 == xx4000",fontsize=16,color="magenta"];305 -> 479[label="",style="dashed", color="magenta", weight=3]; 305 -> 480[label="",style="dashed", color="magenta", weight=3]; 306 -> 62[label="",style="dashed", color="red", weight=0]; 306[label="xx3000 == xx4000",fontsize=16,color="magenta"];306 -> 481[label="",style="dashed", color="magenta", weight=3]; 306 -> 482[label="",style="dashed", color="magenta", weight=3]; 307 -> 63[label="",style="dashed", color="red", weight=0]; 307[label="xx3000 == xx4000",fontsize=16,color="magenta"];307 -> 483[label="",style="dashed", color="magenta", weight=3]; 307 -> 484[label="",style="dashed", color="magenta", weight=3]; 308 -> 64[label="",style="dashed", color="red", weight=0]; 308[label="xx3000 == xx4000",fontsize=16,color="magenta"];308 -> 485[label="",style="dashed", color="magenta", weight=3]; 308 -> 486[label="",style="dashed", color="magenta", weight=3]; 309 -> 65[label="",style="dashed", color="red", weight=0]; 309[label="xx3000 == xx4000",fontsize=16,color="magenta"];309 -> 487[label="",style="dashed", color="magenta", weight=3]; 309 -> 488[label="",style="dashed", color="magenta", weight=3]; 310 -> 66[label="",style="dashed", color="red", weight=0]; 310[label="xx3000 == xx4000",fontsize=16,color="magenta"];310 -> 489[label="",style="dashed", color="magenta", weight=3]; 310 -> 490[label="",style="dashed", color="magenta", weight=3]; 311 -> 67[label="",style="dashed", color="red", weight=0]; 311[label="xx3000 == xx4000",fontsize=16,color="magenta"];311 -> 491[label="",style="dashed", color="magenta", weight=3]; 311 -> 492[label="",style="dashed", color="magenta", weight=3]; 312 -> 68[label="",style="dashed", color="red", weight=0]; 312[label="xx3000 == xx4000",fontsize=16,color="magenta"];312 -> 493[label="",style="dashed", color="magenta", weight=3]; 312 -> 494[label="",style="dashed", color="magenta", weight=3]; 313 -> 69[label="",style="dashed", color="red", weight=0]; 313[label="xx3000 == xx4000",fontsize=16,color="magenta"];313 -> 495[label="",style="dashed", color="magenta", weight=3]; 313 -> 496[label="",style="dashed", color="magenta", weight=3]; 314 -> 70[label="",style="dashed", color="red", weight=0]; 314[label="xx3000 == xx4000",fontsize=16,color="magenta"];314 -> 497[label="",style="dashed", color="magenta", weight=3]; 314 -> 498[label="",style="dashed", color="magenta", weight=3]; 315 -> 71[label="",style="dashed", color="red", weight=0]; 315[label="xx3000 == xx4000",fontsize=16,color="magenta"];315 -> 499[label="",style="dashed", color="magenta", weight=3]; 315 -> 500[label="",style="dashed", color="magenta", weight=3]; 316 -> 72[label="",style="dashed", color="red", weight=0]; 316[label="xx3000 == xx4000",fontsize=16,color="magenta"];316 -> 501[label="",style="dashed", color="magenta", weight=3]; 316 -> 502[label="",style="dashed", color="magenta", weight=3]; 317[label="primEqNat (Succ xx30000) xx4000",fontsize=16,color="burlywood",shape="box"];964[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];317 -> 964[label="",style="solid", color="burlywood", weight=9]; 964 -> 503[label="",style="solid", color="burlywood", weight=3]; 965[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];317 -> 965[label="",style="solid", color="burlywood", weight=9]; 965 -> 504[label="",style="solid", color="burlywood", weight=3]; 318[label="primEqNat Zero xx4000",fontsize=16,color="burlywood",shape="box"];966[label="xx4000/Succ xx40000",fontsize=10,color="white",style="solid",shape="box"];318 -> 966[label="",style="solid", color="burlywood", weight=9]; 966 -> 505[label="",style="solid", color="burlywood", weight=3]; 967[label="xx4000/Zero",fontsize=10,color="white",style="solid",shape="box"];318 -> 967[label="",style="solid", color="burlywood", weight=9]; 967 -> 506[label="",style="solid", color="burlywood", weight=3]; 319[label="xx3001 * xx4000",fontsize=16,color="black",shape="triangle"];319 -> 507[label="",style="solid", color="black", weight=3]; 320 -> 319[label="",style="dashed", color="red", weight=0]; 320[label="xx3000 * xx4001",fontsize=16,color="magenta"];320 -> 508[label="",style="dashed", color="magenta", weight=3]; 320 -> 509[label="",style="dashed", color="magenta", weight=3]; 321 -> 319[label="",style="dashed", color="red", weight=0]; 321[label="xx3001 * xx4000",fontsize=16,color="magenta"];321 -> 510[label="",style="dashed", color="magenta", weight=3]; 321 -> 511[label="",style="dashed", color="magenta", weight=3]; 322 -> 319[label="",style="dashed", color="red", weight=0]; 322[label="xx3000 * xx4001",fontsize=16,color="magenta"];322 -> 512[label="",style="dashed", color="magenta", weight=3]; 322 -> 513[label="",style="dashed", color="magenta", weight=3]; 323[label="primEqInt (Pos (Succ xx30000)) (Pos (Succ xx40000))",fontsize=16,color="black",shape="box"];323 -> 514[label="",style="solid", color="black", weight=3]; 324[label="primEqInt (Pos (Succ xx30000)) (Pos Zero)",fontsize=16,color="black",shape="box"];324 -> 515[label="",style="solid", color="black", weight=3]; 325[label="False",fontsize=16,color="green",shape="box"];326[label="primEqInt (Pos Zero) (Pos (Succ xx40000))",fontsize=16,color="black",shape="box"];326 -> 516[label="",style="solid", color="black", weight=3]; 327[label="primEqInt (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];327 -> 517[label="",style="solid", color="black", weight=3]; 328[label="primEqInt (Pos Zero) (Neg (Succ xx40000))",fontsize=16,color="black",shape="box"];328 -> 518[label="",style="solid", color="black", weight=3]; 329[label="primEqInt (Pos Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];329 -> 519[label="",style="solid", color="black", weight=3]; 330[label="False",fontsize=16,color="green",shape="box"];331[label="primEqInt (Neg (Succ xx30000)) (Neg (Succ xx40000))",fontsize=16,color="black",shape="box"];331 -> 520[label="",style="solid", color="black", weight=3]; 332[label="primEqInt (Neg (Succ xx30000)) (Neg Zero)",fontsize=16,color="black",shape="box"];332 -> 521[label="",style="solid", color="black", weight=3]; 333[label="primEqInt (Neg Zero) (Pos (Succ xx40000))",fontsize=16,color="black",shape="box"];333 -> 522[label="",style="solid", color="black", weight=3]; 334[label="primEqInt (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];334 -> 523[label="",style="solid", color="black", weight=3]; 335[label="primEqInt (Neg Zero) (Neg (Succ xx40000))",fontsize=16,color="black",shape="box"];335 -> 524[label="",style="solid", color="black", weight=3]; 336[label="primEqInt (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];336 -> 525[label="",style="solid", color="black", weight=3]; 337[label="xx4001",fontsize=16,color="green",shape="box"];338[label="xx3001",fontsize=16,color="green",shape="box"];339 -> 59[label="",style="dashed", color="red", weight=0]; 339[label="xx3000 == xx4000",fontsize=16,color="magenta"];339 -> 526[label="",style="dashed", color="magenta", weight=3]; 339 -> 527[label="",style="dashed", color="magenta", weight=3]; 340 -> 60[label="",style="dashed", color="red", weight=0]; 340[label="xx3000 == xx4000",fontsize=16,color="magenta"];340 -> 528[label="",style="dashed", color="magenta", weight=3]; 340 -> 529[label="",style="dashed", color="magenta", weight=3]; 341 -> 61[label="",style="dashed", color="red", weight=0]; 341[label="xx3000 == xx4000",fontsize=16,color="magenta"];341 -> 530[label="",style="dashed", color="magenta", weight=3]; 341 -> 531[label="",style="dashed", color="magenta", weight=3]; 342 -> 62[label="",style="dashed", color="red", weight=0]; 342[label="xx3000 == xx4000",fontsize=16,color="magenta"];342 -> 532[label="",style="dashed", color="magenta", weight=3]; 342 -> 533[label="",style="dashed", color="magenta", weight=3]; 343 -> 63[label="",style="dashed", color="red", weight=0]; 343[label="xx3000 == xx4000",fontsize=16,color="magenta"];343 -> 534[label="",style="dashed", color="magenta", weight=3]; 343 -> 535[label="",style="dashed", color="magenta", weight=3]; 344 -> 64[label="",style="dashed", color="red", weight=0]; 344[label="xx3000 == xx4000",fontsize=16,color="magenta"];344 -> 536[label="",style="dashed", color="magenta", weight=3]; 344 -> 537[label="",style="dashed", color="magenta", weight=3]; 345 -> 65[label="",style="dashed", color="red", weight=0]; 345[label="xx3000 == xx4000",fontsize=16,color="magenta"];345 -> 538[label="",style="dashed", color="magenta", weight=3]; 345 -> 539[label="",style="dashed", color="magenta", weight=3]; 346 -> 66[label="",style="dashed", color="red", weight=0]; 346[label="xx3000 == xx4000",fontsize=16,color="magenta"];346 -> 540[label="",style="dashed", color="magenta", weight=3]; 346 -> 541[label="",style="dashed", color="magenta", weight=3]; 347 -> 67[label="",style="dashed", color="red", weight=0]; 347[label="xx3000 == xx4000",fontsize=16,color="magenta"];347 -> 542[label="",style="dashed", color="magenta", weight=3]; 347 -> 543[label="",style="dashed", color="magenta", weight=3]; 348 -> 68[label="",style="dashed", color="red", weight=0]; 348[label="xx3000 == xx4000",fontsize=16,color="magenta"];348 -> 544[label="",style="dashed", color="magenta", weight=3]; 348 -> 545[label="",style="dashed", color="magenta", weight=3]; 349 -> 69[label="",style="dashed", color="red", weight=0]; 349[label="xx3000 == xx4000",fontsize=16,color="magenta"];349 -> 546[label="",style="dashed", color="magenta", weight=3]; 349 -> 547[label="",style="dashed", color="magenta", weight=3]; 350 -> 70[label="",style="dashed", color="red", weight=0]; 350[label="xx3000 == xx4000",fontsize=16,color="magenta"];350 -> 548[label="",style="dashed", color="magenta", weight=3]; 350 -> 549[label="",style="dashed", color="magenta", weight=3]; 351 -> 71[label="",style="dashed", color="red", weight=0]; 351[label="xx3000 == xx4000",fontsize=16,color="magenta"];351 -> 550[label="",style="dashed", color="magenta", weight=3]; 351 -> 551[label="",style="dashed", color="magenta", weight=3]; 352 -> 72[label="",style="dashed", color="red", weight=0]; 352[label="xx3000 == xx4000",fontsize=16,color="magenta"];352 -> 552[label="",style="dashed", color="magenta", weight=3]; 352 -> 553[label="",style="dashed", color="magenta", weight=3]; 353[label="xx4000",fontsize=16,color="green",shape="box"];354[label="xx3000",fontsize=16,color="green",shape="box"];355[label="xx4000",fontsize=16,color="green",shape="box"];356[label="xx3000",fontsize=16,color="green",shape="box"];357[label="xx4000",fontsize=16,color="green",shape="box"];358[label="xx3000",fontsize=16,color="green",shape="box"];359[label="xx4000",fontsize=16,color="green",shape="box"];360[label="xx3000",fontsize=16,color="green",shape="box"];361[label="xx4000",fontsize=16,color="green",shape="box"];362[label="xx3000",fontsize=16,color="green",shape="box"];363[label="xx4000",fontsize=16,color="green",shape="box"];364[label="xx3000",fontsize=16,color="green",shape="box"];365[label="xx4000",fontsize=16,color="green",shape="box"];366[label="xx3000",fontsize=16,color="green",shape="box"];367[label="xx4000",fontsize=16,color="green",shape="box"];368[label="xx3000",fontsize=16,color="green",shape="box"];369[label="xx4000",fontsize=16,color="green",shape="box"];370[label="xx3000",fontsize=16,color="green",shape="box"];371[label="xx4000",fontsize=16,color="green",shape="box"];372[label="xx3000",fontsize=16,color="green",shape="box"];373[label="xx4000",fontsize=16,color="green",shape="box"];374[label="xx3000",fontsize=16,color="green",shape="box"];375[label="xx4000",fontsize=16,color="green",shape="box"];376[label="xx3000",fontsize=16,color="green",shape="box"];377[label="xx4000",fontsize=16,color="green",shape="box"];378[label="xx3000",fontsize=16,color="green",shape="box"];379[label="xx4000",fontsize=16,color="green",shape="box"];380[label="xx3000",fontsize=16,color="green",shape="box"];381[label="xx4000",fontsize=16,color="green",shape="box"];382[label="xx3000",fontsize=16,color="green",shape="box"];383[label="xx4000",fontsize=16,color="green",shape="box"];384[label="xx3000",fontsize=16,color="green",shape="box"];385[label="xx4000",fontsize=16,color="green",shape="box"];386[label="xx3000",fontsize=16,color="green",shape="box"];387[label="xx4000",fontsize=16,color="green",shape="box"];388[label="xx3000",fontsize=16,color="green",shape="box"];389[label="xx4000",fontsize=16,color="green",shape="box"];390[label="xx3000",fontsize=16,color="green",shape="box"];391[label="xx4000",fontsize=16,color="green",shape="box"];392[label="xx3000",fontsize=16,color="green",shape="box"];393[label="xx4000",fontsize=16,color="green",shape="box"];394[label="xx3000",fontsize=16,color="green",shape="box"];395[label="xx4000",fontsize=16,color="green",shape="box"];396[label="xx3000",fontsize=16,color="green",shape="box"];397[label="xx4000",fontsize=16,color="green",shape="box"];398[label="xx3000",fontsize=16,color="green",shape="box"];399[label="xx4000",fontsize=16,color="green",shape="box"];400[label="xx3000",fontsize=16,color="green",shape="box"];401[label="xx4000",fontsize=16,color="green",shape="box"];402[label="xx3000",fontsize=16,color="green",shape="box"];403[label="xx4000",fontsize=16,color="green",shape="box"];404[label="xx3000",fontsize=16,color="green",shape="box"];405[label="xx4000",fontsize=16,color="green",shape="box"];406[label="xx3000",fontsize=16,color="green",shape="box"];407[label="xx4000",fontsize=16,color="green",shape="box"];408[label="xx3000",fontsize=16,color="green",shape="box"];409 -> 59[label="",style="dashed", color="red", weight=0]; 409[label="xx3001 == xx4001",fontsize=16,color="magenta"];409 -> 554[label="",style="dashed", color="magenta", weight=3]; 409 -> 555[label="",style="dashed", color="magenta", weight=3]; 410 -> 60[label="",style="dashed", color="red", weight=0]; 410[label="xx3001 == xx4001",fontsize=16,color="magenta"];410 -> 556[label="",style="dashed", color="magenta", weight=3]; 410 -> 557[label="",style="dashed", color="magenta", weight=3]; 411 -> 61[label="",style="dashed", color="red", weight=0]; 411[label="xx3001 == xx4001",fontsize=16,color="magenta"];411 -> 558[label="",style="dashed", color="magenta", weight=3]; 411 -> 559[label="",style="dashed", color="magenta", weight=3]; 412 -> 62[label="",style="dashed", color="red", weight=0]; 412[label="xx3001 == xx4001",fontsize=16,color="magenta"];412 -> 560[label="",style="dashed", color="magenta", weight=3]; 412 -> 561[label="",style="dashed", color="magenta", weight=3]; 413 -> 63[label="",style="dashed", color="red", weight=0]; 413[label="xx3001 == xx4001",fontsize=16,color="magenta"];413 -> 562[label="",style="dashed", color="magenta", weight=3]; 413 -> 563[label="",style="dashed", color="magenta", weight=3]; 414 -> 64[label="",style="dashed", color="red", weight=0]; 414[label="xx3001 == xx4001",fontsize=16,color="magenta"];414 -> 564[label="",style="dashed", color="magenta", weight=3]; 414 -> 565[label="",style="dashed", color="magenta", weight=3]; 415 -> 65[label="",style="dashed", color="red", weight=0]; 415[label="xx3001 == xx4001",fontsize=16,color="magenta"];415 -> 566[label="",style="dashed", color="magenta", weight=3]; 415 -> 567[label="",style="dashed", color="magenta", weight=3]; 416 -> 66[label="",style="dashed", color="red", weight=0]; 416[label="xx3001 == xx4001",fontsize=16,color="magenta"];416 -> 568[label="",style="dashed", color="magenta", weight=3]; 416 -> 569[label="",style="dashed", color="magenta", weight=3]; 417 -> 67[label="",style="dashed", color="red", weight=0]; 417[label="xx3001 == xx4001",fontsize=16,color="magenta"];417 -> 570[label="",style="dashed", color="magenta", weight=3]; 417 -> 571[label="",style="dashed", color="magenta", weight=3]; 418 -> 68[label="",style="dashed", color="red", weight=0]; 418[label="xx3001 == xx4001",fontsize=16,color="magenta"];418 -> 572[label="",style="dashed", color="magenta", weight=3]; 418 -> 573[label="",style="dashed", color="magenta", weight=3]; 419 -> 69[label="",style="dashed", color="red", weight=0]; 419[label="xx3001 == xx4001",fontsize=16,color="magenta"];419 -> 574[label="",style="dashed", color="magenta", weight=3]; 419 -> 575[label="",style="dashed", color="magenta", weight=3]; 420 -> 70[label="",style="dashed", color="red", weight=0]; 420[label="xx3001 == xx4001",fontsize=16,color="magenta"];420 -> 576[label="",style="dashed", color="magenta", weight=3]; 420 -> 577[label="",style="dashed", color="magenta", weight=3]; 421 -> 71[label="",style="dashed", color="red", weight=0]; 421[label="xx3001 == xx4001",fontsize=16,color="magenta"];421 -> 578[label="",style="dashed", color="magenta", weight=3]; 421 -> 579[label="",style="dashed", color="magenta", weight=3]; 422 -> 72[label="",style="dashed", color="red", weight=0]; 422[label="xx3001 == xx4001",fontsize=16,color="magenta"];422 -> 580[label="",style="dashed", color="magenta", weight=3]; 422 -> 581[label="",style="dashed", color="magenta", weight=3]; 423 -> 59[label="",style="dashed", color="red", weight=0]; 423[label="xx3000 == xx4000",fontsize=16,color="magenta"];423 -> 582[label="",style="dashed", color="magenta", weight=3]; 423 -> 583[label="",style="dashed", color="magenta", weight=3]; 424 -> 60[label="",style="dashed", color="red", weight=0]; 424[label="xx3000 == xx4000",fontsize=16,color="magenta"];424 -> 584[label="",style="dashed", color="magenta", weight=3]; 424 -> 585[label="",style="dashed", color="magenta", weight=3]; 425 -> 61[label="",style="dashed", color="red", weight=0]; 425[label="xx3000 == xx4000",fontsize=16,color="magenta"];425 -> 586[label="",style="dashed", color="magenta", weight=3]; 425 -> 587[label="",style="dashed", color="magenta", weight=3]; 426 -> 62[label="",style="dashed", color="red", weight=0]; 426[label="xx3000 == xx4000",fontsize=16,color="magenta"];426 -> 588[label="",style="dashed", color="magenta", weight=3]; 426 -> 589[label="",style="dashed", color="magenta", weight=3]; 427 -> 63[label="",style="dashed", color="red", weight=0]; 427[label="xx3000 == xx4000",fontsize=16,color="magenta"];427 -> 590[label="",style="dashed", color="magenta", weight=3]; 427 -> 591[label="",style="dashed", color="magenta", weight=3]; 428 -> 64[label="",style="dashed", color="red", weight=0]; 428[label="xx3000 == xx4000",fontsize=16,color="magenta"];428 -> 592[label="",style="dashed", color="magenta", weight=3]; 428 -> 593[label="",style="dashed", color="magenta", weight=3]; 429 -> 65[label="",style="dashed", color="red", weight=0]; 429[label="xx3000 == xx4000",fontsize=16,color="magenta"];429 -> 594[label="",style="dashed", color="magenta", weight=3]; 429 -> 595[label="",style="dashed", color="magenta", weight=3]; 430 -> 66[label="",style="dashed", color="red", weight=0]; 430[label="xx3000 == xx4000",fontsize=16,color="magenta"];430 -> 596[label="",style="dashed", color="magenta", weight=3]; 430 -> 597[label="",style="dashed", color="magenta", weight=3]; 431 -> 67[label="",style="dashed", color="red", weight=0]; 431[label="xx3000 == xx4000",fontsize=16,color="magenta"];431 -> 598[label="",style="dashed", color="magenta", weight=3]; 431 -> 599[label="",style="dashed", color="magenta", weight=3]; 432 -> 68[label="",style="dashed", color="red", weight=0]; 432[label="xx3000 == xx4000",fontsize=16,color="magenta"];432 -> 600[label="",style="dashed", color="magenta", weight=3]; 432 -> 601[label="",style="dashed", color="magenta", weight=3]; 433 -> 69[label="",style="dashed", color="red", weight=0]; 433[label="xx3000 == xx4000",fontsize=16,color="magenta"];433 -> 602[label="",style="dashed", color="magenta", weight=3]; 433 -> 603[label="",style="dashed", color="magenta", weight=3]; 434 -> 70[label="",style="dashed", color="red", weight=0]; 434[label="xx3000 == xx4000",fontsize=16,color="magenta"];434 -> 604[label="",style="dashed", color="magenta", weight=3]; 434 -> 605[label="",style="dashed", color="magenta", weight=3]; 435 -> 71[label="",style="dashed", color="red", weight=0]; 435[label="xx3000 == xx4000",fontsize=16,color="magenta"];435 -> 606[label="",style="dashed", color="magenta", weight=3]; 435 -> 607[label="",style="dashed", color="magenta", weight=3]; 436 -> 72[label="",style="dashed", color="red", weight=0]; 436[label="xx3000 == xx4000",fontsize=16,color="magenta"];436 -> 608[label="",style="dashed", color="magenta", weight=3]; 436 -> 609[label="",style="dashed", color="magenta", weight=3]; 437[label="xx4001",fontsize=16,color="green",shape="box"];438[label="xx3001",fontsize=16,color="green",shape="box"];439[label="xx4001",fontsize=16,color="green",shape="box"];440[label="xx3001",fontsize=16,color="green",shape="box"];441[label="xx4000",fontsize=16,color="green",shape="box"];442[label="xx3000",fontsize=16,color="green",shape="box"];443[label="xx4000",fontsize=16,color="green",shape="box"];444[label="xx3000",fontsize=16,color="green",shape="box"];445[label="False",fontsize=16,color="green",shape="box"];446[label="xx27",fontsize=16,color="green",shape="box"];447 -> 59[label="",style="dashed", color="red", weight=0]; 447[label="xx3002 == xx4002",fontsize=16,color="magenta"];447 -> 610[label="",style="dashed", color="magenta", weight=3]; 447 -> 611[label="",style="dashed", color="magenta", weight=3]; 448 -> 60[label="",style="dashed", color="red", weight=0]; 448[label="xx3002 == xx4002",fontsize=16,color="magenta"];448 -> 612[label="",style="dashed", color="magenta", weight=3]; 448 -> 613[label="",style="dashed", color="magenta", weight=3]; 449 -> 61[label="",style="dashed", color="red", weight=0]; 449[label="xx3002 == xx4002",fontsize=16,color="magenta"];449 -> 614[label="",style="dashed", color="magenta", weight=3]; 449 -> 615[label="",style="dashed", color="magenta", weight=3]; 450 -> 62[label="",style="dashed", color="red", weight=0]; 450[label="xx3002 == xx4002",fontsize=16,color="magenta"];450 -> 616[label="",style="dashed", color="magenta", weight=3]; 450 -> 617[label="",style="dashed", color="magenta", weight=3]; 451 -> 63[label="",style="dashed", color="red", weight=0]; 451[label="xx3002 == xx4002",fontsize=16,color="magenta"];451 -> 618[label="",style="dashed", color="magenta", weight=3]; 451 -> 619[label="",style="dashed", color="magenta", weight=3]; 452 -> 64[label="",style="dashed", color="red", weight=0]; 452[label="xx3002 == xx4002",fontsize=16,color="magenta"];452 -> 620[label="",style="dashed", color="magenta", weight=3]; 452 -> 621[label="",style="dashed", color="magenta", weight=3]; 453 -> 65[label="",style="dashed", color="red", weight=0]; 453[label="xx3002 == xx4002",fontsize=16,color="magenta"];453 -> 622[label="",style="dashed", color="magenta", weight=3]; 453 -> 623[label="",style="dashed", color="magenta", weight=3]; 454 -> 66[label="",style="dashed", color="red", weight=0]; 454[label="xx3002 == xx4002",fontsize=16,color="magenta"];454 -> 624[label="",style="dashed", color="magenta", weight=3]; 454 -> 625[label="",style="dashed", color="magenta", weight=3]; 455 -> 67[label="",style="dashed", color="red", weight=0]; 455[label="xx3002 == xx4002",fontsize=16,color="magenta"];455 -> 626[label="",style="dashed", color="magenta", weight=3]; 455 -> 627[label="",style="dashed", color="magenta", weight=3]; 456 -> 68[label="",style="dashed", color="red", weight=0]; 456[label="xx3002 == xx4002",fontsize=16,color="magenta"];456 -> 628[label="",style="dashed", color="magenta", weight=3]; 456 -> 629[label="",style="dashed", color="magenta", weight=3]; 457 -> 69[label="",style="dashed", color="red", weight=0]; 457[label="xx3002 == xx4002",fontsize=16,color="magenta"];457 -> 630[label="",style="dashed", color="magenta", weight=3]; 457 -> 631[label="",style="dashed", color="magenta", weight=3]; 458 -> 70[label="",style="dashed", color="red", weight=0]; 458[label="xx3002 == xx4002",fontsize=16,color="magenta"];458 -> 632[label="",style="dashed", color="magenta", weight=3]; 458 -> 633[label="",style="dashed", color="magenta", weight=3]; 459 -> 71[label="",style="dashed", color="red", weight=0]; 459[label="xx3002 == xx4002",fontsize=16,color="magenta"];459 -> 634[label="",style="dashed", color="magenta", weight=3]; 459 -> 635[label="",style="dashed", color="magenta", weight=3]; 460 -> 72[label="",style="dashed", color="red", weight=0]; 460[label="xx3002 == xx4002",fontsize=16,color="magenta"];460 -> 636[label="",style="dashed", color="magenta", weight=3]; 460 -> 637[label="",style="dashed", color="magenta", weight=3]; 461 -> 59[label="",style="dashed", color="red", weight=0]; 461[label="xx3001 == xx4001",fontsize=16,color="magenta"];461 -> 638[label="",style="dashed", color="magenta", weight=3]; 461 -> 639[label="",style="dashed", color="magenta", weight=3]; 462 -> 60[label="",style="dashed", color="red", weight=0]; 462[label="xx3001 == xx4001",fontsize=16,color="magenta"];462 -> 640[label="",style="dashed", color="magenta", weight=3]; 462 -> 641[label="",style="dashed", color="magenta", weight=3]; 463 -> 61[label="",style="dashed", color="red", weight=0]; 463[label="xx3001 == xx4001",fontsize=16,color="magenta"];463 -> 642[label="",style="dashed", color="magenta", weight=3]; 463 -> 643[label="",style="dashed", color="magenta", weight=3]; 464 -> 62[label="",style="dashed", color="red", weight=0]; 464[label="xx3001 == xx4001",fontsize=16,color="magenta"];464 -> 644[label="",style="dashed", color="magenta", weight=3]; 464 -> 645[label="",style="dashed", color="magenta", weight=3]; 465 -> 63[label="",style="dashed", color="red", weight=0]; 465[label="xx3001 == xx4001",fontsize=16,color="magenta"];465 -> 646[label="",style="dashed", color="magenta", weight=3]; 465 -> 647[label="",style="dashed", color="magenta", weight=3]; 466 -> 64[label="",style="dashed", color="red", weight=0]; 466[label="xx3001 == xx4001",fontsize=16,color="magenta"];466 -> 648[label="",style="dashed", color="magenta", weight=3]; 466 -> 649[label="",style="dashed", color="magenta", weight=3]; 467 -> 65[label="",style="dashed", color="red", weight=0]; 467[label="xx3001 == xx4001",fontsize=16,color="magenta"];467 -> 650[label="",style="dashed", color="magenta", weight=3]; 467 -> 651[label="",style="dashed", color="magenta", weight=3]; 468 -> 66[label="",style="dashed", color="red", weight=0]; 468[label="xx3001 == xx4001",fontsize=16,color="magenta"];468 -> 652[label="",style="dashed", color="magenta", weight=3]; 468 -> 653[label="",style="dashed", color="magenta", weight=3]; 469 -> 67[label="",style="dashed", color="red", weight=0]; 469[label="xx3001 == xx4001",fontsize=16,color="magenta"];469 -> 654[label="",style="dashed", color="magenta", weight=3]; 469 -> 655[label="",style="dashed", color="magenta", weight=3]; 470 -> 68[label="",style="dashed", color="red", weight=0]; 470[label="xx3001 == xx4001",fontsize=16,color="magenta"];470 -> 656[label="",style="dashed", color="magenta", weight=3]; 470 -> 657[label="",style="dashed", color="magenta", weight=3]; 471 -> 69[label="",style="dashed", color="red", weight=0]; 471[label="xx3001 == xx4001",fontsize=16,color="magenta"];471 -> 658[label="",style="dashed", color="magenta", weight=3]; 471 -> 659[label="",style="dashed", color="magenta", weight=3]; 472 -> 70[label="",style="dashed", color="red", weight=0]; 472[label="xx3001 == xx4001",fontsize=16,color="magenta"];472 -> 660[label="",style="dashed", color="magenta", weight=3]; 472 -> 661[label="",style="dashed", color="magenta", weight=3]; 473 -> 71[label="",style="dashed", color="red", weight=0]; 473[label="xx3001 == xx4001",fontsize=16,color="magenta"];473 -> 662[label="",style="dashed", color="magenta", weight=3]; 473 -> 663[label="",style="dashed", color="magenta", weight=3]; 474 -> 72[label="",style="dashed", color="red", weight=0]; 474[label="xx3001 == xx4001",fontsize=16,color="magenta"];474 -> 664[label="",style="dashed", color="magenta", weight=3]; 474 -> 665[label="",style="dashed", color="magenta", weight=3]; 475[label="xx4000",fontsize=16,color="green",shape="box"];476[label="xx3000",fontsize=16,color="green",shape="box"];477[label="xx4000",fontsize=16,color="green",shape="box"];478[label="xx3000",fontsize=16,color="green",shape="box"];479[label="xx4000",fontsize=16,color="green",shape="box"];480[label="xx3000",fontsize=16,color="green",shape="box"];481[label="xx4000",fontsize=16,color="green",shape="box"];482[label="xx3000",fontsize=16,color="green",shape="box"];483[label="xx4000",fontsize=16,color="green",shape="box"];484[label="xx3000",fontsize=16,color="green",shape="box"];485[label="xx4000",fontsize=16,color="green",shape="box"];486[label="xx3000",fontsize=16,color="green",shape="box"];487[label="xx4000",fontsize=16,color="green",shape="box"];488[label="xx3000",fontsize=16,color="green",shape="box"];489[label="xx4000",fontsize=16,color="green",shape="box"];490[label="xx3000",fontsize=16,color="green",shape="box"];491[label="xx4000",fontsize=16,color="green",shape="box"];492[label="xx3000",fontsize=16,color="green",shape="box"];493[label="xx4000",fontsize=16,color="green",shape="box"];494[label="xx3000",fontsize=16,color="green",shape="box"];495[label="xx4000",fontsize=16,color="green",shape="box"];496[label="xx3000",fontsize=16,color="green",shape="box"];497[label="xx4000",fontsize=16,color="green",shape="box"];498[label="xx3000",fontsize=16,color="green",shape="box"];499[label="xx4000",fontsize=16,color="green",shape="box"];500[label="xx3000",fontsize=16,color="green",shape="box"];501[label="xx4000",fontsize=16,color="green",shape="box"];502[label="xx3000",fontsize=16,color="green",shape="box"];503[label="primEqNat (Succ xx30000) (Succ xx40000)",fontsize=16,color="black",shape="box"];503 -> 666[label="",style="solid", color="black", weight=3]; 504[label="primEqNat (Succ xx30000) Zero",fontsize=16,color="black",shape="box"];504 -> 667[label="",style="solid", color="black", weight=3]; 505[label="primEqNat Zero (Succ xx40000)",fontsize=16,color="black",shape="box"];505 -> 668[label="",style="solid", color="black", weight=3]; 506[label="primEqNat Zero Zero",fontsize=16,color="black",shape="box"];506 -> 669[label="",style="solid", color="black", weight=3]; 507[label="primMulInt xx3001 xx4000",fontsize=16,color="burlywood",shape="box"];968[label="xx3001/Pos xx30010",fontsize=10,color="white",style="solid",shape="box"];507 -> 968[label="",style="solid", color="burlywood", weight=9]; 968 -> 670[label="",style="solid", color="burlywood", weight=3]; 969[label="xx3001/Neg xx30010",fontsize=10,color="white",style="solid",shape="box"];507 -> 969[label="",style="solid", color="burlywood", weight=9]; 969 -> 671[label="",style="solid", color="burlywood", weight=3]; 508[label="xx3000",fontsize=16,color="green",shape="box"];509[label="xx4001",fontsize=16,color="green",shape="box"];510[label="xx3001",fontsize=16,color="green",shape="box"];511[label="xx4000",fontsize=16,color="green",shape="box"];512[label="xx3000",fontsize=16,color="green",shape="box"];513[label="xx4001",fontsize=16,color="green",shape="box"];514 -> 210[label="",style="dashed", color="red", weight=0]; 514[label="primEqNat xx30000 xx40000",fontsize=16,color="magenta"];514 -> 672[label="",style="dashed", color="magenta", weight=3]; 514 -> 673[label="",style="dashed", color="magenta", weight=3]; 515[label="False",fontsize=16,color="green",shape="box"];516[label="False",fontsize=16,color="green",shape="box"];517[label="True",fontsize=16,color="green",shape="box"];518[label="False",fontsize=16,color="green",shape="box"];519[label="True",fontsize=16,color="green",shape="box"];520 -> 210[label="",style="dashed", color="red", weight=0]; 520[label="primEqNat xx30000 xx40000",fontsize=16,color="magenta"];520 -> 674[label="",style="dashed", color="magenta", weight=3]; 520 -> 675[label="",style="dashed", color="magenta", weight=3]; 521[label="False",fontsize=16,color="green",shape="box"];522[label="False",fontsize=16,color="green",shape="box"];523[label="True",fontsize=16,color="green",shape="box"];524[label="False",fontsize=16,color="green",shape="box"];525[label="True",fontsize=16,color="green",shape="box"];526[label="xx4000",fontsize=16,color="green",shape="box"];527[label="xx3000",fontsize=16,color="green",shape="box"];528[label="xx4000",fontsize=16,color="green",shape="box"];529[label="xx3000",fontsize=16,color="green",shape="box"];530[label="xx4000",fontsize=16,color="green",shape="box"];531[label="xx3000",fontsize=16,color="green",shape="box"];532[label="xx4000",fontsize=16,color="green",shape="box"];533[label="xx3000",fontsize=16,color="green",shape="box"];534[label="xx4000",fontsize=16,color="green",shape="box"];535[label="xx3000",fontsize=16,color="green",shape="box"];536[label="xx4000",fontsize=16,color="green",shape="box"];537[label="xx3000",fontsize=16,color="green",shape="box"];538[label="xx4000",fontsize=16,color="green",shape="box"];539[label="xx3000",fontsize=16,color="green",shape="box"];540[label="xx4000",fontsize=16,color="green",shape="box"];541[label="xx3000",fontsize=16,color="green",shape="box"];542[label="xx4000",fontsize=16,color="green",shape="box"];543[label="xx3000",fontsize=16,color="green",shape="box"];544[label="xx4000",fontsize=16,color="green",shape="box"];545[label="xx3000",fontsize=16,color="green",shape="box"];546[label="xx4000",fontsize=16,color="green",shape="box"];547[label="xx3000",fontsize=16,color="green",shape="box"];548[label="xx4000",fontsize=16,color="green",shape="box"];549[label="xx3000",fontsize=16,color="green",shape="box"];550[label="xx4000",fontsize=16,color="green",shape="box"];551[label="xx3000",fontsize=16,color="green",shape="box"];552[label="xx4000",fontsize=16,color="green",shape="box"];553[label="xx3000",fontsize=16,color="green",shape="box"];554[label="xx4001",fontsize=16,color="green",shape="box"];555[label="xx3001",fontsize=16,color="green",shape="box"];556[label="xx4001",fontsize=16,color="green",shape="box"];557[label="xx3001",fontsize=16,color="green",shape="box"];558[label="xx4001",fontsize=16,color="green",shape="box"];559[label="xx3001",fontsize=16,color="green",shape="box"];560[label="xx4001",fontsize=16,color="green",shape="box"];561[label="xx3001",fontsize=16,color="green",shape="box"];562[label="xx4001",fontsize=16,color="green",shape="box"];563[label="xx3001",fontsize=16,color="green",shape="box"];564[label="xx4001",fontsize=16,color="green",shape="box"];565[label="xx3001",fontsize=16,color="green",shape="box"];566[label="xx4001",fontsize=16,color="green",shape="box"];567[label="xx3001",fontsize=16,color="green",shape="box"];568[label="xx4001",fontsize=16,color="green",shape="box"];569[label="xx3001",fontsize=16,color="green",shape="box"];570[label="xx4001",fontsize=16,color="green",shape="box"];571[label="xx3001",fontsize=16,color="green",shape="box"];572[label="xx4001",fontsize=16,color="green",shape="box"];573[label="xx3001",fontsize=16,color="green",shape="box"];574[label="xx4001",fontsize=16,color="green",shape="box"];575[label="xx3001",fontsize=16,color="green",shape="box"];576[label="xx4001",fontsize=16,color="green",shape="box"];577[label="xx3001",fontsize=16,color="green",shape="box"];578[label="xx4001",fontsize=16,color="green",shape="box"];579[label="xx3001",fontsize=16,color="green",shape="box"];580[label="xx4001",fontsize=16,color="green",shape="box"];581[label="xx3001",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="xx4000",fontsize=16,color="green",shape="box"];607[label="xx3000",fontsize=16,color="green",shape="box"];608[label="xx4000",fontsize=16,color="green",shape="box"];609[label="xx3000",fontsize=16,color="green",shape="box"];610[label="xx4002",fontsize=16,color="green",shape="box"];611[label="xx3002",fontsize=16,color="green",shape="box"];612[label="xx4002",fontsize=16,color="green",shape="box"];613[label="xx3002",fontsize=16,color="green",shape="box"];614[label="xx4002",fontsize=16,color="green",shape="box"];615[label="xx3002",fontsize=16,color="green",shape="box"];616[label="xx4002",fontsize=16,color="green",shape="box"];617[label="xx3002",fontsize=16,color="green",shape="box"];618[label="xx4002",fontsize=16,color="green",shape="box"];619[label="xx3002",fontsize=16,color="green",shape="box"];620[label="xx4002",fontsize=16,color="green",shape="box"];621[label="xx3002",fontsize=16,color="green",shape="box"];622[label="xx4002",fontsize=16,color="green",shape="box"];623[label="xx3002",fontsize=16,color="green",shape="box"];624[label="xx4002",fontsize=16,color="green",shape="box"];625[label="xx3002",fontsize=16,color="green",shape="box"];626[label="xx4002",fontsize=16,color="green",shape="box"];627[label="xx3002",fontsize=16,color="green",shape="box"];628[label="xx4002",fontsize=16,color="green",shape="box"];629[label="xx3002",fontsize=16,color="green",shape="box"];630[label="xx4002",fontsize=16,color="green",shape="box"];631[label="xx3002",fontsize=16,color="green",shape="box"];632[label="xx4002",fontsize=16,color="green",shape="box"];633[label="xx3002",fontsize=16,color="green",shape="box"];634[label="xx4002",fontsize=16,color="green",shape="box"];635[label="xx3002",fontsize=16,color="green",shape="box"];636[label="xx4002",fontsize=16,color="green",shape="box"];637[label="xx3002",fontsize=16,color="green",shape="box"];638[label="xx4001",fontsize=16,color="green",shape="box"];639[label="xx3001",fontsize=16,color="green",shape="box"];640[label="xx4001",fontsize=16,color="green",shape="box"];641[label="xx3001",fontsize=16,color="green",shape="box"];642[label="xx4001",fontsize=16,color="green",shape="box"];643[label="xx3001",fontsize=16,color="green",shape="box"];644[label="xx4001",fontsize=16,color="green",shape="box"];645[label="xx3001",fontsize=16,color="green",shape="box"];646[label="xx4001",fontsize=16,color="green",shape="box"];647[label="xx3001",fontsize=16,color="green",shape="box"];648[label="xx4001",fontsize=16,color="green",shape="box"];649[label="xx3001",fontsize=16,color="green",shape="box"];650[label="xx4001",fontsize=16,color="green",shape="box"];651[label="xx3001",fontsize=16,color="green",shape="box"];652[label="xx4001",fontsize=16,color="green",shape="box"];653[label="xx3001",fontsize=16,color="green",shape="box"];654[label="xx4001",fontsize=16,color="green",shape="box"];655[label="xx3001",fontsize=16,color="green",shape="box"];656[label="xx4001",fontsize=16,color="green",shape="box"];657[label="xx3001",fontsize=16,color="green",shape="box"];658[label="xx4001",fontsize=16,color="green",shape="box"];659[label="xx3001",fontsize=16,color="green",shape="box"];660[label="xx4001",fontsize=16,color="green",shape="box"];661[label="xx3001",fontsize=16,color="green",shape="box"];662[label="xx4001",fontsize=16,color="green",shape="box"];663[label="xx3001",fontsize=16,color="green",shape="box"];664[label="xx4001",fontsize=16,color="green",shape="box"];665[label="xx3001",fontsize=16,color="green",shape="box"];666 -> 210[label="",style="dashed", color="red", weight=0]; 666[label="primEqNat xx30000 xx40000",fontsize=16,color="magenta"];666 -> 676[label="",style="dashed", color="magenta", weight=3]; 666 -> 677[label="",style="dashed", color="magenta", weight=3]; 667[label="False",fontsize=16,color="green",shape="box"];668[label="False",fontsize=16,color="green",shape="box"];669[label="True",fontsize=16,color="green",shape="box"];670[label="primMulInt (Pos xx30010) xx4000",fontsize=16,color="burlywood",shape="box"];970[label="xx4000/Pos xx40000",fontsize=10,color="white",style="solid",shape="box"];670 -> 970[label="",style="solid", color="burlywood", weight=9]; 970 -> 678[label="",style="solid", color="burlywood", weight=3]; 971[label="xx4000/Neg xx40000",fontsize=10,color="white",style="solid",shape="box"];670 -> 971[label="",style="solid", color="burlywood", weight=9]; 971 -> 679[label="",style="solid", color="burlywood", weight=3]; 671[label="primMulInt (Neg xx30010) xx4000",fontsize=16,color="burlywood",shape="box"];972[label="xx4000/Pos xx40000",fontsize=10,color="white",style="solid",shape="box"];671 -> 972[label="",style="solid", color="burlywood", weight=9]; 972 -> 680[label="",style="solid", color="burlywood", weight=3]; 973[label="xx4000/Neg xx40000",fontsize=10,color="white",style="solid",shape="box"];671 -> 973[label="",style="solid", color="burlywood", weight=9]; 973 -> 681[label="",style="solid", color="burlywood", weight=3]; 672[label="xx30000",fontsize=16,color="green",shape="box"];673[label="xx40000",fontsize=16,color="green",shape="box"];674[label="xx30000",fontsize=16,color="green",shape="box"];675[label="xx40000",fontsize=16,color="green",shape="box"];676[label="xx30000",fontsize=16,color="green",shape="box"];677[label="xx40000",fontsize=16,color="green",shape="box"];678[label="primMulInt (Pos xx30010) (Pos xx40000)",fontsize=16,color="black",shape="box"];678 -> 682[label="",style="solid", color="black", weight=3]; 679[label="primMulInt (Pos xx30010) (Neg xx40000)",fontsize=16,color="black",shape="box"];679 -> 683[label="",style="solid", color="black", weight=3]; 680[label="primMulInt (Neg xx30010) (Pos xx40000)",fontsize=16,color="black",shape="box"];680 -> 684[label="",style="solid", color="black", weight=3]; 681[label="primMulInt (Neg xx30010) (Neg xx40000)",fontsize=16,color="black",shape="box"];681 -> 685[label="",style="solid", color="black", weight=3]; 682[label="Pos (primMulNat xx30010 xx40000)",fontsize=16,color="green",shape="box"];682 -> 686[label="",style="dashed", color="green", weight=3]; 683[label="Neg (primMulNat xx30010 xx40000)",fontsize=16,color="green",shape="box"];683 -> 687[label="",style="dashed", color="green", weight=3]; 684[label="Neg (primMulNat xx30010 xx40000)",fontsize=16,color="green",shape="box"];684 -> 688[label="",style="dashed", color="green", weight=3]; 685[label="Pos (primMulNat xx30010 xx40000)",fontsize=16,color="green",shape="box"];685 -> 689[label="",style="dashed", color="green", weight=3]; 686[label="primMulNat xx30010 xx40000",fontsize=16,color="burlywood",shape="triangle"];974[label="xx30010/Succ xx300100",fontsize=10,color="white",style="solid",shape="box"];686 -> 974[label="",style="solid", color="burlywood", weight=9]; 974 -> 690[label="",style="solid", color="burlywood", weight=3]; 975[label="xx30010/Zero",fontsize=10,color="white",style="solid",shape="box"];686 -> 975[label="",style="solid", color="burlywood", weight=9]; 975 -> 691[label="",style="solid", color="burlywood", weight=3]; 687 -> 686[label="",style="dashed", color="red", weight=0]; 687[label="primMulNat xx30010 xx40000",fontsize=16,color="magenta"];687 -> 692[label="",style="dashed", color="magenta", weight=3]; 688 -> 686[label="",style="dashed", color="red", weight=0]; 688[label="primMulNat xx30010 xx40000",fontsize=16,color="magenta"];688 -> 693[label="",style="dashed", color="magenta", weight=3]; 689 -> 686[label="",style="dashed", color="red", weight=0]; 689[label="primMulNat xx30010 xx40000",fontsize=16,color="magenta"];689 -> 694[label="",style="dashed", color="magenta", weight=3]; 689 -> 695[label="",style="dashed", color="magenta", weight=3]; 690[label="primMulNat (Succ xx300100) xx40000",fontsize=16,color="burlywood",shape="box"];976[label="xx40000/Succ xx400000",fontsize=10,color="white",style="solid",shape="box"];690 -> 976[label="",style="solid", color="burlywood", weight=9]; 976 -> 696[label="",style="solid", color="burlywood", weight=3]; 977[label="xx40000/Zero",fontsize=10,color="white",style="solid",shape="box"];690 -> 977[label="",style="solid", color="burlywood", weight=9]; 977 -> 697[label="",style="solid", color="burlywood", weight=3]; 691[label="primMulNat Zero xx40000",fontsize=16,color="burlywood",shape="box"];978[label="xx40000/Succ xx400000",fontsize=10,color="white",style="solid",shape="box"];691 -> 978[label="",style="solid", color="burlywood", weight=9]; 978 -> 698[label="",style="solid", color="burlywood", weight=3]; 979[label="xx40000/Zero",fontsize=10,color="white",style="solid",shape="box"];691 -> 979[label="",style="solid", color="burlywood", weight=9]; 979 -> 699[label="",style="solid", color="burlywood", weight=3]; 692[label="xx40000",fontsize=16,color="green",shape="box"];693[label="xx30010",fontsize=16,color="green",shape="box"];694[label="xx30010",fontsize=16,color="green",shape="box"];695[label="xx40000",fontsize=16,color="green",shape="box"];696[label="primMulNat (Succ xx300100) (Succ xx400000)",fontsize=16,color="black",shape="box"];696 -> 700[label="",style="solid", color="black", weight=3]; 697[label="primMulNat (Succ xx300100) Zero",fontsize=16,color="black",shape="box"];697 -> 701[label="",style="solid", color="black", weight=3]; 698[label="primMulNat Zero (Succ xx400000)",fontsize=16,color="black",shape="box"];698 -> 702[label="",style="solid", color="black", weight=3]; 699[label="primMulNat Zero Zero",fontsize=16,color="black",shape="box"];699 -> 703[label="",style="solid", color="black", weight=3]; 700 -> 704[label="",style="dashed", color="red", weight=0]; 700[label="primPlusNat (primMulNat xx300100 (Succ xx400000)) (Succ xx400000)",fontsize=16,color="magenta"];700 -> 705[label="",style="dashed", color="magenta", weight=3]; 701[label="Zero",fontsize=16,color="green",shape="box"];702[label="Zero",fontsize=16,color="green",shape="box"];703[label="Zero",fontsize=16,color="green",shape="box"];705 -> 686[label="",style="dashed", color="red", weight=0]; 705[label="primMulNat xx300100 (Succ xx400000)",fontsize=16,color="magenta"];705 -> 706[label="",style="dashed", color="magenta", weight=3]; 705 -> 707[label="",style="dashed", color="magenta", weight=3]; 704[label="primPlusNat xx28 (Succ xx400000)",fontsize=16,color="burlywood",shape="triangle"];980[label="xx28/Succ xx280",fontsize=10,color="white",style="solid",shape="box"];704 -> 980[label="",style="solid", color="burlywood", weight=9]; 980 -> 708[label="",style="solid", color="burlywood", weight=3]; 981[label="xx28/Zero",fontsize=10,color="white",style="solid",shape="box"];704 -> 981[label="",style="solid", color="burlywood", weight=9]; 981 -> 709[label="",style="solid", color="burlywood", weight=3]; 706[label="xx300100",fontsize=16,color="green",shape="box"];707[label="Succ xx400000",fontsize=16,color="green",shape="box"];708[label="primPlusNat (Succ xx280) (Succ xx400000)",fontsize=16,color="black",shape="box"];708 -> 710[label="",style="solid", color="black", weight=3]; 709[label="primPlusNat Zero (Succ xx400000)",fontsize=16,color="black",shape="box"];709 -> 711[label="",style="solid", color="black", weight=3]; 710[label="Succ (Succ (primPlusNat xx280 xx400000))",fontsize=16,color="green",shape="box"];710 -> 712[label="",style="dashed", color="green", weight=3]; 711[label="Succ xx400000",fontsize=16,color="green",shape="box"];712[label="primPlusNat xx280 xx400000",fontsize=16,color="burlywood",shape="triangle"];982[label="xx280/Succ xx2800",fontsize=10,color="white",style="solid",shape="box"];712 -> 982[label="",style="solid", color="burlywood", weight=9]; 982 -> 713[label="",style="solid", color="burlywood", weight=3]; 983[label="xx280/Zero",fontsize=10,color="white",style="solid",shape="box"];712 -> 983[label="",style="solid", color="burlywood", weight=9]; 983 -> 714[label="",style="solid", color="burlywood", weight=3]; 713[label="primPlusNat (Succ xx2800) xx400000",fontsize=16,color="burlywood",shape="box"];984[label="xx400000/Succ xx4000000",fontsize=10,color="white",style="solid",shape="box"];713 -> 984[label="",style="solid", color="burlywood", weight=9]; 984 -> 715[label="",style="solid", color="burlywood", weight=3]; 985[label="xx400000/Zero",fontsize=10,color="white",style="solid",shape="box"];713 -> 985[label="",style="solid", color="burlywood", weight=9]; 985 -> 716[label="",style="solid", color="burlywood", weight=3]; 714[label="primPlusNat Zero xx400000",fontsize=16,color="burlywood",shape="box"];986[label="xx400000/Succ xx4000000",fontsize=10,color="white",style="solid",shape="box"];714 -> 986[label="",style="solid", color="burlywood", weight=9]; 986 -> 717[label="",style="solid", color="burlywood", weight=3]; 987[label="xx400000/Zero",fontsize=10,color="white",style="solid",shape="box"];714 -> 987[label="",style="solid", color="burlywood", weight=9]; 987 -> 718[label="",style="solid", color="burlywood", weight=3]; 715[label="primPlusNat (Succ xx2800) (Succ xx4000000)",fontsize=16,color="black",shape="box"];715 -> 719[label="",style="solid", color="black", weight=3]; 716[label="primPlusNat (Succ xx2800) Zero",fontsize=16,color="black",shape="box"];716 -> 720[label="",style="solid", color="black", weight=3]; 717[label="primPlusNat Zero (Succ xx4000000)",fontsize=16,color="black",shape="box"];717 -> 721[label="",style="solid", color="black", weight=3]; 718[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];718 -> 722[label="",style="solid", color="black", weight=3]; 719[label="Succ (Succ (primPlusNat xx2800 xx4000000))",fontsize=16,color="green",shape="box"];719 -> 723[label="",style="dashed", color="green", weight=3]; 720[label="Succ xx2800",fontsize=16,color="green",shape="box"];721[label="Succ xx4000000",fontsize=16,color="green",shape="box"];722[label="Zero",fontsize=16,color="green",shape="box"];723 -> 712[label="",style="dashed", color="red", weight=0]; 723[label="primPlusNat xx2800 xx4000000",fontsize=16,color="magenta"];723 -> 724[label="",style="dashed", color="magenta", weight=3]; 723 -> 725[label="",style="dashed", color="magenta", weight=3]; 724[label="xx4000000",fontsize=16,color="green",shape="box"];725[label="xx2800",fontsize=16,color="green",shape="box"];} ---------------------------------------- (12) Complex Obligation (AND) ---------------------------------------- (13) Obligation: Q DP problem: The TRS P consists of the following rules: new_psPs0(xx11, False, xx13, xx14, bb) -> new_psPs(Just(xx11), xx13, xx14, bb) new_psPs(Nothing, :(Just(xx400), xx41), xx5, ba) -> new_psPs(Nothing, xx41, xx5, ba) new_psPs(Just(xx300), :(Nothing, xx41), xx5, ba) -> new_psPs0(xx300, False, xx41, xx5, ba) new_psPs(Just(xx300), :(Just(xx400), xx41), xx5, ba) -> new_psPs0(xx300, new_esEs4(xx300, xx400, ba), xx41, xx5, ba) The TRS R consists of the following rules: new_esEs18(@2(xx3000, xx3001), @2(xx4000, xx4001), cc, cd) -> new_asAs(new_esEs26(xx3000, xx4000, cc), new_esEs25(xx3001, xx4001, cd)) new_esEs23(xx3001, xx4001, ty_Double) -> new_esEs12(xx3001, xx4001) new_primEqInt(Pos(Zero), Pos(Zero)) -> True new_esEs26(xx3000, xx4000, ty_Integer) -> new_esEs10(xx3000, xx4000) new_esEs23(xx3001, xx4001, app(ty_Maybe, bbb)) -> new_esEs6(xx3001, xx4001, bbb) new_esEs4(xx300, xx400, app(ty_Maybe, bd)) -> new_esEs6(xx300, xx400, bd) new_esEs11(LT, EQ) -> False new_esEs11(EQ, LT) -> False new_esEs17(Right(xx3000), Right(xx4000), ca, app(app(app(ty_@3, eb), ec), ed)) -> new_esEs8(xx3000, xx4000, eb, ec, ed) new_esEs25(xx3001, xx4001, ty_Char) -> new_esEs9(xx3001, xx4001) new_esEs24(xx3000, xx4000, app(ty_[], bch)) -> new_esEs15(xx3000, xx4000, bch) new_esEs17(Right(xx3000), Right(xx4000), ca, app(app(ty_@2, eh), fa)) -> new_esEs18(xx3000, xx4000, eh, fa) new_esEs26(xx3000, xx4000, ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_@0) -> new_esEs7(xx3000, xx4000) new_esEs26(xx3000, xx4000, app(app(app(ty_@3, bfa), bfb), bfc)) -> new_esEs8(xx3000, xx4000, bfa, bfb, bfc) new_esEs21(xx3000, xx4000, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs21(xx3000, xx4000, app(app(ty_Either, ga), gb)) -> new_esEs17(xx3000, xx4000, ga, gb) new_esEs22(xx3002, xx4002, app(ty_Ratio, hg)) -> new_esEs5(xx3002, xx4002, hg) new_esEs11(LT, GT) -> False new_esEs11(GT, LT) -> False new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Char) -> new_esEs9(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), ty_Double, cb) -> new_esEs12(xx3000, xx4000) new_esEs21(xx3000, xx4000, ty_Double) -> new_esEs12(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs6(Just(xx3000), Just(xx4000), ty_Char) -> new_esEs9(xx3000, xx4000) new_esEs4(xx300, xx400, ty_Double) -> new_esEs12(xx300, xx400) new_esEs25(xx3001, xx4001, ty_Double) -> new_esEs12(xx3001, xx4001) new_esEs26(xx3000, xx4000, app(ty_[], bfd)) -> new_esEs15(xx3000, xx4000, bfd) new_esEs6(Just(xx3000), Just(xx4000), ty_Double) -> new_esEs12(xx3000, xx4000) new_asAs(True, xx27) -> xx27 new_esEs26(xx3000, xx4000, ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs10(Integer(xx3000), Integer(xx4000)) -> new_primEqInt(xx3000, xx4000) new_esEs21(xx3000, xx4000, app(ty_Maybe, fc)) -> new_esEs6(xx3000, xx4000, fc) new_esEs17(Left(xx3000), Left(xx4000), app(ty_[], dc), cb) -> new_esEs15(xx3000, xx4000, dc) new_esEs26(xx3000, xx4000, app(app(ty_@2, bfg), bfh)) -> new_esEs18(xx3000, xx4000, bfg, bfh) new_esEs6(Just(xx3000), Just(xx4000), app(app(ty_Either, hc), hd)) -> new_esEs17(xx3000, xx4000, hc, hd) new_esEs22(xx3002, xx4002, ty_Ordering) -> new_esEs11(xx3002, xx4002) new_primEqInt(Pos(Succ(xx30000)), Pos(Zero)) -> False new_primEqInt(Pos(Zero), Pos(Succ(xx40000))) -> False new_esEs23(xx3001, xx4001, ty_Char) -> new_esEs9(xx3001, xx4001) new_esEs23(xx3001, xx4001, app(app(ty_Either, bbg), bbh)) -> new_esEs17(xx3001, xx4001, bbg, bbh) new_esEs17(Left(xx3000), Left(xx4000), ty_Char, cb) -> new_esEs9(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, app(ty_[], ee)) -> new_esEs15(xx3000, xx4000, ee) new_esEs21(xx3000, xx4000, ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_@0) -> new_esEs7(xx3000, xx4000) new_primEqNat0(Succ(xx30000), Succ(xx40000)) -> new_primEqNat0(xx30000, xx40000) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs21(xx3000, xx4000, ty_Char) -> new_esEs9(xx3000, xx4000) new_esEs23(xx3001, xx4001, app(app(ty_@2, bca), bcb)) -> new_esEs18(xx3001, xx4001, bca, bcb) new_primMulNat0(Zero, Zero) -> Zero new_esEs22(xx3002, xx4002, ty_Integer) -> new_esEs10(xx3002, xx4002) new_esEs21(xx3000, xx4000, ty_Integer) -> new_esEs10(xx3000, xx4000) new_esEs12(Double(xx3000, xx3001), Double(xx4000, xx4001)) -> new_esEs14(new_sr(xx3000, xx4001), new_sr(xx3001, xx4000)) new_esEs21(xx3000, xx4000, ty_@0) -> new_esEs7(xx3000, xx4000) new_esEs21(xx3000, xx4000, app(app(app(ty_@3, fd), ff), fg)) -> new_esEs8(xx3000, xx4000, fd, ff, fg) new_esEs24(xx3000, xx4000, app(app(ty_@2, bdc), bdd)) -> new_esEs18(xx3000, xx4000, bdc, bdd) new_esEs15(:(xx3000, xx3001), [], bh) -> False new_esEs15([], :(xx4000, xx4001), bh) -> False new_esEs11(EQ, GT) -> False new_esEs11(GT, EQ) -> False new_primEqNat0(Succ(xx30000), Zero) -> False new_primEqNat0(Zero, Succ(xx40000)) -> False new_esEs19(xx3001, xx4001, ty_Int) -> new_esEs14(xx3001, xx4001) new_esEs25(xx3001, xx4001, ty_Int) -> new_esEs14(xx3001, xx4001) new_esEs26(xx3000, xx4000, app(ty_Maybe, beh)) -> new_esEs6(xx3000, xx4000, beh) new_esEs17(Left(xx3000), Left(xx4000), app(ty_Ratio, ce), cb) -> new_esEs5(xx3000, xx4000, ce) new_esEs25(xx3001, xx4001, app(ty_Ratio, bde)) -> new_esEs5(xx3001, xx4001, bde) new_esEs22(xx3002, xx4002, app(app(app(ty_@3, baa), bab), bac)) -> new_esEs8(xx3002, xx4002, baa, bab, bac) new_esEs25(xx3001, xx4001, app(app(ty_@2, bee), bef)) -> new_esEs18(xx3001, xx4001, bee, bef) new_esEs7(@0, @0) -> True new_esEs4(xx300, xx400, ty_Char) -> new_esEs9(xx300, xx400) new_esEs4(xx300, xx400, app(app(ty_Either, ca), cb)) -> new_esEs17(xx300, xx400, ca, cb) new_esEs24(xx3000, xx4000, app(ty_Ratio, bcc)) -> new_esEs5(xx3000, xx4000, bcc) new_primEqInt(Neg(Succ(xx30000)), Neg(Zero)) -> False new_primEqInt(Neg(Zero), Neg(Succ(xx40000))) -> False new_esEs25(xx3001, xx4001, app(ty_Maybe, bdf)) -> new_esEs6(xx3001, xx4001, bdf) new_esEs25(xx3001, xx4001, ty_Bool) -> new_esEs16(xx3001, xx4001) new_esEs11(GT, GT) -> True new_esEs14(xx300, xx400) -> new_primEqInt(xx300, xx400) new_primEqInt(Pos(Succ(xx30000)), Pos(Succ(xx40000))) -> new_primEqNat0(xx30000, xx40000) new_esEs17(Left(xx3000), Right(xx4000), ca, cb) -> False new_esEs17(Right(xx3000), Left(xx4000), ca, cb) -> False new_esEs26(xx3000, xx4000, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs11(EQ, EQ) -> True new_esEs24(xx3000, xx4000, ty_Double) -> new_esEs12(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Double) -> new_esEs12(xx3000, xx4000) new_esEs4(xx300, xx400, ty_@0) -> new_esEs7(xx300, xx400) new_esEs16(True, True) -> True new_sr(Pos(xx30010), Neg(xx40000)) -> Neg(new_primMulNat0(xx30010, xx40000)) new_sr(Neg(xx30010), Pos(xx40000)) -> Neg(new_primMulNat0(xx30010, xx40000)) new_primPlusNat1(Succ(xx2800), Succ(xx4000000)) -> Succ(Succ(new_primPlusNat1(xx2800, xx4000000))) new_primEqInt(Pos(Succ(xx30000)), Neg(xx4000)) -> False new_primEqInt(Neg(Succ(xx30000)), Pos(xx4000)) -> False new_esEs22(xx3002, xx4002, ty_@0) -> new_esEs7(xx3002, xx4002) new_esEs21(xx3000, xx4000, ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs22(xx3002, xx4002, ty_Float) -> new_esEs13(xx3002, xx4002) new_esEs22(xx3002, xx4002, ty_Char) -> new_esEs9(xx3002, xx4002) new_esEs6(Just(xx3000), Just(xx4000), ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs25(xx3001, xx4001, ty_Ordering) -> new_esEs11(xx3001, xx4001) new_esEs21(xx3000, xx4000, app(ty_Ratio, fb)) -> new_esEs5(xx3000, xx4000, fb) new_esEs6(Just(xx3000), Just(xx4000), app(app(app(ty_@3, gg), gh), ha)) -> new_esEs8(xx3000, xx4000, gg, gh, ha) new_esEs22(xx3002, xx4002, app(app(ty_Either, bae), baf)) -> new_esEs17(xx3002, xx4002, bae, baf) new_esEs4(xx300, xx400, ty_Float) -> new_esEs13(xx300, xx400) new_esEs6(Just(xx3000), Just(xx4000), ty_@0) -> new_esEs7(xx3000, xx4000) new_esEs4(xx300, xx400, app(ty_[], bh)) -> new_esEs15(xx300, xx400, bh) new_esEs25(xx3001, xx4001, ty_@0) -> new_esEs7(xx3001, xx4001) new_esEs25(xx3001, xx4001, app(app(app(ty_@3, bdg), bdh), bea)) -> new_esEs8(xx3001, xx4001, bdg, bdh, bea) new_esEs20(xx3000, xx4000, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_Char) -> new_esEs9(xx3000, xx4000) new_esEs19(xx3001, xx4001, ty_Integer) -> new_esEs10(xx3001, xx4001) new_esEs17(Left(xx3000), Left(xx4000), app(app(app(ty_@3, cg), da), db), cb) -> new_esEs8(xx3000, xx4000, cg, da, db) new_esEs15(:(xx3000, xx3001), :(xx4000, xx4001), bh) -> new_asAs(new_esEs21(xx3000, xx4000, bh), new_esEs15(xx3001, xx4001, bh)) new_esEs23(xx3001, xx4001, ty_Float) -> new_esEs13(xx3001, xx4001) new_esEs22(xx3002, xx4002, ty_Double) -> new_esEs12(xx3002, xx4002) new_sr(Neg(xx30010), Neg(xx40000)) -> Pos(new_primMulNat0(xx30010, xx40000)) new_esEs25(xx3001, xx4001, ty_Integer) -> new_esEs10(xx3001, xx4001) new_esEs4(xx300, xx400, app(app(app(ty_@3, be), bf), bg)) -> new_esEs8(xx300, xx400, be, bf, bg) new_esEs25(xx3001, xx4001, app(ty_[], beb)) -> new_esEs15(xx3001, xx4001, beb) new_esEs6(Just(xx3000), Just(xx4000), ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_@0) -> new_esEs7(xx3000, xx4000) new_esEs22(xx3002, xx4002, app(ty_Maybe, hh)) -> new_esEs6(xx3002, xx4002, hh) new_esEs24(xx3000, xx4000, ty_Char) -> new_esEs9(xx3000, xx4000) new_primEqInt(Pos(Zero), Neg(Succ(xx40000))) -> False new_primEqInt(Neg(Zero), Pos(Succ(xx40000))) -> False new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs23(xx3001, xx4001, ty_Ordering) -> new_esEs11(xx3001, xx4001) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs22(xx3002, xx4002, ty_Int) -> new_esEs14(xx3002, xx4002) new_esEs4(xx300, xx400, ty_Integer) -> new_esEs10(xx300, xx400) new_esEs21(xx3000, xx4000, ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), app(app(ty_@2, df), dg), cb) -> new_esEs18(xx3000, xx4000, df, dg) new_esEs4(xx300, xx400, app(ty_Ratio, bc)) -> new_esEs5(xx300, xx400, bc) new_esEs23(xx3001, xx4001, app(ty_Ratio, bba)) -> new_esEs5(xx3001, xx4001, bba) new_primEqInt(Neg(Succ(xx30000)), Neg(Succ(xx40000))) -> new_primEqNat0(xx30000, xx40000) new_esEs17(Left(xx3000), Left(xx4000), app(ty_Maybe, cf), cb) -> new_esEs6(xx3000, xx4000, cf) new_primPlusNat0(Succ(xx280), xx400000) -> Succ(Succ(new_primPlusNat1(xx280, xx400000))) new_esEs17(Left(xx3000), Left(xx4000), ty_@0, cb) -> new_esEs7(xx3000, xx4000) new_esEs23(xx3001, xx4001, app(app(app(ty_@3, bbc), bbd), bbe)) -> new_esEs8(xx3001, xx4001, bbc, bbd, bbe) new_esEs23(xx3001, xx4001, ty_@0) -> new_esEs7(xx3001, xx4001) new_esEs26(xx3000, xx4000, ty_Double) -> new_esEs12(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), ty_Float, cb) -> new_esEs13(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), app(app(ty_Either, dd), de), cb) -> new_esEs17(xx3000, xx4000, dd, de) new_esEs17(Right(xx3000), Right(xx4000), ca, app(ty_Ratio, dh)) -> new_esEs5(xx3000, xx4000, dh) new_esEs6(Just(xx3000), Just(xx4000), ty_Integer) -> new_esEs10(xx3000, xx4000) new_esEs6(Just(xx3000), Just(xx4000), app(ty_[], hb)) -> new_esEs15(xx3000, xx4000, hb) new_esEs4(xx300, xx400, ty_Ordering) -> new_esEs11(xx300, xx400) new_esEs15([], [], bh) -> True new_esEs24(xx3000, xx4000, app(ty_Maybe, bcd)) -> new_esEs6(xx3000, xx4000, bcd) new_primPlusNat1(Zero, Zero) -> Zero new_esEs23(xx3001, xx4001, ty_Integer) -> new_esEs10(xx3001, xx4001) new_primMulNat0(Succ(xx300100), Zero) -> Zero new_primMulNat0(Zero, Succ(xx400000)) -> Zero new_sr(Pos(xx30010), Pos(xx40000)) -> Pos(new_primMulNat0(xx30010, xx40000)) new_esEs20(xx3000, xx4000, ty_Integer) -> new_esEs10(xx3000, xx4000) new_primPlusNat0(Zero, xx400000) -> Succ(xx400000) new_esEs26(xx3000, xx4000, app(app(ty_Either, bfe), bff)) -> new_esEs17(xx3000, xx4000, bfe, bff) new_esEs6(Just(xx3000), Just(xx4000), app(app(ty_@2, he), hf)) -> new_esEs18(xx3000, xx4000, he, hf) new_esEs23(xx3001, xx4001, app(ty_[], bbf)) -> new_esEs15(xx3001, xx4001, bbf) new_esEs6(Just(xx3000), Just(xx4000), app(ty_Ratio, ge)) -> new_esEs5(xx3000, xx4000, ge) new_esEs9(Char(xx3000), Char(xx4000)) -> new_primEqNat0(xx3000, xx4000) new_esEs22(xx3002, xx4002, ty_Bool) -> new_esEs16(xx3002, xx4002) new_esEs26(xx3000, xx4000, app(ty_Ratio, beg)) -> new_esEs5(xx3000, xx4000, beg) new_primEqInt(Neg(Zero), Neg(Zero)) -> True new_esEs11(LT, LT) -> True new_primMulNat0(Succ(xx300100), Succ(xx400000)) -> new_primPlusNat0(new_primMulNat0(xx300100, Succ(xx400000)), xx400000) new_esEs17(Left(xx3000), Left(xx4000), ty_Bool, cb) -> new_esEs16(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs16(False, False) -> True new_esEs22(xx3002, xx4002, app(app(ty_@2, bag), bah)) -> new_esEs18(xx3002, xx4002, bag, bah) new_primPlusNat1(Succ(xx2800), Zero) -> Succ(xx2800) new_primPlusNat1(Zero, Succ(xx4000000)) -> Succ(xx4000000) new_esEs23(xx3001, xx4001, ty_Bool) -> new_esEs16(xx3001, xx4001) new_esEs17(Left(xx3000), Left(xx4000), ty_Integer, cb) -> new_esEs10(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, app(ty_Maybe, ea)) -> new_esEs6(xx3000, xx4000, ea) new_esEs13(Float(xx3000, xx3001), Float(xx4000, xx4001)) -> new_esEs14(new_sr(xx3000, xx4001), new_sr(xx3001, xx4000)) new_esEs4(xx300, xx400, ty_Int) -> new_esEs14(xx300, xx400) new_esEs4(xx300, xx400, app(app(ty_@2, cc), cd)) -> new_esEs18(xx300, xx400, cc, cd) new_esEs17(Right(xx3000), Right(xx4000), ca, app(app(ty_Either, ef), eg)) -> new_esEs17(xx3000, xx4000, ef, eg) new_primEqInt(Pos(Zero), Neg(Zero)) -> True new_primEqInt(Neg(Zero), Pos(Zero)) -> True new_esEs21(xx3000, xx4000, app(app(ty_@2, gc), gd)) -> new_esEs18(xx3000, xx4000, gc, gd) new_esEs17(Left(xx3000), Left(xx4000), ty_Int, cb) -> new_esEs14(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Integer) -> new_esEs10(xx3000, xx4000) new_primEqNat0(Zero, Zero) -> True new_esEs21(xx3000, xx4000, app(ty_[], fh)) -> new_esEs15(xx3000, xx4000, fh) new_esEs24(xx3000, xx4000, app(app(ty_Either, bda), bdb)) -> new_esEs17(xx3000, xx4000, bda, bdb) new_esEs5(:%(xx3000, xx3001), :%(xx4000, xx4001), bc) -> new_asAs(new_esEs20(xx3000, xx4000, bc), new_esEs19(xx3001, xx4001, bc)) new_esEs4(xx300, xx400, ty_Bool) -> new_esEs16(xx300, xx400) new_esEs22(xx3002, xx4002, app(ty_[], bad)) -> new_esEs15(xx3002, xx4002, bad) new_esEs6(Just(xx3000), Just(xx4000), ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs25(xx3001, xx4001, app(app(ty_Either, bec), bed)) -> new_esEs17(xx3001, xx4001, bec, bed) new_asAs(False, xx27) -> False new_esEs6(Just(xx3000), Just(xx4000), app(ty_Maybe, gf)) -> new_esEs6(xx3000, xx4000, gf) new_esEs6(Nothing, Just(xx4000), bd) -> False new_esEs6(Just(xx3000), Nothing, bd) -> False new_esEs24(xx3000, xx4000, app(app(app(ty_@3, bce), bcf), bcg)) -> new_esEs8(xx3000, xx4000, bce, bcf, bcg) new_esEs6(Nothing, Nothing, bd) -> True new_esEs25(xx3001, xx4001, ty_Float) -> new_esEs13(xx3001, xx4001) new_esEs6(Just(xx3000), Just(xx4000), ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), ty_Ordering, cb) -> new_esEs11(xx3000, xx4000) new_esEs16(False, True) -> False new_esEs16(True, False) -> False new_esEs23(xx3001, xx4001, ty_Int) -> new_esEs14(xx3001, xx4001) new_esEs8(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), be, bf, bg) -> new_asAs(new_esEs24(xx3000, xx4000, be), new_asAs(new_esEs23(xx3001, xx4001, bf), new_esEs22(xx3002, xx4002, bg))) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Integer) -> new_esEs10(xx3000, xx4000) The set Q consists of the following terms: new_esEs17(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5)) new_esEs15(:(x0, x1), [], x2) new_esEs26(x0, x1, ty_Integer) new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs4(x0, x1, ty_Ordering) new_esEs9(Char(x0), Char(x1)) new_esEs17(Left(x0), Left(x1), ty_@0, x2) new_esEs18(@2(x0, x1), @2(x2, x3), x4, x5) new_esEs6(Nothing, Just(x0), x1) new_primEqInt(Neg(Succ(x0)), Neg(Zero)) new_esEs17(Right(x0), Right(x1), x2, ty_Int) new_primPlusNat1(Zero, Succ(x0)) new_esEs22(x0, x1, ty_Int) new_primPlusNat1(Succ(x0), Zero) new_esEs22(x0, x1, ty_Ordering) new_primMulNat0(Zero, Zero) new_primPlusNat1(Zero, Zero) new_esEs17(Right(x0), Right(x1), x2, ty_Ordering) new_esEs23(x0, x1, app(app(ty_@2, x2), x3)) new_esEs17(Right(x0), Right(x1), x2, ty_Float) new_esEs25(x0, x1, app(ty_[], x2)) new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs21(x0, x1, app(ty_[], x2)) new_esEs24(x0, x1, ty_Integer) new_esEs4(x0, x1, ty_Int) new_esEs23(x0, x1, ty_Float) new_primPlusNat0(Zero, x0) new_esEs25(x0, x1, app(ty_Ratio, x2)) new_esEs6(Just(x0), Just(x1), ty_Float) new_primEqInt(Pos(Zero), Pos(Zero)) new_esEs20(x0, x1, ty_Integer) new_esEs22(x0, x1, app(app(ty_@2, x2), x3)) new_esEs22(x0, x1, ty_Float) new_esEs26(x0, x1, app(app(ty_Either, x2), x3)) new_esEs23(x0, x1, ty_Double) new_esEs23(x0, x1, ty_Ordering) new_esEs17(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4) new_esEs21(x0, x1, app(ty_Maybe, x2)) new_esEs26(x0, x1, ty_@0) new_esEs19(x0, x1, ty_Integer) new_esEs6(Just(x0), Just(x1), ty_Integer) new_sr(Pos(x0), Neg(x1)) new_sr(Neg(x0), Pos(x1)) new_esEs4(x0, x1, ty_Char) new_esEs4(x0, x1, ty_Double) new_primEqInt(Pos(Succ(x0)), Pos(Zero)) new_primEqInt(Neg(Zero), Neg(Zero)) new_esEs17(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5) new_primPlusNat1(Succ(x0), Succ(x1)) new_esEs17(Left(x0), Left(x1), ty_Bool, x2) new_esEs23(x0, x1, app(app(ty_Either, x2), x3)) new_esEs4(x0, x1, app(ty_Ratio, x2)) new_esEs23(x0, x1, ty_Int) new_esEs21(x0, x1, ty_Bool) new_esEs17(Left(x0), Left(x1), ty_Integer, x2) new_esEs15([], [], x0) new_esEs24(x0, x1, ty_@0) new_sr(Pos(x0), Pos(x1)) new_esEs17(Right(x0), Right(x1), x2, app(ty_Ratio, x3)) new_esEs6(Just(x0), Just(x1), app(app(ty_Either, x2), x3)) new_esEs24(x0, x1, ty_Double) new_esEs21(x0, x1, ty_Float) new_esEs17(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4)) new_esEs25(x0, x1, ty_Integer) new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1))) new_esEs24(x0, x1, ty_Bool) new_esEs24(x0, x1, ty_Float) new_esEs6(Just(x0), Just(x1), ty_Ordering) new_esEs17(Right(x0), Right(x1), x2, app(ty_[], x3)) new_esEs23(x0, x1, app(ty_[], x2)) new_esEs11(EQ, GT) new_esEs11(GT, EQ) new_esEs21(x0, x1, ty_Double) new_esEs17(Right(x0), Right(x1), x2, ty_@0) new_esEs6(Nothing, Nothing, x0) new_esEs17(Right(x0), Right(x1), x2, ty_Char) new_esEs26(x0, x1, app(ty_Maybe, x2)) new_primEqInt(Pos(Zero), Neg(Zero)) new_primEqInt(Neg(Zero), Pos(Zero)) new_esEs8(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8) new_esEs17(Right(x0), Right(x1), x2, ty_Double) new_esEs17(Left(x0), Left(x1), ty_Ordering, x2) new_esEs19(x0, x1, ty_Int) new_esEs4(x0, x1, ty_Integer) new_esEs16(True, True) new_esEs21(x0, x1, ty_Int) new_esEs11(EQ, EQ) new_esEs6(Just(x0), Nothing, x1) new_esEs4(x0, x1, app(ty_[], x2)) new_esEs21(x0, x1, ty_@0) new_esEs25(x0, x1, ty_Ordering) new_esEs24(x0, x1, app(ty_Maybe, x2)) new_esEs21(x0, x1, app(app(ty_@2, x2), x3)) new_esEs10(Integer(x0), Integer(x1)) new_primMulNat0(Zero, Succ(x0)) new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs24(x0, x1, ty_Int) new_esEs24(x0, x1, ty_Char) new_esEs6(Just(x0), Just(x1), app(app(ty_@2, x2), x3)) new_esEs4(x0, x1, app(ty_Maybe, x2)) new_esEs23(x0, x1, app(ty_Ratio, x2)) new_primEqInt(Pos(Succ(x0)), Neg(x1)) new_primEqInt(Neg(Succ(x0)), Pos(x1)) new_primEqInt(Neg(Zero), Neg(Succ(x0))) new_esEs4(x0, x1, app(app(ty_@2, x2), x3)) new_esEs4(x0, x1, ty_Bool) new_esEs6(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4)) new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_primEqNat0(Succ(x0), Succ(x1)) new_esEs26(x0, x1, ty_Int) new_esEs22(x0, x1, app(ty_Maybe, x2)) new_esEs26(x0, x1, ty_Char) new_esEs21(x0, x1, ty_Char) new_esEs23(x0, x1, ty_@0) new_esEs22(x0, x1, ty_Integer) new_primEqInt(Pos(Zero), Pos(Succ(x0))) new_esEs17(Right(x0), Right(x1), x2, ty_Integer) new_esEs22(x0, x1, ty_Bool) new_esEs7(@0, @0) new_esEs17(Left(x0), Left(x1), ty_Double, x2) new_esEs15([], :(x0, x1), x2) new_esEs4(x0, x1, ty_@0) new_esEs25(x0, x1, app(app(ty_Either, x2), x3)) new_esEs13(Float(x0, x1), Float(x2, x3)) new_esEs17(Right(x0), Right(x1), x2, ty_Bool) new_esEs23(x0, x1, ty_Bool) new_esEs12(Double(x0, x1), Double(x2, x3)) new_esEs26(x0, x1, ty_Ordering) new_esEs26(x0, x1, app(app(ty_@2, x2), x3)) new_primPlusNat0(Succ(x0), x1) new_esEs22(x0, x1, app(app(ty_Either, x2), x3)) new_esEs11(LT, GT) new_esEs11(GT, LT) new_esEs26(x0, x1, ty_Float) new_esEs6(Just(x0), Just(x1), ty_@0) new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs17(Left(x0), Right(x1), x2, x3) new_esEs17(Right(x0), Left(x1), x2, x3) new_primMulNat0(Succ(x0), Zero) new_esEs17(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4) new_esEs17(Right(x0), Right(x1), x2, app(ty_Maybe, x3)) new_esEs6(Just(x0), Just(x1), app(ty_[], x2)) new_esEs22(x0, x1, app(ty_Ratio, x2)) new_esEs25(x0, x1, ty_Bool) new_esEs23(x0, x1, ty_Char) new_esEs17(Left(x0), Left(x1), app(ty_Ratio, x2), x3) new_esEs21(x0, x1, app(ty_Ratio, x2)) new_primMulNat0(Succ(x0), Succ(x1)) new_esEs11(LT, EQ) new_esEs11(EQ, LT) new_esEs6(Just(x0), Just(x1), app(ty_Ratio, x2)) new_esEs14(x0, x1) new_esEs17(Left(x0), Left(x1), app(ty_Maybe, x2), x3) new_asAs(False, x0) new_esEs22(x0, x1, app(ty_[], x2)) new_esEs11(GT, GT) new_primEqInt(Pos(Zero), Neg(Succ(x0))) new_primEqInt(Neg(Zero), Pos(Succ(x0))) new_esEs5(:%(x0, x1), :%(x2, x3), x4) new_esEs24(x0, x1, app(app(ty_Either, x2), x3)) new_primEqNat0(Zero, Succ(x0)) new_esEs24(x0, x1, app(app(ty_@2, x2), x3)) new_esEs6(Just(x0), Just(x1), app(ty_Maybe, x2)) new_primEqNat0(Succ(x0), Zero) new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_primEqNat0(Zero, Zero) new_esEs23(x0, x1, ty_Integer) new_esEs4(x0, x1, app(app(ty_Either, x2), x3)) new_esEs25(x0, x1, app(ty_Maybe, x2)) new_esEs23(x0, x1, app(ty_Maybe, x2)) new_esEs25(x0, x1, app(app(ty_@2, x2), x3)) new_esEs17(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4)) new_esEs26(x0, x1, ty_Double) new_esEs17(Left(x0), Left(x1), ty_Int, x2) new_esEs16(False, False) new_esEs17(Left(x0), Left(x1), ty_Char, x2) new_esEs11(LT, LT) new_esEs20(x0, x1, ty_Int) new_esEs6(Just(x0), Just(x1), ty_Int) new_esEs16(False, True) new_esEs16(True, False) new_esEs17(Left(x0), Left(x1), app(ty_[], x2), x3) new_esEs22(x0, x1, ty_Char) new_esEs25(x0, x1, ty_Double) new_esEs6(Just(x0), Just(x1), ty_Double) new_esEs22(x0, x1, ty_@0) new_esEs26(x0, x1, app(ty_Ratio, x2)) new_esEs26(x0, x1, ty_Bool) new_esEs25(x0, x1, ty_Float) new_esEs25(x0, x1, ty_Char) new_esEs15(:(x0, x1), :(x2, x3), x4) new_esEs6(Just(x0), Just(x1), ty_Char) new_esEs6(Just(x0), Just(x1), ty_Bool) new_esEs21(x0, x1, ty_Integer) new_esEs17(Left(x0), Left(x1), ty_Float, x2) new_esEs26(x0, x1, app(ty_[], x2)) new_sr(Neg(x0), Neg(x1)) new_esEs21(x0, x1, app(app(ty_Either, x2), x3)) new_esEs24(x0, x1, ty_Ordering) new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs4(x0, x1, ty_Float) new_esEs25(x0, x1, ty_Int) new_esEs25(x0, x1, ty_@0) new_asAs(True, x0) new_esEs22(x0, x1, ty_Double) new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1))) new_esEs24(x0, x1, app(ty_[], x2)) new_esEs21(x0, x1, ty_Ordering) new_esEs24(x0, x1, app(ty_Ratio, x2)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (14) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. ---------------------------------------- (15) Complex Obligation (AND) ---------------------------------------- (16) Obligation: Q DP problem: The TRS P consists of the following rules: new_psPs(Nothing, :(Just(xx400), xx41), xx5, ba) -> new_psPs(Nothing, xx41, xx5, ba) The TRS R consists of the following rules: new_esEs18(@2(xx3000, xx3001), @2(xx4000, xx4001), cc, cd) -> new_asAs(new_esEs26(xx3000, xx4000, cc), new_esEs25(xx3001, xx4001, cd)) new_esEs23(xx3001, xx4001, ty_Double) -> new_esEs12(xx3001, xx4001) new_primEqInt(Pos(Zero), Pos(Zero)) -> True new_esEs26(xx3000, xx4000, ty_Integer) -> new_esEs10(xx3000, xx4000) new_esEs23(xx3001, xx4001, app(ty_Maybe, bbb)) -> new_esEs6(xx3001, xx4001, bbb) new_esEs4(xx300, xx400, app(ty_Maybe, bd)) -> new_esEs6(xx300, xx400, bd) new_esEs11(LT, EQ) -> False new_esEs11(EQ, LT) -> False new_esEs17(Right(xx3000), Right(xx4000), ca, app(app(app(ty_@3, eb), ec), ed)) -> new_esEs8(xx3000, xx4000, eb, ec, ed) new_esEs25(xx3001, xx4001, ty_Char) -> new_esEs9(xx3001, xx4001) new_esEs24(xx3000, xx4000, app(ty_[], bch)) -> new_esEs15(xx3000, xx4000, bch) new_esEs17(Right(xx3000), Right(xx4000), ca, app(app(ty_@2, eh), fa)) -> new_esEs18(xx3000, xx4000, eh, fa) new_esEs26(xx3000, xx4000, ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_@0) -> new_esEs7(xx3000, xx4000) new_esEs26(xx3000, xx4000, app(app(app(ty_@3, bfa), bfb), bfc)) -> new_esEs8(xx3000, xx4000, bfa, bfb, bfc) new_esEs21(xx3000, xx4000, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs21(xx3000, xx4000, app(app(ty_Either, ga), gb)) -> new_esEs17(xx3000, xx4000, ga, gb) new_esEs22(xx3002, xx4002, app(ty_Ratio, hg)) -> new_esEs5(xx3002, xx4002, hg) new_esEs11(LT, GT) -> False new_esEs11(GT, LT) -> False new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Char) -> new_esEs9(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), ty_Double, cb) -> new_esEs12(xx3000, xx4000) new_esEs21(xx3000, xx4000, ty_Double) -> new_esEs12(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs6(Just(xx3000), Just(xx4000), ty_Char) -> new_esEs9(xx3000, xx4000) new_esEs4(xx300, xx400, ty_Double) -> new_esEs12(xx300, xx400) new_esEs25(xx3001, xx4001, ty_Double) -> new_esEs12(xx3001, xx4001) new_esEs26(xx3000, xx4000, app(ty_[], bfd)) -> new_esEs15(xx3000, xx4000, bfd) new_esEs6(Just(xx3000), Just(xx4000), ty_Double) -> new_esEs12(xx3000, xx4000) new_asAs(True, xx27) -> xx27 new_esEs26(xx3000, xx4000, ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs10(Integer(xx3000), Integer(xx4000)) -> new_primEqInt(xx3000, xx4000) new_esEs21(xx3000, xx4000, app(ty_Maybe, fc)) -> new_esEs6(xx3000, xx4000, fc) new_esEs17(Left(xx3000), Left(xx4000), app(ty_[], dc), cb) -> new_esEs15(xx3000, xx4000, dc) new_esEs26(xx3000, xx4000, app(app(ty_@2, bfg), bfh)) -> new_esEs18(xx3000, xx4000, bfg, bfh) new_esEs6(Just(xx3000), Just(xx4000), app(app(ty_Either, hc), hd)) -> new_esEs17(xx3000, xx4000, hc, hd) new_esEs22(xx3002, xx4002, ty_Ordering) -> new_esEs11(xx3002, xx4002) new_primEqInt(Pos(Succ(xx30000)), Pos(Zero)) -> False new_primEqInt(Pos(Zero), Pos(Succ(xx40000))) -> False new_esEs23(xx3001, xx4001, ty_Char) -> new_esEs9(xx3001, xx4001) new_esEs23(xx3001, xx4001, app(app(ty_Either, bbg), bbh)) -> new_esEs17(xx3001, xx4001, bbg, bbh) new_esEs17(Left(xx3000), Left(xx4000), ty_Char, cb) -> new_esEs9(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, app(ty_[], ee)) -> new_esEs15(xx3000, xx4000, ee) new_esEs21(xx3000, xx4000, ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_@0) -> new_esEs7(xx3000, xx4000) new_primEqNat0(Succ(xx30000), Succ(xx40000)) -> new_primEqNat0(xx30000, xx40000) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs21(xx3000, xx4000, ty_Char) -> new_esEs9(xx3000, xx4000) new_esEs23(xx3001, xx4001, app(app(ty_@2, bca), bcb)) -> new_esEs18(xx3001, xx4001, bca, bcb) new_primMulNat0(Zero, Zero) -> Zero new_esEs22(xx3002, xx4002, ty_Integer) -> new_esEs10(xx3002, xx4002) new_esEs21(xx3000, xx4000, ty_Integer) -> new_esEs10(xx3000, xx4000) new_esEs12(Double(xx3000, xx3001), Double(xx4000, xx4001)) -> new_esEs14(new_sr(xx3000, xx4001), new_sr(xx3001, xx4000)) new_esEs21(xx3000, xx4000, ty_@0) -> new_esEs7(xx3000, xx4000) new_esEs21(xx3000, xx4000, app(app(app(ty_@3, fd), ff), fg)) -> new_esEs8(xx3000, xx4000, fd, ff, fg) new_esEs24(xx3000, xx4000, app(app(ty_@2, bdc), bdd)) -> new_esEs18(xx3000, xx4000, bdc, bdd) new_esEs15(:(xx3000, xx3001), [], bh) -> False new_esEs15([], :(xx4000, xx4001), bh) -> False new_esEs11(EQ, GT) -> False new_esEs11(GT, EQ) -> False new_primEqNat0(Succ(xx30000), Zero) -> False new_primEqNat0(Zero, Succ(xx40000)) -> False new_esEs19(xx3001, xx4001, ty_Int) -> new_esEs14(xx3001, xx4001) new_esEs25(xx3001, xx4001, ty_Int) -> new_esEs14(xx3001, xx4001) new_esEs26(xx3000, xx4000, app(ty_Maybe, beh)) -> new_esEs6(xx3000, xx4000, beh) new_esEs17(Left(xx3000), Left(xx4000), app(ty_Ratio, ce), cb) -> new_esEs5(xx3000, xx4000, ce) new_esEs25(xx3001, xx4001, app(ty_Ratio, bde)) -> new_esEs5(xx3001, xx4001, bde) new_esEs22(xx3002, xx4002, app(app(app(ty_@3, baa), bab), bac)) -> new_esEs8(xx3002, xx4002, baa, bab, bac) new_esEs25(xx3001, xx4001, app(app(ty_@2, bee), bef)) -> new_esEs18(xx3001, xx4001, bee, bef) new_esEs7(@0, @0) -> True new_esEs4(xx300, xx400, ty_Char) -> new_esEs9(xx300, xx400) new_esEs4(xx300, xx400, app(app(ty_Either, ca), cb)) -> new_esEs17(xx300, xx400, ca, cb) new_esEs24(xx3000, xx4000, app(ty_Ratio, bcc)) -> new_esEs5(xx3000, xx4000, bcc) new_primEqInt(Neg(Succ(xx30000)), Neg(Zero)) -> False new_primEqInt(Neg(Zero), Neg(Succ(xx40000))) -> False new_esEs25(xx3001, xx4001, app(ty_Maybe, bdf)) -> new_esEs6(xx3001, xx4001, bdf) new_esEs25(xx3001, xx4001, ty_Bool) -> new_esEs16(xx3001, xx4001) new_esEs11(GT, GT) -> True new_esEs14(xx300, xx400) -> new_primEqInt(xx300, xx400) new_primEqInt(Pos(Succ(xx30000)), Pos(Succ(xx40000))) -> new_primEqNat0(xx30000, xx40000) new_esEs17(Left(xx3000), Right(xx4000), ca, cb) -> False new_esEs17(Right(xx3000), Left(xx4000), ca, cb) -> False new_esEs26(xx3000, xx4000, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs11(EQ, EQ) -> True new_esEs24(xx3000, xx4000, ty_Double) -> new_esEs12(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Double) -> new_esEs12(xx3000, xx4000) new_esEs4(xx300, xx400, ty_@0) -> new_esEs7(xx300, xx400) new_esEs16(True, True) -> True new_sr(Pos(xx30010), Neg(xx40000)) -> Neg(new_primMulNat0(xx30010, xx40000)) new_sr(Neg(xx30010), Pos(xx40000)) -> Neg(new_primMulNat0(xx30010, xx40000)) new_primPlusNat1(Succ(xx2800), Succ(xx4000000)) -> Succ(Succ(new_primPlusNat1(xx2800, xx4000000))) new_primEqInt(Pos(Succ(xx30000)), Neg(xx4000)) -> False new_primEqInt(Neg(Succ(xx30000)), Pos(xx4000)) -> False new_esEs22(xx3002, xx4002, ty_@0) -> new_esEs7(xx3002, xx4002) new_esEs21(xx3000, xx4000, ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs22(xx3002, xx4002, ty_Float) -> new_esEs13(xx3002, xx4002) new_esEs22(xx3002, xx4002, ty_Char) -> new_esEs9(xx3002, xx4002) new_esEs6(Just(xx3000), Just(xx4000), ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs25(xx3001, xx4001, ty_Ordering) -> new_esEs11(xx3001, xx4001) new_esEs21(xx3000, xx4000, app(ty_Ratio, fb)) -> new_esEs5(xx3000, xx4000, fb) new_esEs6(Just(xx3000), Just(xx4000), app(app(app(ty_@3, gg), gh), ha)) -> new_esEs8(xx3000, xx4000, gg, gh, ha) new_esEs22(xx3002, xx4002, app(app(ty_Either, bae), baf)) -> new_esEs17(xx3002, xx4002, bae, baf) new_esEs4(xx300, xx400, ty_Float) -> new_esEs13(xx300, xx400) new_esEs6(Just(xx3000), Just(xx4000), ty_@0) -> new_esEs7(xx3000, xx4000) new_esEs4(xx300, xx400, app(ty_[], bh)) -> new_esEs15(xx300, xx400, bh) new_esEs25(xx3001, xx4001, ty_@0) -> new_esEs7(xx3001, xx4001) new_esEs25(xx3001, xx4001, app(app(app(ty_@3, bdg), bdh), bea)) -> new_esEs8(xx3001, xx4001, bdg, bdh, bea) new_esEs20(xx3000, xx4000, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_Char) -> new_esEs9(xx3000, xx4000) new_esEs19(xx3001, xx4001, ty_Integer) -> new_esEs10(xx3001, xx4001) new_esEs17(Left(xx3000), Left(xx4000), app(app(app(ty_@3, cg), da), db), cb) -> new_esEs8(xx3000, xx4000, cg, da, db) new_esEs15(:(xx3000, xx3001), :(xx4000, xx4001), bh) -> new_asAs(new_esEs21(xx3000, xx4000, bh), new_esEs15(xx3001, xx4001, bh)) new_esEs23(xx3001, xx4001, ty_Float) -> new_esEs13(xx3001, xx4001) new_esEs22(xx3002, xx4002, ty_Double) -> new_esEs12(xx3002, xx4002) new_sr(Neg(xx30010), Neg(xx40000)) -> Pos(new_primMulNat0(xx30010, xx40000)) new_esEs25(xx3001, xx4001, ty_Integer) -> new_esEs10(xx3001, xx4001) new_esEs4(xx300, xx400, app(app(app(ty_@3, be), bf), bg)) -> new_esEs8(xx300, xx400, be, bf, bg) new_esEs25(xx3001, xx4001, app(ty_[], beb)) -> new_esEs15(xx3001, xx4001, beb) new_esEs6(Just(xx3000), Just(xx4000), ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_@0) -> new_esEs7(xx3000, xx4000) new_esEs22(xx3002, xx4002, app(ty_Maybe, hh)) -> new_esEs6(xx3002, xx4002, hh) new_esEs24(xx3000, xx4000, ty_Char) -> new_esEs9(xx3000, xx4000) new_primEqInt(Pos(Zero), Neg(Succ(xx40000))) -> False new_primEqInt(Neg(Zero), Pos(Succ(xx40000))) -> False new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs23(xx3001, xx4001, ty_Ordering) -> new_esEs11(xx3001, xx4001) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs22(xx3002, xx4002, ty_Int) -> new_esEs14(xx3002, xx4002) new_esEs4(xx300, xx400, ty_Integer) -> new_esEs10(xx300, xx400) new_esEs21(xx3000, xx4000, ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), app(app(ty_@2, df), dg), cb) -> new_esEs18(xx3000, xx4000, df, dg) new_esEs4(xx300, xx400, app(ty_Ratio, bc)) -> new_esEs5(xx300, xx400, bc) new_esEs23(xx3001, xx4001, app(ty_Ratio, bba)) -> new_esEs5(xx3001, xx4001, bba) new_primEqInt(Neg(Succ(xx30000)), Neg(Succ(xx40000))) -> new_primEqNat0(xx30000, xx40000) new_esEs17(Left(xx3000), Left(xx4000), app(ty_Maybe, cf), cb) -> new_esEs6(xx3000, xx4000, cf) new_primPlusNat0(Succ(xx280), xx400000) -> Succ(Succ(new_primPlusNat1(xx280, xx400000))) new_esEs17(Left(xx3000), Left(xx4000), ty_@0, cb) -> new_esEs7(xx3000, xx4000) new_esEs23(xx3001, xx4001, app(app(app(ty_@3, bbc), bbd), bbe)) -> new_esEs8(xx3001, xx4001, bbc, bbd, bbe) new_esEs23(xx3001, xx4001, ty_@0) -> new_esEs7(xx3001, xx4001) new_esEs26(xx3000, xx4000, ty_Double) -> new_esEs12(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), ty_Float, cb) -> new_esEs13(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), app(app(ty_Either, dd), de), cb) -> new_esEs17(xx3000, xx4000, dd, de) new_esEs17(Right(xx3000), Right(xx4000), ca, app(ty_Ratio, dh)) -> new_esEs5(xx3000, xx4000, dh) new_esEs6(Just(xx3000), Just(xx4000), ty_Integer) -> new_esEs10(xx3000, xx4000) new_esEs6(Just(xx3000), Just(xx4000), app(ty_[], hb)) -> new_esEs15(xx3000, xx4000, hb) new_esEs4(xx300, xx400, ty_Ordering) -> new_esEs11(xx300, xx400) new_esEs15([], [], bh) -> True new_esEs24(xx3000, xx4000, app(ty_Maybe, bcd)) -> new_esEs6(xx3000, xx4000, bcd) new_primPlusNat1(Zero, Zero) -> Zero new_esEs23(xx3001, xx4001, ty_Integer) -> new_esEs10(xx3001, xx4001) new_primMulNat0(Succ(xx300100), Zero) -> Zero new_primMulNat0(Zero, Succ(xx400000)) -> Zero new_sr(Pos(xx30010), Pos(xx40000)) -> Pos(new_primMulNat0(xx30010, xx40000)) new_esEs20(xx3000, xx4000, ty_Integer) -> new_esEs10(xx3000, xx4000) new_primPlusNat0(Zero, xx400000) -> Succ(xx400000) new_esEs26(xx3000, xx4000, app(app(ty_Either, bfe), bff)) -> new_esEs17(xx3000, xx4000, bfe, bff) new_esEs6(Just(xx3000), Just(xx4000), app(app(ty_@2, he), hf)) -> new_esEs18(xx3000, xx4000, he, hf) new_esEs23(xx3001, xx4001, app(ty_[], bbf)) -> new_esEs15(xx3001, xx4001, bbf) new_esEs6(Just(xx3000), Just(xx4000), app(ty_Ratio, ge)) -> new_esEs5(xx3000, xx4000, ge) new_esEs9(Char(xx3000), Char(xx4000)) -> new_primEqNat0(xx3000, xx4000) new_esEs22(xx3002, xx4002, ty_Bool) -> new_esEs16(xx3002, xx4002) new_esEs26(xx3000, xx4000, app(ty_Ratio, beg)) -> new_esEs5(xx3000, xx4000, beg) new_primEqInt(Neg(Zero), Neg(Zero)) -> True new_esEs11(LT, LT) -> True new_primMulNat0(Succ(xx300100), Succ(xx400000)) -> new_primPlusNat0(new_primMulNat0(xx300100, Succ(xx400000)), xx400000) new_esEs17(Left(xx3000), Left(xx4000), ty_Bool, cb) -> new_esEs16(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs16(False, False) -> True new_esEs22(xx3002, xx4002, app(app(ty_@2, bag), bah)) -> new_esEs18(xx3002, xx4002, bag, bah) new_primPlusNat1(Succ(xx2800), Zero) -> Succ(xx2800) new_primPlusNat1(Zero, Succ(xx4000000)) -> Succ(xx4000000) new_esEs23(xx3001, xx4001, ty_Bool) -> new_esEs16(xx3001, xx4001) new_esEs17(Left(xx3000), Left(xx4000), ty_Integer, cb) -> new_esEs10(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, app(ty_Maybe, ea)) -> new_esEs6(xx3000, xx4000, ea) new_esEs13(Float(xx3000, xx3001), Float(xx4000, xx4001)) -> new_esEs14(new_sr(xx3000, xx4001), new_sr(xx3001, xx4000)) new_esEs4(xx300, xx400, ty_Int) -> new_esEs14(xx300, xx400) new_esEs4(xx300, xx400, app(app(ty_@2, cc), cd)) -> new_esEs18(xx300, xx400, cc, cd) new_esEs17(Right(xx3000), Right(xx4000), ca, app(app(ty_Either, ef), eg)) -> new_esEs17(xx3000, xx4000, ef, eg) new_primEqInt(Pos(Zero), Neg(Zero)) -> True new_primEqInt(Neg(Zero), Pos(Zero)) -> True new_esEs21(xx3000, xx4000, app(app(ty_@2, gc), gd)) -> new_esEs18(xx3000, xx4000, gc, gd) new_esEs17(Left(xx3000), Left(xx4000), ty_Int, cb) -> new_esEs14(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Integer) -> new_esEs10(xx3000, xx4000) new_primEqNat0(Zero, Zero) -> True new_esEs21(xx3000, xx4000, app(ty_[], fh)) -> new_esEs15(xx3000, xx4000, fh) new_esEs24(xx3000, xx4000, app(app(ty_Either, bda), bdb)) -> new_esEs17(xx3000, xx4000, bda, bdb) new_esEs5(:%(xx3000, xx3001), :%(xx4000, xx4001), bc) -> new_asAs(new_esEs20(xx3000, xx4000, bc), new_esEs19(xx3001, xx4001, bc)) new_esEs4(xx300, xx400, ty_Bool) -> new_esEs16(xx300, xx400) new_esEs22(xx3002, xx4002, app(ty_[], bad)) -> new_esEs15(xx3002, xx4002, bad) new_esEs6(Just(xx3000), Just(xx4000), ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs25(xx3001, xx4001, app(app(ty_Either, bec), bed)) -> new_esEs17(xx3001, xx4001, bec, bed) new_asAs(False, xx27) -> False new_esEs6(Just(xx3000), Just(xx4000), app(ty_Maybe, gf)) -> new_esEs6(xx3000, xx4000, gf) new_esEs6(Nothing, Just(xx4000), bd) -> False new_esEs6(Just(xx3000), Nothing, bd) -> False new_esEs24(xx3000, xx4000, app(app(app(ty_@3, bce), bcf), bcg)) -> new_esEs8(xx3000, xx4000, bce, bcf, bcg) new_esEs6(Nothing, Nothing, bd) -> True new_esEs25(xx3001, xx4001, ty_Float) -> new_esEs13(xx3001, xx4001) new_esEs6(Just(xx3000), Just(xx4000), ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), ty_Ordering, cb) -> new_esEs11(xx3000, xx4000) new_esEs16(False, True) -> False new_esEs16(True, False) -> False new_esEs23(xx3001, xx4001, ty_Int) -> new_esEs14(xx3001, xx4001) new_esEs8(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), be, bf, bg) -> new_asAs(new_esEs24(xx3000, xx4000, be), new_asAs(new_esEs23(xx3001, xx4001, bf), new_esEs22(xx3002, xx4002, bg))) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Integer) -> new_esEs10(xx3000, xx4000) The set Q consists of the following terms: new_esEs17(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5)) new_esEs15(:(x0, x1), [], x2) new_esEs26(x0, x1, ty_Integer) new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs4(x0, x1, ty_Ordering) new_esEs9(Char(x0), Char(x1)) new_esEs17(Left(x0), Left(x1), ty_@0, x2) new_esEs18(@2(x0, x1), @2(x2, x3), x4, x5) new_esEs6(Nothing, Just(x0), x1) new_primEqInt(Neg(Succ(x0)), Neg(Zero)) new_esEs17(Right(x0), Right(x1), x2, ty_Int) new_primPlusNat1(Zero, Succ(x0)) new_esEs22(x0, x1, ty_Int) new_primPlusNat1(Succ(x0), Zero) new_esEs22(x0, x1, ty_Ordering) new_primMulNat0(Zero, Zero) new_primPlusNat1(Zero, Zero) new_esEs17(Right(x0), Right(x1), x2, ty_Ordering) new_esEs23(x0, x1, app(app(ty_@2, x2), x3)) new_esEs17(Right(x0), Right(x1), x2, ty_Float) new_esEs25(x0, x1, app(ty_[], x2)) new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs21(x0, x1, app(ty_[], x2)) new_esEs24(x0, x1, ty_Integer) new_esEs4(x0, x1, ty_Int) new_esEs23(x0, x1, ty_Float) new_primPlusNat0(Zero, x0) new_esEs25(x0, x1, app(ty_Ratio, x2)) new_esEs6(Just(x0), Just(x1), ty_Float) new_primEqInt(Pos(Zero), Pos(Zero)) new_esEs20(x0, x1, ty_Integer) new_esEs22(x0, x1, app(app(ty_@2, x2), x3)) new_esEs22(x0, x1, ty_Float) new_esEs26(x0, x1, app(app(ty_Either, x2), x3)) new_esEs23(x0, x1, ty_Double) new_esEs23(x0, x1, ty_Ordering) new_esEs17(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4) new_esEs21(x0, x1, app(ty_Maybe, x2)) new_esEs26(x0, x1, ty_@0) new_esEs19(x0, x1, ty_Integer) new_esEs6(Just(x0), Just(x1), ty_Integer) new_sr(Pos(x0), Neg(x1)) new_sr(Neg(x0), Pos(x1)) new_esEs4(x0, x1, ty_Char) new_esEs4(x0, x1, ty_Double) new_primEqInt(Pos(Succ(x0)), Pos(Zero)) new_primEqInt(Neg(Zero), Neg(Zero)) new_esEs17(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5) new_primPlusNat1(Succ(x0), Succ(x1)) new_esEs17(Left(x0), Left(x1), ty_Bool, x2) new_esEs23(x0, x1, app(app(ty_Either, x2), x3)) new_esEs4(x0, x1, app(ty_Ratio, x2)) new_esEs23(x0, x1, ty_Int) new_esEs21(x0, x1, ty_Bool) new_esEs17(Left(x0), Left(x1), ty_Integer, x2) new_esEs15([], [], x0) new_esEs24(x0, x1, ty_@0) new_sr(Pos(x0), Pos(x1)) new_esEs17(Right(x0), Right(x1), x2, app(ty_Ratio, x3)) new_esEs6(Just(x0), Just(x1), app(app(ty_Either, x2), x3)) new_esEs24(x0, x1, ty_Double) new_esEs21(x0, x1, ty_Float) new_esEs17(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4)) new_esEs25(x0, x1, ty_Integer) new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1))) new_esEs24(x0, x1, ty_Bool) new_esEs24(x0, x1, ty_Float) new_esEs6(Just(x0), Just(x1), ty_Ordering) new_esEs17(Right(x0), Right(x1), x2, app(ty_[], x3)) new_esEs23(x0, x1, app(ty_[], x2)) new_esEs11(EQ, GT) new_esEs11(GT, EQ) new_esEs21(x0, x1, ty_Double) new_esEs17(Right(x0), Right(x1), x2, ty_@0) new_esEs6(Nothing, Nothing, x0) new_esEs17(Right(x0), Right(x1), x2, ty_Char) new_esEs26(x0, x1, app(ty_Maybe, x2)) new_primEqInt(Pos(Zero), Neg(Zero)) new_primEqInt(Neg(Zero), Pos(Zero)) new_esEs8(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8) new_esEs17(Right(x0), Right(x1), x2, ty_Double) new_esEs17(Left(x0), Left(x1), ty_Ordering, x2) new_esEs19(x0, x1, ty_Int) new_esEs4(x0, x1, ty_Integer) new_esEs16(True, True) new_esEs21(x0, x1, ty_Int) new_esEs11(EQ, EQ) new_esEs6(Just(x0), Nothing, x1) new_esEs4(x0, x1, app(ty_[], x2)) new_esEs21(x0, x1, ty_@0) new_esEs25(x0, x1, ty_Ordering) new_esEs24(x0, x1, app(ty_Maybe, x2)) new_esEs21(x0, x1, app(app(ty_@2, x2), x3)) new_esEs10(Integer(x0), Integer(x1)) new_primMulNat0(Zero, Succ(x0)) new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs24(x0, x1, ty_Int) new_esEs24(x0, x1, ty_Char) new_esEs6(Just(x0), Just(x1), app(app(ty_@2, x2), x3)) new_esEs4(x0, x1, app(ty_Maybe, x2)) new_esEs23(x0, x1, app(ty_Ratio, x2)) new_primEqInt(Pos(Succ(x0)), Neg(x1)) new_primEqInt(Neg(Succ(x0)), Pos(x1)) new_primEqInt(Neg(Zero), Neg(Succ(x0))) new_esEs4(x0, x1, app(app(ty_@2, x2), x3)) new_esEs4(x0, x1, ty_Bool) new_esEs6(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4)) new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_primEqNat0(Succ(x0), Succ(x1)) new_esEs26(x0, x1, ty_Int) new_esEs22(x0, x1, app(ty_Maybe, x2)) new_esEs26(x0, x1, ty_Char) new_esEs21(x0, x1, ty_Char) new_esEs23(x0, x1, ty_@0) new_esEs22(x0, x1, ty_Integer) new_primEqInt(Pos(Zero), Pos(Succ(x0))) new_esEs17(Right(x0), Right(x1), x2, ty_Integer) new_esEs22(x0, x1, ty_Bool) new_esEs7(@0, @0) new_esEs17(Left(x0), Left(x1), ty_Double, x2) new_esEs15([], :(x0, x1), x2) new_esEs4(x0, x1, ty_@0) new_esEs25(x0, x1, app(app(ty_Either, x2), x3)) new_esEs13(Float(x0, x1), Float(x2, x3)) new_esEs17(Right(x0), Right(x1), x2, ty_Bool) new_esEs23(x0, x1, ty_Bool) new_esEs12(Double(x0, x1), Double(x2, x3)) new_esEs26(x0, x1, ty_Ordering) new_esEs26(x0, x1, app(app(ty_@2, x2), x3)) new_primPlusNat0(Succ(x0), x1) new_esEs22(x0, x1, app(app(ty_Either, x2), x3)) new_esEs11(LT, GT) new_esEs11(GT, LT) new_esEs26(x0, x1, ty_Float) new_esEs6(Just(x0), Just(x1), ty_@0) new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs17(Left(x0), Right(x1), x2, x3) new_esEs17(Right(x0), Left(x1), x2, x3) new_primMulNat0(Succ(x0), Zero) new_esEs17(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4) new_esEs17(Right(x0), Right(x1), x2, app(ty_Maybe, x3)) new_esEs6(Just(x0), Just(x1), app(ty_[], x2)) new_esEs22(x0, x1, app(ty_Ratio, x2)) new_esEs25(x0, x1, ty_Bool) new_esEs23(x0, x1, ty_Char) new_esEs17(Left(x0), Left(x1), app(ty_Ratio, x2), x3) new_esEs21(x0, x1, app(ty_Ratio, x2)) new_primMulNat0(Succ(x0), Succ(x1)) new_esEs11(LT, EQ) new_esEs11(EQ, LT) new_esEs6(Just(x0), Just(x1), app(ty_Ratio, x2)) new_esEs14(x0, x1) new_esEs17(Left(x0), Left(x1), app(ty_Maybe, x2), x3) new_asAs(False, x0) new_esEs22(x0, x1, app(ty_[], x2)) new_esEs11(GT, GT) new_primEqInt(Pos(Zero), Neg(Succ(x0))) new_primEqInt(Neg(Zero), Pos(Succ(x0))) new_esEs5(:%(x0, x1), :%(x2, x3), x4) new_esEs24(x0, x1, app(app(ty_Either, x2), x3)) new_primEqNat0(Zero, Succ(x0)) new_esEs24(x0, x1, app(app(ty_@2, x2), x3)) new_esEs6(Just(x0), Just(x1), app(ty_Maybe, x2)) new_primEqNat0(Succ(x0), Zero) new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_primEqNat0(Zero, Zero) new_esEs23(x0, x1, ty_Integer) new_esEs4(x0, x1, app(app(ty_Either, x2), x3)) new_esEs25(x0, x1, app(ty_Maybe, x2)) new_esEs23(x0, x1, app(ty_Maybe, x2)) new_esEs25(x0, x1, app(app(ty_@2, x2), x3)) new_esEs17(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4)) new_esEs26(x0, x1, ty_Double) new_esEs17(Left(x0), Left(x1), ty_Int, x2) new_esEs16(False, False) new_esEs17(Left(x0), Left(x1), ty_Char, x2) new_esEs11(LT, LT) new_esEs20(x0, x1, ty_Int) new_esEs6(Just(x0), Just(x1), ty_Int) new_esEs16(False, True) new_esEs16(True, False) new_esEs17(Left(x0), Left(x1), app(ty_[], x2), x3) new_esEs22(x0, x1, ty_Char) new_esEs25(x0, x1, ty_Double) new_esEs6(Just(x0), Just(x1), ty_Double) new_esEs22(x0, x1, ty_@0) new_esEs26(x0, x1, app(ty_Ratio, x2)) new_esEs26(x0, x1, ty_Bool) new_esEs25(x0, x1, ty_Float) new_esEs25(x0, x1, ty_Char) new_esEs15(:(x0, x1), :(x2, x3), x4) new_esEs6(Just(x0), Just(x1), ty_Char) new_esEs6(Just(x0), Just(x1), ty_Bool) new_esEs21(x0, x1, ty_Integer) new_esEs17(Left(x0), Left(x1), ty_Float, x2) new_esEs26(x0, x1, app(ty_[], x2)) new_sr(Neg(x0), Neg(x1)) new_esEs21(x0, x1, app(app(ty_Either, x2), x3)) new_esEs24(x0, x1, ty_Ordering) new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs4(x0, x1, ty_Float) new_esEs25(x0, x1, ty_Int) new_esEs25(x0, x1, ty_@0) new_asAs(True, x0) new_esEs22(x0, x1, ty_Double) new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1))) new_esEs24(x0, x1, app(ty_[], x2)) new_esEs21(x0, x1, ty_Ordering) new_esEs24(x0, x1, app(ty_Ratio, x2)) 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_psPs(Nothing, :(Just(xx400), xx41), xx5, ba) -> new_psPs(Nothing, xx41, xx5, ba) The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3, 4 >= 4 ---------------------------------------- (18) YES ---------------------------------------- (19) Obligation: Q DP problem: The TRS P consists of the following rules: new_psPs(Just(xx300), :(Nothing, xx41), xx5, ba) -> new_psPs0(xx300, False, xx41, xx5, ba) new_psPs0(xx11, False, xx13, xx14, bb) -> new_psPs(Just(xx11), xx13, xx14, bb) new_psPs(Just(xx300), :(Just(xx400), xx41), xx5, ba) -> new_psPs0(xx300, new_esEs4(xx300, xx400, ba), xx41, xx5, ba) The TRS R consists of the following rules: new_esEs18(@2(xx3000, xx3001), @2(xx4000, xx4001), cc, cd) -> new_asAs(new_esEs26(xx3000, xx4000, cc), new_esEs25(xx3001, xx4001, cd)) new_esEs23(xx3001, xx4001, ty_Double) -> new_esEs12(xx3001, xx4001) new_primEqInt(Pos(Zero), Pos(Zero)) -> True new_esEs26(xx3000, xx4000, ty_Integer) -> new_esEs10(xx3000, xx4000) new_esEs23(xx3001, xx4001, app(ty_Maybe, bbb)) -> new_esEs6(xx3001, xx4001, bbb) new_esEs4(xx300, xx400, app(ty_Maybe, bd)) -> new_esEs6(xx300, xx400, bd) new_esEs11(LT, EQ) -> False new_esEs11(EQ, LT) -> False new_esEs17(Right(xx3000), Right(xx4000), ca, app(app(app(ty_@3, eb), ec), ed)) -> new_esEs8(xx3000, xx4000, eb, ec, ed) new_esEs25(xx3001, xx4001, ty_Char) -> new_esEs9(xx3001, xx4001) new_esEs24(xx3000, xx4000, app(ty_[], bch)) -> new_esEs15(xx3000, xx4000, bch) new_esEs17(Right(xx3000), Right(xx4000), ca, app(app(ty_@2, eh), fa)) -> new_esEs18(xx3000, xx4000, eh, fa) new_esEs26(xx3000, xx4000, ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_@0) -> new_esEs7(xx3000, xx4000) new_esEs26(xx3000, xx4000, app(app(app(ty_@3, bfa), bfb), bfc)) -> new_esEs8(xx3000, xx4000, bfa, bfb, bfc) new_esEs21(xx3000, xx4000, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs21(xx3000, xx4000, app(app(ty_Either, ga), gb)) -> new_esEs17(xx3000, xx4000, ga, gb) new_esEs22(xx3002, xx4002, app(ty_Ratio, hg)) -> new_esEs5(xx3002, xx4002, hg) new_esEs11(LT, GT) -> False new_esEs11(GT, LT) -> False new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Char) -> new_esEs9(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), ty_Double, cb) -> new_esEs12(xx3000, xx4000) new_esEs21(xx3000, xx4000, ty_Double) -> new_esEs12(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs6(Just(xx3000), Just(xx4000), ty_Char) -> new_esEs9(xx3000, xx4000) new_esEs4(xx300, xx400, ty_Double) -> new_esEs12(xx300, xx400) new_esEs25(xx3001, xx4001, ty_Double) -> new_esEs12(xx3001, xx4001) new_esEs26(xx3000, xx4000, app(ty_[], bfd)) -> new_esEs15(xx3000, xx4000, bfd) new_esEs6(Just(xx3000), Just(xx4000), ty_Double) -> new_esEs12(xx3000, xx4000) new_asAs(True, xx27) -> xx27 new_esEs26(xx3000, xx4000, ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs10(Integer(xx3000), Integer(xx4000)) -> new_primEqInt(xx3000, xx4000) new_esEs21(xx3000, xx4000, app(ty_Maybe, fc)) -> new_esEs6(xx3000, xx4000, fc) new_esEs17(Left(xx3000), Left(xx4000), app(ty_[], dc), cb) -> new_esEs15(xx3000, xx4000, dc) new_esEs26(xx3000, xx4000, app(app(ty_@2, bfg), bfh)) -> new_esEs18(xx3000, xx4000, bfg, bfh) new_esEs6(Just(xx3000), Just(xx4000), app(app(ty_Either, hc), hd)) -> new_esEs17(xx3000, xx4000, hc, hd) new_esEs22(xx3002, xx4002, ty_Ordering) -> new_esEs11(xx3002, xx4002) new_primEqInt(Pos(Succ(xx30000)), Pos(Zero)) -> False new_primEqInt(Pos(Zero), Pos(Succ(xx40000))) -> False new_esEs23(xx3001, xx4001, ty_Char) -> new_esEs9(xx3001, xx4001) new_esEs23(xx3001, xx4001, app(app(ty_Either, bbg), bbh)) -> new_esEs17(xx3001, xx4001, bbg, bbh) new_esEs17(Left(xx3000), Left(xx4000), ty_Char, cb) -> new_esEs9(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, app(ty_[], ee)) -> new_esEs15(xx3000, xx4000, ee) new_esEs21(xx3000, xx4000, ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_@0) -> new_esEs7(xx3000, xx4000) new_primEqNat0(Succ(xx30000), Succ(xx40000)) -> new_primEqNat0(xx30000, xx40000) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs21(xx3000, xx4000, ty_Char) -> new_esEs9(xx3000, xx4000) new_esEs23(xx3001, xx4001, app(app(ty_@2, bca), bcb)) -> new_esEs18(xx3001, xx4001, bca, bcb) new_primMulNat0(Zero, Zero) -> Zero new_esEs22(xx3002, xx4002, ty_Integer) -> new_esEs10(xx3002, xx4002) new_esEs21(xx3000, xx4000, ty_Integer) -> new_esEs10(xx3000, xx4000) new_esEs12(Double(xx3000, xx3001), Double(xx4000, xx4001)) -> new_esEs14(new_sr(xx3000, xx4001), new_sr(xx3001, xx4000)) new_esEs21(xx3000, xx4000, ty_@0) -> new_esEs7(xx3000, xx4000) new_esEs21(xx3000, xx4000, app(app(app(ty_@3, fd), ff), fg)) -> new_esEs8(xx3000, xx4000, fd, ff, fg) new_esEs24(xx3000, xx4000, app(app(ty_@2, bdc), bdd)) -> new_esEs18(xx3000, xx4000, bdc, bdd) new_esEs15(:(xx3000, xx3001), [], bh) -> False new_esEs15([], :(xx4000, xx4001), bh) -> False new_esEs11(EQ, GT) -> False new_esEs11(GT, EQ) -> False new_primEqNat0(Succ(xx30000), Zero) -> False new_primEqNat0(Zero, Succ(xx40000)) -> False new_esEs19(xx3001, xx4001, ty_Int) -> new_esEs14(xx3001, xx4001) new_esEs25(xx3001, xx4001, ty_Int) -> new_esEs14(xx3001, xx4001) new_esEs26(xx3000, xx4000, app(ty_Maybe, beh)) -> new_esEs6(xx3000, xx4000, beh) new_esEs17(Left(xx3000), Left(xx4000), app(ty_Ratio, ce), cb) -> new_esEs5(xx3000, xx4000, ce) new_esEs25(xx3001, xx4001, app(ty_Ratio, bde)) -> new_esEs5(xx3001, xx4001, bde) new_esEs22(xx3002, xx4002, app(app(app(ty_@3, baa), bab), bac)) -> new_esEs8(xx3002, xx4002, baa, bab, bac) new_esEs25(xx3001, xx4001, app(app(ty_@2, bee), bef)) -> new_esEs18(xx3001, xx4001, bee, bef) new_esEs7(@0, @0) -> True new_esEs4(xx300, xx400, ty_Char) -> new_esEs9(xx300, xx400) new_esEs4(xx300, xx400, app(app(ty_Either, ca), cb)) -> new_esEs17(xx300, xx400, ca, cb) new_esEs24(xx3000, xx4000, app(ty_Ratio, bcc)) -> new_esEs5(xx3000, xx4000, bcc) new_primEqInt(Neg(Succ(xx30000)), Neg(Zero)) -> False new_primEqInt(Neg(Zero), Neg(Succ(xx40000))) -> False new_esEs25(xx3001, xx4001, app(ty_Maybe, bdf)) -> new_esEs6(xx3001, xx4001, bdf) new_esEs25(xx3001, xx4001, ty_Bool) -> new_esEs16(xx3001, xx4001) new_esEs11(GT, GT) -> True new_esEs14(xx300, xx400) -> new_primEqInt(xx300, xx400) new_primEqInt(Pos(Succ(xx30000)), Pos(Succ(xx40000))) -> new_primEqNat0(xx30000, xx40000) new_esEs17(Left(xx3000), Right(xx4000), ca, cb) -> False new_esEs17(Right(xx3000), Left(xx4000), ca, cb) -> False new_esEs26(xx3000, xx4000, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs11(EQ, EQ) -> True new_esEs24(xx3000, xx4000, ty_Double) -> new_esEs12(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Double) -> new_esEs12(xx3000, xx4000) new_esEs4(xx300, xx400, ty_@0) -> new_esEs7(xx300, xx400) new_esEs16(True, True) -> True new_sr(Pos(xx30010), Neg(xx40000)) -> Neg(new_primMulNat0(xx30010, xx40000)) new_sr(Neg(xx30010), Pos(xx40000)) -> Neg(new_primMulNat0(xx30010, xx40000)) new_primPlusNat1(Succ(xx2800), Succ(xx4000000)) -> Succ(Succ(new_primPlusNat1(xx2800, xx4000000))) new_primEqInt(Pos(Succ(xx30000)), Neg(xx4000)) -> False new_primEqInt(Neg(Succ(xx30000)), Pos(xx4000)) -> False new_esEs22(xx3002, xx4002, ty_@0) -> new_esEs7(xx3002, xx4002) new_esEs21(xx3000, xx4000, ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs22(xx3002, xx4002, ty_Float) -> new_esEs13(xx3002, xx4002) new_esEs22(xx3002, xx4002, ty_Char) -> new_esEs9(xx3002, xx4002) new_esEs6(Just(xx3000), Just(xx4000), ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs25(xx3001, xx4001, ty_Ordering) -> new_esEs11(xx3001, xx4001) new_esEs21(xx3000, xx4000, app(ty_Ratio, fb)) -> new_esEs5(xx3000, xx4000, fb) new_esEs6(Just(xx3000), Just(xx4000), app(app(app(ty_@3, gg), gh), ha)) -> new_esEs8(xx3000, xx4000, gg, gh, ha) new_esEs22(xx3002, xx4002, app(app(ty_Either, bae), baf)) -> new_esEs17(xx3002, xx4002, bae, baf) new_esEs4(xx300, xx400, ty_Float) -> new_esEs13(xx300, xx400) new_esEs6(Just(xx3000), Just(xx4000), ty_@0) -> new_esEs7(xx3000, xx4000) new_esEs4(xx300, xx400, app(ty_[], bh)) -> new_esEs15(xx300, xx400, bh) new_esEs25(xx3001, xx4001, ty_@0) -> new_esEs7(xx3001, xx4001) new_esEs25(xx3001, xx4001, app(app(app(ty_@3, bdg), bdh), bea)) -> new_esEs8(xx3001, xx4001, bdg, bdh, bea) new_esEs20(xx3000, xx4000, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs26(xx3000, xx4000, ty_Char) -> new_esEs9(xx3000, xx4000) new_esEs19(xx3001, xx4001, ty_Integer) -> new_esEs10(xx3001, xx4001) new_esEs17(Left(xx3000), Left(xx4000), app(app(app(ty_@3, cg), da), db), cb) -> new_esEs8(xx3000, xx4000, cg, da, db) new_esEs15(:(xx3000, xx3001), :(xx4000, xx4001), bh) -> new_asAs(new_esEs21(xx3000, xx4000, bh), new_esEs15(xx3001, xx4001, bh)) new_esEs23(xx3001, xx4001, ty_Float) -> new_esEs13(xx3001, xx4001) new_esEs22(xx3002, xx4002, ty_Double) -> new_esEs12(xx3002, xx4002) new_sr(Neg(xx30010), Neg(xx40000)) -> Pos(new_primMulNat0(xx30010, xx40000)) new_esEs25(xx3001, xx4001, ty_Integer) -> new_esEs10(xx3001, xx4001) new_esEs4(xx300, xx400, app(app(app(ty_@3, be), bf), bg)) -> new_esEs8(xx300, xx400, be, bf, bg) new_esEs25(xx3001, xx4001, app(ty_[], beb)) -> new_esEs15(xx3001, xx4001, beb) new_esEs6(Just(xx3000), Just(xx4000), ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_@0) -> new_esEs7(xx3000, xx4000) new_esEs22(xx3002, xx4002, app(ty_Maybe, hh)) -> new_esEs6(xx3002, xx4002, hh) new_esEs24(xx3000, xx4000, ty_Char) -> new_esEs9(xx3000, xx4000) new_primEqInt(Pos(Zero), Neg(Succ(xx40000))) -> False new_primEqInt(Neg(Zero), Pos(Succ(xx40000))) -> False new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs23(xx3001, xx4001, ty_Ordering) -> new_esEs11(xx3001, xx4001) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Ordering) -> new_esEs11(xx3000, xx4000) new_esEs22(xx3002, xx4002, ty_Int) -> new_esEs14(xx3002, xx4002) new_esEs4(xx300, xx400, ty_Integer) -> new_esEs10(xx300, xx400) new_esEs21(xx3000, xx4000, ty_Float) -> new_esEs13(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), app(app(ty_@2, df), dg), cb) -> new_esEs18(xx3000, xx4000, df, dg) new_esEs4(xx300, xx400, app(ty_Ratio, bc)) -> new_esEs5(xx300, xx400, bc) new_esEs23(xx3001, xx4001, app(ty_Ratio, bba)) -> new_esEs5(xx3001, xx4001, bba) new_primEqInt(Neg(Succ(xx30000)), Neg(Succ(xx40000))) -> new_primEqNat0(xx30000, xx40000) new_esEs17(Left(xx3000), Left(xx4000), app(ty_Maybe, cf), cb) -> new_esEs6(xx3000, xx4000, cf) new_primPlusNat0(Succ(xx280), xx400000) -> Succ(Succ(new_primPlusNat1(xx280, xx400000))) new_esEs17(Left(xx3000), Left(xx4000), ty_@0, cb) -> new_esEs7(xx3000, xx4000) new_esEs23(xx3001, xx4001, app(app(app(ty_@3, bbc), bbd), bbe)) -> new_esEs8(xx3001, xx4001, bbc, bbd, bbe) new_esEs23(xx3001, xx4001, ty_@0) -> new_esEs7(xx3001, xx4001) new_esEs26(xx3000, xx4000, ty_Double) -> new_esEs12(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), ty_Float, cb) -> new_esEs13(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), app(app(ty_Either, dd), de), cb) -> new_esEs17(xx3000, xx4000, dd, de) new_esEs17(Right(xx3000), Right(xx4000), ca, app(ty_Ratio, dh)) -> new_esEs5(xx3000, xx4000, dh) new_esEs6(Just(xx3000), Just(xx4000), ty_Integer) -> new_esEs10(xx3000, xx4000) new_esEs6(Just(xx3000), Just(xx4000), app(ty_[], hb)) -> new_esEs15(xx3000, xx4000, hb) new_esEs4(xx300, xx400, ty_Ordering) -> new_esEs11(xx300, xx400) new_esEs15([], [], bh) -> True new_esEs24(xx3000, xx4000, app(ty_Maybe, bcd)) -> new_esEs6(xx3000, xx4000, bcd) new_primPlusNat1(Zero, Zero) -> Zero new_esEs23(xx3001, xx4001, ty_Integer) -> new_esEs10(xx3001, xx4001) new_primMulNat0(Succ(xx300100), Zero) -> Zero new_primMulNat0(Zero, Succ(xx400000)) -> Zero new_sr(Pos(xx30010), Pos(xx40000)) -> Pos(new_primMulNat0(xx30010, xx40000)) new_esEs20(xx3000, xx4000, ty_Integer) -> new_esEs10(xx3000, xx4000) new_primPlusNat0(Zero, xx400000) -> Succ(xx400000) new_esEs26(xx3000, xx4000, app(app(ty_Either, bfe), bff)) -> new_esEs17(xx3000, xx4000, bfe, bff) new_esEs6(Just(xx3000), Just(xx4000), app(app(ty_@2, he), hf)) -> new_esEs18(xx3000, xx4000, he, hf) new_esEs23(xx3001, xx4001, app(ty_[], bbf)) -> new_esEs15(xx3001, xx4001, bbf) new_esEs6(Just(xx3000), Just(xx4000), app(ty_Ratio, ge)) -> new_esEs5(xx3000, xx4000, ge) new_esEs9(Char(xx3000), Char(xx4000)) -> new_primEqNat0(xx3000, xx4000) new_esEs22(xx3002, xx4002, ty_Bool) -> new_esEs16(xx3002, xx4002) new_esEs26(xx3000, xx4000, app(ty_Ratio, beg)) -> new_esEs5(xx3000, xx4000, beg) new_primEqInt(Neg(Zero), Neg(Zero)) -> True new_esEs11(LT, LT) -> True new_primMulNat0(Succ(xx300100), Succ(xx400000)) -> new_primPlusNat0(new_primMulNat0(xx300100, Succ(xx400000)), xx400000) new_esEs17(Left(xx3000), Left(xx4000), ty_Bool, cb) -> new_esEs16(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs16(False, False) -> True new_esEs22(xx3002, xx4002, app(app(ty_@2, bag), bah)) -> new_esEs18(xx3002, xx4002, bag, bah) new_primPlusNat1(Succ(xx2800), Zero) -> Succ(xx2800) new_primPlusNat1(Zero, Succ(xx4000000)) -> Succ(xx4000000) new_esEs23(xx3001, xx4001, ty_Bool) -> new_esEs16(xx3001, xx4001) new_esEs17(Left(xx3000), Left(xx4000), ty_Integer, cb) -> new_esEs10(xx3000, xx4000) new_esEs17(Right(xx3000), Right(xx4000), ca, app(ty_Maybe, ea)) -> new_esEs6(xx3000, xx4000, ea) new_esEs13(Float(xx3000, xx3001), Float(xx4000, xx4001)) -> new_esEs14(new_sr(xx3000, xx4001), new_sr(xx3001, xx4000)) new_esEs4(xx300, xx400, ty_Int) -> new_esEs14(xx300, xx400) new_esEs4(xx300, xx400, app(app(ty_@2, cc), cd)) -> new_esEs18(xx300, xx400, cc, cd) new_esEs17(Right(xx3000), Right(xx4000), ca, app(app(ty_Either, ef), eg)) -> new_esEs17(xx3000, xx4000, ef, eg) new_primEqInt(Pos(Zero), Neg(Zero)) -> True new_primEqInt(Neg(Zero), Pos(Zero)) -> True new_esEs21(xx3000, xx4000, app(app(ty_@2, gc), gd)) -> new_esEs18(xx3000, xx4000, gc, gd) new_esEs17(Left(xx3000), Left(xx4000), ty_Int, cb) -> new_esEs14(xx3000, xx4000) new_esEs24(xx3000, xx4000, ty_Integer) -> new_esEs10(xx3000, xx4000) new_primEqNat0(Zero, Zero) -> True new_esEs21(xx3000, xx4000, app(ty_[], fh)) -> new_esEs15(xx3000, xx4000, fh) new_esEs24(xx3000, xx4000, app(app(ty_Either, bda), bdb)) -> new_esEs17(xx3000, xx4000, bda, bdb) new_esEs5(:%(xx3000, xx3001), :%(xx4000, xx4001), bc) -> new_asAs(new_esEs20(xx3000, xx4000, bc), new_esEs19(xx3001, xx4001, bc)) new_esEs4(xx300, xx400, ty_Bool) -> new_esEs16(xx300, xx400) new_esEs22(xx3002, xx4002, app(ty_[], bad)) -> new_esEs15(xx3002, xx4002, bad) new_esEs6(Just(xx3000), Just(xx4000), ty_Bool) -> new_esEs16(xx3000, xx4000) new_esEs25(xx3001, xx4001, app(app(ty_Either, bec), bed)) -> new_esEs17(xx3001, xx4001, bec, bed) new_asAs(False, xx27) -> False new_esEs6(Just(xx3000), Just(xx4000), app(ty_Maybe, gf)) -> new_esEs6(xx3000, xx4000, gf) new_esEs6(Nothing, Just(xx4000), bd) -> False new_esEs6(Just(xx3000), Nothing, bd) -> False new_esEs24(xx3000, xx4000, app(app(app(ty_@3, bce), bcf), bcg)) -> new_esEs8(xx3000, xx4000, bce, bcf, bcg) new_esEs6(Nothing, Nothing, bd) -> True new_esEs25(xx3001, xx4001, ty_Float) -> new_esEs13(xx3001, xx4001) new_esEs6(Just(xx3000), Just(xx4000), ty_Int) -> new_esEs14(xx3000, xx4000) new_esEs17(Left(xx3000), Left(xx4000), ty_Ordering, cb) -> new_esEs11(xx3000, xx4000) new_esEs16(False, True) -> False new_esEs16(True, False) -> False new_esEs23(xx3001, xx4001, ty_Int) -> new_esEs14(xx3001, xx4001) new_esEs8(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), be, bf, bg) -> new_asAs(new_esEs24(xx3000, xx4000, be), new_asAs(new_esEs23(xx3001, xx4001, bf), new_esEs22(xx3002, xx4002, bg))) new_esEs17(Right(xx3000), Right(xx4000), ca, ty_Integer) -> new_esEs10(xx3000, xx4000) The set Q consists of the following terms: new_esEs17(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5)) new_esEs15(:(x0, x1), [], x2) new_esEs26(x0, x1, ty_Integer) new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs4(x0, x1, ty_Ordering) new_esEs9(Char(x0), Char(x1)) new_esEs17(Left(x0), Left(x1), ty_@0, x2) new_esEs18(@2(x0, x1), @2(x2, x3), x4, x5) new_esEs6(Nothing, Just(x0), x1) new_primEqInt(Neg(Succ(x0)), Neg(Zero)) new_esEs17(Right(x0), Right(x1), x2, ty_Int) new_primPlusNat1(Zero, Succ(x0)) new_esEs22(x0, x1, ty_Int) new_primPlusNat1(Succ(x0), Zero) new_esEs22(x0, x1, ty_Ordering) new_primMulNat0(Zero, Zero) new_primPlusNat1(Zero, Zero) new_esEs17(Right(x0), Right(x1), x2, ty_Ordering) new_esEs23(x0, x1, app(app(ty_@2, x2), x3)) new_esEs17(Right(x0), Right(x1), x2, ty_Float) new_esEs25(x0, x1, app(ty_[], x2)) new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs21(x0, x1, app(ty_[], x2)) new_esEs24(x0, x1, ty_Integer) new_esEs4(x0, x1, ty_Int) new_esEs23(x0, x1, ty_Float) new_primPlusNat0(Zero, x0) new_esEs25(x0, x1, app(ty_Ratio, x2)) new_esEs6(Just(x0), Just(x1), ty_Float) new_primEqInt(Pos(Zero), Pos(Zero)) new_esEs20(x0, x1, ty_Integer) new_esEs22(x0, x1, app(app(ty_@2, x2), x3)) new_esEs22(x0, x1, ty_Float) new_esEs26(x0, x1, app(app(ty_Either, x2), x3)) new_esEs23(x0, x1, ty_Double) new_esEs23(x0, x1, ty_Ordering) new_esEs17(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4) new_esEs21(x0, x1, app(ty_Maybe, x2)) new_esEs26(x0, x1, ty_@0) new_esEs19(x0, x1, ty_Integer) new_esEs6(Just(x0), Just(x1), ty_Integer) new_sr(Pos(x0), Neg(x1)) new_sr(Neg(x0), Pos(x1)) new_esEs4(x0, x1, ty_Char) new_esEs4(x0, x1, ty_Double) new_primEqInt(Pos(Succ(x0)), Pos(Zero)) new_primEqInt(Neg(Zero), Neg(Zero)) new_esEs17(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5) new_primPlusNat1(Succ(x0), Succ(x1)) new_esEs17(Left(x0), Left(x1), ty_Bool, x2) new_esEs23(x0, x1, app(app(ty_Either, x2), x3)) new_esEs4(x0, x1, app(ty_Ratio, x2)) new_esEs23(x0, x1, ty_Int) new_esEs21(x0, x1, ty_Bool) new_esEs17(Left(x0), Left(x1), ty_Integer, x2) new_esEs15([], [], x0) new_esEs24(x0, x1, ty_@0) new_sr(Pos(x0), Pos(x1)) new_esEs17(Right(x0), Right(x1), x2, app(ty_Ratio, x3)) new_esEs6(Just(x0), Just(x1), app(app(ty_Either, x2), x3)) new_esEs24(x0, x1, ty_Double) new_esEs21(x0, x1, ty_Float) new_esEs17(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4)) new_esEs25(x0, x1, ty_Integer) new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1))) new_esEs24(x0, x1, ty_Bool) new_esEs24(x0, x1, ty_Float) new_esEs6(Just(x0), Just(x1), ty_Ordering) new_esEs17(Right(x0), Right(x1), x2, app(ty_[], x3)) new_esEs23(x0, x1, app(ty_[], x2)) new_esEs11(EQ, GT) new_esEs11(GT, EQ) new_esEs21(x0, x1, ty_Double) new_esEs17(Right(x0), Right(x1), x2, ty_@0) new_esEs6(Nothing, Nothing, x0) new_esEs17(Right(x0), Right(x1), x2, ty_Char) new_esEs26(x0, x1, app(ty_Maybe, x2)) new_primEqInt(Pos(Zero), Neg(Zero)) new_primEqInt(Neg(Zero), Pos(Zero)) new_esEs8(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8) new_esEs17(Right(x0), Right(x1), x2, ty_Double) new_esEs17(Left(x0), Left(x1), ty_Ordering, x2) new_esEs19(x0, x1, ty_Int) new_esEs4(x0, x1, ty_Integer) new_esEs16(True, True) new_esEs21(x0, x1, ty_Int) new_esEs11(EQ, EQ) new_esEs6(Just(x0), Nothing, x1) new_esEs4(x0, x1, app(ty_[], x2)) new_esEs21(x0, x1, ty_@0) new_esEs25(x0, x1, ty_Ordering) new_esEs24(x0, x1, app(ty_Maybe, x2)) new_esEs21(x0, x1, app(app(ty_@2, x2), x3)) new_esEs10(Integer(x0), Integer(x1)) new_primMulNat0(Zero, Succ(x0)) new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs24(x0, x1, ty_Int) new_esEs24(x0, x1, ty_Char) new_esEs6(Just(x0), Just(x1), app(app(ty_@2, x2), x3)) new_esEs4(x0, x1, app(ty_Maybe, x2)) new_esEs23(x0, x1, app(ty_Ratio, x2)) new_primEqInt(Pos(Succ(x0)), Neg(x1)) new_primEqInt(Neg(Succ(x0)), Pos(x1)) new_primEqInt(Neg(Zero), Neg(Succ(x0))) new_esEs4(x0, x1, app(app(ty_@2, x2), x3)) new_esEs4(x0, x1, ty_Bool) new_esEs6(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4)) new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_primEqNat0(Succ(x0), Succ(x1)) new_esEs26(x0, x1, ty_Int) new_esEs22(x0, x1, app(ty_Maybe, x2)) new_esEs26(x0, x1, ty_Char) new_esEs21(x0, x1, ty_Char) new_esEs23(x0, x1, ty_@0) new_esEs22(x0, x1, ty_Integer) new_primEqInt(Pos(Zero), Pos(Succ(x0))) new_esEs17(Right(x0), Right(x1), x2, ty_Integer) new_esEs22(x0, x1, ty_Bool) new_esEs7(@0, @0) new_esEs17(Left(x0), Left(x1), ty_Double, x2) new_esEs15([], :(x0, x1), x2) new_esEs4(x0, x1, ty_@0) new_esEs25(x0, x1, app(app(ty_Either, x2), x3)) new_esEs13(Float(x0, x1), Float(x2, x3)) new_esEs17(Right(x0), Right(x1), x2, ty_Bool) new_esEs23(x0, x1, ty_Bool) new_esEs12(Double(x0, x1), Double(x2, x3)) new_esEs26(x0, x1, ty_Ordering) new_esEs26(x0, x1, app(app(ty_@2, x2), x3)) new_primPlusNat0(Succ(x0), x1) new_esEs22(x0, x1, app(app(ty_Either, x2), x3)) new_esEs11(LT, GT) new_esEs11(GT, LT) new_esEs26(x0, x1, ty_Float) new_esEs6(Just(x0), Just(x1), ty_@0) new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs17(Left(x0), Right(x1), x2, x3) new_esEs17(Right(x0), Left(x1), x2, x3) new_primMulNat0(Succ(x0), Zero) new_esEs17(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4) new_esEs17(Right(x0), Right(x1), x2, app(ty_Maybe, x3)) new_esEs6(Just(x0), Just(x1), app(ty_[], x2)) new_esEs22(x0, x1, app(ty_Ratio, x2)) new_esEs25(x0, x1, ty_Bool) new_esEs23(x0, x1, ty_Char) new_esEs17(Left(x0), Left(x1), app(ty_Ratio, x2), x3) new_esEs21(x0, x1, app(ty_Ratio, x2)) new_primMulNat0(Succ(x0), Succ(x1)) new_esEs11(LT, EQ) new_esEs11(EQ, LT) new_esEs6(Just(x0), Just(x1), app(ty_Ratio, x2)) new_esEs14(x0, x1) new_esEs17(Left(x0), Left(x1), app(ty_Maybe, x2), x3) new_asAs(False, x0) new_esEs22(x0, x1, app(ty_[], x2)) new_esEs11(GT, GT) new_primEqInt(Pos(Zero), Neg(Succ(x0))) new_primEqInt(Neg(Zero), Pos(Succ(x0))) new_esEs5(:%(x0, x1), :%(x2, x3), x4) new_esEs24(x0, x1, app(app(ty_Either, x2), x3)) new_primEqNat0(Zero, Succ(x0)) new_esEs24(x0, x1, app(app(ty_@2, x2), x3)) new_esEs6(Just(x0), Just(x1), app(ty_Maybe, x2)) new_primEqNat0(Succ(x0), Zero) new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_primEqNat0(Zero, Zero) new_esEs23(x0, x1, ty_Integer) new_esEs4(x0, x1, app(app(ty_Either, x2), x3)) new_esEs25(x0, x1, app(ty_Maybe, x2)) new_esEs23(x0, x1, app(ty_Maybe, x2)) new_esEs25(x0, x1, app(app(ty_@2, x2), x3)) new_esEs17(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4)) new_esEs26(x0, x1, ty_Double) new_esEs17(Left(x0), Left(x1), ty_Int, x2) new_esEs16(False, False) new_esEs17(Left(x0), Left(x1), ty_Char, x2) new_esEs11(LT, LT) new_esEs20(x0, x1, ty_Int) new_esEs6(Just(x0), Just(x1), ty_Int) new_esEs16(False, True) new_esEs16(True, False) new_esEs17(Left(x0), Left(x1), app(ty_[], x2), x3) new_esEs22(x0, x1, ty_Char) new_esEs25(x0, x1, ty_Double) new_esEs6(Just(x0), Just(x1), ty_Double) new_esEs22(x0, x1, ty_@0) new_esEs26(x0, x1, app(ty_Ratio, x2)) new_esEs26(x0, x1, ty_Bool) new_esEs25(x0, x1, ty_Float) new_esEs25(x0, x1, ty_Char) new_esEs15(:(x0, x1), :(x2, x3), x4) new_esEs6(Just(x0), Just(x1), ty_Char) new_esEs6(Just(x0), Just(x1), ty_Bool) new_esEs21(x0, x1, ty_Integer) new_esEs17(Left(x0), Left(x1), ty_Float, x2) new_esEs26(x0, x1, app(ty_[], x2)) new_sr(Neg(x0), Neg(x1)) new_esEs21(x0, x1, app(app(ty_Either, x2), x3)) new_esEs24(x0, x1, ty_Ordering) new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_esEs4(x0, x1, ty_Float) new_esEs25(x0, x1, ty_Int) new_esEs25(x0, x1, ty_@0) new_asAs(True, x0) new_esEs22(x0, x1, ty_Double) new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1))) new_esEs24(x0, x1, app(ty_[], x2)) new_esEs21(x0, x1, ty_Ordering) new_esEs24(x0, x1, app(ty_Ratio, x2)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (20) 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(xx11, False, xx13, xx14, bb) -> new_psPs(Just(xx11), xx13, xx14, bb) The graph contains the following edges 3 >= 2, 4 >= 3, 5 >= 4 *new_psPs(Just(xx300), :(Nothing, xx41), xx5, ba) -> new_psPs0(xx300, False, xx41, xx5, ba) The graph contains the following edges 1 > 1, 2 > 3, 3 >= 4, 4 >= 5 *new_psPs(Just(xx300), :(Just(xx400), xx41), xx5, ba) -> new_psPs0(xx300, new_esEs4(xx300, xx400, ba), xx41, xx5, ba) The graph contains the following edges 1 > 1, 2 > 3, 3 >= 4, 4 >= 5 ---------------------------------------- (21) YES ---------------------------------------- (22) 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. ---------------------------------------- (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_foldr(xx4, :(xx30, xx31), ba) -> new_foldr(xx4, xx31, ba) The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3 ---------------------------------------- (24) YES ---------------------------------------- (25) 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. ---------------------------------------- (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_primMulNat(Succ(xx300100), Succ(xx400000)) -> new_primMulNat(xx300100, Succ(xx400000)) The graph contains the following edges 1 > 1, 2 >= 2 ---------------------------------------- (27) YES ---------------------------------------- (28) Obligation: Q DP problem: The TRS P consists of the following rules: new_esEs2(Left(xx3000), Left(xx4000), app(app(ty_@2, bad), bae), he) -> new_esEs3(xx3000, xx4000, bad, bae) new_esEs2(Right(xx3000), Right(xx4000), baf, app(app(app(ty_@3, bah), bba), bbb)) -> new_esEs0(xx3000, xx4000, bah, bba, bbb) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, cc, app(ty_Maybe, cd)) -> new_esEs(xx3002, xx4002, cd) new_esEs1(:(xx3000, xx3001), :(xx4000, xx4001), app(ty_Maybe, gc)) -> new_esEs(xx3000, xx4000, gc) new_esEs(Just(xx3000), Just(xx4000), app(ty_[], be)) -> new_esEs1(xx3000, xx4000, be) new_esEs2(Left(xx3000), Left(xx4000), app(ty_Maybe, hd), he) -> new_esEs(xx3000, xx4000, hd) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, app(app(app(ty_@3, dh), ea), eb), dg) -> new_esEs0(xx3001, xx4001, dh, ea, eb) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(app(app(ty_@3, bdd), bde), bdf), bdc) -> new_esEs0(xx3000, xx4000, bdd, bde, bdf) new_esEs(Just(xx3000), Just(xx4000), app(app(ty_@2, bh), ca)) -> new_esEs3(xx3000, xx4000, bh, ca) new_esEs2(Right(xx3000), Right(xx4000), baf, app(app(ty_Either, bbd), bbe)) -> new_esEs2(xx3000, xx4000, bbd, bbe) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), bbh, app(app(ty_Either, bcf), bcg)) -> new_esEs2(xx3001, xx4001, bcf, bcg) new_esEs2(Left(xx3000), Left(xx4000), app(ty_[], baa), he) -> new_esEs1(xx3000, xx4000, baa) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(app(ty_Either, ff), fg), cc, dg) -> new_esEs2(xx3000, xx4000, ff, fg) new_esEs(Just(xx3000), Just(xx4000), app(ty_Maybe, ba)) -> new_esEs(xx3000, xx4000, ba) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, app(app(ty_@2, ef), eg), dg) -> new_esEs3(xx3001, xx4001, ef, eg) new_esEs1(:(xx3000, xx3001), :(xx4000, xx4001), app(app(ty_Either, gh), ha)) -> new_esEs2(xx3000, xx4000, gh, ha) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(app(ty_@2, fh), ga), cc, dg) -> new_esEs3(xx3000, xx4000, fh, ga) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(app(ty_Either, bdh), bea), bdc) -> new_esEs2(xx3000, xx4000, bdh, bea) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), bbh, app(app(ty_@2, bch), bda)) -> new_esEs3(xx3001, xx4001, bch, bda) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, cc, app(app(app(ty_@3, ce), cf), cg)) -> new_esEs0(xx3002, xx4002, ce, cf, cg) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), bbh, app(app(app(ty_@3, bcb), bcc), bcd)) -> new_esEs0(xx3001, xx4001, bcb, bcc, bcd) new_esEs2(Left(xx3000), Left(xx4000), app(app(ty_Either, bab), bac), he) -> new_esEs2(xx3000, xx4000, bab, bac) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), bbh, app(ty_[], bce)) -> new_esEs1(xx3001, xx4001, bce) new_esEs2(Right(xx3000), Right(xx4000), baf, app(ty_[], bbc)) -> new_esEs1(xx3000, xx4000, bbc) new_esEs(Just(xx3000), Just(xx4000), app(app(ty_Either, bf), bg)) -> new_esEs2(xx3000, xx4000, bf, bg) new_esEs(Just(xx3000), Just(xx4000), app(app(app(ty_@3, bb), bc), bd)) -> new_esEs0(xx3000, xx4000, bb, bc, bd) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(app(ty_@2, beb), bec), bdc) -> new_esEs3(xx3000, xx4000, beb, bec) new_esEs1(:(xx3000, xx3001), :(xx4000, xx4001), gb) -> new_esEs1(xx3001, xx4001, gb) new_esEs1(:(xx3000, xx3001), :(xx4000, xx4001), app(app(app(ty_@3, gd), ge), gf)) -> new_esEs0(xx3000, xx4000, gd, ge, gf) new_esEs2(Right(xx3000), Right(xx4000), baf, app(app(ty_@2, bbf), bbg)) -> new_esEs3(xx3000, xx4000, bbf, bbg) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, cc, app(app(ty_@2, dd), de)) -> new_esEs3(xx3002, xx4002, dd, de) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, app(ty_[], ec), dg) -> new_esEs1(xx3001, xx4001, ec) new_esEs1(:(xx3000, xx3001), :(xx4000, xx4001), app(ty_[], gg)) -> new_esEs1(xx3000, xx4000, gg) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), bbh, app(ty_Maybe, bca)) -> new_esEs(xx3001, xx4001, bca) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, cc, app(app(ty_Either, db), dc)) -> new_esEs2(xx3002, xx4002, db, dc) new_esEs1(:(xx3000, xx3001), :(xx4000, xx4001), app(app(ty_@2, hb), hc)) -> new_esEs3(xx3000, xx4000, hb, hc) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(ty_[], fd), cc, dg) -> new_esEs1(xx3000, xx4000, fd) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(ty_Maybe, bdb), bdc) -> new_esEs(xx3000, xx4000, bdb) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(ty_Maybe, eh), cc, dg) -> new_esEs(xx3000, xx4000, eh) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(app(app(ty_@3, fa), fb), fc), cc, dg) -> new_esEs0(xx3000, xx4000, fa, fb, fc) new_esEs2(Left(xx3000), Left(xx4000), app(app(app(ty_@3, hf), hg), hh), he) -> new_esEs0(xx3000, xx4000, hf, hg, hh) new_esEs2(Right(xx3000), Right(xx4000), baf, app(ty_Maybe, bag)) -> new_esEs(xx3000, xx4000, bag) new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(ty_[], bdg), bdc) -> new_esEs1(xx3000, xx4000, bdg) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, cc, app(ty_[], da)) -> new_esEs1(xx3002, xx4002, da) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, app(app(ty_Either, ed), ee), dg) -> new_esEs2(xx3001, xx4001, ed, ee) new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, app(ty_Maybe, df), dg) -> new_esEs(xx3001, xx4001, df) 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_esEs(Just(xx3000), Just(xx4000), app(app(ty_Either, bf), bg)) -> new_esEs2(xx3000, xx4000, bf, bg) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs(Just(xx3000), Just(xx4000), app(app(app(ty_@3, bb), bc), bd)) -> new_esEs0(xx3000, xx4000, bb, bc, bd) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5 *new_esEs(Just(xx3000), Just(xx4000), app(ty_[], be)) -> new_esEs1(xx3000, xx4000, be) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs1(:(xx3000, xx3001), :(xx4000, xx4001), app(app(ty_Either, gh), ha)) -> new_esEs2(xx3000, xx4000, gh, ha) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs(Just(xx3000), Just(xx4000), app(ty_Maybe, ba)) -> new_esEs(xx3000, xx4000, ba) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs(Just(xx3000), Just(xx4000), app(app(ty_@2, bh), ca)) -> new_esEs3(xx3000, xx4000, bh, ca) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs1(:(xx3000, xx3001), :(xx4000, xx4001), app(app(app(ty_@3, gd), ge), gf)) -> new_esEs0(xx3000, xx4000, gd, ge, gf) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5 *new_esEs1(:(xx3000, xx3001), :(xx4000, xx4001), app(ty_Maybe, gc)) -> new_esEs(xx3000, xx4000, gc) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs1(:(xx3000, xx3001), :(xx4000, xx4001), app(app(ty_@2, hb), hc)) -> new_esEs3(xx3000, xx4000, hb, hc) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), bbh, app(app(ty_Either, bcf), bcg)) -> new_esEs2(xx3001, xx4001, bcf, bcg) 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, bdh), bea), bdc) -> new_esEs2(xx3000, xx4000, bdh, bea) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(app(app(ty_@3, bdd), bde), bdf), bdc) -> new_esEs0(xx3000, xx4000, bdd, bde, bdf) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), bbh, app(app(app(ty_@3, bcb), bcc), bcd)) -> new_esEs0(xx3001, xx4001, bcb, bcc, bcd) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), bbh, app(ty_[], bce)) -> new_esEs1(xx3001, xx4001, bce) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(ty_[], bdg), bdc) -> new_esEs1(xx3000, xx4000, bdg) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), bbh, app(ty_Maybe, bca)) -> new_esEs(xx3001, xx4001, bca) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), app(ty_Maybe, bdb), bdc) -> new_esEs(xx3000, xx4000, bdb) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs3(@2(xx3000, xx3001), @2(xx4000, xx4001), bbh, app(app(ty_@2, bch), bda)) -> new_esEs3(xx3001, xx4001, bch, bda) 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, beb), bec), bdc) -> new_esEs3(xx3000, xx4000, beb, bec) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(app(ty_Either, ff), fg), cc, dg) -> new_esEs2(xx3000, xx4000, ff, fg) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, cc, app(app(ty_Either, db), dc)) -> new_esEs2(xx3002, xx4002, db, dc) The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, app(app(ty_Either, ed), ee), dg) -> new_esEs2(xx3001, xx4001, ed, ee) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4 *new_esEs2(Right(xx3000), Right(xx4000), baf, app(app(ty_Either, bbd), bbe)) -> new_esEs2(xx3000, xx4000, bbd, bbe) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4 *new_esEs2(Left(xx3000), Left(xx4000), app(app(ty_Either, bab), bac), he) -> new_esEs2(xx3000, xx4000, bab, bac) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, app(app(app(ty_@3, dh), ea), eb), dg) -> new_esEs0(xx3001, xx4001, dh, ea, eb) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, cc, app(app(app(ty_@3, ce), cf), cg)) -> new_esEs0(xx3002, xx4002, ce, cf, cg) The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4, 5 > 5 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(app(app(ty_@3, fa), fb), fc), cc, dg) -> new_esEs0(xx3000, xx4000, fa, fb, fc) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, app(ty_[], ec), dg) -> new_esEs1(xx3001, xx4001, ec) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(ty_[], fd), cc, dg) -> new_esEs1(xx3000, xx4000, fd) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, cc, app(ty_[], da)) -> new_esEs1(xx3002, xx4002, da) The graph contains the following edges 1 > 1, 2 > 2, 5 > 3 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, cc, app(ty_Maybe, cd)) -> new_esEs(xx3002, xx4002, cd) The graph contains the following edges 1 > 1, 2 > 2, 5 > 3 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(ty_Maybe, eh), cc, dg) -> new_esEs(xx3000, xx4000, eh) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, app(ty_Maybe, df), dg) -> new_esEs(xx3001, xx4001, df) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, app(app(ty_@2, ef), eg), dg) -> new_esEs3(xx3001, xx4001, ef, eg) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), app(app(ty_@2, fh), ga), cc, dg) -> new_esEs3(xx3000, xx4000, fh, ga) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs0(@3(xx3000, xx3001, xx3002), @3(xx4000, xx4001, xx4002), cb, cc, app(app(ty_@2, dd), de)) -> new_esEs3(xx3002, xx4002, dd, de) The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4 *new_esEs2(Right(xx3000), Right(xx4000), baf, app(app(app(ty_@3, bah), bba), bbb)) -> new_esEs0(xx3000, xx4000, bah, bba, bbb) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5 *new_esEs2(Left(xx3000), Left(xx4000), app(app(app(ty_@3, hf), hg), hh), he) -> new_esEs0(xx3000, xx4000, hf, hg, hh) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5 *new_esEs1(:(xx3000, xx3001), :(xx4000, xx4001), gb) -> new_esEs1(xx3001, xx4001, gb) The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3 *new_esEs1(:(xx3000, xx3001), :(xx4000, xx4001), app(ty_[], gg)) -> new_esEs1(xx3000, xx4000, gg) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs2(Left(xx3000), Left(xx4000), app(ty_[], baa), he) -> new_esEs1(xx3000, xx4000, baa) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs2(Right(xx3000), Right(xx4000), baf, app(ty_[], bbc)) -> new_esEs1(xx3000, xx4000, bbc) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3 *new_esEs2(Left(xx3000), Left(xx4000), app(ty_Maybe, hd), he) -> new_esEs(xx3000, xx4000, hd) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3 *new_esEs2(Right(xx3000), Right(xx4000), baf, app(ty_Maybe, bag)) -> new_esEs(xx3000, xx4000, bag) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3 *new_esEs2(Left(xx3000), Left(xx4000), app(app(ty_@2, bad), bae), he) -> new_esEs3(xx3000, xx4000, bad, bae) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_esEs2(Right(xx3000), Right(xx4000), baf, app(app(ty_@2, bbf), bbg)) -> new_esEs3(xx3000, xx4000, bbf, bbg) The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4 ---------------------------------------- (30) YES ---------------------------------------- (31) Obligation: Q DP problem: The TRS P consists of the following rules: new_primPlusNat(Succ(xx2800), Succ(xx4000000)) -> new_primPlusNat(xx2800, 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(xx2800), Succ(xx4000000)) -> new_primPlusNat(xx2800, 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