14.80/8.70 YES 16.99/9.30 proof of /export/starexec/sandbox/benchmark/theBenchmark.hs 16.99/9.30 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 16.99/9.30 16.99/9.30 16.99/9.30 H-Termination with start terms of the given HASKELL could be proven: 16.99/9.30 16.99/9.30 (0) HASKELL 16.99/9.30 (1) CR [EQUIVALENT, 0 ms] 16.99/9.30 (2) HASKELL 16.99/9.30 (3) BR [EQUIVALENT, 0 ms] 16.99/9.30 (4) HASKELL 16.99/9.30 (5) COR [EQUIVALENT, 18 ms] 16.99/9.30 (6) HASKELL 16.99/9.30 (7) Narrow [SOUND, 0 ms] 16.99/9.30 (8) AND 16.99/9.30 (9) QDP 16.99/9.30 (10) QDPSizeChangeProof [EQUIVALENT, 0 ms] 16.99/9.30 (11) YES 16.99/9.30 (12) QDP 16.99/9.30 (13) QDPSizeChangeProof [EQUIVALENT, 0 ms] 16.99/9.30 (14) YES 16.99/9.30 (15) QDP 16.99/9.30 (16) QDPOrderProof [EQUIVALENT, 82 ms] 16.99/9.30 (17) QDP 16.99/9.30 (18) DependencyGraphProof [EQUIVALENT, 0 ms] 16.99/9.30 (19) TRUE 16.99/9.30 (20) QDP 16.99/9.30 (21) QDPSizeChangeProof [EQUIVALENT, 0 ms] 16.99/9.30 (22) YES 16.99/9.30 (23) QDP 16.99/9.30 (24) DependencyGraphProof [EQUIVALENT, 0 ms] 16.99/9.30 (25) QDP 16.99/9.30 (26) QDPSizeChangeProof [EQUIVALENT, 0 ms] 16.99/9.30 (27) YES 16.99/9.30 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (0) 16.99/9.30 Obligation: 16.99/9.30 mainModule Main 16.99/9.30 module Maybe where { 16.99/9.30 import qualified List; 16.99/9.30 import qualified Main; 16.99/9.30 import qualified Prelude; 16.99/9.30 } 16.99/9.30 module List where { 16.99/9.30 import qualified Main; 16.99/9.30 import qualified Maybe; 16.99/9.30 import qualified Prelude; 16.99/9.30 merge :: (a -> a -> Ordering) -> [a] -> [a] -> [a]; 16.99/9.30 merge cmp xs [] = xs; 16.99/9.30 merge cmp [] ys = ys; 16.99/9.30 merge cmp (x : xs) (y : ys) = case x `cmp` y of { 16.99/9.30 GT-> y : merge cmp (x : xs) ys; 16.99/9.30 _-> x : merge cmp xs (y : ys); 16.99/9.30 } ; 16.99/9.30 16.99/9.30 merge_pairs :: (a -> a -> Ordering) -> [[a]] -> [[a]]; 16.99/9.30 merge_pairs cmp [] = []; 16.99/9.30 merge_pairs cmp (xs : []) = xs : []; 16.99/9.30 merge_pairs cmp (xs : ys : xss) = merge cmp xs ys : merge_pairs cmp xss; 16.99/9.30 16.99/9.30 mergesort :: (a -> a -> Ordering) -> [a] -> [a]; 16.99/9.30 mergesort cmp = mergesort' cmp . map wrap; 16.99/9.30 16.99/9.30 mergesort' :: (a -> a -> Ordering) -> [[a]] -> [a]; 16.99/9.30 mergesort' cmp [] = []; 16.99/9.30 mergesort' cmp (xs : []) = xs; 16.99/9.30 mergesort' cmp xss = mergesort' cmp (merge_pairs cmp xss); 16.99/9.30 16.99/9.30 sort :: Ord a => [a] -> [a]; 16.99/9.30 sort l = mergesort compare l; 16.99/9.30 16.99/9.30 wrap :: a -> [a]; 16.99/9.30 wrap x = x : []; 16.99/9.30 16.99/9.30 } 16.99/9.30 module Main where { 16.99/9.30 import qualified List; 16.99/9.30 import qualified Maybe; 16.99/9.30 import qualified Prelude; 16.99/9.30 } 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (1) CR (EQUIVALENT) 16.99/9.30 Case Reductions: 16.99/9.30 The following Case expression 16.99/9.30 "case cmp x y of { 16.99/9.30 GT -> y : merge cmp (x : xs) ys; 16.99/9.30 _ -> x : merge cmp xs (y : ys)} 16.99/9.30 " 16.99/9.30 is transformed to 16.99/9.30 "merge0 y cmp x xs ys GT = y : merge cmp (x : xs) ys; 16.99/9.30 merge0 y cmp x xs ys _ = x : merge cmp xs (y : ys); 16.99/9.30 " 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (2) 16.99/9.30 Obligation: 16.99/9.30 mainModule Main 16.99/9.30 module Maybe where { 16.99/9.30 import qualified List; 16.99/9.30 import qualified Main; 16.99/9.30 import qualified Prelude; 16.99/9.30 } 16.99/9.30 module List where { 16.99/9.30 import qualified Main; 16.99/9.30 import qualified Maybe; 16.99/9.30 import qualified Prelude; 16.99/9.30 merge :: (a -> a -> Ordering) -> [a] -> [a] -> [a]; 16.99/9.30 merge cmp xs [] = xs; 16.99/9.30 merge cmp [] ys = ys; 16.99/9.30 merge cmp (x : xs) (y : ys) = merge0 y cmp x xs ys (x `cmp` y); 16.99/9.30 16.99/9.30 merge0 y cmp x xs ys GT = y : merge cmp (x : xs) ys; 16.99/9.30 merge0 y cmp x xs ys _ = x : merge cmp xs (y : ys); 16.99/9.30 16.99/9.30 merge_pairs :: (a -> a -> Ordering) -> [[a]] -> [[a]]; 16.99/9.30 merge_pairs cmp [] = []; 16.99/9.30 merge_pairs cmp (xs : []) = xs : []; 16.99/9.30 merge_pairs cmp (xs : ys : xss) = merge cmp xs ys : merge_pairs cmp xss; 16.99/9.30 16.99/9.30 mergesort :: (a -> a -> Ordering) -> [a] -> [a]; 16.99/9.30 mergesort cmp = mergesort' cmp . map wrap; 16.99/9.30 16.99/9.30 mergesort' :: (a -> a -> Ordering) -> [[a]] -> [a]; 16.99/9.30 mergesort' cmp [] = []; 16.99/9.30 mergesort' cmp (xs : []) = xs; 16.99/9.30 mergesort' cmp xss = mergesort' cmp (merge_pairs cmp xss); 16.99/9.30 16.99/9.30 sort :: Ord a => [a] -> [a]; 16.99/9.30 sort l = mergesort compare l; 16.99/9.30 16.99/9.30 wrap :: a -> [a]; 16.99/9.30 wrap x = x : []; 16.99/9.30 16.99/9.30 } 16.99/9.30 module Main where { 16.99/9.30 import qualified List; 16.99/9.30 import qualified Maybe; 16.99/9.30 import qualified Prelude; 16.99/9.30 } 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (3) BR (EQUIVALENT) 16.99/9.30 Replaced joker patterns by fresh variables and removed binding patterns. 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (4) 16.99/9.30 Obligation: 16.99/9.30 mainModule Main 16.99/9.30 module Maybe where { 16.99/9.30 import qualified List; 16.99/9.30 import qualified Main; 16.99/9.30 import qualified Prelude; 16.99/9.30 } 16.99/9.30 module List where { 16.99/9.30 import qualified Main; 16.99/9.30 import qualified Maybe; 16.99/9.30 import qualified Prelude; 16.99/9.30 merge :: (a -> a -> Ordering) -> [a] -> [a] -> [a]; 16.99/9.30 merge cmp xs [] = xs; 16.99/9.30 merge cmp [] ys = ys; 16.99/9.30 merge cmp (x : xs) (y : ys) = merge0 y cmp x xs ys (x `cmp` y); 16.99/9.30 16.99/9.30 merge0 y cmp x xs ys GT = y : merge cmp (x : xs) ys; 16.99/9.30 merge0 y cmp x xs ys vy = x : merge cmp xs (y : ys); 16.99/9.30 16.99/9.30 merge_pairs :: (a -> a -> Ordering) -> [[a]] -> [[a]]; 16.99/9.30 merge_pairs cmp [] = []; 16.99/9.30 merge_pairs cmp (xs : []) = xs : []; 16.99/9.30 merge_pairs cmp (xs : ys : xss) = merge cmp xs ys : merge_pairs cmp xss; 16.99/9.30 16.99/9.30 mergesort :: (a -> a -> Ordering) -> [a] -> [a]; 16.99/9.30 mergesort cmp = mergesort' cmp . map wrap; 16.99/9.30 16.99/9.30 mergesort' :: (a -> a -> Ordering) -> [[a]] -> [a]; 16.99/9.30 mergesort' cmp [] = []; 16.99/9.30 mergesort' cmp (xs : []) = xs; 16.99/9.30 mergesort' cmp xss = mergesort' cmp (merge_pairs cmp xss); 16.99/9.30 16.99/9.30 sort :: Ord a => [a] -> [a]; 16.99/9.30 sort l = mergesort compare l; 16.99/9.30 16.99/9.30 wrap :: a -> [a]; 16.99/9.30 wrap x = x : []; 16.99/9.30 16.99/9.30 } 16.99/9.30 module Main where { 16.99/9.30 import qualified List; 16.99/9.30 import qualified Maybe; 16.99/9.30 import qualified Prelude; 16.99/9.30 } 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (5) COR (EQUIVALENT) 16.99/9.30 Cond Reductions: 16.99/9.30 The following Function with conditions 16.99/9.30 "undefined |Falseundefined; 16.99/9.30 " 16.99/9.30 is transformed to 16.99/9.30 "undefined = undefined1; 16.99/9.30 " 16.99/9.30 "undefined0 True = undefined; 16.99/9.30 " 16.99/9.30 "undefined1 = undefined0 False; 16.99/9.30 " 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (6) 16.99/9.30 Obligation: 16.99/9.30 mainModule Main 16.99/9.30 module Maybe where { 16.99/9.30 import qualified List; 16.99/9.30 import qualified Main; 16.99/9.30 import qualified Prelude; 16.99/9.30 } 16.99/9.30 module List where { 16.99/9.30 import qualified Main; 16.99/9.30 import qualified Maybe; 16.99/9.30 import qualified Prelude; 16.99/9.30 merge :: (a -> a -> Ordering) -> [a] -> [a] -> [a]; 16.99/9.30 merge cmp xs [] = xs; 16.99/9.30 merge cmp [] ys = ys; 16.99/9.30 merge cmp (x : xs) (y : ys) = merge0 y cmp x xs ys (x `cmp` y); 16.99/9.30 16.99/9.30 merge0 y cmp x xs ys GT = y : merge cmp (x : xs) ys; 16.99/9.30 merge0 y cmp x xs ys vy = x : merge cmp xs (y : ys); 16.99/9.30 16.99/9.30 merge_pairs :: (a -> a -> Ordering) -> [[a]] -> [[a]]; 16.99/9.30 merge_pairs cmp [] = []; 16.99/9.30 merge_pairs cmp (xs : []) = xs : []; 16.99/9.30 merge_pairs cmp (xs : ys : xss) = merge cmp xs ys : merge_pairs cmp xss; 16.99/9.30 16.99/9.30 mergesort :: (a -> a -> Ordering) -> [a] -> [a]; 16.99/9.30 mergesort cmp = mergesort' cmp . map wrap; 16.99/9.30 16.99/9.30 mergesort' :: (a -> a -> Ordering) -> [[a]] -> [a]; 16.99/9.30 mergesort' cmp [] = []; 16.99/9.30 mergesort' cmp (xs : []) = xs; 16.99/9.30 mergesort' cmp xss = mergesort' cmp (merge_pairs cmp xss); 16.99/9.30 16.99/9.30 sort :: Ord a => [a] -> [a]; 16.99/9.30 sort l = mergesort compare l; 16.99/9.30 16.99/9.30 wrap :: a -> [a]; 16.99/9.30 wrap x = x : []; 16.99/9.30 16.99/9.30 } 16.99/9.30 module Main where { 16.99/9.30 import qualified List; 16.99/9.30 import qualified Maybe; 16.99/9.30 import qualified Prelude; 16.99/9.30 } 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (7) Narrow (SOUND) 16.99/9.30 Haskell To QDPs 16.99/9.30 16.99/9.30 digraph dp_graph { 16.99/9.30 node [outthreshold=100, inthreshold=100];1[label="List.sort",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 16.99/9.30 3[label="List.sort vz3",fontsize=16,color="black",shape="triangle"];3 -> 4[label="",style="solid", color="black", weight=3]; 16.99/9.30 4[label="List.mergesort compare vz3",fontsize=16,color="black",shape="box"];4 -> 5[label="",style="solid", color="black", weight=3]; 16.99/9.30 5[label="(List.mergesort' compare) . map List.wrap",fontsize=16,color="black",shape="box"];5 -> 6[label="",style="solid", color="black", weight=3]; 16.99/9.30 6[label="List.mergesort' compare (map List.wrap vz3)",fontsize=16,color="burlywood",shape="box"];1464[label="vz3/vz30 : vz31",fontsize=10,color="white",style="solid",shape="box"];6 -> 1464[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1464 -> 7[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1465[label="vz3/[]",fontsize=10,color="white",style="solid",shape="box"];6 -> 1465[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1465 -> 8[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 7[label="List.mergesort' compare (map List.wrap (vz30 : vz31))",fontsize=16,color="black",shape="box"];7 -> 9[label="",style="solid", color="black", weight=3]; 16.99/9.30 8[label="List.mergesort' compare (map List.wrap [])",fontsize=16,color="black",shape="box"];8 -> 10[label="",style="solid", color="black", weight=3]; 16.99/9.30 9[label="List.mergesort' compare (List.wrap vz30 : map List.wrap vz31)",fontsize=16,color="burlywood",shape="box"];1466[label="vz31/vz310 : vz311",fontsize=10,color="white",style="solid",shape="box"];9 -> 1466[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1466 -> 11[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1467[label="vz31/[]",fontsize=10,color="white",style="solid",shape="box"];9 -> 1467[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1467 -> 12[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 10[label="List.mergesort' compare []",fontsize=16,color="black",shape="box"];10 -> 13[label="",style="solid", color="black", weight=3]; 16.99/9.30 11[label="List.mergesort' compare (List.wrap vz30 : map List.wrap (vz310 : vz311))",fontsize=16,color="black",shape="box"];11 -> 14[label="",style="solid", color="black", weight=3]; 16.99/9.30 12[label="List.mergesort' compare (List.wrap vz30 : map List.wrap [])",fontsize=16,color="black",shape="box"];12 -> 15[label="",style="solid", color="black", weight=3]; 16.99/9.30 13[label="[]",fontsize=16,color="green",shape="box"];14[label="List.mergesort' compare (List.wrap vz30 : List.wrap vz310 : map List.wrap vz311)",fontsize=16,color="black",shape="box"];14 -> 16[label="",style="solid", color="black", weight=3]; 16.99/9.30 15[label="List.mergesort' compare (List.wrap vz30 : [])",fontsize=16,color="black",shape="box"];15 -> 17[label="",style="solid", color="black", weight=3]; 16.99/9.30 16[label="List.mergesort' compare (List.merge_pairs compare (List.wrap vz30 : List.wrap vz310 : map List.wrap vz311))",fontsize=16,color="black",shape="box"];16 -> 18[label="",style="solid", color="black", weight=3]; 16.99/9.30 17[label="List.wrap vz30",fontsize=16,color="black",shape="triangle"];17 -> 19[label="",style="solid", color="black", weight=3]; 16.99/9.30 18 -> 1042[label="",style="dashed", color="red", weight=0]; 16.99/9.30 18[label="List.mergesort' compare (List.merge compare (List.wrap vz30) (List.wrap vz310) : List.merge_pairs compare (map List.wrap vz311))",fontsize=16,color="magenta"];18 -> 1043[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 18 -> 1044[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 19[label="vz30 : []",fontsize=16,color="green",shape="box"];1043 -> 1197[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1043[label="List.merge compare (List.wrap vz30) (List.wrap vz310)",fontsize=16,color="magenta"];1043 -> 1198[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1043 -> 1199[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1044[label="map List.wrap vz311",fontsize=16,color="burlywood",shape="triangle"];1468[label="vz311/vz3110 : vz3111",fontsize=10,color="white",style="solid",shape="box"];1044 -> 1468[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1468 -> 1200[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1469[label="vz311/[]",fontsize=10,color="white",style="solid",shape="box"];1044 -> 1469[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1469 -> 1201[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1042[label="List.mergesort' compare (vz117 : List.merge_pairs compare vz118)",fontsize=16,color="burlywood",shape="triangle"];1470[label="vz118/vz1180 : vz1181",fontsize=10,color="white",style="solid",shape="box"];1042 -> 1470[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1470 -> 1202[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1471[label="vz118/[]",fontsize=10,color="white",style="solid",shape="box"];1042 -> 1471[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1471 -> 1203[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1198 -> 17[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1198[label="List.wrap vz310",fontsize=16,color="magenta"];1198 -> 1204[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1199 -> 17[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1199[label="List.wrap vz30",fontsize=16,color="magenta"];1197[label="List.merge compare vz120 vz119",fontsize=16,color="burlywood",shape="triangle"];1472[label="vz119/vz1190 : vz1191",fontsize=10,color="white",style="solid",shape="box"];1197 -> 1472[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1472 -> 1205[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1473[label="vz119/[]",fontsize=10,color="white",style="solid",shape="box"];1197 -> 1473[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1473 -> 1206[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1200[label="map List.wrap (vz3110 : vz3111)",fontsize=16,color="black",shape="box"];1200 -> 1207[label="",style="solid", color="black", weight=3]; 16.99/9.30 1201[label="map List.wrap []",fontsize=16,color="black",shape="box"];1201 -> 1208[label="",style="solid", color="black", weight=3]; 16.99/9.30 1202[label="List.mergesort' compare (vz117 : List.merge_pairs compare (vz1180 : vz1181))",fontsize=16,color="burlywood",shape="box"];1474[label="vz1181/vz11810 : vz11811",fontsize=10,color="white",style="solid",shape="box"];1202 -> 1474[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1474 -> 1209[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1475[label="vz1181/[]",fontsize=10,color="white",style="solid",shape="box"];1202 -> 1475[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1475 -> 1210[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1203[label="List.mergesort' compare (vz117 : List.merge_pairs compare [])",fontsize=16,color="black",shape="box"];1203 -> 1211[label="",style="solid", color="black", weight=3]; 16.99/9.30 1204[label="vz310",fontsize=16,color="green",shape="box"];1205[label="List.merge compare vz120 (vz1190 : vz1191)",fontsize=16,color="burlywood",shape="box"];1476[label="vz120/vz1200 : vz1201",fontsize=10,color="white",style="solid",shape="box"];1205 -> 1476[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1476 -> 1212[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1477[label="vz120/[]",fontsize=10,color="white",style="solid",shape="box"];1205 -> 1477[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1477 -> 1213[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1206[label="List.merge compare vz120 []",fontsize=16,color="black",shape="box"];1206 -> 1214[label="",style="solid", color="black", weight=3]; 16.99/9.30 1207[label="List.wrap vz3110 : map List.wrap vz3111",fontsize=16,color="green",shape="box"];1207 -> 1215[label="",style="dashed", color="green", weight=3]; 16.99/9.30 1207 -> 1216[label="",style="dashed", color="green", weight=3]; 16.99/9.30 1208[label="[]",fontsize=16,color="green",shape="box"];1209[label="List.mergesort' compare (vz117 : List.merge_pairs compare (vz1180 : vz11810 : vz11811))",fontsize=16,color="black",shape="box"];1209 -> 1217[label="",style="solid", color="black", weight=3]; 16.99/9.30 1210[label="List.mergesort' compare (vz117 : List.merge_pairs compare (vz1180 : []))",fontsize=16,color="black",shape="box"];1210 -> 1218[label="",style="solid", color="black", weight=3]; 16.99/9.30 1211[label="List.mergesort' compare (vz117 : [])",fontsize=16,color="black",shape="box"];1211 -> 1219[label="",style="solid", color="black", weight=3]; 16.99/9.30 1212[label="List.merge compare (vz1200 : vz1201) (vz1190 : vz1191)",fontsize=16,color="black",shape="box"];1212 -> 1220[label="",style="solid", color="black", weight=3]; 16.99/9.30 1213[label="List.merge compare [] (vz1190 : vz1191)",fontsize=16,color="black",shape="box"];1213 -> 1221[label="",style="solid", color="black", weight=3]; 16.99/9.30 1214[label="vz120",fontsize=16,color="green",shape="box"];1215 -> 17[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1215[label="List.wrap vz3110",fontsize=16,color="magenta"];1215 -> 1222[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1216 -> 1044[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1216[label="map List.wrap vz3111",fontsize=16,color="magenta"];1216 -> 1223[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1217[label="List.mergesort' compare (vz117 : List.merge compare vz1180 vz11810 : List.merge_pairs compare vz11811)",fontsize=16,color="black",shape="box"];1217 -> 1224[label="",style="solid", color="black", weight=3]; 16.99/9.30 1218[label="List.mergesort' compare (vz117 : vz1180 : [])",fontsize=16,color="black",shape="box"];1218 -> 1225[label="",style="solid", color="black", weight=3]; 16.99/9.30 1219[label="vz117",fontsize=16,color="green",shape="box"];1220 -> 1298[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1220[label="List.merge0 vz1190 compare vz1200 vz1201 vz1191 (compare vz1200 vz1190)",fontsize=16,color="magenta"];1220 -> 1299[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1220 -> 1300[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1220 -> 1301[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1220 -> 1302[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1220 -> 1303[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1221[label="vz1190 : vz1191",fontsize=16,color="green",shape="box"];1222[label="vz3110",fontsize=16,color="green",shape="box"];1223[label="vz3111",fontsize=16,color="green",shape="box"];1224[label="List.mergesort' compare (List.merge_pairs compare (vz117 : List.merge compare vz1180 vz11810 : List.merge_pairs compare vz11811))",fontsize=16,color="black",shape="box"];1224 -> 1227[label="",style="solid", color="black", weight=3]; 16.99/9.30 1225[label="List.mergesort' compare (List.merge_pairs compare (vz117 : vz1180 : []))",fontsize=16,color="black",shape="box"];1225 -> 1228[label="",style="solid", color="black", weight=3]; 16.99/9.30 1299[label="vz1191",fontsize=16,color="green",shape="box"];1300[label="vz1200",fontsize=16,color="green",shape="box"];1301[label="compare vz1200 vz1190",fontsize=16,color="black",shape="triangle"];1301 -> 1314[label="",style="solid", color="black", weight=3]; 16.99/9.30 1302[label="vz1190",fontsize=16,color="green",shape="box"];1303[label="vz1201",fontsize=16,color="green",shape="box"];1298[label="List.merge0 vz127 compare vz128 vz129 vz130 vz131",fontsize=16,color="burlywood",shape="triangle"];1478[label="vz131/LT",fontsize=10,color="white",style="solid",shape="box"];1298 -> 1478[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1478 -> 1315[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1479[label="vz131/EQ",fontsize=10,color="white",style="solid",shape="box"];1298 -> 1479[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1479 -> 1316[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1480[label="vz131/GT",fontsize=10,color="white",style="solid",shape="box"];1298 -> 1480[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1480 -> 1317[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1227 -> 1042[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1227[label="List.mergesort' compare (List.merge compare vz117 (List.merge compare vz1180 vz11810) : List.merge_pairs compare (List.merge_pairs compare vz11811))",fontsize=16,color="magenta"];1227 -> 1231[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1227 -> 1232[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1228 -> 1042[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1228[label="List.mergesort' compare (List.merge compare vz117 vz1180 : List.merge_pairs compare [])",fontsize=16,color="magenta"];1228 -> 1233[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1228 -> 1234[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1314[label="primCmpInt vz1200 vz1190",fontsize=16,color="burlywood",shape="box"];1481[label="vz1200/Pos vz12000",fontsize=10,color="white",style="solid",shape="box"];1314 -> 1481[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1481 -> 1349[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1482[label="vz1200/Neg vz12000",fontsize=10,color="white",style="solid",shape="box"];1314 -> 1482[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1482 -> 1350[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1315[label="List.merge0 vz127 compare vz128 vz129 vz130 LT",fontsize=16,color="black",shape="box"];1315 -> 1351[label="",style="solid", color="black", weight=3]; 16.99/9.30 1316[label="List.merge0 vz127 compare vz128 vz129 vz130 EQ",fontsize=16,color="black",shape="box"];1316 -> 1352[label="",style="solid", color="black", weight=3]; 16.99/9.30 1317[label="List.merge0 vz127 compare vz128 vz129 vz130 GT",fontsize=16,color="black",shape="box"];1317 -> 1353[label="",style="solid", color="black", weight=3]; 16.99/9.30 1231[label="List.merge compare vz117 (List.merge compare vz1180 vz11810)",fontsize=16,color="burlywood",shape="box"];1483[label="vz11810/vz118100 : vz118101",fontsize=10,color="white",style="solid",shape="box"];1231 -> 1483[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1483 -> 1239[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1484[label="vz11810/[]",fontsize=10,color="white",style="solid",shape="box"];1231 -> 1484[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1484 -> 1240[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1232[label="List.merge_pairs compare vz11811",fontsize=16,color="burlywood",shape="triangle"];1485[label="vz11811/vz118110 : vz118111",fontsize=10,color="white",style="solid",shape="box"];1232 -> 1485[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1485 -> 1241[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1486[label="vz11811/[]",fontsize=10,color="white",style="solid",shape="box"];1232 -> 1486[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1486 -> 1242[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1233[label="List.merge compare vz117 vz1180",fontsize=16,color="burlywood",shape="triangle"];1487[label="vz1180/vz11800 : vz11801",fontsize=10,color="white",style="solid",shape="box"];1233 -> 1487[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1487 -> 1243[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1488[label="vz1180/[]",fontsize=10,color="white",style="solid",shape="box"];1233 -> 1488[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1488 -> 1244[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1234[label="[]",fontsize=16,color="green",shape="box"];1349[label="primCmpInt (Pos vz12000) vz1190",fontsize=16,color="burlywood",shape="box"];1489[label="vz12000/Succ vz120000",fontsize=10,color="white",style="solid",shape="box"];1349 -> 1489[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1489 -> 1397[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1490[label="vz12000/Zero",fontsize=10,color="white",style="solid",shape="box"];1349 -> 1490[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1490 -> 1398[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1350[label="primCmpInt (Neg vz12000) vz1190",fontsize=16,color="burlywood",shape="box"];1491[label="vz12000/Succ vz120000",fontsize=10,color="white",style="solid",shape="box"];1350 -> 1491[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1491 -> 1399[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1492[label="vz12000/Zero",fontsize=10,color="white",style="solid",shape="box"];1350 -> 1492[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1492 -> 1400[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1351[label="vz128 : List.merge compare vz129 (vz127 : vz130)",fontsize=16,color="green",shape="box"];1351 -> 1401[label="",style="dashed", color="green", weight=3]; 16.99/9.30 1352[label="vz128 : List.merge compare vz129 (vz127 : vz130)",fontsize=16,color="green",shape="box"];1352 -> 1402[label="",style="dashed", color="green", weight=3]; 16.99/9.30 1353[label="vz127 : List.merge compare (vz128 : vz129) vz130",fontsize=16,color="green",shape="box"];1353 -> 1403[label="",style="dashed", color="green", weight=3]; 16.99/9.30 1239[label="List.merge compare vz117 (List.merge compare vz1180 (vz118100 : vz118101))",fontsize=16,color="burlywood",shape="box"];1493[label="vz1180/vz11800 : vz11801",fontsize=10,color="white",style="solid",shape="box"];1239 -> 1493[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1493 -> 1253[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1494[label="vz1180/[]",fontsize=10,color="white",style="solid",shape="box"];1239 -> 1494[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1494 -> 1254[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1240[label="List.merge compare vz117 (List.merge compare vz1180 [])",fontsize=16,color="black",shape="box"];1240 -> 1255[label="",style="solid", color="black", weight=3]; 16.99/9.30 1241[label="List.merge_pairs compare (vz118110 : vz118111)",fontsize=16,color="burlywood",shape="box"];1495[label="vz118111/vz1181110 : vz1181111",fontsize=10,color="white",style="solid",shape="box"];1241 -> 1495[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1495 -> 1256[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1496[label="vz118111/[]",fontsize=10,color="white",style="solid",shape="box"];1241 -> 1496[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1496 -> 1257[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1242[label="List.merge_pairs compare []",fontsize=16,color="black",shape="box"];1242 -> 1258[label="",style="solid", color="black", weight=3]; 16.99/9.30 1243[label="List.merge compare vz117 (vz11800 : vz11801)",fontsize=16,color="burlywood",shape="box"];1497[label="vz117/vz1170 : vz1171",fontsize=10,color="white",style="solid",shape="box"];1243 -> 1497[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1497 -> 1259[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1498[label="vz117/[]",fontsize=10,color="white",style="solid",shape="box"];1243 -> 1498[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1498 -> 1260[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1244[label="List.merge compare vz117 []",fontsize=16,color="black",shape="box"];1244 -> 1261[label="",style="solid", color="black", weight=3]; 16.99/9.30 1397[label="primCmpInt (Pos (Succ vz120000)) vz1190",fontsize=16,color="burlywood",shape="box"];1499[label="vz1190/Pos vz11900",fontsize=10,color="white",style="solid",shape="box"];1397 -> 1499[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1499 -> 1404[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1500[label="vz1190/Neg vz11900",fontsize=10,color="white",style="solid",shape="box"];1397 -> 1500[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1500 -> 1405[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1398[label="primCmpInt (Pos Zero) vz1190",fontsize=16,color="burlywood",shape="box"];1501[label="vz1190/Pos vz11900",fontsize=10,color="white",style="solid",shape="box"];1398 -> 1501[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1501 -> 1406[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1502[label="vz1190/Neg vz11900",fontsize=10,color="white",style="solid",shape="box"];1398 -> 1502[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1502 -> 1407[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1399[label="primCmpInt (Neg (Succ vz120000)) vz1190",fontsize=16,color="burlywood",shape="box"];1503[label="vz1190/Pos vz11900",fontsize=10,color="white",style="solid",shape="box"];1399 -> 1503[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1503 -> 1408[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1504[label="vz1190/Neg vz11900",fontsize=10,color="white",style="solid",shape="box"];1399 -> 1504[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1504 -> 1409[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1400[label="primCmpInt (Neg Zero) vz1190",fontsize=16,color="burlywood",shape="box"];1505[label="vz1190/Pos vz11900",fontsize=10,color="white",style="solid",shape="box"];1400 -> 1505[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1505 -> 1410[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1506[label="vz1190/Neg vz11900",fontsize=10,color="white",style="solid",shape="box"];1400 -> 1506[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1506 -> 1411[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1401 -> 1233[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1401[label="List.merge compare vz129 (vz127 : vz130)",fontsize=16,color="magenta"];1401 -> 1412[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1401 -> 1413[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1402 -> 1233[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1402[label="List.merge compare vz129 (vz127 : vz130)",fontsize=16,color="magenta"];1402 -> 1414[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1402 -> 1415[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1403 -> 1233[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1403[label="List.merge compare (vz128 : vz129) vz130",fontsize=16,color="magenta"];1403 -> 1416[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1403 -> 1417[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1253[label="List.merge compare vz117 (List.merge compare (vz11800 : vz11801) (vz118100 : vz118101))",fontsize=16,color="black",shape="box"];1253 -> 1274[label="",style="solid", color="black", weight=3]; 16.99/9.30 1254[label="List.merge compare vz117 (List.merge compare [] (vz118100 : vz118101))",fontsize=16,color="black",shape="box"];1254 -> 1275[label="",style="solid", color="black", weight=3]; 16.99/9.30 1255 -> 1233[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1255[label="List.merge compare vz117 vz1180",fontsize=16,color="magenta"];1256[label="List.merge_pairs compare (vz118110 : vz1181110 : vz1181111)",fontsize=16,color="black",shape="box"];1256 -> 1276[label="",style="solid", color="black", weight=3]; 16.99/9.30 1257[label="List.merge_pairs compare (vz118110 : [])",fontsize=16,color="black",shape="box"];1257 -> 1277[label="",style="solid", color="black", weight=3]; 16.99/9.30 1258[label="[]",fontsize=16,color="green",shape="box"];1259[label="List.merge compare (vz1170 : vz1171) (vz11800 : vz11801)",fontsize=16,color="black",shape="box"];1259 -> 1278[label="",style="solid", color="black", weight=3]; 16.99/9.30 1260[label="List.merge compare [] (vz11800 : vz11801)",fontsize=16,color="black",shape="box"];1260 -> 1279[label="",style="solid", color="black", weight=3]; 16.99/9.30 1261[label="vz117",fontsize=16,color="green",shape="box"];1404[label="primCmpInt (Pos (Succ vz120000)) (Pos vz11900)",fontsize=16,color="black",shape="box"];1404 -> 1418[label="",style="solid", color="black", weight=3]; 16.99/9.30 1405[label="primCmpInt (Pos (Succ vz120000)) (Neg vz11900)",fontsize=16,color="black",shape="box"];1405 -> 1419[label="",style="solid", color="black", weight=3]; 16.99/9.30 1406[label="primCmpInt (Pos Zero) (Pos vz11900)",fontsize=16,color="burlywood",shape="box"];1507[label="vz11900/Succ vz119000",fontsize=10,color="white",style="solid",shape="box"];1406 -> 1507[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1507 -> 1420[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1508[label="vz11900/Zero",fontsize=10,color="white",style="solid",shape="box"];1406 -> 1508[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1508 -> 1421[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1407[label="primCmpInt (Pos Zero) (Neg vz11900)",fontsize=16,color="burlywood",shape="box"];1509[label="vz11900/Succ vz119000",fontsize=10,color="white",style="solid",shape="box"];1407 -> 1509[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1509 -> 1422[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1510[label="vz11900/Zero",fontsize=10,color="white",style="solid",shape="box"];1407 -> 1510[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1510 -> 1423[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1408[label="primCmpInt (Neg (Succ vz120000)) (Pos vz11900)",fontsize=16,color="black",shape="box"];1408 -> 1424[label="",style="solid", color="black", weight=3]; 16.99/9.30 1409[label="primCmpInt (Neg (Succ vz120000)) (Neg vz11900)",fontsize=16,color="black",shape="box"];1409 -> 1425[label="",style="solid", color="black", weight=3]; 16.99/9.30 1410[label="primCmpInt (Neg Zero) (Pos vz11900)",fontsize=16,color="burlywood",shape="box"];1511[label="vz11900/Succ vz119000",fontsize=10,color="white",style="solid",shape="box"];1410 -> 1511[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1511 -> 1426[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1512[label="vz11900/Zero",fontsize=10,color="white",style="solid",shape="box"];1410 -> 1512[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1512 -> 1427[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1411[label="primCmpInt (Neg Zero) (Neg vz11900)",fontsize=16,color="burlywood",shape="box"];1513[label="vz11900/Succ vz119000",fontsize=10,color="white",style="solid",shape="box"];1411 -> 1513[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1513 -> 1428[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1514[label="vz11900/Zero",fontsize=10,color="white",style="solid",shape="box"];1411 -> 1514[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1514 -> 1429[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1412[label="vz129",fontsize=16,color="green",shape="box"];1413[label="vz127 : vz130",fontsize=16,color="green",shape="box"];1414[label="vz129",fontsize=16,color="green",shape="box"];1415[label="vz127 : vz130",fontsize=16,color="green",shape="box"];1416[label="vz128 : vz129",fontsize=16,color="green",shape="box"];1417[label="vz130",fontsize=16,color="green",shape="box"];1274 -> 1233[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1274[label="List.merge compare vz117 (List.merge0 vz118100 compare vz11800 vz11801 vz118101 (compare vz11800 vz118100))",fontsize=16,color="magenta"];1274 -> 1294[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1275 -> 1233[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1275[label="List.merge compare vz117 (vz118100 : vz118101)",fontsize=16,color="magenta"];1275 -> 1295[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1276[label="List.merge compare vz118110 vz1181110 : List.merge_pairs compare vz1181111",fontsize=16,color="green",shape="box"];1276 -> 1296[label="",style="dashed", color="green", weight=3]; 16.99/9.30 1276 -> 1297[label="",style="dashed", color="green", weight=3]; 16.99/9.30 1277[label="vz118110 : []",fontsize=16,color="green",shape="box"];1278 -> 1298[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1278[label="List.merge0 vz11800 compare vz1170 vz1171 vz11801 (compare vz1170 vz11800)",fontsize=16,color="magenta"];1278 -> 1304[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1278 -> 1305[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1278 -> 1306[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1278 -> 1307[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1278 -> 1308[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1279[label="vz11800 : vz11801",fontsize=16,color="green",shape="box"];1418[label="primCmpNat (Succ vz120000) vz11900",fontsize=16,color="burlywood",shape="triangle"];1515[label="vz11900/Succ vz119000",fontsize=10,color="white",style="solid",shape="box"];1418 -> 1515[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1515 -> 1430[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1516[label="vz11900/Zero",fontsize=10,color="white",style="solid",shape="box"];1418 -> 1516[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1516 -> 1431[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1419[label="GT",fontsize=16,color="green",shape="box"];1420[label="primCmpInt (Pos Zero) (Pos (Succ vz119000))",fontsize=16,color="black",shape="box"];1420 -> 1432[label="",style="solid", color="black", weight=3]; 16.99/9.30 1421[label="primCmpInt (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];1421 -> 1433[label="",style="solid", color="black", weight=3]; 16.99/9.30 1422[label="primCmpInt (Pos Zero) (Neg (Succ vz119000))",fontsize=16,color="black",shape="box"];1422 -> 1434[label="",style="solid", color="black", weight=3]; 16.99/9.30 1423[label="primCmpInt (Pos Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];1423 -> 1435[label="",style="solid", color="black", weight=3]; 16.99/9.30 1424[label="LT",fontsize=16,color="green",shape="box"];1425[label="primCmpNat vz11900 (Succ vz120000)",fontsize=16,color="burlywood",shape="triangle"];1517[label="vz11900/Succ vz119000",fontsize=10,color="white",style="solid",shape="box"];1425 -> 1517[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1517 -> 1436[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1518[label="vz11900/Zero",fontsize=10,color="white",style="solid",shape="box"];1425 -> 1518[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1518 -> 1437[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1426[label="primCmpInt (Neg Zero) (Pos (Succ vz119000))",fontsize=16,color="black",shape="box"];1426 -> 1438[label="",style="solid", color="black", weight=3]; 16.99/9.30 1427[label="primCmpInt (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];1427 -> 1439[label="",style="solid", color="black", weight=3]; 16.99/9.30 1428[label="primCmpInt (Neg Zero) (Neg (Succ vz119000))",fontsize=16,color="black",shape="box"];1428 -> 1440[label="",style="solid", color="black", weight=3]; 16.99/9.30 1429[label="primCmpInt (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];1429 -> 1441[label="",style="solid", color="black", weight=3]; 16.99/9.30 1294 -> 1298[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1294[label="List.merge0 vz118100 compare vz11800 vz11801 vz118101 (compare vz11800 vz118100)",fontsize=16,color="magenta"];1294 -> 1309[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1294 -> 1310[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1294 -> 1311[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1294 -> 1312[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1294 -> 1313[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1295[label="vz118100 : vz118101",fontsize=16,color="green",shape="box"];1296 -> 1233[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1296[label="List.merge compare vz118110 vz1181110",fontsize=16,color="magenta"];1296 -> 1318[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1296 -> 1319[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1297 -> 1232[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1297[label="List.merge_pairs compare vz1181111",fontsize=16,color="magenta"];1297 -> 1320[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1304[label="vz11801",fontsize=16,color="green",shape="box"];1305[label="vz1170",fontsize=16,color="green",shape="box"];1306[label="compare vz1170 vz11800",fontsize=16,color="blue",shape="box"];1519[label="compare :: Float -> Float -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1306 -> 1519[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1519 -> 1321[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1520[label="compare :: ([] a) -> ([] a) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1306 -> 1520[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1520 -> 1322[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1521[label="compare :: Int -> Int -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1306 -> 1521[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1521 -> 1323[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1522[label="compare :: () -> () -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1306 -> 1522[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1522 -> 1324[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1523[label="compare :: (Maybe a) -> (Maybe a) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1306 -> 1523[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1523 -> 1325[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1524[label="compare :: Bool -> Bool -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1306 -> 1524[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1524 -> 1326[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1525[label="compare :: Ordering -> Ordering -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1306 -> 1525[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1525 -> 1327[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1526[label="compare :: Double -> Double -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1306 -> 1526[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1526 -> 1328[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1527[label="compare :: (Ratio a) -> (Ratio a) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1306 -> 1527[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1527 -> 1329[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1528[label="compare :: (Either a b) -> (Either a b) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1306 -> 1528[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1528 -> 1330[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1529[label="compare :: ((@2) a b) -> ((@2) a b) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1306 -> 1529[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1529 -> 1331[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1530[label="compare :: ((@3) a b c) -> ((@3) a b c) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1306 -> 1530[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1530 -> 1332[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1531[label="compare :: Integer -> Integer -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1306 -> 1531[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1531 -> 1333[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1532[label="compare :: Char -> Char -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1306 -> 1532[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1532 -> 1334[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1307[label="vz11800",fontsize=16,color="green",shape="box"];1308[label="vz1171",fontsize=16,color="green",shape="box"];1430[label="primCmpNat (Succ vz120000) (Succ vz119000)",fontsize=16,color="black",shape="box"];1430 -> 1442[label="",style="solid", color="black", weight=3]; 16.99/9.30 1431[label="primCmpNat (Succ vz120000) Zero",fontsize=16,color="black",shape="box"];1431 -> 1443[label="",style="solid", color="black", weight=3]; 16.99/9.30 1432 -> 1425[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1432[label="primCmpNat Zero (Succ vz119000)",fontsize=16,color="magenta"];1432 -> 1444[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1432 -> 1445[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1433[label="EQ",fontsize=16,color="green",shape="box"];1434[label="GT",fontsize=16,color="green",shape="box"];1435[label="EQ",fontsize=16,color="green",shape="box"];1436[label="primCmpNat (Succ vz119000) (Succ vz120000)",fontsize=16,color="black",shape="box"];1436 -> 1446[label="",style="solid", color="black", weight=3]; 16.99/9.30 1437[label="primCmpNat Zero (Succ vz120000)",fontsize=16,color="black",shape="box"];1437 -> 1447[label="",style="solid", color="black", weight=3]; 16.99/9.30 1438[label="LT",fontsize=16,color="green",shape="box"];1439[label="EQ",fontsize=16,color="green",shape="box"];1440 -> 1418[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1440[label="primCmpNat (Succ vz119000) Zero",fontsize=16,color="magenta"];1440 -> 1448[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1440 -> 1449[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1441[label="EQ",fontsize=16,color="green",shape="box"];1309[label="vz118101",fontsize=16,color="green",shape="box"];1310[label="vz11800",fontsize=16,color="green",shape="box"];1311[label="compare vz11800 vz118100",fontsize=16,color="blue",shape="box"];1533[label="compare :: Float -> Float -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1311 -> 1533[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1533 -> 1335[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1534[label="compare :: ([] a) -> ([] a) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1311 -> 1534[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1534 -> 1336[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1535[label="compare :: Int -> Int -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1311 -> 1535[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1535 -> 1337[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1536[label="compare :: () -> () -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1311 -> 1536[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1536 -> 1338[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1537[label="compare :: (Maybe a) -> (Maybe a) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1311 -> 1537[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1537 -> 1339[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1538[label="compare :: Bool -> Bool -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1311 -> 1538[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1538 -> 1340[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1539[label="compare :: Ordering -> Ordering -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1311 -> 1539[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1539 -> 1341[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1540[label="compare :: Double -> Double -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1311 -> 1540[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1540 -> 1342[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1541[label="compare :: (Ratio a) -> (Ratio a) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1311 -> 1541[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1541 -> 1343[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1542[label="compare :: (Either a b) -> (Either a b) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1311 -> 1542[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1542 -> 1344[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1543[label="compare :: ((@2) a b) -> ((@2) a b) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1311 -> 1543[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1543 -> 1345[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1544[label="compare :: ((@3) a b c) -> ((@3) a b c) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1311 -> 1544[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1544 -> 1346[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1545[label="compare :: Integer -> Integer -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1311 -> 1545[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1545 -> 1347[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1546[label="compare :: Char -> Char -> Ordering",fontsize=10,color="white",style="solid",shape="box"];1311 -> 1546[label="",style="solid", color="blue", weight=9]; 16.99/9.30 1546 -> 1348[label="",style="solid", color="blue", weight=3]; 16.99/9.30 1312[label="vz118100",fontsize=16,color="green",shape="box"];1313[label="vz11801",fontsize=16,color="green",shape="box"];1318[label="vz118110",fontsize=16,color="green",shape="box"];1319[label="vz1181110",fontsize=16,color="green",shape="box"];1320[label="vz1181111",fontsize=16,color="green",shape="box"];1321[label="compare vz1170 vz11800",fontsize=16,color="black",shape="triangle"];1321 -> 1354[label="",style="solid", color="black", weight=3]; 16.99/9.30 1322[label="compare vz1170 vz11800",fontsize=16,color="black",shape="triangle"];1322 -> 1355[label="",style="solid", color="black", weight=3]; 16.99/9.30 1323 -> 1301[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1323[label="compare vz1170 vz11800",fontsize=16,color="magenta"];1323 -> 1356[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1323 -> 1357[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1324[label="compare vz1170 vz11800",fontsize=16,color="black",shape="triangle"];1324 -> 1358[label="",style="solid", color="black", weight=3]; 16.99/9.30 1325[label="compare vz1170 vz11800",fontsize=16,color="black",shape="triangle"];1325 -> 1359[label="",style="solid", color="black", weight=3]; 16.99/9.30 1326[label="compare vz1170 vz11800",fontsize=16,color="black",shape="triangle"];1326 -> 1360[label="",style="solid", color="black", weight=3]; 16.99/9.30 1327[label="compare vz1170 vz11800",fontsize=16,color="black",shape="triangle"];1327 -> 1361[label="",style="solid", color="black", weight=3]; 16.99/9.30 1328[label="compare vz1170 vz11800",fontsize=16,color="black",shape="triangle"];1328 -> 1362[label="",style="solid", color="black", weight=3]; 16.99/9.30 1329[label="compare vz1170 vz11800",fontsize=16,color="black",shape="triangle"];1329 -> 1363[label="",style="solid", color="black", weight=3]; 16.99/9.30 1330[label="compare vz1170 vz11800",fontsize=16,color="black",shape="triangle"];1330 -> 1364[label="",style="solid", color="black", weight=3]; 16.99/9.30 1331[label="compare vz1170 vz11800",fontsize=16,color="black",shape="triangle"];1331 -> 1365[label="",style="solid", color="black", weight=3]; 16.99/9.30 1332[label="compare vz1170 vz11800",fontsize=16,color="black",shape="triangle"];1332 -> 1366[label="",style="solid", color="black", weight=3]; 16.99/9.30 1333[label="compare vz1170 vz11800",fontsize=16,color="black",shape="triangle"];1333 -> 1367[label="",style="solid", color="black", weight=3]; 16.99/9.30 1334[label="compare vz1170 vz11800",fontsize=16,color="black",shape="triangle"];1334 -> 1368[label="",style="solid", color="black", weight=3]; 16.99/9.30 1442[label="primCmpNat vz120000 vz119000",fontsize=16,color="burlywood",shape="triangle"];1547[label="vz120000/Succ vz1200000",fontsize=10,color="white",style="solid",shape="box"];1442 -> 1547[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1547 -> 1450[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1548[label="vz120000/Zero",fontsize=10,color="white",style="solid",shape="box"];1442 -> 1548[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1548 -> 1451[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1443[label="GT",fontsize=16,color="green",shape="box"];1444[label="vz119000",fontsize=16,color="green",shape="box"];1445[label="Zero",fontsize=16,color="green",shape="box"];1446 -> 1442[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1446[label="primCmpNat vz119000 vz120000",fontsize=16,color="magenta"];1446 -> 1452[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1446 -> 1453[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1447[label="LT",fontsize=16,color="green",shape="box"];1448[label="Zero",fontsize=16,color="green",shape="box"];1449[label="vz119000",fontsize=16,color="green",shape="box"];1335 -> 1321[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1335[label="compare vz11800 vz118100",fontsize=16,color="magenta"];1335 -> 1369[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1335 -> 1370[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1336 -> 1322[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1336[label="compare vz11800 vz118100",fontsize=16,color="magenta"];1336 -> 1371[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1336 -> 1372[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1337 -> 1301[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1337[label="compare vz11800 vz118100",fontsize=16,color="magenta"];1337 -> 1373[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1337 -> 1374[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1338 -> 1324[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1338[label="compare vz11800 vz118100",fontsize=16,color="magenta"];1338 -> 1375[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1338 -> 1376[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1339 -> 1325[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1339[label="compare vz11800 vz118100",fontsize=16,color="magenta"];1339 -> 1377[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1339 -> 1378[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1340 -> 1326[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1340[label="compare vz11800 vz118100",fontsize=16,color="magenta"];1340 -> 1379[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1340 -> 1380[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1341 -> 1327[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1341[label="compare vz11800 vz118100",fontsize=16,color="magenta"];1341 -> 1381[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1341 -> 1382[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1342 -> 1328[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1342[label="compare vz11800 vz118100",fontsize=16,color="magenta"];1342 -> 1383[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1342 -> 1384[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1343 -> 1329[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1343[label="compare vz11800 vz118100",fontsize=16,color="magenta"];1343 -> 1385[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1343 -> 1386[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1344 -> 1330[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1344[label="compare vz11800 vz118100",fontsize=16,color="magenta"];1344 -> 1387[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1344 -> 1388[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1345 -> 1331[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1345[label="compare vz11800 vz118100",fontsize=16,color="magenta"];1345 -> 1389[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1345 -> 1390[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1346 -> 1332[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1346[label="compare vz11800 vz118100",fontsize=16,color="magenta"];1346 -> 1391[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1346 -> 1392[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1347 -> 1333[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1347[label="compare vz11800 vz118100",fontsize=16,color="magenta"];1347 -> 1393[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1347 -> 1394[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1348 -> 1334[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1348[label="compare vz11800 vz118100",fontsize=16,color="magenta"];1348 -> 1395[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1348 -> 1396[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1354[label="error []",fontsize=16,color="red",shape="box"];1355[label="error []",fontsize=16,color="red",shape="box"];1356[label="vz1170",fontsize=16,color="green",shape="box"];1357[label="vz11800",fontsize=16,color="green",shape="box"];1358[label="error []",fontsize=16,color="red",shape="box"];1359[label="error []",fontsize=16,color="red",shape="box"];1360[label="error []",fontsize=16,color="red",shape="box"];1361[label="error []",fontsize=16,color="red",shape="box"];1362[label="error []",fontsize=16,color="red",shape="box"];1363[label="error []",fontsize=16,color="red",shape="box"];1364[label="error []",fontsize=16,color="red",shape="box"];1365[label="error []",fontsize=16,color="red",shape="box"];1366[label="error []",fontsize=16,color="red",shape="box"];1367[label="error []",fontsize=16,color="red",shape="box"];1368[label="error []",fontsize=16,color="red",shape="box"];1450[label="primCmpNat (Succ vz1200000) vz119000",fontsize=16,color="burlywood",shape="box"];1549[label="vz119000/Succ vz1190000",fontsize=10,color="white",style="solid",shape="box"];1450 -> 1549[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1549 -> 1454[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1550[label="vz119000/Zero",fontsize=10,color="white",style="solid",shape="box"];1450 -> 1550[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1550 -> 1455[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1451[label="primCmpNat Zero vz119000",fontsize=16,color="burlywood",shape="box"];1551[label="vz119000/Succ vz1190000",fontsize=10,color="white",style="solid",shape="box"];1451 -> 1551[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1551 -> 1456[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1552[label="vz119000/Zero",fontsize=10,color="white",style="solid",shape="box"];1451 -> 1552[label="",style="solid", color="burlywood", weight=9]; 16.99/9.30 1552 -> 1457[label="",style="solid", color="burlywood", weight=3]; 16.99/9.30 1452[label="vz119000",fontsize=16,color="green",shape="box"];1453[label="vz120000",fontsize=16,color="green",shape="box"];1369[label="vz118100",fontsize=16,color="green",shape="box"];1370[label="vz11800",fontsize=16,color="green",shape="box"];1371[label="vz118100",fontsize=16,color="green",shape="box"];1372[label="vz11800",fontsize=16,color="green",shape="box"];1373[label="vz11800",fontsize=16,color="green",shape="box"];1374[label="vz118100",fontsize=16,color="green",shape="box"];1375[label="vz118100",fontsize=16,color="green",shape="box"];1376[label="vz11800",fontsize=16,color="green",shape="box"];1377[label="vz118100",fontsize=16,color="green",shape="box"];1378[label="vz11800",fontsize=16,color="green",shape="box"];1379[label="vz118100",fontsize=16,color="green",shape="box"];1380[label="vz11800",fontsize=16,color="green",shape="box"];1381[label="vz118100",fontsize=16,color="green",shape="box"];1382[label="vz11800",fontsize=16,color="green",shape="box"];1383[label="vz118100",fontsize=16,color="green",shape="box"];1384[label="vz11800",fontsize=16,color="green",shape="box"];1385[label="vz118100",fontsize=16,color="green",shape="box"];1386[label="vz11800",fontsize=16,color="green",shape="box"];1387[label="vz118100",fontsize=16,color="green",shape="box"];1388[label="vz11800",fontsize=16,color="green",shape="box"];1389[label="vz118100",fontsize=16,color="green",shape="box"];1390[label="vz11800",fontsize=16,color="green",shape="box"];1391[label="vz118100",fontsize=16,color="green",shape="box"];1392[label="vz11800",fontsize=16,color="green",shape="box"];1393[label="vz118100",fontsize=16,color="green",shape="box"];1394[label="vz11800",fontsize=16,color="green",shape="box"];1395[label="vz118100",fontsize=16,color="green",shape="box"];1396[label="vz11800",fontsize=16,color="green",shape="box"];1454[label="primCmpNat (Succ vz1200000) (Succ vz1190000)",fontsize=16,color="black",shape="box"];1454 -> 1458[label="",style="solid", color="black", weight=3]; 16.99/9.30 1455[label="primCmpNat (Succ vz1200000) Zero",fontsize=16,color="black",shape="box"];1455 -> 1459[label="",style="solid", color="black", weight=3]; 16.99/9.30 1456[label="primCmpNat Zero (Succ vz1190000)",fontsize=16,color="black",shape="box"];1456 -> 1460[label="",style="solid", color="black", weight=3]; 16.99/9.30 1457[label="primCmpNat Zero Zero",fontsize=16,color="black",shape="box"];1457 -> 1461[label="",style="solid", color="black", weight=3]; 16.99/9.30 1458 -> 1442[label="",style="dashed", color="red", weight=0]; 16.99/9.30 1458[label="primCmpNat vz1200000 vz1190000",fontsize=16,color="magenta"];1458 -> 1462[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1458 -> 1463[label="",style="dashed", color="magenta", weight=3]; 16.99/9.30 1459[label="GT",fontsize=16,color="green",shape="box"];1460[label="LT",fontsize=16,color="green",shape="box"];1461[label="EQ",fontsize=16,color="green",shape="box"];1462[label="vz1200000",fontsize=16,color="green",shape="box"];1463[label="vz1190000",fontsize=16,color="green",shape="box"];} 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (8) 16.99/9.30 Complex Obligation (AND) 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (9) 16.99/9.30 Obligation: 16.99/9.30 Q DP problem: 16.99/9.30 The TRS P consists of the following rules: 16.99/9.30 16.99/9.30 new_primCmpNat(Succ(vz1200000), Succ(vz1190000)) -> new_primCmpNat(vz1200000, vz1190000) 16.99/9.30 16.99/9.30 R is empty. 16.99/9.30 Q is empty. 16.99/9.30 We have to consider all minimal (P,Q,R)-chains. 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (10) QDPSizeChangeProof (EQUIVALENT) 16.99/9.30 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. 16.99/9.30 16.99/9.30 From the DPs we obtained the following set of size-change graphs: 16.99/9.30 *new_primCmpNat(Succ(vz1200000), Succ(vz1190000)) -> new_primCmpNat(vz1200000, vz1190000) 16.99/9.30 The graph contains the following edges 1 > 1, 2 > 2 16.99/9.30 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (11) 16.99/9.30 YES 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (12) 16.99/9.30 Obligation: 16.99/9.30 Q DP problem: 16.99/9.30 The TRS P consists of the following rules: 16.99/9.30 16.99/9.30 new_merge_pairs(:(vz118110, :(vz1181110, vz1181111)), ba) -> new_merge_pairs(vz1181111, ba) 16.99/9.30 16.99/9.30 R is empty. 16.99/9.30 Q is empty. 16.99/9.30 We have to consider all minimal (P,Q,R)-chains. 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (13) QDPSizeChangeProof (EQUIVALENT) 16.99/9.30 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. 16.99/9.30 16.99/9.30 From the DPs we obtained the following set of size-change graphs: 16.99/9.30 *new_merge_pairs(:(vz118110, :(vz1181110, vz1181111)), ba) -> new_merge_pairs(vz1181111, ba) 16.99/9.30 The graph contains the following edges 1 > 1, 2 >= 2 16.99/9.30 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (14) 16.99/9.30 YES 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (15) 16.99/9.30 Obligation: 16.99/9.30 Q DP problem: 16.99/9.30 The TRS P consists of the following rules: 16.99/9.30 16.99/9.30 new_merge0(vz127, vz128, vz129, vz130, EQ, ba) -> new_merge(vz129, :(vz127, vz130), ba) 16.99/9.30 new_merge0(vz127, vz128, vz129, vz130, GT, ba) -> new_merge(:(vz128, vz129), vz130, ba) 16.99/9.30 new_merge0(vz127, vz128, vz129, vz130, LT, ba) -> new_merge(vz129, :(vz127, vz130), ba) 16.99/9.30 new_merge(:(vz1170, vz1171), :(vz11800, vz11801), bb) -> new_merge0(vz11800, vz1170, vz1171, vz11801, new_compare(vz1170, vz11800, bb), bb) 16.99/9.30 16.99/9.30 The TRS R consists of the following rules: 16.99/9.30 16.99/9.30 new_compare1(vz1170, vz11800, bd, be) -> error([]) 16.99/9.30 new_primCmpNat2(Zero, vz120000) -> LT 16.99/9.30 new_compare4(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare11(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare3(vz1170, vz11800, ca, cb) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, ty_@0) -> new_compare7(vz1170, vz11800) 16.99/9.30 new_compare9(Pos(Succ(vz120000)), Neg(vz11900)) -> GT 16.99/9.30 new_primCmpNat1(Succ(vz1200000), Succ(vz1190000)) -> new_primCmpNat1(vz1200000, vz1190000) 16.99/9.30 new_primCmpNat0(vz120000, Succ(vz119000)) -> new_primCmpNat1(vz120000, vz119000) 16.99/9.30 new_compare9(Neg(Succ(vz120000)), Pos(vz11900)) -> LT 16.99/9.30 new_compare(vz1170, vz11800, app(app(ty_@2, ca), cb)) -> new_compare3(vz1170, vz11800, ca, cb) 16.99/9.30 new_compare(vz1170, vz11800, ty_Int) -> new_compare9(vz1170, vz11800) 16.99/9.30 new_compare9(Neg(Succ(vz120000)), Neg(vz11900)) -> new_primCmpNat2(vz11900, vz120000) 16.99/9.30 new_compare13(vz1170, vz11800, cd) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, ty_Bool) -> new_compare4(vz1170, vz11800) 16.99/9.30 new_primCmpNat1(Zero, Zero) -> EQ 16.99/9.30 new_compare9(Neg(Zero), Neg(Zero)) -> EQ 16.99/9.30 new_compare6(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, app(ty_Ratio, cd)) -> new_compare13(vz1170, vz11800, cd) 16.99/9.30 new_compare(vz1170, vz11800, app(app(ty_Either, bd), be)) -> new_compare1(vz1170, vz11800, bd, be) 16.99/9.30 new_primCmpNat1(Zero, Succ(vz1190000)) -> LT 16.99/9.30 new_compare(vz1170, vz11800, ty_Char) -> new_compare6(vz1170, vz11800) 16.99/9.30 new_compare8(vz1170, vz11800) -> error([]) 16.99/9.30 new_primCmpNat1(Succ(vz1200000), Zero) -> GT 16.99/9.30 new_compare(vz1170, vz11800, ty_Integer) -> new_compare5(vz1170, vz11800) 16.99/9.30 new_compare9(Pos(Succ(vz120000)), Pos(vz11900)) -> new_primCmpNat0(vz120000, vz11900) 16.99/9.30 new_compare5(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare12(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare9(Pos(Zero), Neg(Succ(vz119000))) -> GT 16.99/9.30 new_compare2(vz1170, vz11800, bf, bg, bh) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, app(app(app(ty_@3, bf), bg), bh)) -> new_compare2(vz1170, vz11800, bf, bg, bh) 16.99/9.30 new_compare9(Pos(Zero), Pos(Zero)) -> EQ 16.99/9.30 new_compare(vz1170, vz11800, app(ty_Maybe, cc)) -> new_compare10(vz1170, vz11800, cc) 16.99/9.30 new_compare10(vz1170, vz11800, cc) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, app(ty_[], bc)) -> new_compare0(vz1170, vz11800, bc) 16.99/9.30 new_compare(vz1170, vz11800, ty_Double) -> new_compare12(vz1170, vz11800) 16.99/9.30 new_compare0(vz1170, vz11800, bc) -> error([]) 16.99/9.30 new_compare9(Neg(Zero), Neg(Succ(vz119000))) -> new_primCmpNat0(vz119000, Zero) 16.99/9.30 new_primCmpNat2(Succ(vz119000), vz120000) -> new_primCmpNat1(vz119000, vz120000) 16.99/9.30 new_primCmpNat0(vz120000, Zero) -> GT 16.99/9.30 new_compare(vz1170, vz11800, ty_Float) -> new_compare8(vz1170, vz11800) 16.99/9.30 new_compare(vz1170, vz11800, ty_Ordering) -> new_compare11(vz1170, vz11800) 16.99/9.30 new_compare9(Neg(Zero), Pos(Succ(vz119000))) -> LT 16.99/9.30 new_compare9(Pos(Zero), Neg(Zero)) -> EQ 16.99/9.30 new_compare9(Neg(Zero), Pos(Zero)) -> EQ 16.99/9.30 new_compare7(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare9(Pos(Zero), Pos(Succ(vz119000))) -> new_primCmpNat2(Zero, vz119000) 16.99/9.30 16.99/9.30 The set Q consists of the following terms: 16.99/9.30 16.99/9.30 new_primCmpNat2(Zero, x0) 16.99/9.30 new_compare3(x0, x1, x2, x3) 16.99/9.30 new_compare(x0, x1, app(ty_Ratio, x2)) 16.99/9.30 new_compare11(x0, x1) 16.99/9.30 new_primCmpNat1(Succ(x0), Zero) 16.99/9.30 new_compare10(x0, x1, x2) 16.99/9.30 new_primCmpNat2(Succ(x0), x1) 16.99/9.30 new_compare(x0, x1, ty_@0) 16.99/9.30 new_compare9(Pos(Succ(x0)), Pos(x1)) 16.99/9.30 new_compare1(x0, x1, x2, x3) 16.99/9.30 new_compare(x0, x1, ty_Char) 16.99/9.30 new_primCmpNat1(Succ(x0), Succ(x1)) 16.99/9.30 new_compare(x0, x1, ty_Double) 16.99/9.30 new_compare(x0, x1, ty_Float) 16.99/9.30 new_compare13(x0, x1, x2) 16.99/9.30 new_compare6(x0, x1) 16.99/9.30 new_compare9(Pos(Zero), Pos(Succ(x0))) 16.99/9.30 new_compare(x0, x1, ty_Int) 16.99/9.30 new_compare(x0, x1, app(ty_[], x2)) 16.99/9.30 new_compare9(Pos(Succ(x0)), Neg(x1)) 16.99/9.30 new_compare9(Neg(Succ(x0)), Pos(x1)) 16.99/9.30 new_compare0(x0, x1, x2) 16.99/9.30 new_primCmpNat1(Zero, Succ(x0)) 16.99/9.30 new_compare5(x0, x1) 16.99/9.30 new_compare(x0, x1, ty_Integer) 16.99/9.30 new_compare9(Neg(Zero), Neg(Succ(x0))) 16.99/9.30 new_compare9(Neg(Succ(x0)), Neg(x1)) 16.99/9.30 new_compare(x0, x1, app(ty_Maybe, x2)) 16.99/9.30 new_compare(x0, x1, ty_Ordering) 16.99/9.30 new_primCmpNat0(x0, Succ(x1)) 16.99/9.30 new_compare9(Pos(Zero), Neg(Zero)) 16.99/9.30 new_compare9(Neg(Zero), Pos(Zero)) 16.99/9.30 new_compare9(Pos(Zero), Pos(Zero)) 16.99/9.30 new_compare4(x0, x1) 16.99/9.30 new_compare9(Pos(Zero), Neg(Succ(x0))) 16.99/9.30 new_compare9(Neg(Zero), Pos(Succ(x0))) 16.99/9.30 new_compare(x0, x1, app(app(ty_@2, x2), x3)) 16.99/9.30 new_compare9(Neg(Zero), Neg(Zero)) 16.99/9.30 new_compare(x0, x1, ty_Bool) 16.99/9.30 new_primCmpNat1(Zero, Zero) 16.99/9.30 new_compare8(x0, x1) 16.99/9.30 new_compare2(x0, x1, x2, x3, x4) 16.99/9.30 new_compare12(x0, x1) 16.99/9.30 new_primCmpNat0(x0, Zero) 16.99/9.30 new_compare(x0, x1, app(app(ty_Either, x2), x3)) 16.99/9.30 new_compare7(x0, x1) 16.99/9.30 new_compare(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.99/9.30 16.99/9.30 We have to consider all minimal (P,Q,R)-chains. 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (16) QDPOrderProof (EQUIVALENT) 16.99/9.30 We use the reduction pair processor [LPAR04,JAR06]. 16.99/9.30 16.99/9.30 16.99/9.30 The following pairs can be oriented strictly and are deleted. 16.99/9.30 16.99/9.30 new_merge(:(vz1170, vz1171), :(vz11800, vz11801), bb) -> new_merge0(vz11800, vz1170, vz1171, vz11801, new_compare(vz1170, vz11800, bb), bb) 16.99/9.30 The remaining pairs can at least be oriented weakly. 16.99/9.30 Used ordering: Polynomial interpretation [POLO]: 16.99/9.30 16.99/9.30 POL(:(x_1, x_2)) = 1 + x_1 + x_2 16.99/9.30 POL(EQ) = 0 16.99/9.30 POL(GT) = 0 16.99/9.30 POL(LT) = 0 16.99/9.30 POL(Neg(x_1)) = 0 16.99/9.30 POL(Pos(x_1)) = 0 16.99/9.30 POL(Succ(x_1)) = x_1 16.99/9.30 POL(Zero) = 0 16.99/9.30 POL([]) = 1 16.99/9.30 POL(app(x_1, x_2)) = 1 + x_1 + x_2 16.99/9.30 POL(error(x_1)) = 1 + x_1 16.99/9.30 POL(new_compare(x_1, x_2, x_3)) = 1 + x_1 + x_2 + x_3 16.99/9.30 POL(new_compare0(x_1, x_2, x_3)) = 1 + x_1 + x_2 + x_3 16.99/9.30 POL(new_compare1(x_1, x_2, x_3, x_4)) = 1 + x_1 + x_2 + x_3 + x_4 16.99/9.30 POL(new_compare10(x_1, x_2, x_3)) = 1 + x_1 + x_2 + x_3 16.99/9.30 POL(new_compare11(x_1, x_2)) = 1 + x_1 + x_2 16.99/9.30 POL(new_compare12(x_1, x_2)) = 1 + x_1 + x_2 16.99/9.30 POL(new_compare13(x_1, x_2, x_3)) = 1 + x_1 + x_2 + x_3 16.99/9.30 POL(new_compare2(x_1, x_2, x_3, x_4, x_5)) = 1 + x_1 + x_2 + x_3 + x_4 + x_5 16.99/9.30 POL(new_compare3(x_1, x_2, x_3, x_4)) = 1 + x_1 + x_2 + x_3 + x_4 16.99/9.30 POL(new_compare4(x_1, x_2)) = 1 + x_1 + x_2 16.99/9.30 POL(new_compare5(x_1, x_2)) = 1 + x_1 + x_2 16.99/9.30 POL(new_compare6(x_1, x_2)) = 1 + x_1 + x_2 16.99/9.30 POL(new_compare7(x_1, x_2)) = 1 + x_1 + x_2 16.99/9.30 POL(new_compare8(x_1, x_2)) = 1 + x_1 + x_2 16.99/9.30 POL(new_compare9(x_1, x_2)) = 0 16.99/9.30 POL(new_merge(x_1, x_2, x_3)) = x_1 + x_2 + x_3 16.99/9.30 POL(new_merge0(x_1, x_2, x_3, x_4, x_5, x_6)) = 1 + x_1 + x_2 + x_3 + x_4 + x_6 16.99/9.30 POL(new_primCmpNat0(x_1, x_2)) = 1 + x_1 16.99/9.30 POL(new_primCmpNat1(x_1, x_2)) = 1 16.99/9.30 POL(new_primCmpNat2(x_1, x_2)) = 1 + x_2 16.99/9.30 POL(ty_@0) = 1 16.99/9.30 POL(ty_@2) = 1 16.99/9.30 POL(ty_@3) = 1 16.99/9.30 POL(ty_Bool) = 1 16.99/9.30 POL(ty_Char) = 1 16.99/9.30 POL(ty_Double) = 1 16.99/9.30 POL(ty_Either) = 1 16.99/9.30 POL(ty_Float) = 1 16.99/9.30 POL(ty_Int) = 1 16.99/9.30 POL(ty_Integer) = 1 16.99/9.30 POL(ty_Maybe) = 1 16.99/9.30 POL(ty_Ordering) = 1 16.99/9.30 POL(ty_Ratio) = 1 16.99/9.30 POL(ty_[]) = 1 16.99/9.30 16.99/9.30 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 16.99/9.30 none 16.99/9.30 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (17) 16.99/9.30 Obligation: 16.99/9.30 Q DP problem: 16.99/9.30 The TRS P consists of the following rules: 16.99/9.30 16.99/9.30 new_merge0(vz127, vz128, vz129, vz130, EQ, ba) -> new_merge(vz129, :(vz127, vz130), ba) 16.99/9.30 new_merge0(vz127, vz128, vz129, vz130, GT, ba) -> new_merge(:(vz128, vz129), vz130, ba) 16.99/9.30 new_merge0(vz127, vz128, vz129, vz130, LT, ba) -> new_merge(vz129, :(vz127, vz130), ba) 16.99/9.30 16.99/9.30 The TRS R consists of the following rules: 16.99/9.30 16.99/9.30 new_compare1(vz1170, vz11800, bd, be) -> error([]) 16.99/9.30 new_primCmpNat2(Zero, vz120000) -> LT 16.99/9.30 new_compare4(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare11(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare3(vz1170, vz11800, ca, cb) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, ty_@0) -> new_compare7(vz1170, vz11800) 16.99/9.30 new_compare9(Pos(Succ(vz120000)), Neg(vz11900)) -> GT 16.99/9.30 new_primCmpNat1(Succ(vz1200000), Succ(vz1190000)) -> new_primCmpNat1(vz1200000, vz1190000) 16.99/9.30 new_primCmpNat0(vz120000, Succ(vz119000)) -> new_primCmpNat1(vz120000, vz119000) 16.99/9.30 new_compare9(Neg(Succ(vz120000)), Pos(vz11900)) -> LT 16.99/9.30 new_compare(vz1170, vz11800, app(app(ty_@2, ca), cb)) -> new_compare3(vz1170, vz11800, ca, cb) 16.99/9.30 new_compare(vz1170, vz11800, ty_Int) -> new_compare9(vz1170, vz11800) 16.99/9.30 new_compare9(Neg(Succ(vz120000)), Neg(vz11900)) -> new_primCmpNat2(vz11900, vz120000) 16.99/9.30 new_compare13(vz1170, vz11800, cd) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, ty_Bool) -> new_compare4(vz1170, vz11800) 16.99/9.30 new_primCmpNat1(Zero, Zero) -> EQ 16.99/9.30 new_compare9(Neg(Zero), Neg(Zero)) -> EQ 16.99/9.30 new_compare6(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, app(ty_Ratio, cd)) -> new_compare13(vz1170, vz11800, cd) 16.99/9.30 new_compare(vz1170, vz11800, app(app(ty_Either, bd), be)) -> new_compare1(vz1170, vz11800, bd, be) 16.99/9.30 new_primCmpNat1(Zero, Succ(vz1190000)) -> LT 16.99/9.30 new_compare(vz1170, vz11800, ty_Char) -> new_compare6(vz1170, vz11800) 16.99/9.30 new_compare8(vz1170, vz11800) -> error([]) 16.99/9.30 new_primCmpNat1(Succ(vz1200000), Zero) -> GT 16.99/9.30 new_compare(vz1170, vz11800, ty_Integer) -> new_compare5(vz1170, vz11800) 16.99/9.30 new_compare9(Pos(Succ(vz120000)), Pos(vz11900)) -> new_primCmpNat0(vz120000, vz11900) 16.99/9.30 new_compare5(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare12(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare9(Pos(Zero), Neg(Succ(vz119000))) -> GT 16.99/9.30 new_compare2(vz1170, vz11800, bf, bg, bh) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, app(app(app(ty_@3, bf), bg), bh)) -> new_compare2(vz1170, vz11800, bf, bg, bh) 16.99/9.30 new_compare9(Pos(Zero), Pos(Zero)) -> EQ 16.99/9.30 new_compare(vz1170, vz11800, app(ty_Maybe, cc)) -> new_compare10(vz1170, vz11800, cc) 16.99/9.30 new_compare10(vz1170, vz11800, cc) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, app(ty_[], bc)) -> new_compare0(vz1170, vz11800, bc) 16.99/9.30 new_compare(vz1170, vz11800, ty_Double) -> new_compare12(vz1170, vz11800) 16.99/9.30 new_compare0(vz1170, vz11800, bc) -> error([]) 16.99/9.30 new_compare9(Neg(Zero), Neg(Succ(vz119000))) -> new_primCmpNat0(vz119000, Zero) 16.99/9.30 new_primCmpNat2(Succ(vz119000), vz120000) -> new_primCmpNat1(vz119000, vz120000) 16.99/9.30 new_primCmpNat0(vz120000, Zero) -> GT 16.99/9.30 new_compare(vz1170, vz11800, ty_Float) -> new_compare8(vz1170, vz11800) 16.99/9.30 new_compare(vz1170, vz11800, ty_Ordering) -> new_compare11(vz1170, vz11800) 16.99/9.30 new_compare9(Neg(Zero), Pos(Succ(vz119000))) -> LT 16.99/9.30 new_compare9(Pos(Zero), Neg(Zero)) -> EQ 16.99/9.30 new_compare9(Neg(Zero), Pos(Zero)) -> EQ 16.99/9.30 new_compare7(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare9(Pos(Zero), Pos(Succ(vz119000))) -> new_primCmpNat2(Zero, vz119000) 16.99/9.30 16.99/9.30 The set Q consists of the following terms: 16.99/9.30 16.99/9.30 new_primCmpNat2(Zero, x0) 16.99/9.30 new_compare3(x0, x1, x2, x3) 16.99/9.30 new_compare(x0, x1, app(ty_Ratio, x2)) 16.99/9.30 new_compare11(x0, x1) 16.99/9.30 new_primCmpNat1(Succ(x0), Zero) 16.99/9.30 new_compare10(x0, x1, x2) 16.99/9.30 new_primCmpNat2(Succ(x0), x1) 16.99/9.30 new_compare(x0, x1, ty_@0) 16.99/9.30 new_compare9(Pos(Succ(x0)), Pos(x1)) 16.99/9.30 new_compare1(x0, x1, x2, x3) 16.99/9.30 new_compare(x0, x1, ty_Char) 16.99/9.30 new_primCmpNat1(Succ(x0), Succ(x1)) 16.99/9.30 new_compare(x0, x1, ty_Double) 16.99/9.30 new_compare(x0, x1, ty_Float) 16.99/9.30 new_compare13(x0, x1, x2) 16.99/9.30 new_compare6(x0, x1) 16.99/9.30 new_compare9(Pos(Zero), Pos(Succ(x0))) 16.99/9.30 new_compare(x0, x1, ty_Int) 16.99/9.30 new_compare(x0, x1, app(ty_[], x2)) 16.99/9.30 new_compare9(Pos(Succ(x0)), Neg(x1)) 16.99/9.30 new_compare9(Neg(Succ(x0)), Pos(x1)) 16.99/9.30 new_compare0(x0, x1, x2) 16.99/9.30 new_primCmpNat1(Zero, Succ(x0)) 16.99/9.30 new_compare5(x0, x1) 16.99/9.30 new_compare(x0, x1, ty_Integer) 16.99/9.30 new_compare9(Neg(Zero), Neg(Succ(x0))) 16.99/9.30 new_compare9(Neg(Succ(x0)), Neg(x1)) 16.99/9.30 new_compare(x0, x1, app(ty_Maybe, x2)) 16.99/9.30 new_compare(x0, x1, ty_Ordering) 16.99/9.30 new_primCmpNat0(x0, Succ(x1)) 16.99/9.30 new_compare9(Pos(Zero), Neg(Zero)) 16.99/9.30 new_compare9(Neg(Zero), Pos(Zero)) 16.99/9.30 new_compare9(Pos(Zero), Pos(Zero)) 16.99/9.30 new_compare4(x0, x1) 16.99/9.30 new_compare9(Pos(Zero), Neg(Succ(x0))) 16.99/9.30 new_compare9(Neg(Zero), Pos(Succ(x0))) 16.99/9.30 new_compare(x0, x1, app(app(ty_@2, x2), x3)) 16.99/9.30 new_compare9(Neg(Zero), Neg(Zero)) 16.99/9.30 new_compare(x0, x1, ty_Bool) 16.99/9.30 new_primCmpNat1(Zero, Zero) 16.99/9.30 new_compare8(x0, x1) 16.99/9.30 new_compare2(x0, x1, x2, x3, x4) 16.99/9.30 new_compare12(x0, x1) 16.99/9.30 new_primCmpNat0(x0, Zero) 16.99/9.30 new_compare(x0, x1, app(app(ty_Either, x2), x3)) 16.99/9.30 new_compare7(x0, x1) 16.99/9.30 new_compare(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.99/9.30 16.99/9.30 We have to consider all minimal (P,Q,R)-chains. 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (18) DependencyGraphProof (EQUIVALENT) 16.99/9.30 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 3 less nodes. 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (19) 16.99/9.30 TRUE 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (20) 16.99/9.30 Obligation: 16.99/9.30 Q DP problem: 16.99/9.30 The TRS P consists of the following rules: 16.99/9.30 16.99/9.30 new_map(:(vz3110, vz3111)) -> new_map(vz3111) 16.99/9.30 16.99/9.30 R is empty. 16.99/9.30 Q is empty. 16.99/9.30 We have to consider all minimal (P,Q,R)-chains. 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (21) QDPSizeChangeProof (EQUIVALENT) 16.99/9.30 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. 16.99/9.30 16.99/9.30 From the DPs we obtained the following set of size-change graphs: 16.99/9.30 *new_map(:(vz3110, vz3111)) -> new_map(vz3111) 16.99/9.30 The graph contains the following edges 1 > 1 16.99/9.30 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (22) 16.99/9.30 YES 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (23) 16.99/9.30 Obligation: 16.99/9.30 Q DP problem: 16.99/9.30 The TRS P consists of the following rules: 16.99/9.30 16.99/9.30 new_mergesort'(vz117, :(vz1180, []), ba) -> new_mergesort'(new_merge2(vz117, vz1180, ba), [], ba) 16.99/9.30 new_mergesort'(vz117, :(vz1180, :(vz11810, vz11811)), ba) -> new_mergesort'(new_merge1(vz117, vz1180, vz11810, ba), new_merge_pairs0(vz11811, ba), ba) 16.99/9.30 16.99/9.30 The TRS R consists of the following rules: 16.99/9.30 16.99/9.30 new_compare1(vz1170, vz11800, bc, bd) -> error([]) 16.99/9.30 new_compare14(vz11800, vz118100, ty_Double) -> new_compare12(vz11800, vz118100) 16.99/9.30 new_compare4(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare11(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare14(vz11800, vz118100, ty_Bool) -> new_compare4(vz11800, vz118100) 16.99/9.30 new_primCmpNat0(vz120000, Succ(vz119000)) -> new_primCmpNat1(vz120000, vz119000) 16.99/9.30 new_compare9(Neg(Succ(vz120000)), Pos(vz11900)) -> LT 16.99/9.30 new_compare(vz1170, vz11800, app(app(ty_@2, bh), ca)) -> new_compare3(vz1170, vz11800, bh, ca) 16.99/9.30 new_compare(vz1170, vz11800, ty_Int) -> new_compare9(vz1170, vz11800) 16.99/9.30 new_compare9(Neg(Succ(vz120000)), Neg(vz11900)) -> new_primCmpNat2(vz11900, vz120000) 16.99/9.30 new_compare14(vz11800, vz118100, ty_@0) -> new_compare7(vz11800, vz118100) 16.99/9.30 new_primCmpNat1(Zero, Zero) -> EQ 16.99/9.30 new_compare14(vz11800, vz118100, app(app(app(ty_@3, be), bf), bg)) -> new_compare2(vz11800, vz118100, be, bf, bg) 16.99/9.30 new_merge_pairs0(:(vz118110, []), ba) -> :(vz118110, []) 16.99/9.30 new_compare(vz1170, vz11800, app(app(ty_Either, bc), bd)) -> new_compare1(vz1170, vz11800, bc, bd) 16.99/9.30 new_compare14(vz11800, vz118100, ty_Float) -> new_compare8(vz11800, vz118100) 16.99/9.30 new_merge1(vz117, :(vz11800, vz11801), :(vz118100, vz118101), ba) -> new_merge2(vz117, new_merge00(vz118100, vz11800, vz11801, vz118101, new_compare14(vz11800, vz118100, ba), ba), ba) 16.99/9.30 new_compare8(vz1170, vz11800) -> error([]) 16.99/9.30 new_primCmpNat1(Succ(vz1200000), Zero) -> GT 16.99/9.30 new_compare(vz1170, vz11800, ty_Integer) -> new_compare5(vz1170, vz11800) 16.99/9.30 new_compare12(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare2(vz1170, vz11800, be, bf, bg) -> error([]) 16.99/9.30 new_merge2([], :(vz11800, vz11801), ba) -> :(vz11800, vz11801) 16.99/9.30 new_compare(vz1170, vz11800, app(app(app(ty_@3, be), bf), bg)) -> new_compare2(vz1170, vz11800, be, bf, bg) 16.99/9.30 new_compare9(Pos(Zero), Pos(Zero)) -> EQ 16.99/9.30 new_compare(vz1170, vz11800, app(ty_Maybe, cd)) -> new_compare10(vz1170, vz11800, cd) 16.99/9.30 new_compare10(vz1170, vz11800, cd) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, app(ty_[], bb)) -> new_compare0(vz1170, vz11800, bb) 16.99/9.30 new_primCmpNat2(Succ(vz119000), vz120000) -> new_primCmpNat1(vz119000, vz120000) 16.99/9.30 new_merge_pairs0(:(vz118110, :(vz1181110, vz1181111)), ba) -> :(new_merge2(vz118110, vz1181110, ba), new_merge_pairs0(vz1181111, ba)) 16.99/9.30 new_compare14(vz11800, vz118100, app(ty_Ratio, cc)) -> new_compare13(vz11800, vz118100, cc) 16.99/9.30 new_primCmpNat0(vz120000, Zero) -> GT 16.99/9.30 new_compare(vz1170, vz11800, ty_Ordering) -> new_compare11(vz1170, vz11800) 16.99/9.30 new_compare9(Neg(Zero), Pos(Succ(vz119000))) -> LT 16.99/9.30 new_merge00(vz127, vz128, vz129, vz130, LT, cb) -> :(vz128, new_merge2(vz129, :(vz127, vz130), cb)) 16.99/9.30 new_compare9(Pos(Zero), Neg(Zero)) -> EQ 16.99/9.30 new_compare9(Neg(Zero), Pos(Zero)) -> EQ 16.99/9.30 new_compare7(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare14(vz11800, vz118100, app(app(ty_Either, bc), bd)) -> new_compare1(vz11800, vz118100, bc, bd) 16.99/9.30 new_compare9(Pos(Zero), Pos(Succ(vz119000))) -> new_primCmpNat2(Zero, vz119000) 16.99/9.30 new_compare14(vz11800, vz118100, app(ty_[], bb)) -> new_compare0(vz11800, vz118100, bb) 16.99/9.30 new_primCmpNat2(Zero, vz120000) -> LT 16.99/9.30 new_merge2(:(vz1170, vz1171), :(vz11800, vz11801), ba) -> new_merge00(vz11800, vz1170, vz1171, vz11801, new_compare(vz1170, vz11800, ba), ba) 16.99/9.30 new_compare3(vz1170, vz11800, bh, ca) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, ty_@0) -> new_compare7(vz1170, vz11800) 16.99/9.30 new_compare9(Pos(Succ(vz120000)), Neg(vz11900)) -> GT 16.99/9.30 new_primCmpNat1(Succ(vz1200000), Succ(vz1190000)) -> new_primCmpNat1(vz1200000, vz1190000) 16.99/9.30 new_compare14(vz11800, vz118100, app(ty_Maybe, cd)) -> new_compare10(vz11800, vz118100, cd) 16.99/9.30 new_merge2(vz117, [], ba) -> vz117 16.99/9.30 new_compare13(vz1170, vz11800, cc) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, ty_Bool) -> new_compare4(vz1170, vz11800) 16.99/9.30 new_merge_pairs0([], ba) -> [] 16.99/9.30 new_merge1(vz117, [], :(vz118100, vz118101), ba) -> new_merge2(vz117, :(vz118100, vz118101), ba) 16.99/9.30 new_compare9(Neg(Zero), Neg(Zero)) -> EQ 16.99/9.30 new_compare6(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, app(ty_Ratio, cc)) -> new_compare13(vz1170, vz11800, cc) 16.99/9.30 new_compare14(vz11800, vz118100, ty_Ordering) -> new_compare11(vz11800, vz118100) 16.99/9.30 new_primCmpNat1(Zero, Succ(vz1190000)) -> LT 16.99/9.30 new_compare(vz1170, vz11800, ty_Char) -> new_compare6(vz1170, vz11800) 16.99/9.30 new_merge00(vz127, vz128, vz129, vz130, GT, cb) -> :(vz127, new_merge2(:(vz128, vz129), vz130, cb)) 16.99/9.30 new_compare14(vz11800, vz118100, ty_Int) -> new_compare9(vz11800, vz118100) 16.99/9.30 new_compare9(Pos(Succ(vz120000)), Pos(vz11900)) -> new_primCmpNat0(vz120000, vz11900) 16.99/9.30 new_compare5(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare9(Pos(Zero), Neg(Succ(vz119000))) -> GT 16.99/9.30 new_merge00(vz127, vz128, vz129, vz130, EQ, cb) -> :(vz128, new_merge2(vz129, :(vz127, vz130), cb)) 16.99/9.30 new_compare14(vz11800, vz118100, ty_Integer) -> new_compare5(vz11800, vz118100) 16.99/9.30 new_compare14(vz11800, vz118100, app(app(ty_@2, bh), ca)) -> new_compare3(vz11800, vz118100, bh, ca) 16.99/9.30 new_compare(vz1170, vz11800, ty_Double) -> new_compare12(vz1170, vz11800) 16.99/9.30 new_compare14(vz11800, vz118100, ty_Char) -> new_compare6(vz11800, vz118100) 16.99/9.30 new_compare0(vz1170, vz11800, bb) -> error([]) 16.99/9.30 new_compare9(Neg(Zero), Neg(Succ(vz119000))) -> new_primCmpNat0(vz119000, Zero) 16.99/9.30 new_compare(vz1170, vz11800, ty_Float) -> new_compare8(vz1170, vz11800) 16.99/9.30 new_merge1(vz117, vz1180, [], ba) -> new_merge2(vz117, vz1180, ba) 16.99/9.30 16.99/9.30 The set Q consists of the following terms: 16.99/9.30 16.99/9.30 new_compare11(x0, x1) 16.99/9.30 new_primCmpNat2(Succ(x0), x1) 16.99/9.30 new_merge1(x0, [], :(x1, x2), x3) 16.99/9.30 new_merge1(x0, x1, [], x2) 16.99/9.30 new_compare9(Pos(Zero), Pos(Succ(x0))) 16.99/9.30 new_compare3(x0, x1, x2, x3) 16.99/9.30 new_compare(x0, x1, ty_Int) 16.99/9.30 new_compare14(x0, x1, ty_@0) 16.99/9.30 new_compare14(x0, x1, ty_Char) 16.99/9.30 new_compare(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.99/9.30 new_merge2(:(x0, x1), :(x2, x3), x4) 16.99/9.30 new_merge00(x0, x1, x2, x3, GT, x4) 16.99/9.30 new_compare14(x0, x1, ty_Double) 16.99/9.30 new_compare(x0, x1, app(ty_[], x2)) 16.99/9.30 new_merge00(x0, x1, x2, x3, LT, x4) 16.99/9.30 new_compare(x0, x1, ty_Integer) 16.99/9.30 new_compare9(Neg(Zero), Neg(Succ(x0))) 16.99/9.30 new_compare9(Neg(Succ(x0)), Neg(x1)) 16.99/9.30 new_compare(x0, x1, ty_Ordering) 16.99/9.30 new_compare14(x0, x1, ty_Ordering) 16.99/9.30 new_primCmpNat0(x0, Succ(x1)) 16.99/9.30 new_compare1(x0, x1, x2, x3) 16.99/9.30 new_compare14(x0, x1, app(app(ty_Either, x2), x3)) 16.99/9.30 new_compare9(Pos(Zero), Pos(Zero)) 16.99/9.30 new_merge_pairs0(:(x0, :(x1, x2)), x3) 16.99/9.30 new_compare4(x0, x1) 16.99/9.30 new_compare9(Neg(Zero), Pos(Succ(x0))) 16.99/9.30 new_compare9(Pos(Zero), Neg(Succ(x0))) 16.99/9.30 new_merge2(x0, [], x1) 16.99/9.30 new_compare(x0, x1, ty_Bool) 16.99/9.30 new_compare(x0, x1, app(ty_Ratio, x2)) 16.99/9.30 new_primCmpNat1(Zero, Zero) 16.99/9.30 new_compare14(x0, x1, ty_Int) 16.99/9.30 new_primCmpNat0(x0, Zero) 16.99/9.30 new_compare7(x0, x1) 16.99/9.30 new_primCmpNat2(Zero, x0) 16.99/9.30 new_primCmpNat1(Succ(x0), Zero) 16.99/9.30 new_compare(x0, x1, app(app(ty_@2, x2), x3)) 16.99/9.30 new_compare(x0, x1, ty_@0) 16.99/9.30 new_compare9(Pos(Succ(x0)), Pos(x1)) 16.99/9.30 new_compare(x0, x1, ty_Char) 16.99/9.30 new_primCmpNat1(Succ(x0), Succ(x1)) 16.99/9.30 new_compare(x0, x1, ty_Double) 16.99/9.30 new_compare(x0, x1, ty_Float) 16.99/9.30 new_compare6(x0, x1) 16.99/9.30 new_compare14(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.99/9.30 new_compare2(x0, x1, x2, x3, x4) 16.99/9.30 new_compare(x0, x1, app(ty_Maybe, x2)) 16.99/9.30 new_compare9(Neg(Succ(x0)), Pos(x1)) 16.99/9.30 new_compare9(Pos(Succ(x0)), Neg(x1)) 16.99/9.30 new_merge1(x0, :(x1, x2), :(x3, x4), x5) 16.99/9.30 new_compare10(x0, x1, x2) 16.99/9.30 new_merge_pairs0(:(x0, []), x1) 16.99/9.30 new_primCmpNat1(Zero, Succ(x0)) 16.99/9.30 new_compare5(x0, x1) 16.99/9.30 new_compare14(x0, x1, ty_Integer) 16.99/9.30 new_compare14(x0, x1, app(ty_[], x2)) 16.99/9.30 new_merge2([], :(x0, x1), x2) 16.99/9.30 new_compare9(Pos(Zero), Neg(Zero)) 16.99/9.30 new_compare9(Neg(Zero), Pos(Zero)) 16.99/9.30 new_merge00(x0, x1, x2, x3, EQ, x4) 16.99/9.30 new_compare13(x0, x1, x2) 16.99/9.30 new_compare9(Neg(Zero), Neg(Zero)) 16.99/9.30 new_compare14(x0, x1, ty_Bool) 16.99/9.30 new_compare8(x0, x1) 16.99/9.30 new_compare14(x0, x1, app(ty_Ratio, x2)) 16.99/9.30 new_compare12(x0, x1) 16.99/9.30 new_compare(x0, x1, app(app(ty_Either, x2), x3)) 16.99/9.30 new_merge_pairs0([], x0) 16.99/9.30 new_compare14(x0, x1, app(app(ty_@2, x2), x3)) 16.99/9.30 new_compare0(x0, x1, x2) 16.99/9.30 new_compare14(x0, x1, app(ty_Maybe, x2)) 16.99/9.30 new_compare14(x0, x1, ty_Float) 16.99/9.30 16.99/9.30 We have to consider all minimal (P,Q,R)-chains. 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (24) DependencyGraphProof (EQUIVALENT) 16.99/9.30 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (25) 16.99/9.30 Obligation: 16.99/9.30 Q DP problem: 16.99/9.30 The TRS P consists of the following rules: 16.99/9.30 16.99/9.30 new_mergesort'(vz117, :(vz1180, :(vz11810, vz11811)), ba) -> new_mergesort'(new_merge1(vz117, vz1180, vz11810, ba), new_merge_pairs0(vz11811, ba), ba) 16.99/9.30 16.99/9.30 The TRS R consists of the following rules: 16.99/9.30 16.99/9.30 new_compare1(vz1170, vz11800, bc, bd) -> error([]) 16.99/9.30 new_compare14(vz11800, vz118100, ty_Double) -> new_compare12(vz11800, vz118100) 16.99/9.30 new_compare4(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare11(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare14(vz11800, vz118100, ty_Bool) -> new_compare4(vz11800, vz118100) 16.99/9.30 new_primCmpNat0(vz120000, Succ(vz119000)) -> new_primCmpNat1(vz120000, vz119000) 16.99/9.30 new_compare9(Neg(Succ(vz120000)), Pos(vz11900)) -> LT 16.99/9.30 new_compare(vz1170, vz11800, app(app(ty_@2, bh), ca)) -> new_compare3(vz1170, vz11800, bh, ca) 16.99/9.30 new_compare(vz1170, vz11800, ty_Int) -> new_compare9(vz1170, vz11800) 16.99/9.30 new_compare9(Neg(Succ(vz120000)), Neg(vz11900)) -> new_primCmpNat2(vz11900, vz120000) 16.99/9.30 new_compare14(vz11800, vz118100, ty_@0) -> new_compare7(vz11800, vz118100) 16.99/9.30 new_primCmpNat1(Zero, Zero) -> EQ 16.99/9.30 new_compare14(vz11800, vz118100, app(app(app(ty_@3, be), bf), bg)) -> new_compare2(vz11800, vz118100, be, bf, bg) 16.99/9.30 new_merge_pairs0(:(vz118110, []), ba) -> :(vz118110, []) 16.99/9.30 new_compare(vz1170, vz11800, app(app(ty_Either, bc), bd)) -> new_compare1(vz1170, vz11800, bc, bd) 16.99/9.30 new_compare14(vz11800, vz118100, ty_Float) -> new_compare8(vz11800, vz118100) 16.99/9.30 new_merge1(vz117, :(vz11800, vz11801), :(vz118100, vz118101), ba) -> new_merge2(vz117, new_merge00(vz118100, vz11800, vz11801, vz118101, new_compare14(vz11800, vz118100, ba), ba), ba) 16.99/9.30 new_compare8(vz1170, vz11800) -> error([]) 16.99/9.30 new_primCmpNat1(Succ(vz1200000), Zero) -> GT 16.99/9.30 new_compare(vz1170, vz11800, ty_Integer) -> new_compare5(vz1170, vz11800) 16.99/9.30 new_compare12(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare2(vz1170, vz11800, be, bf, bg) -> error([]) 16.99/9.30 new_merge2([], :(vz11800, vz11801), ba) -> :(vz11800, vz11801) 16.99/9.30 new_compare(vz1170, vz11800, app(app(app(ty_@3, be), bf), bg)) -> new_compare2(vz1170, vz11800, be, bf, bg) 16.99/9.30 new_compare9(Pos(Zero), Pos(Zero)) -> EQ 16.99/9.30 new_compare(vz1170, vz11800, app(ty_Maybe, cd)) -> new_compare10(vz1170, vz11800, cd) 16.99/9.30 new_compare10(vz1170, vz11800, cd) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, app(ty_[], bb)) -> new_compare0(vz1170, vz11800, bb) 16.99/9.30 new_primCmpNat2(Succ(vz119000), vz120000) -> new_primCmpNat1(vz119000, vz120000) 16.99/9.30 new_merge_pairs0(:(vz118110, :(vz1181110, vz1181111)), ba) -> :(new_merge2(vz118110, vz1181110, ba), new_merge_pairs0(vz1181111, ba)) 16.99/9.30 new_compare14(vz11800, vz118100, app(ty_Ratio, cc)) -> new_compare13(vz11800, vz118100, cc) 16.99/9.30 new_primCmpNat0(vz120000, Zero) -> GT 16.99/9.30 new_compare(vz1170, vz11800, ty_Ordering) -> new_compare11(vz1170, vz11800) 16.99/9.30 new_compare9(Neg(Zero), Pos(Succ(vz119000))) -> LT 16.99/9.30 new_merge00(vz127, vz128, vz129, vz130, LT, cb) -> :(vz128, new_merge2(vz129, :(vz127, vz130), cb)) 16.99/9.30 new_compare9(Pos(Zero), Neg(Zero)) -> EQ 16.99/9.30 new_compare9(Neg(Zero), Pos(Zero)) -> EQ 16.99/9.30 new_compare7(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare14(vz11800, vz118100, app(app(ty_Either, bc), bd)) -> new_compare1(vz11800, vz118100, bc, bd) 16.99/9.30 new_compare9(Pos(Zero), Pos(Succ(vz119000))) -> new_primCmpNat2(Zero, vz119000) 16.99/9.30 new_compare14(vz11800, vz118100, app(ty_[], bb)) -> new_compare0(vz11800, vz118100, bb) 16.99/9.30 new_primCmpNat2(Zero, vz120000) -> LT 16.99/9.30 new_merge2(:(vz1170, vz1171), :(vz11800, vz11801), ba) -> new_merge00(vz11800, vz1170, vz1171, vz11801, new_compare(vz1170, vz11800, ba), ba) 16.99/9.30 new_compare3(vz1170, vz11800, bh, ca) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, ty_@0) -> new_compare7(vz1170, vz11800) 16.99/9.30 new_compare9(Pos(Succ(vz120000)), Neg(vz11900)) -> GT 16.99/9.30 new_primCmpNat1(Succ(vz1200000), Succ(vz1190000)) -> new_primCmpNat1(vz1200000, vz1190000) 16.99/9.30 new_compare14(vz11800, vz118100, app(ty_Maybe, cd)) -> new_compare10(vz11800, vz118100, cd) 16.99/9.30 new_merge2(vz117, [], ba) -> vz117 16.99/9.30 new_compare13(vz1170, vz11800, cc) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, ty_Bool) -> new_compare4(vz1170, vz11800) 16.99/9.30 new_merge_pairs0([], ba) -> [] 16.99/9.30 new_merge1(vz117, [], :(vz118100, vz118101), ba) -> new_merge2(vz117, :(vz118100, vz118101), ba) 16.99/9.30 new_compare9(Neg(Zero), Neg(Zero)) -> EQ 16.99/9.30 new_compare6(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare(vz1170, vz11800, app(ty_Ratio, cc)) -> new_compare13(vz1170, vz11800, cc) 16.99/9.30 new_compare14(vz11800, vz118100, ty_Ordering) -> new_compare11(vz11800, vz118100) 16.99/9.30 new_primCmpNat1(Zero, Succ(vz1190000)) -> LT 16.99/9.30 new_compare(vz1170, vz11800, ty_Char) -> new_compare6(vz1170, vz11800) 16.99/9.30 new_merge00(vz127, vz128, vz129, vz130, GT, cb) -> :(vz127, new_merge2(:(vz128, vz129), vz130, cb)) 16.99/9.30 new_compare14(vz11800, vz118100, ty_Int) -> new_compare9(vz11800, vz118100) 16.99/9.30 new_compare9(Pos(Succ(vz120000)), Pos(vz11900)) -> new_primCmpNat0(vz120000, vz11900) 16.99/9.30 new_compare5(vz1170, vz11800) -> error([]) 16.99/9.30 new_compare9(Pos(Zero), Neg(Succ(vz119000))) -> GT 16.99/9.30 new_merge00(vz127, vz128, vz129, vz130, EQ, cb) -> :(vz128, new_merge2(vz129, :(vz127, vz130), cb)) 16.99/9.30 new_compare14(vz11800, vz118100, ty_Integer) -> new_compare5(vz11800, vz118100) 16.99/9.30 new_compare14(vz11800, vz118100, app(app(ty_@2, bh), ca)) -> new_compare3(vz11800, vz118100, bh, ca) 16.99/9.30 new_compare(vz1170, vz11800, ty_Double) -> new_compare12(vz1170, vz11800) 16.99/9.30 new_compare14(vz11800, vz118100, ty_Char) -> new_compare6(vz11800, vz118100) 16.99/9.30 new_compare0(vz1170, vz11800, bb) -> error([]) 16.99/9.30 new_compare9(Neg(Zero), Neg(Succ(vz119000))) -> new_primCmpNat0(vz119000, Zero) 16.99/9.30 new_compare(vz1170, vz11800, ty_Float) -> new_compare8(vz1170, vz11800) 16.99/9.30 new_merge1(vz117, vz1180, [], ba) -> new_merge2(vz117, vz1180, ba) 16.99/9.30 16.99/9.30 The set Q consists of the following terms: 16.99/9.30 16.99/9.30 new_compare11(x0, x1) 16.99/9.30 new_primCmpNat2(Succ(x0), x1) 16.99/9.30 new_merge1(x0, [], :(x1, x2), x3) 16.99/9.30 new_merge1(x0, x1, [], x2) 16.99/9.30 new_compare9(Pos(Zero), Pos(Succ(x0))) 16.99/9.30 new_compare3(x0, x1, x2, x3) 16.99/9.30 new_compare(x0, x1, ty_Int) 16.99/9.30 new_compare14(x0, x1, ty_@0) 16.99/9.30 new_compare14(x0, x1, ty_Char) 16.99/9.30 new_compare(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.99/9.30 new_merge2(:(x0, x1), :(x2, x3), x4) 16.99/9.30 new_merge00(x0, x1, x2, x3, GT, x4) 16.99/9.30 new_compare14(x0, x1, ty_Double) 16.99/9.30 new_compare(x0, x1, app(ty_[], x2)) 16.99/9.30 new_merge00(x0, x1, x2, x3, LT, x4) 16.99/9.30 new_compare(x0, x1, ty_Integer) 16.99/9.30 new_compare9(Neg(Zero), Neg(Succ(x0))) 16.99/9.30 new_compare9(Neg(Succ(x0)), Neg(x1)) 16.99/9.30 new_compare(x0, x1, ty_Ordering) 16.99/9.30 new_compare14(x0, x1, ty_Ordering) 16.99/9.30 new_primCmpNat0(x0, Succ(x1)) 16.99/9.30 new_compare1(x0, x1, x2, x3) 16.99/9.30 new_compare14(x0, x1, app(app(ty_Either, x2), x3)) 16.99/9.30 new_compare9(Pos(Zero), Pos(Zero)) 16.99/9.30 new_merge_pairs0(:(x0, :(x1, x2)), x3) 16.99/9.30 new_compare4(x0, x1) 16.99/9.30 new_compare9(Neg(Zero), Pos(Succ(x0))) 16.99/9.30 new_compare9(Pos(Zero), Neg(Succ(x0))) 16.99/9.30 new_merge2(x0, [], x1) 16.99/9.30 new_compare(x0, x1, ty_Bool) 16.99/9.30 new_compare(x0, x1, app(ty_Ratio, x2)) 16.99/9.30 new_primCmpNat1(Zero, Zero) 16.99/9.30 new_compare14(x0, x1, ty_Int) 16.99/9.30 new_primCmpNat0(x0, Zero) 16.99/9.30 new_compare7(x0, x1) 16.99/9.30 new_primCmpNat2(Zero, x0) 16.99/9.30 new_primCmpNat1(Succ(x0), Zero) 16.99/9.30 new_compare(x0, x1, app(app(ty_@2, x2), x3)) 16.99/9.30 new_compare(x0, x1, ty_@0) 16.99/9.30 new_compare9(Pos(Succ(x0)), Pos(x1)) 16.99/9.30 new_compare(x0, x1, ty_Char) 16.99/9.30 new_primCmpNat1(Succ(x0), Succ(x1)) 16.99/9.30 new_compare(x0, x1, ty_Double) 16.99/9.30 new_compare(x0, x1, ty_Float) 16.99/9.30 new_compare6(x0, x1) 16.99/9.30 new_compare14(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.99/9.30 new_compare2(x0, x1, x2, x3, x4) 16.99/9.30 new_compare(x0, x1, app(ty_Maybe, x2)) 16.99/9.30 new_compare9(Neg(Succ(x0)), Pos(x1)) 16.99/9.30 new_compare9(Pos(Succ(x0)), Neg(x1)) 16.99/9.30 new_merge1(x0, :(x1, x2), :(x3, x4), x5) 16.99/9.30 new_compare10(x0, x1, x2) 16.99/9.30 new_merge_pairs0(:(x0, []), x1) 16.99/9.30 new_primCmpNat1(Zero, Succ(x0)) 16.99/9.30 new_compare5(x0, x1) 16.99/9.30 new_compare14(x0, x1, ty_Integer) 16.99/9.30 new_compare14(x0, x1, app(ty_[], x2)) 16.99/9.30 new_merge2([], :(x0, x1), x2) 16.99/9.30 new_compare9(Pos(Zero), Neg(Zero)) 16.99/9.30 new_compare9(Neg(Zero), Pos(Zero)) 16.99/9.30 new_merge00(x0, x1, x2, x3, EQ, x4) 16.99/9.30 new_compare13(x0, x1, x2) 16.99/9.30 new_compare9(Neg(Zero), Neg(Zero)) 16.99/9.30 new_compare14(x0, x1, ty_Bool) 16.99/9.30 new_compare8(x0, x1) 16.99/9.30 new_compare14(x0, x1, app(ty_Ratio, x2)) 16.99/9.30 new_compare12(x0, x1) 16.99/9.30 new_compare(x0, x1, app(app(ty_Either, x2), x3)) 16.99/9.30 new_merge_pairs0([], x0) 16.99/9.30 new_compare14(x0, x1, app(app(ty_@2, x2), x3)) 16.99/9.30 new_compare0(x0, x1, x2) 16.99/9.30 new_compare14(x0, x1, app(ty_Maybe, x2)) 16.99/9.30 new_compare14(x0, x1, ty_Float) 16.99/9.30 16.99/9.30 We have to consider all minimal (P,Q,R)-chains. 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (26) QDPSizeChangeProof (EQUIVALENT) 16.99/9.30 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 16.99/9.30 16.99/9.30 Order:Polynomial interpretation [POLO]: 16.99/9.30 16.99/9.30 POL(:(x_1, x_2)) = 1 + x_2 16.99/9.30 POL(EQ) = 0 16.99/9.30 POL(GT) = 1 16.99/9.30 POL(LT) = 0 16.99/9.30 POL(Succ(x_1)) = 1 + x_1 16.99/9.30 POL(Zero) = 1 16.99/9.30 POL([]) = 0 16.99/9.30 POL(new_merge2(x_1, x_2, x_3)) = x_1 16.99/9.30 POL(new_merge_pairs0(x_1, x_2)) = x_1 16.99/9.30 POL(new_primCmpNat0(x_1, x_2)) = 1 + x_1 + x_2 16.99/9.30 POL(new_primCmpNat1(x_1, x_2)) = 1 16.99/9.30 POL(new_primCmpNat2(x_1, x_2)) = 1 + x_1 + x_2 16.99/9.30 16.99/9.30 16.99/9.30 16.99/9.30 16.99/9.30 From the DPs we obtained the following set of size-change graphs: 16.99/9.30 *new_mergesort'(vz117, :(vz1180, :(vz11810, vz11811)), ba) -> new_mergesort'(new_merge1(vz117, vz1180, vz11810, ba), new_merge_pairs0(vz11811, ba), ba) (allowed arguments on rhs = {2, 3}) 16.99/9.30 The graph contains the following edges 2 > 2, 3 >= 3 16.99/9.30 16.99/9.30 16.99/9.30 16.99/9.30 We oriented the following set of usable rules [AAECC05,FROCOS05]. 16.99/9.30 16.99/9.30 new_merge_pairs0([], ba) -> [] 16.99/9.30 new_merge_pairs0(:(vz118110, []), ba) -> :(vz118110, []) 16.99/9.30 new_merge_pairs0(:(vz118110, :(vz1181110, vz1181111)), ba) -> :(new_merge2(vz118110, vz1181110, ba), new_merge_pairs0(vz1181111, ba)) 16.99/9.30 16.99/9.30 ---------------------------------------- 16.99/9.30 16.99/9.30 (27) 16.99/9.30 YES 17.31/9.34 EOF