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