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