19.70/10.16 YES 21.99/10.76 proof of /export/starexec/sandbox/benchmark/theBenchmark.hs 21.99/10.76 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 21.99/10.76 21.99/10.76 21.99/10.76 H-Termination with start terms of the given HASKELL could be proven: 21.99/10.76 21.99/10.76 (0) HASKELL 21.99/10.76 (1) CR [EQUIVALENT, 0 ms] 21.99/10.76 (2) HASKELL 21.99/10.76 (3) BR [EQUIVALENT, 0 ms] 21.99/10.76 (4) HASKELL 21.99/10.76 (5) COR [EQUIVALENT, 10 ms] 21.99/10.76 (6) HASKELL 21.99/10.76 (7) Narrow [SOUND, 0 ms] 21.99/10.76 (8) AND 21.99/10.76 (9) QDP 21.99/10.76 (10) QDPSizeChangeProof [EQUIVALENT, 0 ms] 21.99/10.76 (11) YES 21.99/10.76 (12) QDP 21.99/10.76 (13) QDPOrderProof [EQUIVALENT, 104 ms] 21.99/10.76 (14) QDP 21.99/10.76 (15) DependencyGraphProof [EQUIVALENT, 0 ms] 21.99/10.76 (16) TRUE 21.99/10.76 (17) QDP 21.99/10.76 (18) DependencyGraphProof [EQUIVALENT, 0 ms] 21.99/10.76 (19) QDP 21.99/10.76 (20) QDPSizeChangeProof [EQUIVALENT, 13 ms] 21.99/10.76 (21) YES 21.99/10.76 (22) QDP 21.99/10.76 (23) QDPSizeChangeProof [EQUIVALENT, 0 ms] 21.99/10.76 (24) YES 21.99/10.76 (25) QDP 21.99/10.76 (26) QDPSizeChangeProof [EQUIVALENT, 0 ms] 21.99/10.76 (27) YES 21.99/10.76 (28) QDP 21.99/10.76 (29) QDPSizeChangeProof [EQUIVALENT, 0 ms] 21.99/10.76 (30) YES 21.99/10.76 (31) QDP 21.99/10.76 (32) QDPSizeChangeProof [EQUIVALENT, 0 ms] 21.99/10.76 (33) YES 21.99/10.76 21.99/10.76 21.99/10.76 ---------------------------------------- 21.99/10.76 21.99/10.76 (0) 21.99/10.76 Obligation: 21.99/10.76 mainModule Main 21.99/10.76 module Maybe where { 21.99/10.76 import qualified List; 21.99/10.76 import qualified Main; 21.99/10.76 import qualified Prelude; 21.99/10.76 } 21.99/10.76 module List where { 21.99/10.76 import qualified Main; 21.99/10.76 import qualified Maybe; 21.99/10.76 import qualified Prelude; 21.99/10.76 merge :: (a -> a -> Ordering) -> [a] -> [a] -> [a]; 21.99/10.76 merge cmp xs [] = xs; 21.99/10.76 merge cmp [] ys = ys; 21.99/10.76 merge cmp (x : xs) (y : ys) = case x `cmp` y of { 21.99/10.76 GT-> y : merge cmp (x : xs) ys; 21.99/10.76 _-> x : merge cmp xs (y : ys); 21.99/10.76 } ; 21.99/10.76 21.99/10.76 merge_pairs :: (a -> a -> Ordering) -> [[a]] -> [[a]]; 21.99/10.76 merge_pairs cmp [] = []; 21.99/10.76 merge_pairs cmp (xs : []) = xs : []; 21.99/10.76 merge_pairs cmp (xs : ys : xss) = merge cmp xs ys : merge_pairs cmp xss; 21.99/10.76 21.99/10.76 mergesort :: (a -> a -> Ordering) -> [a] -> [a]; 21.99/10.76 mergesort cmp = mergesort' cmp . map wrap; 21.99/10.76 21.99/10.76 mergesort' :: (a -> a -> Ordering) -> [[a]] -> [a]; 21.99/10.76 mergesort' cmp [] = []; 21.99/10.76 mergesort' cmp (xs : []) = xs; 21.99/10.76 mergesort' cmp xss = mergesort' cmp (merge_pairs cmp xss); 21.99/10.76 21.99/10.76 sort :: Ord a => [a] -> [a]; 21.99/10.76 sort l = mergesort compare l; 21.99/10.76 21.99/10.76 wrap :: a -> [a]; 21.99/10.76 wrap x = x : []; 21.99/10.76 21.99/10.76 } 21.99/10.76 module Main where { 21.99/10.76 import qualified List; 21.99/10.76 import qualified Maybe; 21.99/10.76 import qualified Prelude; 21.99/10.76 } 21.99/10.76 21.99/10.76 ---------------------------------------- 21.99/10.76 21.99/10.76 (1) CR (EQUIVALENT) 21.99/10.76 Case Reductions: 21.99/10.76 The following Case expression 21.99/10.76 "case cmp x y of { 21.99/10.76 GT -> y : merge cmp (x : xs) ys; 21.99/10.76 _ -> x : merge cmp xs (y : ys)} 21.99/10.76 " 21.99/10.76 is transformed to 21.99/10.76 "merge0 y cmp x xs ys GT = y : merge cmp (x : xs) ys; 21.99/10.76 merge0 y cmp x xs ys _ = x : merge cmp xs (y : ys); 21.99/10.76 " 21.99/10.76 21.99/10.76 ---------------------------------------- 21.99/10.76 21.99/10.76 (2) 21.99/10.76 Obligation: 21.99/10.76 mainModule Main 21.99/10.76 module Maybe where { 21.99/10.76 import qualified List; 21.99/10.76 import qualified Main; 21.99/10.76 import qualified Prelude; 21.99/10.76 } 21.99/10.76 module List where { 21.99/10.76 import qualified Main; 21.99/10.76 import qualified Maybe; 21.99/10.76 import qualified Prelude; 21.99/10.76 merge :: (a -> a -> Ordering) -> [a] -> [a] -> [a]; 21.99/10.76 merge cmp xs [] = xs; 21.99/10.76 merge cmp [] ys = ys; 21.99/10.76 merge cmp (x : xs) (y : ys) = merge0 y cmp x xs ys (x `cmp` y); 21.99/10.76 21.99/10.76 merge0 y cmp x xs ys GT = y : merge cmp (x : xs) ys; 21.99/10.76 merge0 y cmp x xs ys _ = x : merge cmp xs (y : ys); 21.99/10.76 21.99/10.76 merge_pairs :: (a -> a -> Ordering) -> [[a]] -> [[a]]; 21.99/10.76 merge_pairs cmp [] = []; 21.99/10.76 merge_pairs cmp (xs : []) = xs : []; 21.99/10.76 merge_pairs cmp (xs : ys : xss) = merge cmp xs ys : merge_pairs cmp xss; 21.99/10.76 21.99/10.76 mergesort :: (a -> a -> Ordering) -> [a] -> [a]; 21.99/10.76 mergesort cmp = mergesort' cmp . map wrap; 21.99/10.76 21.99/10.76 mergesort' :: (a -> a -> Ordering) -> [[a]] -> [a]; 21.99/10.76 mergesort' cmp [] = []; 21.99/10.76 mergesort' cmp (xs : []) = xs; 21.99/10.76 mergesort' cmp xss = mergesort' cmp (merge_pairs cmp xss); 21.99/10.76 21.99/10.76 sort :: Ord a => [a] -> [a]; 21.99/10.76 sort l = mergesort compare l; 21.99/10.76 21.99/10.76 wrap :: a -> [a]; 21.99/10.76 wrap x = x : []; 21.99/10.76 21.99/10.76 } 21.99/10.76 module Main where { 21.99/10.76 import qualified List; 21.99/10.76 import qualified Maybe; 21.99/10.76 import qualified Prelude; 21.99/10.76 } 21.99/10.76 21.99/10.76 ---------------------------------------- 21.99/10.76 21.99/10.76 (3) BR (EQUIVALENT) 21.99/10.76 Replaced joker patterns by fresh variables and removed binding patterns. 21.99/10.76 ---------------------------------------- 21.99/10.76 21.99/10.76 (4) 21.99/10.76 Obligation: 21.99/10.76 mainModule Main 21.99/10.76 module Maybe where { 21.99/10.76 import qualified List; 21.99/10.76 import qualified Main; 21.99/10.76 import qualified Prelude; 21.99/10.76 } 21.99/10.76 module List where { 21.99/10.76 import qualified Main; 21.99/10.76 import qualified Maybe; 21.99/10.76 import qualified Prelude; 21.99/10.76 merge :: (a -> a -> Ordering) -> [a] -> [a] -> [a]; 21.99/10.76 merge cmp xs [] = xs; 21.99/10.76 merge cmp [] ys = ys; 21.99/10.76 merge cmp (x : xs) (y : ys) = merge0 y cmp x xs ys (x `cmp` y); 21.99/10.76 21.99/10.76 merge0 y cmp x xs ys GT = y : merge cmp (x : xs) ys; 21.99/10.76 merge0 y cmp x xs ys vy = x : merge cmp xs (y : ys); 21.99/10.76 21.99/10.76 merge_pairs :: (a -> a -> Ordering) -> [[a]] -> [[a]]; 21.99/10.76 merge_pairs cmp [] = []; 21.99/10.76 merge_pairs cmp (xs : []) = xs : []; 21.99/10.76 merge_pairs cmp (xs : ys : xss) = merge cmp xs ys : merge_pairs cmp xss; 21.99/10.76 21.99/10.76 mergesort :: (a -> a -> Ordering) -> [a] -> [a]; 21.99/10.76 mergesort cmp = mergesort' cmp . map wrap; 21.99/10.76 21.99/10.76 mergesort' :: (a -> a -> Ordering) -> [[a]] -> [a]; 21.99/10.76 mergesort' cmp [] = []; 21.99/10.76 mergesort' cmp (xs : []) = xs; 21.99/10.76 mergesort' cmp xss = mergesort' cmp (merge_pairs cmp xss); 21.99/10.76 21.99/10.76 sort :: Ord a => [a] -> [a]; 21.99/10.76 sort l = mergesort compare l; 21.99/10.76 21.99/10.76 wrap :: a -> [a]; 21.99/10.76 wrap x = x : []; 21.99/10.76 21.99/10.76 } 21.99/10.76 module Main where { 21.99/10.76 import qualified List; 21.99/10.76 import qualified Maybe; 21.99/10.76 import qualified Prelude; 21.99/10.76 } 21.99/10.76 21.99/10.76 ---------------------------------------- 21.99/10.76 21.99/10.76 (5) COR (EQUIVALENT) 21.99/10.76 Cond Reductions: 21.99/10.76 The following Function with conditions 21.99/10.76 "undefined |Falseundefined; 21.99/10.76 " 21.99/10.76 is transformed to 21.99/10.76 "undefined = undefined1; 21.99/10.76 " 21.99/10.76 "undefined0 True = undefined; 21.99/10.76 " 21.99/10.76 "undefined1 = undefined0 False; 21.99/10.76 " 21.99/10.76 21.99/10.76 ---------------------------------------- 21.99/10.76 21.99/10.76 (6) 21.99/10.76 Obligation: 21.99/10.76 mainModule Main 21.99/10.76 module Maybe where { 21.99/10.76 import qualified List; 21.99/10.76 import qualified Main; 21.99/10.76 import qualified Prelude; 21.99/10.76 } 21.99/10.76 module List where { 21.99/10.76 import qualified Main; 21.99/10.76 import qualified Maybe; 21.99/10.76 import qualified Prelude; 21.99/10.76 merge :: (a -> a -> Ordering) -> [a] -> [a] -> [a]; 21.99/10.76 merge cmp xs [] = xs; 21.99/10.76 merge cmp [] ys = ys; 21.99/10.76 merge cmp (x : xs) (y : ys) = merge0 y cmp x xs ys (x `cmp` y); 21.99/10.76 21.99/10.76 merge0 y cmp x xs ys GT = y : merge cmp (x : xs) ys; 21.99/10.76 merge0 y cmp x xs ys vy = x : merge cmp xs (y : ys); 21.99/10.76 21.99/10.76 merge_pairs :: (a -> a -> Ordering) -> [[a]] -> [[a]]; 21.99/10.76 merge_pairs cmp [] = []; 21.99/10.76 merge_pairs cmp (xs : []) = xs : []; 21.99/10.76 merge_pairs cmp (xs : ys : xss) = merge cmp xs ys : merge_pairs cmp xss; 21.99/10.76 21.99/10.76 mergesort :: (a -> a -> Ordering) -> [a] -> [a]; 21.99/10.76 mergesort cmp = mergesort' cmp . map wrap; 21.99/10.76 21.99/10.76 mergesort' :: (a -> a -> Ordering) -> [[a]] -> [a]; 21.99/10.76 mergesort' cmp [] = []; 21.99/10.76 mergesort' cmp (xs : []) = xs; 21.99/10.76 mergesort' cmp xss = mergesort' cmp (merge_pairs cmp xss); 21.99/10.76 21.99/10.76 sort :: Ord a => [a] -> [a]; 21.99/10.76 sort l = mergesort compare l; 21.99/10.76 21.99/10.76 wrap :: a -> [a]; 21.99/10.76 wrap x = x : []; 21.99/10.76 21.99/10.76 } 21.99/10.76 module Main where { 21.99/10.76 import qualified List; 21.99/10.76 import qualified Maybe; 21.99/10.76 import qualified Prelude; 21.99/10.76 } 21.99/10.76 21.99/10.76 ---------------------------------------- 21.99/10.76 21.99/10.76 (7) Narrow (SOUND) 21.99/10.76 Haskell To QDPs 21.99/10.76 21.99/10.76 digraph dp_graph { 21.99/10.76 node [outthreshold=100, inthreshold=100];1[label="List.sort",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 21.99/10.76 3[label="List.sort vz3",fontsize=16,color="black",shape="triangle"];3 -> 4[label="",style="solid", color="black", weight=3]; 21.99/10.76 4[label="List.mergesort compare vz3",fontsize=16,color="black",shape="box"];4 -> 5[label="",style="solid", color="black", weight=3]; 21.99/10.76 5[label="(List.mergesort' compare) . map List.wrap",fontsize=16,color="black",shape="box"];5 -> 6[label="",style="solid", color="black", weight=3]; 21.99/10.76 6[label="List.mergesort' compare (map List.wrap vz3)",fontsize=16,color="burlywood",shape="box"];16080[label="vz3/vz30 : vz31",fontsize=10,color="white",style="solid",shape="box"];6 -> 16080[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16080 -> 7[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16081[label="vz3/[]",fontsize=10,color="white",style="solid",shape="box"];6 -> 16081[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16081 -> 8[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 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]; 21.99/10.76 8[label="List.mergesort' compare (map List.wrap [])",fontsize=16,color="black",shape="box"];8 -> 10[label="",style="solid", color="black", weight=3]; 21.99/10.76 9[label="List.mergesort' compare (List.wrap vz30 : map List.wrap vz31)",fontsize=16,color="burlywood",shape="box"];16082[label="vz31/vz310 : vz311",fontsize=10,color="white",style="solid",shape="box"];9 -> 16082[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16082 -> 11[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16083[label="vz31/[]",fontsize=10,color="white",style="solid",shape="box"];9 -> 16083[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16083 -> 12[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 10[label="List.mergesort' compare []",fontsize=16,color="black",shape="box"];10 -> 13[label="",style="solid", color="black", weight=3]; 21.99/10.76 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]; 21.99/10.76 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]; 21.99/10.76 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]; 21.99/10.76 15[label="List.mergesort' compare (List.wrap vz30 : [])",fontsize=16,color="black",shape="box"];15 -> 17[label="",style="solid", color="black", weight=3]; 21.99/10.76 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]; 21.99/10.76 17[label="List.wrap vz30",fontsize=16,color="black",shape="triangle"];17 -> 19[label="",style="solid", color="black", weight=3]; 21.99/10.76 18 -> 15606[label="",style="dashed", color="red", weight=0]; 21.99/10.76 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 -> 15607[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 18 -> 15608[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 19[label="vz30 : []",fontsize=16,color="green",shape="box"];15607 -> 15761[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15607[label="List.merge compare (List.wrap vz30) (List.wrap vz310)",fontsize=16,color="magenta"];15607 -> 15762[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15607 -> 15763[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15608[label="map List.wrap vz311",fontsize=16,color="burlywood",shape="triangle"];16084[label="vz311/vz3110 : vz3111",fontsize=10,color="white",style="solid",shape="box"];15608 -> 16084[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16084 -> 15764[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16085[label="vz311/[]",fontsize=10,color="white",style="solid",shape="box"];15608 -> 16085[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16085 -> 15765[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15606[label="List.mergesort' compare (vz501 : List.merge_pairs compare vz502)",fontsize=16,color="burlywood",shape="triangle"];16086[label="vz502/vz5020 : vz5021",fontsize=10,color="white",style="solid",shape="box"];15606 -> 16086[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16086 -> 15766[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16087[label="vz502/[]",fontsize=10,color="white",style="solid",shape="box"];15606 -> 16087[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16087 -> 15767[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15762 -> 17[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15762[label="List.wrap vz30",fontsize=16,color="magenta"];15763 -> 17[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15763[label="List.wrap vz310",fontsize=16,color="magenta"];15763 -> 15768[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15761[label="List.merge compare vz504 vz503",fontsize=16,color="burlywood",shape="triangle"];16088[label="vz503/vz5030 : vz5031",fontsize=10,color="white",style="solid",shape="box"];15761 -> 16088[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16088 -> 15769[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16089[label="vz503/[]",fontsize=10,color="white",style="solid",shape="box"];15761 -> 16089[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16089 -> 15770[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15764[label="map List.wrap (vz3110 : vz3111)",fontsize=16,color="black",shape="box"];15764 -> 15771[label="",style="solid", color="black", weight=3]; 21.99/10.76 15765[label="map List.wrap []",fontsize=16,color="black",shape="box"];15765 -> 15772[label="",style="solid", color="black", weight=3]; 21.99/10.76 15766[label="List.mergesort' compare (vz501 : List.merge_pairs compare (vz5020 : vz5021))",fontsize=16,color="burlywood",shape="box"];16090[label="vz5021/vz50210 : vz50211",fontsize=10,color="white",style="solid",shape="box"];15766 -> 16090[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16090 -> 15773[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16091[label="vz5021/[]",fontsize=10,color="white",style="solid",shape="box"];15766 -> 16091[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16091 -> 15774[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15767[label="List.mergesort' compare (vz501 : List.merge_pairs compare [])",fontsize=16,color="black",shape="box"];15767 -> 15775[label="",style="solid", color="black", weight=3]; 21.99/10.76 15768[label="vz310",fontsize=16,color="green",shape="box"];15769[label="List.merge compare vz504 (vz5030 : vz5031)",fontsize=16,color="burlywood",shape="box"];16092[label="vz504/vz5040 : vz5041",fontsize=10,color="white",style="solid",shape="box"];15769 -> 16092[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16092 -> 15776[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16093[label="vz504/[]",fontsize=10,color="white",style="solid",shape="box"];15769 -> 16093[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16093 -> 15777[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15770[label="List.merge compare vz504 []",fontsize=16,color="black",shape="box"];15770 -> 15778[label="",style="solid", color="black", weight=3]; 21.99/10.76 15771[label="List.wrap vz3110 : map List.wrap vz3111",fontsize=16,color="green",shape="box"];15771 -> 15779[label="",style="dashed", color="green", weight=3]; 21.99/10.76 15771 -> 15780[label="",style="dashed", color="green", weight=3]; 21.99/10.76 15772[label="[]",fontsize=16,color="green",shape="box"];15773[label="List.mergesort' compare (vz501 : List.merge_pairs compare (vz5020 : vz50210 : vz50211))",fontsize=16,color="black",shape="box"];15773 -> 15781[label="",style="solid", color="black", weight=3]; 21.99/10.76 15774[label="List.mergesort' compare (vz501 : List.merge_pairs compare (vz5020 : []))",fontsize=16,color="black",shape="box"];15774 -> 15782[label="",style="solid", color="black", weight=3]; 21.99/10.76 15775[label="List.mergesort' compare (vz501 : [])",fontsize=16,color="black",shape="box"];15775 -> 15783[label="",style="solid", color="black", weight=3]; 21.99/10.76 15776[label="List.merge compare (vz5040 : vz5041) (vz5030 : vz5031)",fontsize=16,color="black",shape="box"];15776 -> 15784[label="",style="solid", color="black", weight=3]; 21.99/10.76 15777[label="List.merge compare [] (vz5030 : vz5031)",fontsize=16,color="black",shape="box"];15777 -> 15785[label="",style="solid", color="black", weight=3]; 21.99/10.76 15778[label="vz504",fontsize=16,color="green",shape="box"];15779 -> 17[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15779[label="List.wrap vz3110",fontsize=16,color="magenta"];15779 -> 15786[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15780 -> 15608[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15780[label="map List.wrap vz3111",fontsize=16,color="magenta"];15780 -> 15787[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15781[label="List.mergesort' compare (vz501 : List.merge compare vz5020 vz50210 : List.merge_pairs compare vz50211)",fontsize=16,color="black",shape="box"];15781 -> 15788[label="",style="solid", color="black", weight=3]; 21.99/10.76 15782[label="List.mergesort' compare (vz501 : vz5020 : [])",fontsize=16,color="black",shape="box"];15782 -> 15789[label="",style="solid", color="black", weight=3]; 21.99/10.76 15783[label="vz501",fontsize=16,color="green",shape="box"];15784 -> 15828[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15784[label="List.merge0 vz5030 compare vz5040 vz5041 vz5031 (compare vz5040 vz5030)",fontsize=16,color="magenta"];15784 -> 15829[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15784 -> 15830[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15784 -> 15831[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15784 -> 15832[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15784 -> 15833[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15785[label="vz5030 : vz5031",fontsize=16,color="green",shape="box"];15786[label="vz3110",fontsize=16,color="green",shape="box"];15787[label="vz3111",fontsize=16,color="green",shape="box"];15788[label="List.mergesort' compare (List.merge_pairs compare (vz501 : List.merge compare vz5020 vz50210 : List.merge_pairs compare vz50211))",fontsize=16,color="black",shape="box"];15788 -> 15791[label="",style="solid", color="black", weight=3]; 21.99/10.76 15789[label="List.mergesort' compare (List.merge_pairs compare (vz501 : vz5020 : []))",fontsize=16,color="black",shape="box"];15789 -> 15792[label="",style="solid", color="black", weight=3]; 21.99/10.76 15829[label="vz5040",fontsize=16,color="green",shape="box"];15830[label="vz5041",fontsize=16,color="green",shape="box"];15831[label="compare vz5040 vz5030",fontsize=16,color="burlywood",shape="box"];16094[label="vz5040/vz50400 :% vz50401",fontsize=10,color="white",style="solid",shape="box"];15831 -> 16094[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16094 -> 15859[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15832[label="vz5030",fontsize=16,color="green",shape="box"];15833[label="vz5031",fontsize=16,color="green",shape="box"];15828[label="List.merge0 vz511 compare vz512 vz513 vz514 vz515",fontsize=16,color="burlywood",shape="triangle"];16095[label="vz515/LT",fontsize=10,color="white",style="solid",shape="box"];15828 -> 16095[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16095 -> 15860[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16096[label="vz515/EQ",fontsize=10,color="white",style="solid",shape="box"];15828 -> 16096[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16096 -> 15861[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16097[label="vz515/GT",fontsize=10,color="white",style="solid",shape="box"];15828 -> 16097[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16097 -> 15862[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15791 -> 15606[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15791[label="List.mergesort' compare (List.merge compare vz501 (List.merge compare vz5020 vz50210) : List.merge_pairs compare (List.merge_pairs compare vz50211))",fontsize=16,color="magenta"];15791 -> 15794[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15791 -> 15795[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15792 -> 15606[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15792[label="List.mergesort' compare (List.merge compare vz501 vz5020 : List.merge_pairs compare [])",fontsize=16,color="magenta"];15792 -> 15796[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15792 -> 15797[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15859[label="compare (vz50400 :% vz50401) vz5030",fontsize=16,color="burlywood",shape="box"];16098[label="vz5030/vz50300 :% vz50301",fontsize=10,color="white",style="solid",shape="box"];15859 -> 16098[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16098 -> 15894[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15860[label="List.merge0 vz511 compare vz512 vz513 vz514 LT",fontsize=16,color="black",shape="box"];15860 -> 15895[label="",style="solid", color="black", weight=3]; 21.99/10.76 15861[label="List.merge0 vz511 compare vz512 vz513 vz514 EQ",fontsize=16,color="black",shape="box"];15861 -> 15896[label="",style="solid", color="black", weight=3]; 21.99/10.76 15862[label="List.merge0 vz511 compare vz512 vz513 vz514 GT",fontsize=16,color="black",shape="box"];15862 -> 15897[label="",style="solid", color="black", weight=3]; 21.99/10.76 15794[label="List.merge compare vz501 (List.merge compare vz5020 vz50210)",fontsize=16,color="burlywood",shape="box"];16099[label="vz50210/vz502100 : vz502101",fontsize=10,color="white",style="solid",shape="box"];15794 -> 16099[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16099 -> 15799[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16100[label="vz50210/[]",fontsize=10,color="white",style="solid",shape="box"];15794 -> 16100[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16100 -> 15800[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15795[label="List.merge_pairs compare vz50211",fontsize=16,color="burlywood",shape="triangle"];16101[label="vz50211/vz502110 : vz502111",fontsize=10,color="white",style="solid",shape="box"];15795 -> 16101[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16101 -> 15801[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16102[label="vz50211/[]",fontsize=10,color="white",style="solid",shape="box"];15795 -> 16102[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16102 -> 15802[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15796[label="List.merge compare vz501 vz5020",fontsize=16,color="burlywood",shape="triangle"];16103[label="vz5020/vz50200 : vz50201",fontsize=10,color="white",style="solid",shape="box"];15796 -> 16103[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16103 -> 15803[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16104[label="vz5020/[]",fontsize=10,color="white",style="solid",shape="box"];15796 -> 16104[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16104 -> 15804[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15797[label="[]",fontsize=16,color="green",shape="box"];15894[label="compare (vz50400 :% vz50401) (vz50300 :% vz50301)",fontsize=16,color="black",shape="box"];15894 -> 15940[label="",style="solid", color="black", weight=3]; 21.99/10.76 15895[label="vz512 : List.merge compare vz513 (vz511 : vz514)",fontsize=16,color="green",shape="box"];15895 -> 15941[label="",style="dashed", color="green", weight=3]; 21.99/10.76 15896[label="vz512 : List.merge compare vz513 (vz511 : vz514)",fontsize=16,color="green",shape="box"];15896 -> 15942[label="",style="dashed", color="green", weight=3]; 21.99/10.76 15897[label="vz511 : List.merge compare (vz512 : vz513) vz514",fontsize=16,color="green",shape="box"];15897 -> 15943[label="",style="dashed", color="green", weight=3]; 21.99/10.76 15799[label="List.merge compare vz501 (List.merge compare vz5020 (vz502100 : vz502101))",fontsize=16,color="burlywood",shape="box"];16105[label="vz5020/vz50200 : vz50201",fontsize=10,color="white",style="solid",shape="box"];15799 -> 16105[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16105 -> 15806[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16106[label="vz5020/[]",fontsize=10,color="white",style="solid",shape="box"];15799 -> 16106[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16106 -> 15807[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15800[label="List.merge compare vz501 (List.merge compare vz5020 [])",fontsize=16,color="black",shape="box"];15800 -> 15808[label="",style="solid", color="black", weight=3]; 21.99/10.76 15801[label="List.merge_pairs compare (vz502110 : vz502111)",fontsize=16,color="burlywood",shape="box"];16107[label="vz502111/vz5021110 : vz5021111",fontsize=10,color="white",style="solid",shape="box"];15801 -> 16107[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16107 -> 15809[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16108[label="vz502111/[]",fontsize=10,color="white",style="solid",shape="box"];15801 -> 16108[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16108 -> 15810[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15802[label="List.merge_pairs compare []",fontsize=16,color="black",shape="box"];15802 -> 15811[label="",style="solid", color="black", weight=3]; 21.99/10.76 15803[label="List.merge compare vz501 (vz50200 : vz50201)",fontsize=16,color="burlywood",shape="box"];16109[label="vz501/vz5010 : vz5011",fontsize=10,color="white",style="solid",shape="box"];15803 -> 16109[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16109 -> 15812[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16110[label="vz501/[]",fontsize=10,color="white",style="solid",shape="box"];15803 -> 16110[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16110 -> 15813[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15804[label="List.merge compare vz501 []",fontsize=16,color="black",shape="box"];15804 -> 15814[label="",style="solid", color="black", weight=3]; 21.99/10.76 15940 -> 15876[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15940[label="compare (vz50400 * vz50301) (vz50300 * vz50401)",fontsize=16,color="magenta"];15940 -> 15947[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15940 -> 15948[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15941 -> 15796[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15941[label="List.merge compare vz513 (vz511 : vz514)",fontsize=16,color="magenta"];15941 -> 15949[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15941 -> 15950[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15942 -> 15796[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15942[label="List.merge compare vz513 (vz511 : vz514)",fontsize=16,color="magenta"];15942 -> 15951[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15942 -> 15952[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15943 -> 15796[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15943[label="List.merge compare (vz512 : vz513) vz514",fontsize=16,color="magenta"];15943 -> 15953[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15943 -> 15954[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15806[label="List.merge compare vz501 (List.merge compare (vz50200 : vz50201) (vz502100 : vz502101))",fontsize=16,color="black",shape="box"];15806 -> 15816[label="",style="solid", color="black", weight=3]; 21.99/10.76 15807[label="List.merge compare vz501 (List.merge compare [] (vz502100 : vz502101))",fontsize=16,color="black",shape="box"];15807 -> 15817[label="",style="solid", color="black", weight=3]; 21.99/10.76 15808 -> 15796[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15808[label="List.merge compare vz501 vz5020",fontsize=16,color="magenta"];15809[label="List.merge_pairs compare (vz502110 : vz5021110 : vz5021111)",fontsize=16,color="black",shape="box"];15809 -> 15818[label="",style="solid", color="black", weight=3]; 21.99/10.76 15810[label="List.merge_pairs compare (vz502110 : [])",fontsize=16,color="black",shape="box"];15810 -> 15819[label="",style="solid", color="black", weight=3]; 21.99/10.76 15811[label="[]",fontsize=16,color="green",shape="box"];15812[label="List.merge compare (vz5010 : vz5011) (vz50200 : vz50201)",fontsize=16,color="black",shape="box"];15812 -> 15820[label="",style="solid", color="black", weight=3]; 21.99/10.76 15813[label="List.merge compare [] (vz50200 : vz50201)",fontsize=16,color="black",shape="box"];15813 -> 15821[label="",style="solid", color="black", weight=3]; 21.99/10.76 15814[label="vz501",fontsize=16,color="green",shape="box"];15947[label="vz50300 * vz50401",fontsize=16,color="black",shape="triangle"];15947 -> 15960[label="",style="solid", color="black", weight=3]; 21.99/10.76 15948 -> 15947[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15948[label="vz50400 * vz50301",fontsize=16,color="magenta"];15948 -> 15961[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15948 -> 15962[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15876[label="compare vz5010 vz50200",fontsize=16,color="black",shape="triangle"];15876 -> 15908[label="",style="solid", color="black", weight=3]; 21.99/10.76 15949[label="vz513",fontsize=16,color="green",shape="box"];15950[label="vz511 : vz514",fontsize=16,color="green",shape="box"];15951[label="vz513",fontsize=16,color="green",shape="box"];15952[label="vz511 : vz514",fontsize=16,color="green",shape="box"];15953[label="vz512 : vz513",fontsize=16,color="green",shape="box"];15954[label="vz514",fontsize=16,color="green",shape="box"];15816 -> 15796[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15816[label="List.merge compare vz501 (List.merge0 vz502100 compare vz50200 vz50201 vz502101 (compare vz50200 vz502100))",fontsize=16,color="magenta"];15816 -> 15824[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15817 -> 15796[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15817[label="List.merge compare vz501 (vz502100 : vz502101)",fontsize=16,color="magenta"];15817 -> 15825[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15818[label="List.merge compare vz502110 vz5021110 : List.merge_pairs compare vz5021111",fontsize=16,color="green",shape="box"];15818 -> 15826[label="",style="dashed", color="green", weight=3]; 21.99/10.76 15818 -> 15827[label="",style="dashed", color="green", weight=3]; 21.99/10.76 15819[label="vz502110 : []",fontsize=16,color="green",shape="box"];15820 -> 15828[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15820[label="List.merge0 vz50200 compare vz5010 vz5011 vz50201 (compare vz5010 vz50200)",fontsize=16,color="magenta"];15820 -> 15849[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15820 -> 15850[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15820 -> 15851[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15820 -> 15852[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15820 -> 15853[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15821[label="vz50200 : vz50201",fontsize=16,color="green",shape="box"];15960[label="primMulInt vz50300 vz50401",fontsize=16,color="burlywood",shape="box"];16111[label="vz50300/Pos vz503000",fontsize=10,color="white",style="solid",shape="box"];15960 -> 16111[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16111 -> 15973[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16112[label="vz50300/Neg vz503000",fontsize=10,color="white",style="solid",shape="box"];15960 -> 16112[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16112 -> 15974[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15961[label="vz50400",fontsize=16,color="green",shape="box"];15962[label="vz50301",fontsize=16,color="green",shape="box"];15908[label="primCmpInt vz5010 vz50200",fontsize=16,color="burlywood",shape="box"];16113[label="vz5010/Pos vz50100",fontsize=10,color="white",style="solid",shape="box"];15908 -> 16113[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16113 -> 15945[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16114[label="vz5010/Neg vz50100",fontsize=10,color="white",style="solid",shape="box"];15908 -> 16114[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16114 -> 15946[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15824 -> 15828[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15824[label="List.merge0 vz502100 compare vz50200 vz50201 vz502101 (compare vz50200 vz502100)",fontsize=16,color="magenta"];15824 -> 15854[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15824 -> 15855[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15824 -> 15856[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15824 -> 15857[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15824 -> 15858[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15825[label="vz502100 : vz502101",fontsize=16,color="green",shape="box"];15826 -> 15796[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15826[label="List.merge compare vz502110 vz5021110",fontsize=16,color="magenta"];15826 -> 15863[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15826 -> 15864[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15827 -> 15795[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15827[label="List.merge_pairs compare vz5021111",fontsize=16,color="magenta"];15827 -> 15865[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15849[label="vz5010",fontsize=16,color="green",shape="box"];15850[label="vz5011",fontsize=16,color="green",shape="box"];15851[label="compare vz5010 vz50200",fontsize=16,color="blue",shape="box"];16115[label="compare :: ((@3) a b c) -> ((@3) a b c) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15851 -> 16115[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16115 -> 15866[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16116[label="compare :: ([] a) -> ([] a) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15851 -> 16116[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16116 -> 15867[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16117[label="compare :: Integer -> Integer -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15851 -> 16117[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16117 -> 15868[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16118[label="compare :: Char -> Char -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15851 -> 16118[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16118 -> 15869[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16119[label="compare :: Ordering -> Ordering -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15851 -> 16119[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16119 -> 15870[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16120[label="compare :: Double -> Double -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15851 -> 16120[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16120 -> 15871[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16121[label="compare :: (Ratio a) -> (Ratio a) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15851 -> 16121[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16121 -> 15872[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16122[label="compare :: ((@2) a b) -> ((@2) a b) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15851 -> 16122[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16122 -> 15873[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16123[label="compare :: (Maybe a) -> (Maybe a) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15851 -> 16123[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16123 -> 15874[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16124[label="compare :: () -> () -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15851 -> 16124[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16124 -> 15875[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16125[label="compare :: Int -> Int -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15851 -> 16125[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16125 -> 15876[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16126[label="compare :: Bool -> Bool -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15851 -> 16126[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16126 -> 15877[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16127[label="compare :: (Either a b) -> (Either a b) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15851 -> 16127[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16127 -> 15878[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16128[label="compare :: Float -> Float -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15851 -> 16128[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16128 -> 15879[label="",style="solid", color="blue", weight=3]; 21.99/10.76 15852[label="vz50200",fontsize=16,color="green",shape="box"];15853[label="vz50201",fontsize=16,color="green",shape="box"];15973[label="primMulInt (Pos vz503000) vz50401",fontsize=16,color="burlywood",shape="box"];16129[label="vz50401/Pos vz504010",fontsize=10,color="white",style="solid",shape="box"];15973 -> 16129[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16129 -> 15991[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16130[label="vz50401/Neg vz504010",fontsize=10,color="white",style="solid",shape="box"];15973 -> 16130[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16130 -> 15992[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15974[label="primMulInt (Neg vz503000) vz50401",fontsize=16,color="burlywood",shape="box"];16131[label="vz50401/Pos vz504010",fontsize=10,color="white",style="solid",shape="box"];15974 -> 16131[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16131 -> 15993[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16132[label="vz50401/Neg vz504010",fontsize=10,color="white",style="solid",shape="box"];15974 -> 16132[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16132 -> 15994[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15945[label="primCmpInt (Pos vz50100) vz50200",fontsize=16,color="burlywood",shape="box"];16133[label="vz50100/Succ vz501000",fontsize=10,color="white",style="solid",shape="box"];15945 -> 16133[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16133 -> 15956[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16134[label="vz50100/Zero",fontsize=10,color="white",style="solid",shape="box"];15945 -> 16134[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16134 -> 15957[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15946[label="primCmpInt (Neg vz50100) vz50200",fontsize=16,color="burlywood",shape="box"];16135[label="vz50100/Succ vz501000",fontsize=10,color="white",style="solid",shape="box"];15946 -> 16135[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16135 -> 15958[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16136[label="vz50100/Zero",fontsize=10,color="white",style="solid",shape="box"];15946 -> 16136[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16136 -> 15959[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15854[label="vz50200",fontsize=16,color="green",shape="box"];15855[label="vz50201",fontsize=16,color="green",shape="box"];15856[label="compare vz50200 vz502100",fontsize=16,color="blue",shape="box"];16137[label="compare :: ((@3) a b c) -> ((@3) a b c) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15856 -> 16137[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16137 -> 15880[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16138[label="compare :: ([] a) -> ([] a) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15856 -> 16138[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16138 -> 15881[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16139[label="compare :: Integer -> Integer -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15856 -> 16139[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16139 -> 15882[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16140[label="compare :: Char -> Char -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15856 -> 16140[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16140 -> 15883[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16141[label="compare :: Ordering -> Ordering -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15856 -> 16141[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16141 -> 15884[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16142[label="compare :: Double -> Double -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15856 -> 16142[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16142 -> 15885[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16143[label="compare :: (Ratio a) -> (Ratio a) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15856 -> 16143[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16143 -> 15886[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16144[label="compare :: ((@2) a b) -> ((@2) a b) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15856 -> 16144[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16144 -> 15887[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16145[label="compare :: (Maybe a) -> (Maybe a) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15856 -> 16145[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16145 -> 15888[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16146[label="compare :: () -> () -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15856 -> 16146[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16146 -> 15889[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16147[label="compare :: Int -> Int -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15856 -> 16147[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16147 -> 15890[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16148[label="compare :: Bool -> Bool -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15856 -> 16148[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16148 -> 15891[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16149[label="compare :: (Either a b) -> (Either a b) -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15856 -> 16149[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16149 -> 15892[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16150[label="compare :: Float -> Float -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15856 -> 16150[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16150 -> 15893[label="",style="solid", color="blue", weight=3]; 21.99/10.76 15857[label="vz502100",fontsize=16,color="green",shape="box"];15858[label="vz502101",fontsize=16,color="green",shape="box"];15863[label="vz502110",fontsize=16,color="green",shape="box"];15864[label="vz5021110",fontsize=16,color="green",shape="box"];15865[label="vz5021111",fontsize=16,color="green",shape="box"];15866[label="compare vz5010 vz50200",fontsize=16,color="black",shape="triangle"];15866 -> 15898[label="",style="solid", color="black", weight=3]; 21.99/10.76 15867[label="compare vz5010 vz50200",fontsize=16,color="black",shape="triangle"];15867 -> 15899[label="",style="solid", color="black", weight=3]; 21.99/10.76 15868[label="compare vz5010 vz50200",fontsize=16,color="black",shape="triangle"];15868 -> 15900[label="",style="solid", color="black", weight=3]; 21.99/10.76 15869[label="compare vz5010 vz50200",fontsize=16,color="black",shape="triangle"];15869 -> 15901[label="",style="solid", color="black", weight=3]; 21.99/10.76 15870[label="compare vz5010 vz50200",fontsize=16,color="black",shape="triangle"];15870 -> 15902[label="",style="solid", color="black", weight=3]; 21.99/10.76 15871[label="compare vz5010 vz50200",fontsize=16,color="black",shape="triangle"];15871 -> 15903[label="",style="solid", color="black", weight=3]; 21.99/10.76 15872[label="compare vz5010 vz50200",fontsize=16,color="burlywood",shape="triangle"];16151[label="vz5010/vz50100 :% vz50101",fontsize=10,color="white",style="solid",shape="box"];15872 -> 16151[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16151 -> 15904[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15873[label="compare vz5010 vz50200",fontsize=16,color="black",shape="triangle"];15873 -> 15905[label="",style="solid", color="black", weight=3]; 21.99/10.76 15874[label="compare vz5010 vz50200",fontsize=16,color="black",shape="triangle"];15874 -> 15906[label="",style="solid", color="black", weight=3]; 21.99/10.76 15875[label="compare vz5010 vz50200",fontsize=16,color="black",shape="triangle"];15875 -> 15907[label="",style="solid", color="black", weight=3]; 21.99/10.76 15877[label="compare vz5010 vz50200",fontsize=16,color="black",shape="triangle"];15877 -> 15909[label="",style="solid", color="black", weight=3]; 21.99/10.76 15878[label="compare vz5010 vz50200",fontsize=16,color="black",shape="triangle"];15878 -> 15910[label="",style="solid", color="black", weight=3]; 21.99/10.76 15879[label="compare vz5010 vz50200",fontsize=16,color="black",shape="triangle"];15879 -> 15911[label="",style="solid", color="black", weight=3]; 21.99/10.76 15991[label="primMulInt (Pos vz503000) (Pos vz504010)",fontsize=16,color="black",shape="box"];15991 -> 16014[label="",style="solid", color="black", weight=3]; 21.99/10.76 15992[label="primMulInt (Pos vz503000) (Neg vz504010)",fontsize=16,color="black",shape="box"];15992 -> 16015[label="",style="solid", color="black", weight=3]; 21.99/10.76 15993[label="primMulInt (Neg vz503000) (Pos vz504010)",fontsize=16,color="black",shape="box"];15993 -> 16016[label="",style="solid", color="black", weight=3]; 21.99/10.76 15994[label="primMulInt (Neg vz503000) (Neg vz504010)",fontsize=16,color="black",shape="box"];15994 -> 16017[label="",style="solid", color="black", weight=3]; 21.99/10.76 15956[label="primCmpInt (Pos (Succ vz501000)) vz50200",fontsize=16,color="burlywood",shape="box"];16152[label="vz50200/Pos vz502000",fontsize=10,color="white",style="solid",shape="box"];15956 -> 16152[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16152 -> 15965[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16153[label="vz50200/Neg vz502000",fontsize=10,color="white",style="solid",shape="box"];15956 -> 16153[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16153 -> 15966[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15957[label="primCmpInt (Pos Zero) vz50200",fontsize=16,color="burlywood",shape="box"];16154[label="vz50200/Pos vz502000",fontsize=10,color="white",style="solid",shape="box"];15957 -> 16154[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16154 -> 15967[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16155[label="vz50200/Neg vz502000",fontsize=10,color="white",style="solid",shape="box"];15957 -> 16155[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16155 -> 15968[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15958[label="primCmpInt (Neg (Succ vz501000)) vz50200",fontsize=16,color="burlywood",shape="box"];16156[label="vz50200/Pos vz502000",fontsize=10,color="white",style="solid",shape="box"];15958 -> 16156[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16156 -> 15969[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16157[label="vz50200/Neg vz502000",fontsize=10,color="white",style="solid",shape="box"];15958 -> 16157[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16157 -> 15970[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15959[label="primCmpInt (Neg Zero) vz50200",fontsize=16,color="burlywood",shape="box"];16158[label="vz50200/Pos vz502000",fontsize=10,color="white",style="solid",shape="box"];15959 -> 16158[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16158 -> 15971[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16159[label="vz50200/Neg vz502000",fontsize=10,color="white",style="solid",shape="box"];15959 -> 16159[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16159 -> 15972[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15880 -> 15866[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15880[label="compare vz50200 vz502100",fontsize=16,color="magenta"];15880 -> 15912[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15880 -> 15913[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15881 -> 15867[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15881[label="compare vz50200 vz502100",fontsize=16,color="magenta"];15881 -> 15914[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15881 -> 15915[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15882 -> 15868[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15882[label="compare vz50200 vz502100",fontsize=16,color="magenta"];15882 -> 15916[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15882 -> 15917[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15883 -> 15869[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15883[label="compare vz50200 vz502100",fontsize=16,color="magenta"];15883 -> 15918[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15883 -> 15919[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15884 -> 15870[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15884[label="compare vz50200 vz502100",fontsize=16,color="magenta"];15884 -> 15920[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15884 -> 15921[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15885 -> 15871[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15885[label="compare vz50200 vz502100",fontsize=16,color="magenta"];15885 -> 15922[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15885 -> 15923[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15886 -> 15872[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15886[label="compare vz50200 vz502100",fontsize=16,color="magenta"];15886 -> 15924[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15886 -> 15925[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15887 -> 15873[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15887[label="compare vz50200 vz502100",fontsize=16,color="magenta"];15887 -> 15926[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15887 -> 15927[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15888 -> 15874[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15888[label="compare vz50200 vz502100",fontsize=16,color="magenta"];15888 -> 15928[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15888 -> 15929[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15889 -> 15875[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15889[label="compare vz50200 vz502100",fontsize=16,color="magenta"];15889 -> 15930[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15889 -> 15931[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15890 -> 15876[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15890[label="compare vz50200 vz502100",fontsize=16,color="magenta"];15890 -> 15932[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15890 -> 15933[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15891 -> 15877[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15891[label="compare vz50200 vz502100",fontsize=16,color="magenta"];15891 -> 15934[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15891 -> 15935[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15892 -> 15878[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15892[label="compare vz50200 vz502100",fontsize=16,color="magenta"];15892 -> 15936[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15892 -> 15937[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15893 -> 15879[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15893[label="compare vz50200 vz502100",fontsize=16,color="magenta"];15893 -> 15938[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15893 -> 15939[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15898[label="error []",fontsize=16,color="red",shape="box"];15899[label="error []",fontsize=16,color="red",shape="box"];15900[label="error []",fontsize=16,color="red",shape="box"];15901[label="error []",fontsize=16,color="red",shape="box"];15902[label="error []",fontsize=16,color="red",shape="box"];15903[label="error []",fontsize=16,color="red",shape="box"];15904[label="compare (vz50100 :% vz50101) vz50200",fontsize=16,color="burlywood",shape="box"];16160[label="vz50200/vz502000 :% vz502001",fontsize=10,color="white",style="solid",shape="box"];15904 -> 16160[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16160 -> 15944[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15905[label="error []",fontsize=16,color="red",shape="box"];15906[label="error []",fontsize=16,color="red",shape="box"];15907[label="error []",fontsize=16,color="red",shape="box"];15909[label="error []",fontsize=16,color="red",shape="box"];15910[label="error []",fontsize=16,color="red",shape="box"];15911[label="error []",fontsize=16,color="red",shape="box"];16014[label="Pos (primMulNat vz503000 vz504010)",fontsize=16,color="green",shape="box"];16014 -> 16026[label="",style="dashed", color="green", weight=3]; 21.99/10.76 16015[label="Neg (primMulNat vz503000 vz504010)",fontsize=16,color="green",shape="box"];16015 -> 16027[label="",style="dashed", color="green", weight=3]; 21.99/10.76 16016[label="Neg (primMulNat vz503000 vz504010)",fontsize=16,color="green",shape="box"];16016 -> 16028[label="",style="dashed", color="green", weight=3]; 21.99/10.76 16017[label="Pos (primMulNat vz503000 vz504010)",fontsize=16,color="green",shape="box"];16017 -> 16029[label="",style="dashed", color="green", weight=3]; 21.99/10.76 15965[label="primCmpInt (Pos (Succ vz501000)) (Pos vz502000)",fontsize=16,color="black",shape="box"];15965 -> 15979[label="",style="solid", color="black", weight=3]; 21.99/10.76 15966[label="primCmpInt (Pos (Succ vz501000)) (Neg vz502000)",fontsize=16,color="black",shape="box"];15966 -> 15980[label="",style="solid", color="black", weight=3]; 21.99/10.76 15967[label="primCmpInt (Pos Zero) (Pos vz502000)",fontsize=16,color="burlywood",shape="box"];16161[label="vz502000/Succ vz5020000",fontsize=10,color="white",style="solid",shape="box"];15967 -> 16161[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16161 -> 15981[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16162[label="vz502000/Zero",fontsize=10,color="white",style="solid",shape="box"];15967 -> 16162[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16162 -> 15982[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15968[label="primCmpInt (Pos Zero) (Neg vz502000)",fontsize=16,color="burlywood",shape="box"];16163[label="vz502000/Succ vz5020000",fontsize=10,color="white",style="solid",shape="box"];15968 -> 16163[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16163 -> 15983[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16164[label="vz502000/Zero",fontsize=10,color="white",style="solid",shape="box"];15968 -> 16164[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16164 -> 15984[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15969[label="primCmpInt (Neg (Succ vz501000)) (Pos vz502000)",fontsize=16,color="black",shape="box"];15969 -> 15985[label="",style="solid", color="black", weight=3]; 21.99/10.76 15970[label="primCmpInt (Neg (Succ vz501000)) (Neg vz502000)",fontsize=16,color="black",shape="box"];15970 -> 15986[label="",style="solid", color="black", weight=3]; 21.99/10.76 15971[label="primCmpInt (Neg Zero) (Pos vz502000)",fontsize=16,color="burlywood",shape="box"];16165[label="vz502000/Succ vz5020000",fontsize=10,color="white",style="solid",shape="box"];15971 -> 16165[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16165 -> 15987[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16166[label="vz502000/Zero",fontsize=10,color="white",style="solid",shape="box"];15971 -> 16166[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16166 -> 15988[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15972[label="primCmpInt (Neg Zero) (Neg vz502000)",fontsize=16,color="burlywood",shape="box"];16167[label="vz502000/Succ vz5020000",fontsize=10,color="white",style="solid",shape="box"];15972 -> 16167[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16167 -> 15989[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16168[label="vz502000/Zero",fontsize=10,color="white",style="solid",shape="box"];15972 -> 16168[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16168 -> 15990[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15912[label="vz502100",fontsize=16,color="green",shape="box"];15913[label="vz50200",fontsize=16,color="green",shape="box"];15914[label="vz502100",fontsize=16,color="green",shape="box"];15915[label="vz50200",fontsize=16,color="green",shape="box"];15916[label="vz502100",fontsize=16,color="green",shape="box"];15917[label="vz50200",fontsize=16,color="green",shape="box"];15918[label="vz502100",fontsize=16,color="green",shape="box"];15919[label="vz50200",fontsize=16,color="green",shape="box"];15920[label="vz502100",fontsize=16,color="green",shape="box"];15921[label="vz50200",fontsize=16,color="green",shape="box"];15922[label="vz502100",fontsize=16,color="green",shape="box"];15923[label="vz50200",fontsize=16,color="green",shape="box"];15924[label="vz502100",fontsize=16,color="green",shape="box"];15925[label="vz50200",fontsize=16,color="green",shape="box"];15926[label="vz502100",fontsize=16,color="green",shape="box"];15927[label="vz50200",fontsize=16,color="green",shape="box"];15928[label="vz502100",fontsize=16,color="green",shape="box"];15929[label="vz50200",fontsize=16,color="green",shape="box"];15930[label="vz502100",fontsize=16,color="green",shape="box"];15931[label="vz50200",fontsize=16,color="green",shape="box"];15932[label="vz502100",fontsize=16,color="green",shape="box"];15933[label="vz50200",fontsize=16,color="green",shape="box"];15934[label="vz502100",fontsize=16,color="green",shape="box"];15935[label="vz50200",fontsize=16,color="green",shape="box"];15936[label="vz502100",fontsize=16,color="green",shape="box"];15937[label="vz50200",fontsize=16,color="green",shape="box"];15938[label="vz502100",fontsize=16,color="green",shape="box"];15939[label="vz50200",fontsize=16,color="green",shape="box"];15944[label="compare (vz50100 :% vz50101) (vz502000 :% vz502001)",fontsize=16,color="black",shape="box"];15944 -> 15955[label="",style="solid", color="black", weight=3]; 21.99/10.76 16026[label="primMulNat vz503000 vz504010",fontsize=16,color="burlywood",shape="triangle"];16169[label="vz503000/Succ vz5030000",fontsize=10,color="white",style="solid",shape="box"];16026 -> 16169[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16169 -> 16034[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16170[label="vz503000/Zero",fontsize=10,color="white",style="solid",shape="box"];16026 -> 16170[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16170 -> 16035[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16027 -> 16026[label="",style="dashed", color="red", weight=0]; 21.99/10.76 16027[label="primMulNat vz503000 vz504010",fontsize=16,color="magenta"];16027 -> 16036[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 16028 -> 16026[label="",style="dashed", color="red", weight=0]; 21.99/10.76 16028[label="primMulNat vz503000 vz504010",fontsize=16,color="magenta"];16028 -> 16037[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 16029 -> 16026[label="",style="dashed", color="red", weight=0]; 21.99/10.76 16029[label="primMulNat vz503000 vz504010",fontsize=16,color="magenta"];16029 -> 16038[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 16029 -> 16039[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15979[label="primCmpNat (Succ vz501000) vz502000",fontsize=16,color="burlywood",shape="triangle"];16171[label="vz502000/Succ vz5020000",fontsize=10,color="white",style="solid",shape="box"];15979 -> 16171[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16171 -> 16002[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16172[label="vz502000/Zero",fontsize=10,color="white",style="solid",shape="box"];15979 -> 16172[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16172 -> 16003[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15980[label="GT",fontsize=16,color="green",shape="box"];15981[label="primCmpInt (Pos Zero) (Pos (Succ vz5020000))",fontsize=16,color="black",shape="box"];15981 -> 16004[label="",style="solid", color="black", weight=3]; 21.99/10.76 15982[label="primCmpInt (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];15982 -> 16005[label="",style="solid", color="black", weight=3]; 21.99/10.76 15983[label="primCmpInt (Pos Zero) (Neg (Succ vz5020000))",fontsize=16,color="black",shape="box"];15983 -> 16006[label="",style="solid", color="black", weight=3]; 21.99/10.76 15984[label="primCmpInt (Pos Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];15984 -> 16007[label="",style="solid", color="black", weight=3]; 21.99/10.76 15985[label="LT",fontsize=16,color="green",shape="box"];15986[label="primCmpNat vz502000 (Succ vz501000)",fontsize=16,color="burlywood",shape="triangle"];16173[label="vz502000/Succ vz5020000",fontsize=10,color="white",style="solid",shape="box"];15986 -> 16173[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16173 -> 16008[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16174[label="vz502000/Zero",fontsize=10,color="white",style="solid",shape="box"];15986 -> 16174[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16174 -> 16009[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 15987[label="primCmpInt (Neg Zero) (Pos (Succ vz5020000))",fontsize=16,color="black",shape="box"];15987 -> 16010[label="",style="solid", color="black", weight=3]; 21.99/10.76 15988[label="primCmpInt (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];15988 -> 16011[label="",style="solid", color="black", weight=3]; 21.99/10.76 15989[label="primCmpInt (Neg Zero) (Neg (Succ vz5020000))",fontsize=16,color="black",shape="box"];15989 -> 16012[label="",style="solid", color="black", weight=3]; 21.99/10.76 15990[label="primCmpInt (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];15990 -> 16013[label="",style="solid", color="black", weight=3]; 21.99/10.76 15955[label="compare (vz50100 * vz502001) (vz502000 * vz50101)",fontsize=16,color="blue",shape="box"];16175[label="compare :: Integer -> Integer -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15955 -> 16175[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16175 -> 15963[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16176[label="compare :: Int -> Int -> Ordering",fontsize=10,color="white",style="solid",shape="box"];15955 -> 16176[label="",style="solid", color="blue", weight=9]; 21.99/10.76 16176 -> 15964[label="",style="solid", color="blue", weight=3]; 21.99/10.76 16034[label="primMulNat (Succ vz5030000) vz504010",fontsize=16,color="burlywood",shape="box"];16177[label="vz504010/Succ vz5040100",fontsize=10,color="white",style="solid",shape="box"];16034 -> 16177[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16177 -> 16044[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16178[label="vz504010/Zero",fontsize=10,color="white",style="solid",shape="box"];16034 -> 16178[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16178 -> 16045[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16035[label="primMulNat Zero vz504010",fontsize=16,color="burlywood",shape="box"];16179[label="vz504010/Succ vz5040100",fontsize=10,color="white",style="solid",shape="box"];16035 -> 16179[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16179 -> 16046[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16180[label="vz504010/Zero",fontsize=10,color="white",style="solid",shape="box"];16035 -> 16180[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16180 -> 16047[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16036[label="vz504010",fontsize=16,color="green",shape="box"];16037[label="vz503000",fontsize=16,color="green",shape="box"];16038[label="vz503000",fontsize=16,color="green",shape="box"];16039[label="vz504010",fontsize=16,color="green",shape="box"];16002[label="primCmpNat (Succ vz501000) (Succ vz5020000)",fontsize=16,color="black",shape="box"];16002 -> 16018[label="",style="solid", color="black", weight=3]; 21.99/10.76 16003[label="primCmpNat (Succ vz501000) Zero",fontsize=16,color="black",shape="box"];16003 -> 16019[label="",style="solid", color="black", weight=3]; 21.99/10.76 16004 -> 15986[label="",style="dashed", color="red", weight=0]; 21.99/10.76 16004[label="primCmpNat Zero (Succ vz5020000)",fontsize=16,color="magenta"];16004 -> 16020[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 16004 -> 16021[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 16005[label="EQ",fontsize=16,color="green",shape="box"];16006[label="GT",fontsize=16,color="green",shape="box"];16007[label="EQ",fontsize=16,color="green",shape="box"];16008[label="primCmpNat (Succ vz5020000) (Succ vz501000)",fontsize=16,color="black",shape="box"];16008 -> 16022[label="",style="solid", color="black", weight=3]; 21.99/10.76 16009[label="primCmpNat Zero (Succ vz501000)",fontsize=16,color="black",shape="box"];16009 -> 16023[label="",style="solid", color="black", weight=3]; 21.99/10.76 16010[label="LT",fontsize=16,color="green",shape="box"];16011[label="EQ",fontsize=16,color="green",shape="box"];16012 -> 15979[label="",style="dashed", color="red", weight=0]; 21.99/10.76 16012[label="primCmpNat (Succ vz5020000) Zero",fontsize=16,color="magenta"];16012 -> 16024[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 16012 -> 16025[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 16013[label="EQ",fontsize=16,color="green",shape="box"];15963 -> 15868[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15963[label="compare (vz50100 * vz502001) (vz502000 * vz50101)",fontsize=16,color="magenta"];15963 -> 15975[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15963 -> 15976[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15964 -> 15876[label="",style="dashed", color="red", weight=0]; 21.99/10.76 15964[label="compare (vz50100 * vz502001) (vz502000 * vz50101)",fontsize=16,color="magenta"];15964 -> 15977[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 15964 -> 15978[label="",style="dashed", color="magenta", weight=3]; 21.99/10.76 16044[label="primMulNat (Succ vz5030000) (Succ vz5040100)",fontsize=16,color="black",shape="box"];16044 -> 16052[label="",style="solid", color="black", weight=3]; 21.99/10.76 16045[label="primMulNat (Succ vz5030000) Zero",fontsize=16,color="black",shape="box"];16045 -> 16053[label="",style="solid", color="black", weight=3]; 21.99/10.76 16046[label="primMulNat Zero (Succ vz5040100)",fontsize=16,color="black",shape="box"];16046 -> 16054[label="",style="solid", color="black", weight=3]; 21.99/10.76 16047[label="primMulNat Zero Zero",fontsize=16,color="black",shape="box"];16047 -> 16055[label="",style="solid", color="black", weight=3]; 21.99/10.76 16018[label="primCmpNat vz501000 vz5020000",fontsize=16,color="burlywood",shape="triangle"];16181[label="vz501000/Succ vz5010000",fontsize=10,color="white",style="solid",shape="box"];16018 -> 16181[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16181 -> 16030[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16182[label="vz501000/Zero",fontsize=10,color="white",style="solid",shape="box"];16018 -> 16182[label="",style="solid", color="burlywood", weight=9]; 21.99/10.76 16182 -> 16031[label="",style="solid", color="burlywood", weight=3]; 21.99/10.76 16019[label="GT",fontsize=16,color="green",shape="box"];16020[label="Zero",fontsize=16,color="green",shape="box"];16021[label="vz5020000",fontsize=16,color="green",shape="box"];16022 -> 16018[label="",style="dashed", color="red", weight=0]; 21.99/10.77 16022[label="primCmpNat vz5020000 vz501000",fontsize=16,color="magenta"];16022 -> 16032[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 16022 -> 16033[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 16023[label="LT",fontsize=16,color="green",shape="box"];16024[label="Zero",fontsize=16,color="green",shape="box"];16025[label="vz5020000",fontsize=16,color="green",shape="box"];15975[label="vz502000 * vz50101",fontsize=16,color="black",shape="triangle"];15975 -> 15995[label="",style="solid", color="black", weight=3]; 21.99/10.77 15976 -> 15975[label="",style="dashed", color="red", weight=0]; 21.99/10.77 15976[label="vz50100 * vz502001",fontsize=16,color="magenta"];15976 -> 15996[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 15976 -> 15997[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 15977 -> 15947[label="",style="dashed", color="red", weight=0]; 21.99/10.77 15977[label="vz502000 * vz50101",fontsize=16,color="magenta"];15977 -> 15998[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 15977 -> 15999[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 15978 -> 15947[label="",style="dashed", color="red", weight=0]; 21.99/10.77 15978[label="vz50100 * vz502001",fontsize=16,color="magenta"];15978 -> 16000[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 15978 -> 16001[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 16052 -> 16058[label="",style="dashed", color="red", weight=0]; 21.99/10.77 16052[label="primPlusNat (primMulNat vz5030000 (Succ vz5040100)) (Succ vz5040100)",fontsize=16,color="magenta"];16052 -> 16059[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 16053[label="Zero",fontsize=16,color="green",shape="box"];16054[label="Zero",fontsize=16,color="green",shape="box"];16055[label="Zero",fontsize=16,color="green",shape="box"];16030[label="primCmpNat (Succ vz5010000) vz5020000",fontsize=16,color="burlywood",shape="box"];16183[label="vz5020000/Succ vz50200000",fontsize=10,color="white",style="solid",shape="box"];16030 -> 16183[label="",style="solid", color="burlywood", weight=9]; 21.99/10.77 16183 -> 16040[label="",style="solid", color="burlywood", weight=3]; 21.99/10.77 16184[label="vz5020000/Zero",fontsize=10,color="white",style="solid",shape="box"];16030 -> 16184[label="",style="solid", color="burlywood", weight=9]; 21.99/10.77 16184 -> 16041[label="",style="solid", color="burlywood", weight=3]; 21.99/10.77 16031[label="primCmpNat Zero vz5020000",fontsize=16,color="burlywood",shape="box"];16185[label="vz5020000/Succ vz50200000",fontsize=10,color="white",style="solid",shape="box"];16031 -> 16185[label="",style="solid", color="burlywood", weight=9]; 21.99/10.77 16185 -> 16042[label="",style="solid", color="burlywood", weight=3]; 21.99/10.77 16186[label="vz5020000/Zero",fontsize=10,color="white",style="solid",shape="box"];16031 -> 16186[label="",style="solid", color="burlywood", weight=9]; 21.99/10.77 16186 -> 16043[label="",style="solid", color="burlywood", weight=3]; 21.99/10.77 16032[label="vz501000",fontsize=16,color="green",shape="box"];16033[label="vz5020000",fontsize=16,color="green",shape="box"];15995[label="error []",fontsize=16,color="red",shape="box"];15996[label="vz50100",fontsize=16,color="green",shape="box"];15997[label="vz502001",fontsize=16,color="green",shape="box"];15998[label="vz502000",fontsize=16,color="green",shape="box"];15999[label="vz50101",fontsize=16,color="green",shape="box"];16000[label="vz50100",fontsize=16,color="green",shape="box"];16001[label="vz502001",fontsize=16,color="green",shape="box"];16059 -> 16026[label="",style="dashed", color="red", weight=0]; 21.99/10.77 16059[label="primMulNat vz5030000 (Succ vz5040100)",fontsize=16,color="magenta"];16059 -> 16060[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 16059 -> 16061[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 16058[label="primPlusNat vz516 (Succ vz5040100)",fontsize=16,color="burlywood",shape="triangle"];16187[label="vz516/Succ vz5160",fontsize=10,color="white",style="solid",shape="box"];16058 -> 16187[label="",style="solid", color="burlywood", weight=9]; 21.99/10.77 16187 -> 16062[label="",style="solid", color="burlywood", weight=3]; 21.99/10.77 16188[label="vz516/Zero",fontsize=10,color="white",style="solid",shape="box"];16058 -> 16188[label="",style="solid", color="burlywood", weight=9]; 21.99/10.77 16188 -> 16063[label="",style="solid", color="burlywood", weight=3]; 21.99/10.77 16040[label="primCmpNat (Succ vz5010000) (Succ vz50200000)",fontsize=16,color="black",shape="box"];16040 -> 16048[label="",style="solid", color="black", weight=3]; 21.99/10.77 16041[label="primCmpNat (Succ vz5010000) Zero",fontsize=16,color="black",shape="box"];16041 -> 16049[label="",style="solid", color="black", weight=3]; 21.99/10.77 16042[label="primCmpNat Zero (Succ vz50200000)",fontsize=16,color="black",shape="box"];16042 -> 16050[label="",style="solid", color="black", weight=3]; 21.99/10.77 16043[label="primCmpNat Zero Zero",fontsize=16,color="black",shape="box"];16043 -> 16051[label="",style="solid", color="black", weight=3]; 21.99/10.77 16060[label="vz5030000",fontsize=16,color="green",shape="box"];16061[label="Succ vz5040100",fontsize=16,color="green",shape="box"];16062[label="primPlusNat (Succ vz5160) (Succ vz5040100)",fontsize=16,color="black",shape="box"];16062 -> 16064[label="",style="solid", color="black", weight=3]; 21.99/10.77 16063[label="primPlusNat Zero (Succ vz5040100)",fontsize=16,color="black",shape="box"];16063 -> 16065[label="",style="solid", color="black", weight=3]; 21.99/10.77 16048 -> 16018[label="",style="dashed", color="red", weight=0]; 21.99/10.77 16048[label="primCmpNat vz5010000 vz50200000",fontsize=16,color="magenta"];16048 -> 16056[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 16048 -> 16057[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 16049[label="GT",fontsize=16,color="green",shape="box"];16050[label="LT",fontsize=16,color="green",shape="box"];16051[label="EQ",fontsize=16,color="green",shape="box"];16064[label="Succ (Succ (primPlusNat vz5160 vz5040100))",fontsize=16,color="green",shape="box"];16064 -> 16066[label="",style="dashed", color="green", weight=3]; 21.99/10.77 16065[label="Succ vz5040100",fontsize=16,color="green",shape="box"];16056[label="vz50200000",fontsize=16,color="green",shape="box"];16057[label="vz5010000",fontsize=16,color="green",shape="box"];16066[label="primPlusNat vz5160 vz5040100",fontsize=16,color="burlywood",shape="triangle"];16189[label="vz5160/Succ vz51600",fontsize=10,color="white",style="solid",shape="box"];16066 -> 16189[label="",style="solid", color="burlywood", weight=9]; 21.99/10.77 16189 -> 16067[label="",style="solid", color="burlywood", weight=3]; 21.99/10.77 16190[label="vz5160/Zero",fontsize=10,color="white",style="solid",shape="box"];16066 -> 16190[label="",style="solid", color="burlywood", weight=9]; 21.99/10.77 16190 -> 16068[label="",style="solid", color="burlywood", weight=3]; 21.99/10.77 16067[label="primPlusNat (Succ vz51600) vz5040100",fontsize=16,color="burlywood",shape="box"];16191[label="vz5040100/Succ vz50401000",fontsize=10,color="white",style="solid",shape="box"];16067 -> 16191[label="",style="solid", color="burlywood", weight=9]; 21.99/10.77 16191 -> 16069[label="",style="solid", color="burlywood", weight=3]; 21.99/10.77 16192[label="vz5040100/Zero",fontsize=10,color="white",style="solid",shape="box"];16067 -> 16192[label="",style="solid", color="burlywood", weight=9]; 21.99/10.77 16192 -> 16070[label="",style="solid", color="burlywood", weight=3]; 21.99/10.77 16068[label="primPlusNat Zero vz5040100",fontsize=16,color="burlywood",shape="box"];16193[label="vz5040100/Succ vz50401000",fontsize=10,color="white",style="solid",shape="box"];16068 -> 16193[label="",style="solid", color="burlywood", weight=9]; 21.99/10.77 16193 -> 16071[label="",style="solid", color="burlywood", weight=3]; 21.99/10.77 16194[label="vz5040100/Zero",fontsize=10,color="white",style="solid",shape="box"];16068 -> 16194[label="",style="solid", color="burlywood", weight=9]; 21.99/10.77 16194 -> 16072[label="",style="solid", color="burlywood", weight=3]; 21.99/10.77 16069[label="primPlusNat (Succ vz51600) (Succ vz50401000)",fontsize=16,color="black",shape="box"];16069 -> 16073[label="",style="solid", color="black", weight=3]; 21.99/10.77 16070[label="primPlusNat (Succ vz51600) Zero",fontsize=16,color="black",shape="box"];16070 -> 16074[label="",style="solid", color="black", weight=3]; 21.99/10.77 16071[label="primPlusNat Zero (Succ vz50401000)",fontsize=16,color="black",shape="box"];16071 -> 16075[label="",style="solid", color="black", weight=3]; 21.99/10.77 16072[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];16072 -> 16076[label="",style="solid", color="black", weight=3]; 21.99/10.77 16073[label="Succ (Succ (primPlusNat vz51600 vz50401000))",fontsize=16,color="green",shape="box"];16073 -> 16077[label="",style="dashed", color="green", weight=3]; 21.99/10.77 16074[label="Succ vz51600",fontsize=16,color="green",shape="box"];16075[label="Succ vz50401000",fontsize=16,color="green",shape="box"];16076[label="Zero",fontsize=16,color="green",shape="box"];16077 -> 16066[label="",style="dashed", color="red", weight=0]; 21.99/10.77 16077[label="primPlusNat vz51600 vz50401000",fontsize=16,color="magenta"];16077 -> 16078[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 16077 -> 16079[label="",style="dashed", color="magenta", weight=3]; 21.99/10.77 16078[label="vz51600",fontsize=16,color="green",shape="box"];16079[label="vz50401000",fontsize=16,color="green",shape="box"];} 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (8) 21.99/10.77 Complex Obligation (AND) 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (9) 21.99/10.77 Obligation: 21.99/10.77 Q DP problem: 21.99/10.77 The TRS P consists of the following rules: 21.99/10.77 21.99/10.77 new_primCmpNat(Succ(vz5010000), Succ(vz50200000)) -> new_primCmpNat(vz5010000, vz50200000) 21.99/10.77 21.99/10.77 R is empty. 21.99/10.77 Q is empty. 21.99/10.77 We have to consider all minimal (P,Q,R)-chains. 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (10) QDPSizeChangeProof (EQUIVALENT) 21.99/10.77 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. 21.99/10.77 21.99/10.77 From the DPs we obtained the following set of size-change graphs: 21.99/10.77 *new_primCmpNat(Succ(vz5010000), Succ(vz50200000)) -> new_primCmpNat(vz5010000, vz50200000) 21.99/10.77 The graph contains the following edges 1 > 1, 2 > 2 21.99/10.77 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (11) 21.99/10.77 YES 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (12) 21.99/10.77 Obligation: 21.99/10.77 Q DP problem: 21.99/10.77 The TRS P consists of the following rules: 21.99/10.77 21.99/10.77 new_merge0(vz511, vz512, vz513, vz514, EQ, ba) -> new_merge(vz513, :(vz511, vz514), ba) 21.99/10.77 new_merge0(vz511, vz512, vz513, vz514, GT, ba) -> new_merge(:(vz512, vz513), vz514, ba) 21.99/10.77 new_merge0(vz511, vz512, vz513, vz514, LT, ba) -> new_merge(vz513, :(vz511, vz514), ba) 21.99/10.77 new_merge(:(vz5010, vz5011), :(vz50200, vz50201), bb) -> new_merge0(vz50200, vz5010, vz5011, vz50201, new_compare(vz5010, vz50200, bb), bb) 21.99/10.77 21.99/10.77 The TRS R consists of the following rules: 21.99/10.77 21.99/10.77 new_compare5(Pos(Succ(vz501000)), Pos(vz502000)) -> new_primCmpNat2(vz501000, vz502000) 21.99/10.77 new_sr0(Neg(vz503000), Neg(vz504010)) -> Pos(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_sr0(Pos(vz503000), Pos(vz504010)) -> Pos(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_primCmpNat0(Zero, vz501000) -> LT 21.99/10.77 new_primPlusNat0(Succ(vz51600), Zero) -> Succ(vz51600) 21.99/10.77 new_primPlusNat0(Zero, Succ(vz50401000)) -> Succ(vz50401000) 21.99/10.77 new_compare5(Neg(Succ(vz501000)), Pos(vz502000)) -> LT 21.99/10.77 new_compare5(Neg(Succ(vz501000)), Neg(vz502000)) -> new_primCmpNat0(vz502000, vz501000) 21.99/10.77 new_primMulNat0(Zero, Zero) -> Zero 21.99/10.77 new_primPlusNat0(Zero, Zero) -> Zero 21.99/10.77 new_compare5(Neg(Zero), Neg(Succ(vz5020000))) -> new_primCmpNat2(vz5020000, Zero) 21.99/10.77 new_compare(vz5010, vz50200, app(ty_Maybe, be)) -> new_compare6(vz5010, vz50200, be) 21.99/10.77 new_compare13(vz5010, vz50200, cc, cd) -> error([]) 21.99/10.77 new_primPlusNat1(Zero, vz5040100) -> Succ(vz5040100) 21.99/10.77 new_compare(vz5010, vz50200, app(app(ty_@2, bc), bd)) -> new_compare3(vz5010, vz50200, bc, bd) 21.99/10.77 new_compare4(:%(vz50100, vz50101), :%(vz502000, vz502001), ty_Integer) -> new_compare2(new_sr(vz50100, vz502001), new_sr(vz502000, vz50101)) 21.99/10.77 new_compare(vz5010, vz50200, app(ty_[], bf)) -> new_compare7(vz5010, vz50200, bf) 21.99/10.77 new_primCmpNat1(Zero, Zero) -> EQ 21.99/10.77 new_compare11(vz5010, vz50200, bg, bh, ca) -> error([]) 21.99/10.77 new_compare5(Pos(Zero), Pos(Succ(vz5020000))) -> new_primCmpNat0(Zero, vz5020000) 21.99/10.77 new_compare5(Neg(Zero), Neg(Zero)) -> EQ 21.99/10.77 new_compare8(vz5010, vz50200) -> error([]) 21.99/10.77 new_compare(vz5010, vz50200, ty_Int) -> new_compare5(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, ty_Bool) -> new_compare0(vz5010, vz50200) 21.99/10.77 new_primCmpNat1(Succ(vz5010000), Zero) -> GT 21.99/10.77 new_compare12(vz5010, vz50200) -> error([]) 21.99/10.77 new_compare5(Neg(Zero), Pos(Succ(vz5020000))) -> LT 21.99/10.77 new_compare5(Pos(Zero), Pos(Zero)) -> EQ 21.99/10.77 new_compare0(vz5010, vz50200) -> error([]) 21.99/10.77 new_primCmpNat2(vz501000, Succ(vz5020000)) -> new_primCmpNat1(vz501000, vz5020000) 21.99/10.77 new_compare6(vz5010, vz50200, be) -> error([]) 21.99/10.77 new_compare(vz5010, vz50200, ty_Float) -> new_compare10(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, app(ty_Ratio, cb)) -> new_compare4(vz5010, vz50200, cb) 21.99/10.77 new_compare5(Pos(Zero), Neg(Zero)) -> EQ 21.99/10.77 new_compare5(Neg(Zero), Pos(Zero)) -> EQ 21.99/10.77 new_primPlusNat0(Succ(vz51600), Succ(vz50401000)) -> Succ(Succ(new_primPlusNat0(vz51600, vz50401000))) 21.99/10.77 new_primMulNat0(Succ(vz5030000), Succ(vz5040100)) -> new_primPlusNat1(new_primMulNat0(vz5030000, Succ(vz5040100)), vz5040100) 21.99/10.77 new_sr(vz502000, vz50101) -> error([]) 21.99/10.77 new_compare3(vz5010, vz50200, bc, bd) -> error([]) 21.99/10.77 new_primCmpNat1(Succ(vz5010000), Succ(vz50200000)) -> new_primCmpNat1(vz5010000, vz50200000) 21.99/10.77 new_compare(vz5010, vz50200, ty_Integer) -> new_compare2(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, ty_@0) -> new_compare9(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, app(app(app(ty_@3, bg), bh), ca)) -> new_compare11(vz5010, vz50200, bg, bh, ca) 21.99/10.77 new_compare2(vz5010, vz50200) -> error([]) 21.99/10.77 new_compare4(:%(vz50100, vz50101), :%(vz502000, vz502001), ty_Int) -> new_compare5(new_sr0(vz50100, vz502001), new_sr0(vz502000, vz50101)) 21.99/10.77 new_compare7(vz5010, vz50200, bf) -> error([]) 21.99/10.77 new_compare5(Pos(Succ(vz501000)), Neg(vz502000)) -> GT 21.99/10.77 new_primCmpNat1(Zero, Succ(vz50200000)) -> LT 21.99/10.77 new_compare(vz5010, vz50200, app(app(ty_Either, cc), cd)) -> new_compare13(vz5010, vz50200, cc, cd) 21.99/10.77 new_compare10(vz5010, vz50200) -> error([]) 21.99/10.77 new_primMulNat0(Succ(vz5030000), Zero) -> Zero 21.99/10.77 new_primMulNat0(Zero, Succ(vz5040100)) -> Zero 21.99/10.77 new_compare(vz5010, vz50200, ty_Ordering) -> new_compare1(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, ty_Double) -> new_compare12(vz5010, vz50200) 21.99/10.77 new_compare5(Pos(Zero), Neg(Succ(vz5020000))) -> GT 21.99/10.77 new_primCmpNat2(vz501000, Zero) -> GT 21.99/10.77 new_compare(vz5010, vz50200, ty_Char) -> new_compare8(vz5010, vz50200) 21.99/10.77 new_sr0(Pos(vz503000), Neg(vz504010)) -> Neg(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_sr0(Neg(vz503000), Pos(vz504010)) -> Neg(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_compare1(vz5010, vz50200) -> error([]) 21.99/10.77 new_primCmpNat0(Succ(vz5020000), vz501000) -> new_primCmpNat1(vz5020000, vz501000) 21.99/10.77 new_primPlusNat1(Succ(vz5160), vz5040100) -> Succ(Succ(new_primPlusNat0(vz5160, vz5040100))) 21.99/10.77 new_compare9(vz5010, vz50200) -> error([]) 21.99/10.77 21.99/10.77 The set Q consists of the following terms: 21.99/10.77 21.99/10.77 new_sr0(Neg(x0), Neg(x1)) 21.99/10.77 new_compare4(:%(x0, x1), :%(x2, x3), ty_Int) 21.99/10.77 new_compare13(x0, x1, x2, x3) 21.99/10.77 new_compare2(x0, x1) 21.99/10.77 new_primCmpNat0(Zero, x0) 21.99/10.77 new_compare12(x0, x1) 21.99/10.77 new_primCmpNat1(Succ(x0), Succ(x1)) 21.99/10.77 new_primCmpNat2(x0, Zero) 21.99/10.77 new_sr0(Pos(x0), Neg(x1)) 21.99/10.77 new_sr0(Neg(x0), Pos(x1)) 21.99/10.77 new_compare4(:%(x0, x1), :%(x2, x3), ty_Integer) 21.99/10.77 new_primMulNat0(Succ(x0), Succ(x1)) 21.99/10.77 new_compare5(Neg(Zero), Neg(Zero)) 21.99/10.77 new_primCmpNat1(Succ(x0), Zero) 21.99/10.77 new_compare3(x0, x1, x2, x3) 21.99/10.77 new_compare(x0, x1, ty_@0) 21.99/10.77 new_primMulNat0(Zero, Zero) 21.99/10.77 new_primCmpNat0(Succ(x0), x1) 21.99/10.77 new_sr0(Pos(x0), Pos(x1)) 21.99/10.77 new_compare10(x0, x1) 21.99/10.77 new_compare11(x0, x1, x2, x3, x4) 21.99/10.77 new_compare5(Pos(Succ(x0)), Pos(x1)) 21.99/10.77 new_compare5(Neg(Zero), Neg(Succ(x0))) 21.99/10.77 new_compare6(x0, x1, x2) 21.99/10.77 new_primCmpNat1(Zero, Zero) 21.99/10.77 new_primPlusNat1(Succ(x0), x1) 21.99/10.77 new_primMulNat0(Zero, Succ(x0)) 21.99/10.77 new_compare1(x0, x1) 21.99/10.77 new_compare(x0, x1, ty_Int) 21.99/10.77 new_compare(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 21.99/10.77 new_primCmpNat2(x0, Succ(x1)) 21.99/10.77 new_compare5(Neg(Succ(x0)), Pos(x1)) 21.99/10.77 new_compare5(Pos(Succ(x0)), Neg(x1)) 21.99/10.77 new_compare(x0, x1, ty_Ordering) 21.99/10.77 new_sr(x0, x1) 21.99/10.77 new_compare5(Neg(Succ(x0)), Neg(x1)) 21.99/10.77 new_primPlusNat1(Zero, x0) 21.99/10.77 new_compare(x0, x1, ty_Bool) 21.99/10.77 new_compare(x0, x1, app(app(ty_Either, x2), x3)) 21.99/10.77 new_compare9(x0, x1) 21.99/10.77 new_primMulNat0(Succ(x0), Zero) 21.99/10.77 new_compare(x0, x1, ty_Double) 21.99/10.77 new_compare(x0, x1, app(ty_[], x2)) 21.99/10.77 new_compare5(Pos(Zero), Neg(Zero)) 21.99/10.77 new_compare5(Neg(Zero), Pos(Zero)) 21.99/10.77 new_compare(x0, x1, ty_Char) 21.99/10.77 new_compare8(x0, x1) 21.99/10.77 new_compare(x0, x1, app(ty_Maybe, x2)) 21.99/10.77 new_compare(x0, x1, app(app(ty_@2, x2), x3)) 21.99/10.77 new_compare5(Neg(Zero), Pos(Succ(x0))) 21.99/10.77 new_compare5(Pos(Zero), Neg(Succ(x0))) 21.99/10.77 new_primPlusNat0(Succ(x0), Zero) 21.99/10.77 new_primCmpNat1(Zero, Succ(x0)) 21.99/10.77 new_primPlusNat0(Zero, Succ(x0)) 21.99/10.77 new_compare0(x0, x1) 21.99/10.77 new_compare7(x0, x1, x2) 21.99/10.77 new_compare(x0, x1, ty_Float) 21.99/10.77 new_compare5(Pos(Zero), Pos(Zero)) 21.99/10.77 new_compare(x0, x1, ty_Integer) 21.99/10.77 new_primPlusNat0(Zero, Zero) 21.99/10.77 new_compare5(Pos(Zero), Pos(Succ(x0))) 21.99/10.77 new_primPlusNat0(Succ(x0), Succ(x1)) 21.99/10.77 new_compare(x0, x1, app(ty_Ratio, x2)) 21.99/10.77 21.99/10.77 We have to consider all minimal (P,Q,R)-chains. 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (13) QDPOrderProof (EQUIVALENT) 21.99/10.77 We use the reduction pair processor [LPAR04,JAR06]. 21.99/10.77 21.99/10.77 21.99/10.77 The following pairs can be oriented strictly and are deleted. 21.99/10.77 21.99/10.77 new_merge(:(vz5010, vz5011), :(vz50200, vz50201), bb) -> new_merge0(vz50200, vz5010, vz5011, vz50201, new_compare(vz5010, vz50200, bb), bb) 21.99/10.77 The remaining pairs can at least be oriented weakly. 21.99/10.77 Used ordering: Polynomial interpretation [POLO]: 21.99/10.77 21.99/10.77 POL(:(x_1, x_2)) = 1 + x_1 + x_2 21.99/10.77 POL(:%(x_1, x_2)) = 1 + x_1 + x_2 21.99/10.77 POL(EQ) = 0 21.99/10.77 POL(GT) = 0 21.99/10.77 POL(LT) = 0 21.99/10.77 POL(Neg(x_1)) = 0 21.99/10.77 POL(Pos(x_1)) = 0 21.99/10.77 POL(Succ(x_1)) = 0 21.99/10.77 POL(Zero) = 0 21.99/10.77 POL([]) = 1 21.99/10.77 POL(app(x_1, x_2)) = 1 + x_1 + x_2 21.99/10.77 POL(error(x_1)) = 1 21.99/10.77 POL(new_compare(x_1, x_2, x_3)) = x_1 + x_2 + x_3 21.99/10.77 POL(new_compare0(x_1, x_2)) = 1 + x_1 + x_2 21.99/10.77 POL(new_compare1(x_1, x_2)) = 1 + x_1 + x_2 21.99/10.77 POL(new_compare10(x_1, x_2)) = 1 + x_1 + x_2 21.99/10.77 POL(new_compare11(x_1, x_2, x_3, x_4, x_5)) = 1 + x_1 + x_2 + x_3 + x_4 + x_5 21.99/10.77 POL(new_compare12(x_1, x_2)) = 1 + x_1 + x_2 21.99/10.77 POL(new_compare13(x_1, x_2, x_3, x_4)) = 1 + x_1 + x_2 + x_3 + x_4 21.99/10.77 POL(new_compare2(x_1, x_2)) = 1 + x_1 + x_2 21.99/10.77 POL(new_compare3(x_1, x_2, x_3, x_4)) = 1 + x_1 + x_2 + x_3 + x_4 21.99/10.77 POL(new_compare4(x_1, x_2, x_3)) = 1 + x_3 21.99/10.77 POL(new_compare5(x_1, x_2)) = 0 21.99/10.77 POL(new_compare6(x_1, x_2, x_3)) = 1 + x_1 + x_2 + x_3 21.99/10.77 POL(new_compare7(x_1, x_2, x_3)) = 1 + x_1 + x_2 + x_3 21.99/10.77 POL(new_compare8(x_1, x_2)) = 1 + x_1 + x_2 21.99/10.77 POL(new_compare9(x_1, x_2)) = 1 + x_1 + x_2 21.99/10.77 POL(new_merge(x_1, x_2, x_3)) = x_1 + x_2 + x_3 21.99/10.77 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 21.99/10.77 POL(new_primCmpNat0(x_1, x_2)) = 1 + x_2 21.99/10.77 POL(new_primCmpNat1(x_1, x_2)) = 1 21.99/10.77 POL(new_primCmpNat2(x_1, x_2)) = 1 + x_1 21.99/10.77 POL(new_primMulNat0(x_1, x_2)) = 0 21.99/10.77 POL(new_primPlusNat0(x_1, x_2)) = 0 21.99/10.77 POL(new_primPlusNat1(x_1, x_2)) = 1 + x_2 21.99/10.77 POL(new_sr(x_1, x_2)) = 1 + x_1 + x_2 21.99/10.77 POL(new_sr0(x_1, x_2)) = 0 21.99/10.77 POL(ty_@0) = 1 21.99/10.77 POL(ty_@2) = 1 21.99/10.77 POL(ty_@3) = 1 21.99/10.77 POL(ty_Bool) = 1 21.99/10.77 POL(ty_Char) = 1 21.99/10.77 POL(ty_Double) = 1 21.99/10.77 POL(ty_Either) = 1 21.99/10.77 POL(ty_Float) = 1 21.99/10.77 POL(ty_Int) = 1 21.99/10.77 POL(ty_Integer) = 1 21.99/10.77 POL(ty_Maybe) = 1 21.99/10.77 POL(ty_Ordering) = 1 21.99/10.77 POL(ty_Ratio) = 1 21.99/10.77 POL(ty_[]) = 1 21.99/10.77 21.99/10.77 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 21.99/10.77 none 21.99/10.77 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (14) 21.99/10.77 Obligation: 21.99/10.77 Q DP problem: 21.99/10.77 The TRS P consists of the following rules: 21.99/10.77 21.99/10.77 new_merge0(vz511, vz512, vz513, vz514, EQ, ba) -> new_merge(vz513, :(vz511, vz514), ba) 21.99/10.77 new_merge0(vz511, vz512, vz513, vz514, GT, ba) -> new_merge(:(vz512, vz513), vz514, ba) 21.99/10.77 new_merge0(vz511, vz512, vz513, vz514, LT, ba) -> new_merge(vz513, :(vz511, vz514), ba) 21.99/10.77 21.99/10.77 The TRS R consists of the following rules: 21.99/10.77 21.99/10.77 new_compare5(Pos(Succ(vz501000)), Pos(vz502000)) -> new_primCmpNat2(vz501000, vz502000) 21.99/10.77 new_sr0(Neg(vz503000), Neg(vz504010)) -> Pos(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_sr0(Pos(vz503000), Pos(vz504010)) -> Pos(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_primCmpNat0(Zero, vz501000) -> LT 21.99/10.77 new_primPlusNat0(Succ(vz51600), Zero) -> Succ(vz51600) 21.99/10.77 new_primPlusNat0(Zero, Succ(vz50401000)) -> Succ(vz50401000) 21.99/10.77 new_compare5(Neg(Succ(vz501000)), Pos(vz502000)) -> LT 21.99/10.77 new_compare5(Neg(Succ(vz501000)), Neg(vz502000)) -> new_primCmpNat0(vz502000, vz501000) 21.99/10.77 new_primMulNat0(Zero, Zero) -> Zero 21.99/10.77 new_primPlusNat0(Zero, Zero) -> Zero 21.99/10.77 new_compare5(Neg(Zero), Neg(Succ(vz5020000))) -> new_primCmpNat2(vz5020000, Zero) 21.99/10.77 new_compare(vz5010, vz50200, app(ty_Maybe, be)) -> new_compare6(vz5010, vz50200, be) 21.99/10.77 new_compare13(vz5010, vz50200, cc, cd) -> error([]) 21.99/10.77 new_primPlusNat1(Zero, vz5040100) -> Succ(vz5040100) 21.99/10.77 new_compare(vz5010, vz50200, app(app(ty_@2, bc), bd)) -> new_compare3(vz5010, vz50200, bc, bd) 21.99/10.77 new_compare4(:%(vz50100, vz50101), :%(vz502000, vz502001), ty_Integer) -> new_compare2(new_sr(vz50100, vz502001), new_sr(vz502000, vz50101)) 21.99/10.77 new_compare(vz5010, vz50200, app(ty_[], bf)) -> new_compare7(vz5010, vz50200, bf) 21.99/10.77 new_primCmpNat1(Zero, Zero) -> EQ 21.99/10.77 new_compare11(vz5010, vz50200, bg, bh, ca) -> error([]) 21.99/10.77 new_compare5(Pos(Zero), Pos(Succ(vz5020000))) -> new_primCmpNat0(Zero, vz5020000) 21.99/10.77 new_compare5(Neg(Zero), Neg(Zero)) -> EQ 21.99/10.77 new_compare8(vz5010, vz50200) -> error([]) 21.99/10.77 new_compare(vz5010, vz50200, ty_Int) -> new_compare5(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, ty_Bool) -> new_compare0(vz5010, vz50200) 21.99/10.77 new_primCmpNat1(Succ(vz5010000), Zero) -> GT 21.99/10.77 new_compare12(vz5010, vz50200) -> error([]) 21.99/10.77 new_compare5(Neg(Zero), Pos(Succ(vz5020000))) -> LT 21.99/10.77 new_compare5(Pos(Zero), Pos(Zero)) -> EQ 21.99/10.77 new_compare0(vz5010, vz50200) -> error([]) 21.99/10.77 new_primCmpNat2(vz501000, Succ(vz5020000)) -> new_primCmpNat1(vz501000, vz5020000) 21.99/10.77 new_compare6(vz5010, vz50200, be) -> error([]) 21.99/10.77 new_compare(vz5010, vz50200, ty_Float) -> new_compare10(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, app(ty_Ratio, cb)) -> new_compare4(vz5010, vz50200, cb) 21.99/10.77 new_compare5(Pos(Zero), Neg(Zero)) -> EQ 21.99/10.77 new_compare5(Neg(Zero), Pos(Zero)) -> EQ 21.99/10.77 new_primPlusNat0(Succ(vz51600), Succ(vz50401000)) -> Succ(Succ(new_primPlusNat0(vz51600, vz50401000))) 21.99/10.77 new_primMulNat0(Succ(vz5030000), Succ(vz5040100)) -> new_primPlusNat1(new_primMulNat0(vz5030000, Succ(vz5040100)), vz5040100) 21.99/10.77 new_sr(vz502000, vz50101) -> error([]) 21.99/10.77 new_compare3(vz5010, vz50200, bc, bd) -> error([]) 21.99/10.77 new_primCmpNat1(Succ(vz5010000), Succ(vz50200000)) -> new_primCmpNat1(vz5010000, vz50200000) 21.99/10.77 new_compare(vz5010, vz50200, ty_Integer) -> new_compare2(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, ty_@0) -> new_compare9(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, app(app(app(ty_@3, bg), bh), ca)) -> new_compare11(vz5010, vz50200, bg, bh, ca) 21.99/10.77 new_compare2(vz5010, vz50200) -> error([]) 21.99/10.77 new_compare4(:%(vz50100, vz50101), :%(vz502000, vz502001), ty_Int) -> new_compare5(new_sr0(vz50100, vz502001), new_sr0(vz502000, vz50101)) 21.99/10.77 new_compare7(vz5010, vz50200, bf) -> error([]) 21.99/10.77 new_compare5(Pos(Succ(vz501000)), Neg(vz502000)) -> GT 21.99/10.77 new_primCmpNat1(Zero, Succ(vz50200000)) -> LT 21.99/10.77 new_compare(vz5010, vz50200, app(app(ty_Either, cc), cd)) -> new_compare13(vz5010, vz50200, cc, cd) 21.99/10.77 new_compare10(vz5010, vz50200) -> error([]) 21.99/10.77 new_primMulNat0(Succ(vz5030000), Zero) -> Zero 21.99/10.77 new_primMulNat0(Zero, Succ(vz5040100)) -> Zero 21.99/10.77 new_compare(vz5010, vz50200, ty_Ordering) -> new_compare1(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, ty_Double) -> new_compare12(vz5010, vz50200) 21.99/10.77 new_compare5(Pos(Zero), Neg(Succ(vz5020000))) -> GT 21.99/10.77 new_primCmpNat2(vz501000, Zero) -> GT 21.99/10.77 new_compare(vz5010, vz50200, ty_Char) -> new_compare8(vz5010, vz50200) 21.99/10.77 new_sr0(Pos(vz503000), Neg(vz504010)) -> Neg(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_sr0(Neg(vz503000), Pos(vz504010)) -> Neg(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_compare1(vz5010, vz50200) -> error([]) 21.99/10.77 new_primCmpNat0(Succ(vz5020000), vz501000) -> new_primCmpNat1(vz5020000, vz501000) 21.99/10.77 new_primPlusNat1(Succ(vz5160), vz5040100) -> Succ(Succ(new_primPlusNat0(vz5160, vz5040100))) 21.99/10.77 new_compare9(vz5010, vz50200) -> error([]) 21.99/10.77 21.99/10.77 The set Q consists of the following terms: 21.99/10.77 21.99/10.77 new_sr0(Neg(x0), Neg(x1)) 21.99/10.77 new_compare4(:%(x0, x1), :%(x2, x3), ty_Int) 21.99/10.77 new_compare13(x0, x1, x2, x3) 21.99/10.77 new_compare2(x0, x1) 21.99/10.77 new_primCmpNat0(Zero, x0) 21.99/10.77 new_compare12(x0, x1) 21.99/10.77 new_primCmpNat1(Succ(x0), Succ(x1)) 21.99/10.77 new_primCmpNat2(x0, Zero) 21.99/10.77 new_sr0(Pos(x0), Neg(x1)) 21.99/10.77 new_sr0(Neg(x0), Pos(x1)) 21.99/10.77 new_compare4(:%(x0, x1), :%(x2, x3), ty_Integer) 21.99/10.77 new_primMulNat0(Succ(x0), Succ(x1)) 21.99/10.77 new_compare5(Neg(Zero), Neg(Zero)) 21.99/10.77 new_primCmpNat1(Succ(x0), Zero) 21.99/10.77 new_compare3(x0, x1, x2, x3) 21.99/10.77 new_compare(x0, x1, ty_@0) 21.99/10.77 new_primMulNat0(Zero, Zero) 21.99/10.77 new_primCmpNat0(Succ(x0), x1) 21.99/10.77 new_sr0(Pos(x0), Pos(x1)) 21.99/10.77 new_compare10(x0, x1) 21.99/10.77 new_compare11(x0, x1, x2, x3, x4) 21.99/10.77 new_compare5(Pos(Succ(x0)), Pos(x1)) 21.99/10.77 new_compare5(Neg(Zero), Neg(Succ(x0))) 21.99/10.77 new_compare6(x0, x1, x2) 21.99/10.77 new_primCmpNat1(Zero, Zero) 21.99/10.77 new_primPlusNat1(Succ(x0), x1) 21.99/10.77 new_primMulNat0(Zero, Succ(x0)) 21.99/10.77 new_compare1(x0, x1) 21.99/10.77 new_compare(x0, x1, ty_Int) 21.99/10.77 new_compare(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 21.99/10.77 new_primCmpNat2(x0, Succ(x1)) 21.99/10.77 new_compare5(Neg(Succ(x0)), Pos(x1)) 21.99/10.77 new_compare5(Pos(Succ(x0)), Neg(x1)) 21.99/10.77 new_compare(x0, x1, ty_Ordering) 21.99/10.77 new_sr(x0, x1) 21.99/10.77 new_compare5(Neg(Succ(x0)), Neg(x1)) 21.99/10.77 new_primPlusNat1(Zero, x0) 21.99/10.77 new_compare(x0, x1, ty_Bool) 21.99/10.77 new_compare(x0, x1, app(app(ty_Either, x2), x3)) 21.99/10.77 new_compare9(x0, x1) 21.99/10.77 new_primMulNat0(Succ(x0), Zero) 21.99/10.77 new_compare(x0, x1, ty_Double) 21.99/10.77 new_compare(x0, x1, app(ty_[], x2)) 21.99/10.77 new_compare5(Pos(Zero), Neg(Zero)) 21.99/10.77 new_compare5(Neg(Zero), Pos(Zero)) 21.99/10.77 new_compare(x0, x1, ty_Char) 21.99/10.77 new_compare8(x0, x1) 21.99/10.77 new_compare(x0, x1, app(ty_Maybe, x2)) 21.99/10.77 new_compare(x0, x1, app(app(ty_@2, x2), x3)) 21.99/10.77 new_compare5(Neg(Zero), Pos(Succ(x0))) 21.99/10.77 new_compare5(Pos(Zero), Neg(Succ(x0))) 21.99/10.77 new_primPlusNat0(Succ(x0), Zero) 21.99/10.77 new_primCmpNat1(Zero, Succ(x0)) 21.99/10.77 new_primPlusNat0(Zero, Succ(x0)) 21.99/10.77 new_compare0(x0, x1) 21.99/10.77 new_compare7(x0, x1, x2) 21.99/10.77 new_compare(x0, x1, ty_Float) 21.99/10.77 new_compare5(Pos(Zero), Pos(Zero)) 21.99/10.77 new_compare(x0, x1, ty_Integer) 21.99/10.77 new_primPlusNat0(Zero, Zero) 21.99/10.77 new_compare5(Pos(Zero), Pos(Succ(x0))) 21.99/10.77 new_primPlusNat0(Succ(x0), Succ(x1)) 21.99/10.77 new_compare(x0, x1, app(ty_Ratio, x2)) 21.99/10.77 21.99/10.77 We have to consider all minimal (P,Q,R)-chains. 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (15) DependencyGraphProof (EQUIVALENT) 21.99/10.77 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 3 less nodes. 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (16) 21.99/10.77 TRUE 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (17) 21.99/10.77 Obligation: 21.99/10.77 Q DP problem: 21.99/10.77 The TRS P consists of the following rules: 21.99/10.77 21.99/10.77 new_mergesort'(vz501, :(vz5020, []), ba) -> new_mergesort'(new_merge2(vz501, vz5020, ba), [], ba) 21.99/10.77 new_mergesort'(vz501, :(vz5020, :(vz50210, vz50211)), ba) -> new_mergesort'(new_merge1(vz501, vz5020, vz50210, ba), new_merge_pairs0(vz50211, ba), ba) 21.99/10.77 21.99/10.77 The TRS R consists of the following rules: 21.99/10.77 21.99/10.77 new_sr0(Neg(vz503000), Neg(vz504010)) -> Pos(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_compare5(Pos(Succ(vz501000)), Pos(vz502000)) -> new_primCmpNat2(vz501000, vz502000) 21.99/10.77 new_compare14(vz50200, vz502100, app(ty_Ratio, bh)) -> new_compare4(vz50200, vz502100, bh) 21.99/10.77 new_sr0(Pos(vz503000), Pos(vz504010)) -> Pos(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_compare14(vz50200, vz502100, ty_Double) -> new_compare12(vz50200, vz502100) 21.99/10.77 new_primCmpNat0(Zero, vz501000) -> LT 21.99/10.77 new_compare14(vz50200, vz502100, app(app(app(ty_@3, be), bf), bg)) -> new_compare11(vz50200, vz502100, be, bf, bg) 21.99/10.77 new_primPlusNat0(Succ(vz51600), Zero) -> Succ(vz51600) 21.99/10.77 new_primPlusNat0(Zero, Succ(vz50401000)) -> Succ(vz50401000) 21.99/10.77 new_compare5(Neg(Succ(vz501000)), Pos(vz502000)) -> LT 21.99/10.77 new_compare5(Neg(Succ(vz501000)), Neg(vz502000)) -> new_primCmpNat0(vz502000, vz501000) 21.99/10.77 new_primMulNat0(Zero, Zero) -> Zero 21.99/10.77 new_primPlusNat0(Zero, Zero) -> Zero 21.99/10.77 new_compare5(Neg(Zero), Neg(Succ(vz5020000))) -> new_primCmpNat2(vz5020000, Zero) 21.99/10.77 new_compare(vz5010, vz50200, app(ty_Maybe, ca)) -> new_compare6(vz5010, vz50200, ca) 21.99/10.77 new_compare13(vz5010, vz50200, cb, cc) -> error([]) 21.99/10.77 new_primPlusNat1(Zero, vz5040100) -> Succ(vz5040100) 21.99/10.77 new_compare(vz5010, vz50200, app(app(ty_@2, bc), bd)) -> new_compare3(vz5010, vz50200, bc, bd) 21.99/10.77 new_compare4(:%(vz50100, vz50101), :%(vz502000, vz502001), ty_Integer) -> new_compare2(new_sr(vz50100, vz502001), new_sr(vz502000, vz50101)) 21.99/10.77 new_compare(vz5010, vz50200, app(ty_[], bb)) -> new_compare7(vz5010, vz50200, bb) 21.99/10.77 new_primCmpNat1(Zero, Zero) -> EQ 21.99/10.77 new_merge_pairs0(:(vz502110, []), ba) -> :(vz502110, []) 21.99/10.77 new_compare11(vz5010, vz50200, be, bf, bg) -> error([]) 21.99/10.77 new_merge1(vz501, :(vz50200, vz50201), :(vz502100, vz502101), ba) -> new_merge2(vz501, new_merge00(vz502100, vz50200, vz50201, vz502101, new_compare14(vz50200, vz502100, ba), ba), ba) 21.99/10.77 new_compare14(vz50200, vz502100, ty_Char) -> new_compare8(vz50200, vz502100) 21.99/10.77 new_compare5(Pos(Zero), Pos(Succ(vz5020000))) -> new_primCmpNat0(Zero, vz5020000) 21.99/10.77 new_compare5(Neg(Zero), Neg(Zero)) -> EQ 21.99/10.77 new_compare8(vz5010, vz50200) -> error([]) 21.99/10.77 new_compare(vz5010, vz50200, ty_Int) -> new_compare5(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, ty_Bool) -> new_compare0(vz5010, vz50200) 21.99/10.77 new_primCmpNat1(Succ(vz5010000), Zero) -> GT 21.99/10.77 new_compare12(vz5010, vz50200) -> error([]) 21.99/10.77 new_merge2([], :(vz50200, vz50201), ba) -> :(vz50200, vz50201) 21.99/10.77 new_compare5(Neg(Zero), Pos(Succ(vz5020000))) -> LT 21.99/10.77 new_compare5(Pos(Zero), Pos(Zero)) -> EQ 21.99/10.77 new_compare0(vz5010, vz50200) -> error([]) 21.99/10.77 new_primCmpNat2(vz501000, Succ(vz5020000)) -> new_primCmpNat1(vz501000, vz5020000) 21.99/10.77 new_compare(vz5010, vz50200, ty_Float) -> new_compare10(vz5010, vz50200) 21.99/10.77 new_compare6(vz5010, vz50200, ca) -> error([]) 21.99/10.77 new_compare(vz5010, vz50200, app(ty_Ratio, bh)) -> new_compare4(vz5010, vz50200, bh) 21.99/10.77 new_compare5(Pos(Zero), Neg(Zero)) -> EQ 21.99/10.77 new_compare5(Neg(Zero), Pos(Zero)) -> EQ 21.99/10.77 new_merge_pairs0(:(vz502110, :(vz5021110, vz5021111)), ba) -> :(new_merge2(vz502110, vz5021110, ba), new_merge_pairs0(vz5021111, ba)) 21.99/10.77 new_primPlusNat0(Succ(vz51600), Succ(vz50401000)) -> Succ(Succ(new_primPlusNat0(vz51600, vz50401000))) 21.99/10.77 new_merge00(vz511, vz512, vz513, vz514, LT, cd) -> :(vz512, new_merge2(vz513, :(vz511, vz514), cd)) 21.99/10.77 new_primMulNat0(Succ(vz5030000), Succ(vz5040100)) -> new_primPlusNat1(new_primMulNat0(vz5030000, Succ(vz5040100)), vz5040100) 21.99/10.77 new_compare14(vz50200, vz502100, ty_Int) -> new_compare5(vz50200, vz502100) 21.99/10.77 new_sr(vz502000, vz50101) -> error([]) 21.99/10.77 new_merge2(:(vz5010, vz5011), :(vz50200, vz50201), ba) -> new_merge00(vz50200, vz5010, vz5011, vz50201, new_compare(vz5010, vz50200, ba), ba) 21.99/10.77 new_compare3(vz5010, vz50200, bc, bd) -> error([]) 21.99/10.77 new_primCmpNat1(Succ(vz5010000), Succ(vz50200000)) -> new_primCmpNat1(vz5010000, vz50200000) 21.99/10.77 new_compare14(vz50200, vz502100, app(ty_Maybe, ca)) -> new_compare6(vz50200, vz502100, ca) 21.99/10.77 new_compare14(vz50200, vz502100, ty_Ordering) -> new_compare1(vz50200, vz502100) 21.99/10.77 new_merge2(vz501, [], ba) -> vz501 21.99/10.77 new_compare(vz5010, vz50200, ty_Integer) -> new_compare2(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, ty_@0) -> new_compare9(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, app(app(app(ty_@3, be), bf), bg)) -> new_compare11(vz5010, vz50200, be, bf, bg) 21.99/10.77 new_merge_pairs0([], ba) -> [] 21.99/10.77 new_merge1(vz501, [], :(vz502100, vz502101), ba) -> new_merge2(vz501, :(vz502100, vz502101), ba) 21.99/10.77 new_compare2(vz5010, vz50200) -> error([]) 21.99/10.77 new_compare4(:%(vz50100, vz50101), :%(vz502000, vz502001), ty_Int) -> new_compare5(new_sr0(vz50100, vz502001), new_sr0(vz502000, vz50101)) 21.99/10.77 new_compare7(vz5010, vz50200, bb) -> error([]) 21.99/10.77 new_compare5(Pos(Succ(vz501000)), Neg(vz502000)) -> GT 21.99/10.77 new_primCmpNat1(Zero, Succ(vz50200000)) -> LT 21.99/10.77 new_merge00(vz511, vz512, vz513, vz514, GT, cd) -> :(vz511, new_merge2(:(vz512, vz513), vz514, cd)) 21.99/10.77 new_compare(vz5010, vz50200, app(app(ty_Either, cb), cc)) -> new_compare13(vz5010, vz50200, cb, cc) 21.99/10.77 new_compare14(vz50200, vz502100, ty_@0) -> new_compare9(vz50200, vz502100) 21.99/10.77 new_compare14(vz50200, vz502100, ty_Float) -> new_compare10(vz50200, vz502100) 21.99/10.77 new_compare14(vz50200, vz502100, ty_Integer) -> new_compare2(vz50200, vz502100) 21.99/10.77 new_merge00(vz511, vz512, vz513, vz514, EQ, cd) -> :(vz512, new_merge2(vz513, :(vz511, vz514), cd)) 21.99/10.77 new_compare10(vz5010, vz50200) -> error([]) 21.99/10.77 new_compare14(vz50200, vz502100, app(ty_[], bb)) -> new_compare7(vz50200, vz502100, bb) 21.99/10.77 new_primMulNat0(Succ(vz5030000), Zero) -> Zero 21.99/10.77 new_primMulNat0(Zero, Succ(vz5040100)) -> Zero 21.99/10.77 new_compare(vz5010, vz50200, ty_Ordering) -> new_compare1(vz5010, vz50200) 21.99/10.77 new_compare14(vz50200, vz502100, app(app(ty_@2, bc), bd)) -> new_compare3(vz50200, vz502100, bc, bd) 21.99/10.77 new_compare(vz5010, vz50200, ty_Double) -> new_compare12(vz5010, vz50200) 21.99/10.77 new_compare5(Pos(Zero), Neg(Succ(vz5020000))) -> GT 21.99/10.77 new_primCmpNat2(vz501000, Zero) -> GT 21.99/10.77 new_compare(vz5010, vz50200, ty_Char) -> new_compare8(vz5010, vz50200) 21.99/10.77 new_sr0(Pos(vz503000), Neg(vz504010)) -> Neg(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_sr0(Neg(vz503000), Pos(vz504010)) -> Neg(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_compare1(vz5010, vz50200) -> error([]) 21.99/10.77 new_primCmpNat0(Succ(vz5020000), vz501000) -> new_primCmpNat1(vz5020000, vz501000) 21.99/10.77 new_compare14(vz50200, vz502100, ty_Bool) -> new_compare0(vz50200, vz502100) 21.99/10.77 new_compare14(vz50200, vz502100, app(app(ty_Either, cb), cc)) -> new_compare13(vz50200, vz502100, cb, cc) 21.99/10.77 new_primPlusNat1(Succ(vz5160), vz5040100) -> Succ(Succ(new_primPlusNat0(vz5160, vz5040100))) 21.99/10.77 new_merge1(vz501, vz5020, [], ba) -> new_merge2(vz501, vz5020, ba) 21.99/10.77 new_compare9(vz5010, vz50200) -> error([]) 21.99/10.77 21.99/10.77 The set Q consists of the following terms: 21.99/10.77 21.99/10.77 new_sr0(Neg(x0), Neg(x1)) 21.99/10.77 new_compare14(x0, x1, app(ty_Ratio, x2)) 21.99/10.77 new_compare14(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 21.99/10.77 new_compare4(:%(x0, x1), :%(x2, x3), ty_Int) 21.99/10.77 new_compare11(x0, x1, x2, x3, x4) 21.99/10.77 new_compare2(x0, x1) 21.99/10.77 new_primCmpNat0(Zero, x0) 21.99/10.77 new_compare12(x0, x1) 21.99/10.77 new_merge00(x0, x1, x2, x3, LT, x4) 21.99/10.77 new_primCmpNat1(Succ(x0), Succ(x1)) 21.99/10.77 new_primCmpNat2(x0, Zero) 21.99/10.77 new_sr0(Pos(x0), Neg(x1)) 21.99/10.77 new_sr0(Neg(x0), Pos(x1)) 21.99/10.77 new_compare4(:%(x0, x1), :%(x2, x3), ty_Integer) 21.99/10.77 new_compare(x0, x1, app(ty_[], x2)) 21.99/10.77 new_compare14(x0, x1, ty_Ordering) 21.99/10.77 new_primMulNat0(Succ(x0), Succ(x1)) 21.99/10.77 new_compare5(Neg(Zero), Neg(Zero)) 21.99/10.77 new_primCmpNat1(Succ(x0), Zero) 21.99/10.77 new_compare(x0, x1, app(ty_Ratio, x2)) 21.99/10.77 new_compare3(x0, x1, x2, x3) 21.99/10.77 new_compare(x0, x1, ty_@0) 21.99/10.77 new_primMulNat0(Zero, Zero) 21.99/10.77 new_primCmpNat0(Succ(x0), x1) 21.99/10.77 new_merge2(:(x0, x1), :(x2, x3), x4) 21.99/10.77 new_sr0(Pos(x0), Pos(x1)) 21.99/10.77 new_compare10(x0, x1) 21.99/10.77 new_merge00(x0, x1, x2, x3, GT, x4) 21.99/10.77 new_compare14(x0, x1, ty_Int) 21.99/10.77 new_compare(x0, x1, app(ty_Maybe, x2)) 21.99/10.77 new_compare6(x0, x1, x2) 21.99/10.77 new_compare5(Pos(Succ(x0)), Pos(x1)) 21.99/10.77 new_compare5(Neg(Zero), Neg(Succ(x0))) 21.99/10.77 new_primCmpNat1(Zero, Zero) 21.99/10.77 new_primPlusNat1(Succ(x0), x1) 21.99/10.77 new_merge1(x0, x1, [], x2) 21.99/10.77 new_primMulNat0(Zero, Succ(x0)) 21.99/10.77 new_compare1(x0, x1) 21.99/10.77 new_compare(x0, x1, ty_Int) 21.99/10.77 new_merge2([], :(x0, x1), x2) 21.99/10.77 new_compare14(x0, x1, app(ty_Maybe, x2)) 21.99/10.77 new_primCmpNat2(x0, Succ(x1)) 21.99/10.77 new_compare14(x0, x1, ty_Char) 21.99/10.77 new_compare14(x0, x1, ty_@0) 21.99/10.77 new_compare5(Neg(Succ(x0)), Pos(x1)) 21.99/10.77 new_compare5(Pos(Succ(x0)), Neg(x1)) 21.99/10.77 new_compare(x0, x1, ty_Ordering) 21.99/10.77 new_sr(x0, x1) 21.99/10.77 new_compare5(Neg(Succ(x0)), Neg(x1)) 21.99/10.77 new_merge_pairs0(:(x0, :(x1, x2)), x3) 21.99/10.77 new_primPlusNat1(Zero, x0) 21.99/10.77 new_compare(x0, x1, ty_Bool) 21.99/10.77 new_merge_pairs0(:(x0, []), x1) 21.99/10.77 new_compare9(x0, x1) 21.99/10.77 new_merge2(x0, [], x1) 21.99/10.77 new_compare13(x0, x1, x2, x3) 21.99/10.77 new_merge1(x0, [], :(x1, x2), x3) 21.99/10.77 new_primMulNat0(Succ(x0), Zero) 21.99/10.77 new_compare14(x0, x1, ty_Double) 21.99/10.77 new_compare(x0, x1, ty_Double) 21.99/10.77 new_compare14(x0, x1, app(app(ty_@2, x2), x3)) 21.99/10.77 new_compare5(Pos(Zero), Neg(Zero)) 21.99/10.77 new_compare5(Neg(Zero), Pos(Zero)) 21.99/10.77 new_compare(x0, x1, ty_Char) 21.99/10.77 new_compare8(x0, x1) 21.99/10.77 new_compare(x0, x1, app(app(ty_@2, x2), x3)) 21.99/10.77 new_compare5(Neg(Zero), Pos(Succ(x0))) 21.99/10.77 new_compare5(Pos(Zero), Neg(Succ(x0))) 21.99/10.77 new_primPlusNat0(Succ(x0), Zero) 21.99/10.77 new_primCmpNat1(Zero, Succ(x0)) 21.99/10.77 new_primPlusNat0(Zero, Succ(x0)) 21.99/10.77 new_compare(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 21.99/10.77 new_compare14(x0, x1, ty_Integer) 21.99/10.77 new_compare14(x0, x1, app(ty_[], x2)) 21.99/10.77 new_compare14(x0, x1, app(app(ty_Either, x2), x3)) 21.99/10.77 new_compare0(x0, x1) 21.99/10.77 new_compare(x0, x1, ty_Float) 21.99/10.77 new_compare14(x0, x1, ty_Float) 21.99/10.77 new_compare5(Pos(Zero), Pos(Zero)) 21.99/10.77 new_merge_pairs0([], x0) 21.99/10.77 new_compare(x0, x1, ty_Integer) 21.99/10.77 new_compare(x0, x1, app(app(ty_Either, x2), x3)) 21.99/10.77 new_compare14(x0, x1, ty_Bool) 21.99/10.77 new_primPlusNat0(Zero, Zero) 21.99/10.77 new_compare5(Pos(Zero), Pos(Succ(x0))) 21.99/10.77 new_primPlusNat0(Succ(x0), Succ(x1)) 21.99/10.77 new_compare7(x0, x1, x2) 21.99/10.77 new_merge1(x0, :(x1, x2), :(x3, x4), x5) 21.99/10.77 new_merge00(x0, x1, x2, x3, EQ, x4) 21.99/10.77 21.99/10.77 We have to consider all minimal (P,Q,R)-chains. 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (18) DependencyGraphProof (EQUIVALENT) 21.99/10.77 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (19) 21.99/10.77 Obligation: 21.99/10.77 Q DP problem: 21.99/10.77 The TRS P consists of the following rules: 21.99/10.77 21.99/10.77 new_mergesort'(vz501, :(vz5020, :(vz50210, vz50211)), ba) -> new_mergesort'(new_merge1(vz501, vz5020, vz50210, ba), new_merge_pairs0(vz50211, ba), ba) 21.99/10.77 21.99/10.77 The TRS R consists of the following rules: 21.99/10.77 21.99/10.77 new_sr0(Neg(vz503000), Neg(vz504010)) -> Pos(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_compare5(Pos(Succ(vz501000)), Pos(vz502000)) -> new_primCmpNat2(vz501000, vz502000) 21.99/10.77 new_compare14(vz50200, vz502100, app(ty_Ratio, bh)) -> new_compare4(vz50200, vz502100, bh) 21.99/10.77 new_sr0(Pos(vz503000), Pos(vz504010)) -> Pos(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_compare14(vz50200, vz502100, ty_Double) -> new_compare12(vz50200, vz502100) 21.99/10.77 new_primCmpNat0(Zero, vz501000) -> LT 21.99/10.77 new_compare14(vz50200, vz502100, app(app(app(ty_@3, be), bf), bg)) -> new_compare11(vz50200, vz502100, be, bf, bg) 21.99/10.77 new_primPlusNat0(Succ(vz51600), Zero) -> Succ(vz51600) 21.99/10.77 new_primPlusNat0(Zero, Succ(vz50401000)) -> Succ(vz50401000) 21.99/10.77 new_compare5(Neg(Succ(vz501000)), Pos(vz502000)) -> LT 21.99/10.77 new_compare5(Neg(Succ(vz501000)), Neg(vz502000)) -> new_primCmpNat0(vz502000, vz501000) 21.99/10.77 new_primMulNat0(Zero, Zero) -> Zero 21.99/10.77 new_primPlusNat0(Zero, Zero) -> Zero 21.99/10.77 new_compare5(Neg(Zero), Neg(Succ(vz5020000))) -> new_primCmpNat2(vz5020000, Zero) 21.99/10.77 new_compare(vz5010, vz50200, app(ty_Maybe, ca)) -> new_compare6(vz5010, vz50200, ca) 21.99/10.77 new_compare13(vz5010, vz50200, cb, cc) -> error([]) 21.99/10.77 new_primPlusNat1(Zero, vz5040100) -> Succ(vz5040100) 21.99/10.77 new_compare(vz5010, vz50200, app(app(ty_@2, bc), bd)) -> new_compare3(vz5010, vz50200, bc, bd) 21.99/10.77 new_compare4(:%(vz50100, vz50101), :%(vz502000, vz502001), ty_Integer) -> new_compare2(new_sr(vz50100, vz502001), new_sr(vz502000, vz50101)) 21.99/10.77 new_compare(vz5010, vz50200, app(ty_[], bb)) -> new_compare7(vz5010, vz50200, bb) 21.99/10.77 new_primCmpNat1(Zero, Zero) -> EQ 21.99/10.77 new_merge_pairs0(:(vz502110, []), ba) -> :(vz502110, []) 21.99/10.77 new_compare11(vz5010, vz50200, be, bf, bg) -> error([]) 21.99/10.77 new_merge1(vz501, :(vz50200, vz50201), :(vz502100, vz502101), ba) -> new_merge2(vz501, new_merge00(vz502100, vz50200, vz50201, vz502101, new_compare14(vz50200, vz502100, ba), ba), ba) 21.99/10.77 new_compare14(vz50200, vz502100, ty_Char) -> new_compare8(vz50200, vz502100) 21.99/10.77 new_compare5(Pos(Zero), Pos(Succ(vz5020000))) -> new_primCmpNat0(Zero, vz5020000) 21.99/10.77 new_compare5(Neg(Zero), Neg(Zero)) -> EQ 21.99/10.77 new_compare8(vz5010, vz50200) -> error([]) 21.99/10.77 new_compare(vz5010, vz50200, ty_Int) -> new_compare5(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, ty_Bool) -> new_compare0(vz5010, vz50200) 21.99/10.77 new_primCmpNat1(Succ(vz5010000), Zero) -> GT 21.99/10.77 new_compare12(vz5010, vz50200) -> error([]) 21.99/10.77 new_merge2([], :(vz50200, vz50201), ba) -> :(vz50200, vz50201) 21.99/10.77 new_compare5(Neg(Zero), Pos(Succ(vz5020000))) -> LT 21.99/10.77 new_compare5(Pos(Zero), Pos(Zero)) -> EQ 21.99/10.77 new_compare0(vz5010, vz50200) -> error([]) 21.99/10.77 new_primCmpNat2(vz501000, Succ(vz5020000)) -> new_primCmpNat1(vz501000, vz5020000) 21.99/10.77 new_compare(vz5010, vz50200, ty_Float) -> new_compare10(vz5010, vz50200) 21.99/10.77 new_compare6(vz5010, vz50200, ca) -> error([]) 21.99/10.77 new_compare(vz5010, vz50200, app(ty_Ratio, bh)) -> new_compare4(vz5010, vz50200, bh) 21.99/10.77 new_compare5(Pos(Zero), Neg(Zero)) -> EQ 21.99/10.77 new_compare5(Neg(Zero), Pos(Zero)) -> EQ 21.99/10.77 new_merge_pairs0(:(vz502110, :(vz5021110, vz5021111)), ba) -> :(new_merge2(vz502110, vz5021110, ba), new_merge_pairs0(vz5021111, ba)) 21.99/10.77 new_primPlusNat0(Succ(vz51600), Succ(vz50401000)) -> Succ(Succ(new_primPlusNat0(vz51600, vz50401000))) 21.99/10.77 new_merge00(vz511, vz512, vz513, vz514, LT, cd) -> :(vz512, new_merge2(vz513, :(vz511, vz514), cd)) 21.99/10.77 new_primMulNat0(Succ(vz5030000), Succ(vz5040100)) -> new_primPlusNat1(new_primMulNat0(vz5030000, Succ(vz5040100)), vz5040100) 21.99/10.77 new_compare14(vz50200, vz502100, ty_Int) -> new_compare5(vz50200, vz502100) 21.99/10.77 new_sr(vz502000, vz50101) -> error([]) 21.99/10.77 new_merge2(:(vz5010, vz5011), :(vz50200, vz50201), ba) -> new_merge00(vz50200, vz5010, vz5011, vz50201, new_compare(vz5010, vz50200, ba), ba) 21.99/10.77 new_compare3(vz5010, vz50200, bc, bd) -> error([]) 21.99/10.77 new_primCmpNat1(Succ(vz5010000), Succ(vz50200000)) -> new_primCmpNat1(vz5010000, vz50200000) 21.99/10.77 new_compare14(vz50200, vz502100, app(ty_Maybe, ca)) -> new_compare6(vz50200, vz502100, ca) 21.99/10.77 new_compare14(vz50200, vz502100, ty_Ordering) -> new_compare1(vz50200, vz502100) 21.99/10.77 new_merge2(vz501, [], ba) -> vz501 21.99/10.77 new_compare(vz5010, vz50200, ty_Integer) -> new_compare2(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, ty_@0) -> new_compare9(vz5010, vz50200) 21.99/10.77 new_compare(vz5010, vz50200, app(app(app(ty_@3, be), bf), bg)) -> new_compare11(vz5010, vz50200, be, bf, bg) 21.99/10.77 new_merge_pairs0([], ba) -> [] 21.99/10.77 new_merge1(vz501, [], :(vz502100, vz502101), ba) -> new_merge2(vz501, :(vz502100, vz502101), ba) 21.99/10.77 new_compare2(vz5010, vz50200) -> error([]) 21.99/10.77 new_compare4(:%(vz50100, vz50101), :%(vz502000, vz502001), ty_Int) -> new_compare5(new_sr0(vz50100, vz502001), new_sr0(vz502000, vz50101)) 21.99/10.77 new_compare7(vz5010, vz50200, bb) -> error([]) 21.99/10.77 new_compare5(Pos(Succ(vz501000)), Neg(vz502000)) -> GT 21.99/10.77 new_primCmpNat1(Zero, Succ(vz50200000)) -> LT 21.99/10.77 new_merge00(vz511, vz512, vz513, vz514, GT, cd) -> :(vz511, new_merge2(:(vz512, vz513), vz514, cd)) 21.99/10.77 new_compare(vz5010, vz50200, app(app(ty_Either, cb), cc)) -> new_compare13(vz5010, vz50200, cb, cc) 21.99/10.77 new_compare14(vz50200, vz502100, ty_@0) -> new_compare9(vz50200, vz502100) 21.99/10.77 new_compare14(vz50200, vz502100, ty_Float) -> new_compare10(vz50200, vz502100) 21.99/10.77 new_compare14(vz50200, vz502100, ty_Integer) -> new_compare2(vz50200, vz502100) 21.99/10.77 new_merge00(vz511, vz512, vz513, vz514, EQ, cd) -> :(vz512, new_merge2(vz513, :(vz511, vz514), cd)) 21.99/10.77 new_compare10(vz5010, vz50200) -> error([]) 21.99/10.77 new_compare14(vz50200, vz502100, app(ty_[], bb)) -> new_compare7(vz50200, vz502100, bb) 21.99/10.77 new_primMulNat0(Succ(vz5030000), Zero) -> Zero 21.99/10.77 new_primMulNat0(Zero, Succ(vz5040100)) -> Zero 21.99/10.77 new_compare(vz5010, vz50200, ty_Ordering) -> new_compare1(vz5010, vz50200) 21.99/10.77 new_compare14(vz50200, vz502100, app(app(ty_@2, bc), bd)) -> new_compare3(vz50200, vz502100, bc, bd) 21.99/10.77 new_compare(vz5010, vz50200, ty_Double) -> new_compare12(vz5010, vz50200) 21.99/10.77 new_compare5(Pos(Zero), Neg(Succ(vz5020000))) -> GT 21.99/10.77 new_primCmpNat2(vz501000, Zero) -> GT 21.99/10.77 new_compare(vz5010, vz50200, ty_Char) -> new_compare8(vz5010, vz50200) 21.99/10.77 new_sr0(Pos(vz503000), Neg(vz504010)) -> Neg(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_sr0(Neg(vz503000), Pos(vz504010)) -> Neg(new_primMulNat0(vz503000, vz504010)) 21.99/10.77 new_compare1(vz5010, vz50200) -> error([]) 21.99/10.77 new_primCmpNat0(Succ(vz5020000), vz501000) -> new_primCmpNat1(vz5020000, vz501000) 21.99/10.77 new_compare14(vz50200, vz502100, ty_Bool) -> new_compare0(vz50200, vz502100) 21.99/10.77 new_compare14(vz50200, vz502100, app(app(ty_Either, cb), cc)) -> new_compare13(vz50200, vz502100, cb, cc) 21.99/10.77 new_primPlusNat1(Succ(vz5160), vz5040100) -> Succ(Succ(new_primPlusNat0(vz5160, vz5040100))) 21.99/10.77 new_merge1(vz501, vz5020, [], ba) -> new_merge2(vz501, vz5020, ba) 21.99/10.77 new_compare9(vz5010, vz50200) -> error([]) 21.99/10.77 21.99/10.77 The set Q consists of the following terms: 21.99/10.77 21.99/10.77 new_sr0(Neg(x0), Neg(x1)) 21.99/10.77 new_compare14(x0, x1, app(ty_Ratio, x2)) 21.99/10.77 new_compare14(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 21.99/10.77 new_compare4(:%(x0, x1), :%(x2, x3), ty_Int) 21.99/10.77 new_compare11(x0, x1, x2, x3, x4) 21.99/10.77 new_compare2(x0, x1) 21.99/10.77 new_primCmpNat0(Zero, x0) 21.99/10.77 new_compare12(x0, x1) 21.99/10.77 new_merge00(x0, x1, x2, x3, LT, x4) 21.99/10.77 new_primCmpNat1(Succ(x0), Succ(x1)) 21.99/10.77 new_primCmpNat2(x0, Zero) 21.99/10.77 new_sr0(Pos(x0), Neg(x1)) 21.99/10.77 new_sr0(Neg(x0), Pos(x1)) 21.99/10.77 new_compare4(:%(x0, x1), :%(x2, x3), ty_Integer) 21.99/10.77 new_compare(x0, x1, app(ty_[], x2)) 21.99/10.77 new_compare14(x0, x1, ty_Ordering) 21.99/10.77 new_primMulNat0(Succ(x0), Succ(x1)) 21.99/10.77 new_compare5(Neg(Zero), Neg(Zero)) 21.99/10.77 new_primCmpNat1(Succ(x0), Zero) 21.99/10.77 new_compare(x0, x1, app(ty_Ratio, x2)) 21.99/10.77 new_compare3(x0, x1, x2, x3) 21.99/10.77 new_compare(x0, x1, ty_@0) 21.99/10.77 new_primMulNat0(Zero, Zero) 21.99/10.77 new_primCmpNat0(Succ(x0), x1) 21.99/10.77 new_merge2(:(x0, x1), :(x2, x3), x4) 21.99/10.77 new_sr0(Pos(x0), Pos(x1)) 21.99/10.77 new_compare10(x0, x1) 21.99/10.77 new_merge00(x0, x1, x2, x3, GT, x4) 21.99/10.77 new_compare14(x0, x1, ty_Int) 21.99/10.77 new_compare(x0, x1, app(ty_Maybe, x2)) 21.99/10.77 new_compare6(x0, x1, x2) 21.99/10.77 new_compare5(Pos(Succ(x0)), Pos(x1)) 21.99/10.77 new_compare5(Neg(Zero), Neg(Succ(x0))) 21.99/10.77 new_primCmpNat1(Zero, Zero) 21.99/10.77 new_primPlusNat1(Succ(x0), x1) 21.99/10.77 new_merge1(x0, x1, [], x2) 21.99/10.77 new_primMulNat0(Zero, Succ(x0)) 21.99/10.77 new_compare1(x0, x1) 21.99/10.77 new_compare(x0, x1, ty_Int) 21.99/10.77 new_merge2([], :(x0, x1), x2) 21.99/10.77 new_compare14(x0, x1, app(ty_Maybe, x2)) 21.99/10.77 new_primCmpNat2(x0, Succ(x1)) 21.99/10.77 new_compare14(x0, x1, ty_Char) 21.99/10.77 new_compare14(x0, x1, ty_@0) 21.99/10.77 new_compare5(Neg(Succ(x0)), Pos(x1)) 21.99/10.77 new_compare5(Pos(Succ(x0)), Neg(x1)) 21.99/10.77 new_compare(x0, x1, ty_Ordering) 21.99/10.77 new_sr(x0, x1) 21.99/10.77 new_compare5(Neg(Succ(x0)), Neg(x1)) 21.99/10.77 new_merge_pairs0(:(x0, :(x1, x2)), x3) 21.99/10.77 new_primPlusNat1(Zero, x0) 21.99/10.77 new_compare(x0, x1, ty_Bool) 21.99/10.77 new_merge_pairs0(:(x0, []), x1) 21.99/10.77 new_compare9(x0, x1) 21.99/10.77 new_merge2(x0, [], x1) 21.99/10.77 new_compare13(x0, x1, x2, x3) 21.99/10.77 new_merge1(x0, [], :(x1, x2), x3) 21.99/10.77 new_primMulNat0(Succ(x0), Zero) 21.99/10.77 new_compare14(x0, x1, ty_Double) 21.99/10.77 new_compare(x0, x1, ty_Double) 21.99/10.77 new_compare14(x0, x1, app(app(ty_@2, x2), x3)) 21.99/10.77 new_compare5(Pos(Zero), Neg(Zero)) 21.99/10.77 new_compare5(Neg(Zero), Pos(Zero)) 21.99/10.77 new_compare(x0, x1, ty_Char) 21.99/10.77 new_compare8(x0, x1) 21.99/10.77 new_compare(x0, x1, app(app(ty_@2, x2), x3)) 21.99/10.77 new_compare5(Neg(Zero), Pos(Succ(x0))) 21.99/10.77 new_compare5(Pos(Zero), Neg(Succ(x0))) 21.99/10.77 new_primPlusNat0(Succ(x0), Zero) 21.99/10.77 new_primCmpNat1(Zero, Succ(x0)) 21.99/10.77 new_primPlusNat0(Zero, Succ(x0)) 21.99/10.77 new_compare(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 21.99/10.77 new_compare14(x0, x1, ty_Integer) 21.99/10.77 new_compare14(x0, x1, app(ty_[], x2)) 21.99/10.77 new_compare14(x0, x1, app(app(ty_Either, x2), x3)) 21.99/10.77 new_compare0(x0, x1) 21.99/10.77 new_compare(x0, x1, ty_Float) 21.99/10.77 new_compare14(x0, x1, ty_Float) 21.99/10.77 new_compare5(Pos(Zero), Pos(Zero)) 21.99/10.77 new_merge_pairs0([], x0) 21.99/10.77 new_compare(x0, x1, ty_Integer) 21.99/10.77 new_compare(x0, x1, app(app(ty_Either, x2), x3)) 21.99/10.77 new_compare14(x0, x1, ty_Bool) 21.99/10.77 new_primPlusNat0(Zero, Zero) 21.99/10.77 new_compare5(Pos(Zero), Pos(Succ(x0))) 21.99/10.77 new_primPlusNat0(Succ(x0), Succ(x1)) 21.99/10.77 new_compare7(x0, x1, x2) 21.99/10.77 new_merge1(x0, :(x1, x2), :(x3, x4), x5) 21.99/10.77 new_merge00(x0, x1, x2, x3, EQ, x4) 21.99/10.77 21.99/10.77 We have to consider all minimal (P,Q,R)-chains. 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (20) QDPSizeChangeProof (EQUIVALENT) 21.99/10.77 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 21.99/10.77 21.99/10.77 Order:Polynomial interpretation [POLO]: 21.99/10.77 21.99/10.77 POL(:(x_1, x_2)) = 1 + x_2 21.99/10.77 POL(EQ) = 0 21.99/10.77 POL(GT) = 0 21.99/10.77 POL(LT) = 0 21.99/10.77 POL(Neg(x_1)) = x_1 21.99/10.77 POL(Pos(x_1)) = x_1 21.99/10.77 POL(Succ(x_1)) = x_1 21.99/10.77 POL(Zero) = 0 21.99/10.77 POL([]) = 0 21.99/10.77 POL(error(x_1)) = 0 21.99/10.77 POL(new_merge2(x_1, x_2, x_3)) = x_1 21.99/10.77 POL(new_merge_pairs0(x_1, x_2)) = x_1 21.99/10.77 POL(new_primCmpNat0(x_1, x_2)) = 1 + x_1 + x_2 21.99/10.77 POL(new_primCmpNat1(x_1, x_2)) = 0 21.99/10.77 POL(new_primCmpNat2(x_1, x_2)) = x_1 + x_2 21.99/10.77 POL(new_primMulNat0(x_1, x_2)) = 1 + x_2 21.99/10.77 POL(new_primPlusNat0(x_1, x_2)) = 0 21.99/10.77 POL(new_primPlusNat1(x_1, x_2)) = x_2 21.99/10.77 POL(new_sr(x_1, x_2)) = 1 21.99/10.77 POL(new_sr0(x_1, x_2)) = 1 + x_1 + x_2 21.99/10.77 21.99/10.77 21.99/10.77 21.99/10.77 21.99/10.77 From the DPs we obtained the following set of size-change graphs: 21.99/10.77 *new_mergesort'(vz501, :(vz5020, :(vz50210, vz50211)), ba) -> new_mergesort'(new_merge1(vz501, vz5020, vz50210, ba), new_merge_pairs0(vz50211, ba), ba) (allowed arguments on rhs = {2, 3}) 21.99/10.77 The graph contains the following edges 2 > 2, 3 >= 3 21.99/10.77 21.99/10.77 21.99/10.77 21.99/10.77 We oriented the following set of usable rules [AAECC05,FROCOS05]. 21.99/10.77 21.99/10.77 new_merge_pairs0([], ba) -> [] 21.99/10.77 new_merge_pairs0(:(vz502110, []), ba) -> :(vz502110, []) 21.99/10.77 new_merge_pairs0(:(vz502110, :(vz5021110, vz5021111)), ba) -> :(new_merge2(vz502110, vz5021110, ba), new_merge_pairs0(vz5021111, ba)) 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (21) 21.99/10.77 YES 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (22) 21.99/10.77 Obligation: 21.99/10.77 Q DP problem: 21.99/10.77 The TRS P consists of the following rules: 21.99/10.77 21.99/10.77 new_merge_pairs(:(vz502110, :(vz5021110, vz5021111)), ba) -> new_merge_pairs(vz5021111, ba) 21.99/10.77 21.99/10.77 R is empty. 21.99/10.77 Q is empty. 21.99/10.77 We have to consider all minimal (P,Q,R)-chains. 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (23) QDPSizeChangeProof (EQUIVALENT) 21.99/10.77 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. 21.99/10.77 21.99/10.77 From the DPs we obtained the following set of size-change graphs: 21.99/10.77 *new_merge_pairs(:(vz502110, :(vz5021110, vz5021111)), ba) -> new_merge_pairs(vz5021111, ba) 21.99/10.77 The graph contains the following edges 1 > 1, 2 >= 2 21.99/10.77 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (24) 21.99/10.77 YES 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (25) 21.99/10.77 Obligation: 21.99/10.77 Q DP problem: 21.99/10.77 The TRS P consists of the following rules: 21.99/10.77 21.99/10.77 new_map(:(vz3110, vz3111)) -> new_map(vz3111) 21.99/10.77 21.99/10.77 R is empty. 21.99/10.77 Q is empty. 21.99/10.77 We have to consider all minimal (P,Q,R)-chains. 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (26) QDPSizeChangeProof (EQUIVALENT) 21.99/10.77 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. 21.99/10.77 21.99/10.77 From the DPs we obtained the following set of size-change graphs: 21.99/10.77 *new_map(:(vz3110, vz3111)) -> new_map(vz3111) 21.99/10.77 The graph contains the following edges 1 > 1 21.99/10.77 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (27) 21.99/10.77 YES 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (28) 21.99/10.77 Obligation: 21.99/10.77 Q DP problem: 21.99/10.77 The TRS P consists of the following rules: 21.99/10.77 21.99/10.77 new_primMulNat(Succ(vz5030000), Succ(vz5040100)) -> new_primMulNat(vz5030000, Succ(vz5040100)) 21.99/10.77 21.99/10.77 R is empty. 21.99/10.77 Q is empty. 21.99/10.77 We have to consider all minimal (P,Q,R)-chains. 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (29) QDPSizeChangeProof (EQUIVALENT) 21.99/10.77 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. 21.99/10.77 21.99/10.77 From the DPs we obtained the following set of size-change graphs: 21.99/10.77 *new_primMulNat(Succ(vz5030000), Succ(vz5040100)) -> new_primMulNat(vz5030000, Succ(vz5040100)) 21.99/10.77 The graph contains the following edges 1 > 1, 2 >= 2 21.99/10.77 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (30) 21.99/10.77 YES 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (31) 21.99/10.77 Obligation: 21.99/10.77 Q DP problem: 21.99/10.77 The TRS P consists of the following rules: 21.99/10.77 21.99/10.77 new_primPlusNat(Succ(vz51600), Succ(vz50401000)) -> new_primPlusNat(vz51600, vz50401000) 21.99/10.77 21.99/10.77 R is empty. 21.99/10.77 Q is empty. 21.99/10.77 We have to consider all minimal (P,Q,R)-chains. 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (32) QDPSizeChangeProof (EQUIVALENT) 21.99/10.77 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. 21.99/10.77 21.99/10.77 From the DPs we obtained the following set of size-change graphs: 21.99/10.77 *new_primPlusNat(Succ(vz51600), Succ(vz50401000)) -> new_primPlusNat(vz51600, vz50401000) 21.99/10.77 The graph contains the following edges 1 > 1, 2 > 2 21.99/10.77 21.99/10.77 21.99/10.77 ---------------------------------------- 21.99/10.77 21.99/10.77 (33) 21.99/10.77 YES 21.99/10.81 EOF