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