11.03/4.60 YES 13.22/5.77 proof of /export/starexec/sandbox/benchmark/theBenchmark.hs 13.22/5.77 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 13.22/5.77 13.22/5.77 13.22/5.77 H-Termination with start terms of the given HASKELL could be proven: 13.22/5.77 13.22/5.77 (0) HASKELL 13.22/5.77 (1) IFR [EQUIVALENT, 0 ms] 13.22/5.77 (2) HASKELL 13.22/5.77 (3) BR [EQUIVALENT, 0 ms] 13.22/5.77 (4) HASKELL 13.22/5.77 (5) COR [EQUIVALENT, 16 ms] 13.22/5.77 (6) HASKELL 13.22/5.77 (7) Narrow [SOUND, 0 ms] 13.22/5.77 (8) AND 13.22/5.77 (9) QDP 13.22/5.77 (10) DependencyGraphProof [EQUIVALENT, 0 ms] 13.22/5.77 (11) AND 13.22/5.77 (12) QDP 13.22/5.77 (13) QDPSizeChangeProof [EQUIVALENT, 0 ms] 13.22/5.77 (14) YES 13.22/5.77 (15) QDP 13.22/5.77 (16) QDPSizeChangeProof [EQUIVALENT, 0 ms] 13.22/5.77 (17) YES 13.22/5.77 (18) QDP 13.22/5.77 (19) QDPSizeChangeProof [EQUIVALENT, 0 ms] 13.22/5.77 (20) YES 13.22/5.77 (21) QDP 13.22/5.77 (22) QDPSizeChangeProof [EQUIVALENT, 0 ms] 13.22/5.77 (23) YES 13.22/5.77 (24) QDP 13.22/5.77 (25) QDPSizeChangeProof [EQUIVALENT, 0 ms] 13.22/5.77 (26) YES 13.22/5.77 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (0) 13.22/5.77 Obligation: 13.22/5.77 mainModule Main 13.22/5.77 module Maybe where { 13.22/5.77 import qualified List; 13.22/5.77 import qualified Main; 13.22/5.77 import qualified Prelude; 13.22/5.77 } 13.22/5.77 module List where { 13.22/5.77 import qualified Main; 13.22/5.77 import qualified Maybe; 13.22/5.77 import qualified Prelude; 13.22/5.77 infix 5 \\; 13.22/5.77 (\\) :: Eq a => [a] -> [a] -> [a]; 13.22/5.77 (\\) = foldl (flip delete); 13.22/5.77 13.22/5.77 delete :: Eq a => a -> [a] -> [a]; 13.22/5.77 delete = deleteBy (==); 13.22/5.77 13.22/5.77 deleteBy :: (a -> a -> Bool) -> a -> [a] -> [a]; 13.22/5.77 deleteBy _ _ [] = []; 13.22/5.77 deleteBy eq x (y : ys) = if x `eq` y then ys else y : deleteBy eq x ys; 13.22/5.77 13.22/5.77 } 13.22/5.77 module Main where { 13.22/5.77 import qualified List; 13.22/5.77 import qualified Maybe; 13.22/5.77 import qualified Prelude; 13.22/5.77 } 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (1) IFR (EQUIVALENT) 13.22/5.77 If Reductions: 13.22/5.77 The following If expression 13.22/5.77 "if eq x y then ys else y : deleteBy eq x ys" 13.22/5.77 is transformed to 13.22/5.77 "deleteBy0 ys y eq x True = ys; 13.22/5.77 deleteBy0 ys y eq x False = y : deleteBy eq x ys; 13.22/5.77 " 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (2) 13.22/5.77 Obligation: 13.22/5.77 mainModule Main 13.22/5.77 module Maybe where { 13.22/5.77 import qualified List; 13.22/5.77 import qualified Main; 13.22/5.77 import qualified Prelude; 13.22/5.77 } 13.22/5.77 module List where { 13.22/5.77 import qualified Main; 13.22/5.77 import qualified Maybe; 13.22/5.77 import qualified Prelude; 13.22/5.77 infix 5 \\; 13.22/5.77 (\\) :: Eq a => [a] -> [a] -> [a]; 13.22/5.77 (\\) = foldl (flip delete); 13.22/5.77 13.22/5.77 delete :: Eq a => a -> [a] -> [a]; 13.22/5.77 delete = deleteBy (==); 13.22/5.77 13.22/5.77 deleteBy :: (a -> a -> Bool) -> a -> [a] -> [a]; 13.22/5.77 deleteBy _ _ [] = []; 13.22/5.77 deleteBy eq x (y : ys) = deleteBy0 ys y eq x (x `eq` y); 13.22/5.77 13.22/5.77 deleteBy0 ys y eq x True = ys; 13.22/5.77 deleteBy0 ys y eq x False = y : deleteBy eq x ys; 13.22/5.77 13.22/5.77 } 13.22/5.77 module Main where { 13.22/5.77 import qualified List; 13.22/5.77 import qualified Maybe; 13.22/5.77 import qualified Prelude; 13.22/5.77 } 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (3) BR (EQUIVALENT) 13.22/5.77 Replaced joker patterns by fresh variables and removed binding patterns. 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (4) 13.22/5.77 Obligation: 13.22/5.77 mainModule Main 13.22/5.77 module Maybe where { 13.22/5.77 import qualified List; 13.22/5.77 import qualified Main; 13.22/5.77 import qualified Prelude; 13.22/5.77 } 13.22/5.77 module List where { 13.22/5.77 import qualified Main; 13.22/5.77 import qualified Maybe; 13.22/5.77 import qualified Prelude; 13.22/5.77 infix 5 \\; 13.22/5.77 (\\) :: Eq a => [a] -> [a] -> [a]; 13.22/5.77 (\\) = foldl (flip delete); 13.22/5.77 13.22/5.77 delete :: Eq a => a -> [a] -> [a]; 13.22/5.77 delete = deleteBy (==); 13.22/5.77 13.22/5.77 deleteBy :: (a -> a -> Bool) -> a -> [a] -> [a]; 13.22/5.77 deleteBy wu wv [] = []; 13.22/5.77 deleteBy eq x (y : ys) = deleteBy0 ys y eq x (x `eq` y); 13.22/5.77 13.22/5.77 deleteBy0 ys y eq x True = ys; 13.22/5.77 deleteBy0 ys y eq x False = y : deleteBy eq x ys; 13.22/5.77 13.22/5.77 } 13.22/5.77 module Main where { 13.22/5.77 import qualified List; 13.22/5.77 import qualified Maybe; 13.22/5.77 import qualified Prelude; 13.22/5.77 } 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (5) COR (EQUIVALENT) 13.22/5.77 Cond Reductions: 13.22/5.77 The following Function with conditions 13.22/5.77 "undefined |Falseundefined; 13.22/5.77 " 13.22/5.77 is transformed to 13.22/5.77 "undefined = undefined1; 13.22/5.77 " 13.22/5.77 "undefined0 True = undefined; 13.22/5.77 " 13.22/5.77 "undefined1 = undefined0 False; 13.22/5.77 " 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (6) 13.22/5.77 Obligation: 13.22/5.77 mainModule Main 13.22/5.77 module Maybe where { 13.22/5.77 import qualified List; 13.22/5.77 import qualified Main; 13.22/5.77 import qualified Prelude; 13.22/5.77 } 13.22/5.77 module List where { 13.22/5.77 import qualified Main; 13.22/5.77 import qualified Maybe; 13.22/5.77 import qualified Prelude; 13.22/5.77 infix 5 \\; 13.22/5.77 (\\) :: Eq a => [a] -> [a] -> [a]; 13.22/5.77 (\\) = foldl (flip delete); 13.22/5.77 13.22/5.77 delete :: Eq a => a -> [a] -> [a]; 13.22/5.77 delete = deleteBy (==); 13.22/5.77 13.22/5.77 deleteBy :: (a -> a -> Bool) -> a -> [a] -> [a]; 13.22/5.77 deleteBy wu wv [] = []; 13.22/5.77 deleteBy eq x (y : ys) = deleteBy0 ys y eq x (x `eq` y); 13.22/5.77 13.22/5.77 deleteBy0 ys y eq x True = ys; 13.22/5.77 deleteBy0 ys y eq x False = y : deleteBy eq x ys; 13.22/5.77 13.22/5.77 } 13.22/5.77 module Main where { 13.22/5.77 import qualified List; 13.22/5.77 import qualified Maybe; 13.22/5.77 import qualified Prelude; 13.22/5.77 } 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (7) Narrow (SOUND) 13.22/5.77 Haskell To QDPs 13.22/5.77 13.22/5.77 digraph dp_graph { 13.22/5.77 node [outthreshold=100, inthreshold=100];1[label="(List.\\)",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 13.22/5.77 3[label="ww3 (List.\\)",fontsize=16,color="grey",shape="box"];3 -> 4[label="",style="dashed", color="grey", weight=3]; 13.22/5.77 4[label="ww3 (List.\\) ww4",fontsize=16,color="black",shape="triangle"];4 -> 5[label="",style="solid", color="black", weight=3]; 13.22/5.77 5[label="foldl (flip List.delete) ww3 ww4",fontsize=16,color="burlywood",shape="triangle"];619[label="ww4/ww40 : ww41",fontsize=10,color="white",style="solid",shape="box"];5 -> 619[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 619 -> 6[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 620[label="ww4/[]",fontsize=10,color="white",style="solid",shape="box"];5 -> 620[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 620 -> 7[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 6[label="foldl (flip List.delete) ww3 (ww40 : ww41)",fontsize=16,color="black",shape="box"];6 -> 8[label="",style="solid", color="black", weight=3]; 13.22/5.77 7[label="foldl (flip List.delete) ww3 []",fontsize=16,color="black",shape="box"];7 -> 9[label="",style="solid", color="black", weight=3]; 13.22/5.77 8 -> 5[label="",style="dashed", color="red", weight=0]; 13.22/5.77 8[label="foldl (flip List.delete) (flip List.delete ww3 ww40) ww41",fontsize=16,color="magenta"];8 -> 10[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 8 -> 11[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 9[label="ww3",fontsize=16,color="green",shape="box"];10[label="ww41",fontsize=16,color="green",shape="box"];11[label="flip List.delete ww3 ww40",fontsize=16,color="black",shape="box"];11 -> 12[label="",style="solid", color="black", weight=3]; 13.22/5.77 12[label="List.delete ww40 ww3",fontsize=16,color="black",shape="box"];12 -> 13[label="",style="solid", color="black", weight=3]; 13.22/5.77 13[label="List.deleteBy (==) ww40 ww3",fontsize=16,color="burlywood",shape="box"];621[label="ww3/ww30 : ww31",fontsize=10,color="white",style="solid",shape="box"];13 -> 621[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 621 -> 14[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 622[label="ww3/[]",fontsize=10,color="white",style="solid",shape="box"];13 -> 622[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 622 -> 15[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 14[label="List.deleteBy (==) ww40 (ww30 : ww31)",fontsize=16,color="black",shape="box"];14 -> 16[label="",style="solid", color="black", weight=3]; 13.22/5.77 15[label="List.deleteBy (==) ww40 []",fontsize=16,color="black",shape="box"];15 -> 17[label="",style="solid", color="black", weight=3]; 13.22/5.77 16[label="List.deleteBy0 ww31 ww30 (==) ww40 ((==) ww40 ww30)",fontsize=16,color="black",shape="box"];16 -> 18[label="",style="solid", color="black", weight=3]; 13.22/5.77 17[label="[]",fontsize=16,color="green",shape="box"];18[label="List.deleteBy0 ww31 ww30 primEqInt ww40 (primEqInt ww40 ww30)",fontsize=16,color="burlywood",shape="triangle"];623[label="ww40/Pos ww400",fontsize=10,color="white",style="solid",shape="box"];18 -> 623[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 623 -> 19[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 624[label="ww40/Neg ww400",fontsize=10,color="white",style="solid",shape="box"];18 -> 624[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 624 -> 20[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 19[label="List.deleteBy0 ww31 ww30 primEqInt (Pos ww400) (primEqInt (Pos ww400) ww30)",fontsize=16,color="burlywood",shape="box"];625[label="ww400/Succ ww4000",fontsize=10,color="white",style="solid",shape="box"];19 -> 625[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 625 -> 21[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 626[label="ww400/Zero",fontsize=10,color="white",style="solid",shape="box"];19 -> 626[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 626 -> 22[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 20[label="List.deleteBy0 ww31 ww30 primEqInt (Neg ww400) (primEqInt (Neg ww400) ww30)",fontsize=16,color="burlywood",shape="box"];627[label="ww400/Succ ww4000",fontsize=10,color="white",style="solid",shape="box"];20 -> 627[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 627 -> 23[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 628[label="ww400/Zero",fontsize=10,color="white",style="solid",shape="box"];20 -> 628[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 628 -> 24[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 21[label="List.deleteBy0 ww31 ww30 primEqInt (Pos (Succ ww4000)) (primEqInt (Pos (Succ ww4000)) ww30)",fontsize=16,color="burlywood",shape="box"];629[label="ww30/Pos ww300",fontsize=10,color="white",style="solid",shape="box"];21 -> 629[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 629 -> 25[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 630[label="ww30/Neg ww300",fontsize=10,color="white",style="solid",shape="box"];21 -> 630[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 630 -> 26[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 22[label="List.deleteBy0 ww31 ww30 primEqInt (Pos Zero) (primEqInt (Pos Zero) ww30)",fontsize=16,color="burlywood",shape="box"];631[label="ww30/Pos ww300",fontsize=10,color="white",style="solid",shape="box"];22 -> 631[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 631 -> 27[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 632[label="ww30/Neg ww300",fontsize=10,color="white",style="solid",shape="box"];22 -> 632[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 632 -> 28[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 23[label="List.deleteBy0 ww31 ww30 primEqInt (Neg (Succ ww4000)) (primEqInt (Neg (Succ ww4000)) ww30)",fontsize=16,color="burlywood",shape="box"];633[label="ww30/Pos ww300",fontsize=10,color="white",style="solid",shape="box"];23 -> 633[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 633 -> 29[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 634[label="ww30/Neg ww300",fontsize=10,color="white",style="solid",shape="box"];23 -> 634[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 634 -> 30[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 24[label="List.deleteBy0 ww31 ww30 primEqInt (Neg Zero) (primEqInt (Neg Zero) ww30)",fontsize=16,color="burlywood",shape="box"];635[label="ww30/Pos ww300",fontsize=10,color="white",style="solid",shape="box"];24 -> 635[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 635 -> 31[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 636[label="ww30/Neg ww300",fontsize=10,color="white",style="solid",shape="box"];24 -> 636[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 636 -> 32[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 25[label="List.deleteBy0 ww31 (Pos ww300) primEqInt (Pos (Succ ww4000)) (primEqInt (Pos (Succ ww4000)) (Pos ww300))",fontsize=16,color="burlywood",shape="box"];637[label="ww300/Succ ww3000",fontsize=10,color="white",style="solid",shape="box"];25 -> 637[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 637 -> 33[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 638[label="ww300/Zero",fontsize=10,color="white",style="solid",shape="box"];25 -> 638[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 638 -> 34[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 26[label="List.deleteBy0 ww31 (Neg ww300) primEqInt (Pos (Succ ww4000)) (primEqInt (Pos (Succ ww4000)) (Neg ww300))",fontsize=16,color="black",shape="box"];26 -> 35[label="",style="solid", color="black", weight=3]; 13.22/5.77 27[label="List.deleteBy0 ww31 (Pos ww300) primEqInt (Pos Zero) (primEqInt (Pos Zero) (Pos ww300))",fontsize=16,color="burlywood",shape="box"];639[label="ww300/Succ ww3000",fontsize=10,color="white",style="solid",shape="box"];27 -> 639[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 639 -> 36[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 640[label="ww300/Zero",fontsize=10,color="white",style="solid",shape="box"];27 -> 640[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 640 -> 37[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 28[label="List.deleteBy0 ww31 (Neg ww300) primEqInt (Pos Zero) (primEqInt (Pos Zero) (Neg ww300))",fontsize=16,color="burlywood",shape="box"];641[label="ww300/Succ ww3000",fontsize=10,color="white",style="solid",shape="box"];28 -> 641[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 641 -> 38[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 642[label="ww300/Zero",fontsize=10,color="white",style="solid",shape="box"];28 -> 642[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 642 -> 39[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 29[label="List.deleteBy0 ww31 (Pos ww300) primEqInt (Neg (Succ ww4000)) (primEqInt (Neg (Succ ww4000)) (Pos ww300))",fontsize=16,color="black",shape="box"];29 -> 40[label="",style="solid", color="black", weight=3]; 13.22/5.77 30[label="List.deleteBy0 ww31 (Neg ww300) primEqInt (Neg (Succ ww4000)) (primEqInt (Neg (Succ ww4000)) (Neg ww300))",fontsize=16,color="burlywood",shape="box"];643[label="ww300/Succ ww3000",fontsize=10,color="white",style="solid",shape="box"];30 -> 643[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 643 -> 41[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 644[label="ww300/Zero",fontsize=10,color="white",style="solid",shape="box"];30 -> 644[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 644 -> 42[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 31[label="List.deleteBy0 ww31 (Pos ww300) primEqInt (Neg Zero) (primEqInt (Neg Zero) (Pos ww300))",fontsize=16,color="burlywood",shape="box"];645[label="ww300/Succ ww3000",fontsize=10,color="white",style="solid",shape="box"];31 -> 645[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 645 -> 43[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 646[label="ww300/Zero",fontsize=10,color="white",style="solid",shape="box"];31 -> 646[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 646 -> 44[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 32[label="List.deleteBy0 ww31 (Neg ww300) primEqInt (Neg Zero) (primEqInt (Neg Zero) (Neg ww300))",fontsize=16,color="burlywood",shape="box"];647[label="ww300/Succ ww3000",fontsize=10,color="white",style="solid",shape="box"];32 -> 647[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 647 -> 45[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 648[label="ww300/Zero",fontsize=10,color="white",style="solid",shape="box"];32 -> 648[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 648 -> 46[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 33[label="List.deleteBy0 ww31 (Pos (Succ ww3000)) primEqInt (Pos (Succ ww4000)) (primEqInt (Pos (Succ ww4000)) (Pos (Succ ww3000)))",fontsize=16,color="black",shape="box"];33 -> 47[label="",style="solid", color="black", weight=3]; 13.22/5.77 34[label="List.deleteBy0 ww31 (Pos Zero) primEqInt (Pos (Succ ww4000)) (primEqInt (Pos (Succ ww4000)) (Pos Zero))",fontsize=16,color="black",shape="box"];34 -> 48[label="",style="solid", color="black", weight=3]; 13.22/5.77 35[label="List.deleteBy0 ww31 (Neg ww300) primEqInt (Pos (Succ ww4000)) False",fontsize=16,color="black",shape="box"];35 -> 49[label="",style="solid", color="black", weight=3]; 13.22/5.77 36[label="List.deleteBy0 ww31 (Pos (Succ ww3000)) primEqInt (Pos Zero) (primEqInt (Pos Zero) (Pos (Succ ww3000)))",fontsize=16,color="black",shape="box"];36 -> 50[label="",style="solid", color="black", weight=3]; 13.22/5.77 37[label="List.deleteBy0 ww31 (Pos Zero) primEqInt (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];37 -> 51[label="",style="solid", color="black", weight=3]; 13.22/5.77 38[label="List.deleteBy0 ww31 (Neg (Succ ww3000)) primEqInt (Pos Zero) (primEqInt (Pos Zero) (Neg (Succ ww3000)))",fontsize=16,color="black",shape="box"];38 -> 52[label="",style="solid", color="black", weight=3]; 13.22/5.77 39[label="List.deleteBy0 ww31 (Neg Zero) primEqInt (Pos Zero) (primEqInt (Pos Zero) (Neg Zero))",fontsize=16,color="black",shape="box"];39 -> 53[label="",style="solid", color="black", weight=3]; 13.22/5.77 40[label="List.deleteBy0 ww31 (Pos ww300) primEqInt (Neg (Succ ww4000)) False",fontsize=16,color="black",shape="box"];40 -> 54[label="",style="solid", color="black", weight=3]; 13.22/5.77 41[label="List.deleteBy0 ww31 (Neg (Succ ww3000)) primEqInt (Neg (Succ ww4000)) (primEqInt (Neg (Succ ww4000)) (Neg (Succ ww3000)))",fontsize=16,color="black",shape="box"];41 -> 55[label="",style="solid", color="black", weight=3]; 13.22/5.77 42[label="List.deleteBy0 ww31 (Neg Zero) primEqInt (Neg (Succ ww4000)) (primEqInt (Neg (Succ ww4000)) (Neg Zero))",fontsize=16,color="black",shape="box"];42 -> 56[label="",style="solid", color="black", weight=3]; 13.22/5.77 43[label="List.deleteBy0 ww31 (Pos (Succ ww3000)) primEqInt (Neg Zero) (primEqInt (Neg Zero) (Pos (Succ ww3000)))",fontsize=16,color="black",shape="box"];43 -> 57[label="",style="solid", color="black", weight=3]; 13.22/5.77 44[label="List.deleteBy0 ww31 (Pos Zero) primEqInt (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];44 -> 58[label="",style="solid", color="black", weight=3]; 13.22/5.77 45[label="List.deleteBy0 ww31 (Neg (Succ ww3000)) primEqInt (Neg Zero) (primEqInt (Neg Zero) (Neg (Succ ww3000)))",fontsize=16,color="black",shape="box"];45 -> 59[label="",style="solid", color="black", weight=3]; 13.22/5.77 46[label="List.deleteBy0 ww31 (Neg Zero) primEqInt (Neg Zero) (primEqInt (Neg Zero) (Neg Zero))",fontsize=16,color="black",shape="box"];46 -> 60[label="",style="solid", color="black", weight=3]; 13.22/5.77 47 -> 483[label="",style="dashed", color="red", weight=0]; 13.22/5.77 47[label="List.deleteBy0 ww31 (Pos (Succ ww3000)) primEqInt (Pos (Succ ww4000)) (primEqNat ww4000 ww3000)",fontsize=16,color="magenta"];47 -> 484[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 47 -> 485[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 47 -> 486[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 47 -> 487[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 47 -> 488[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 48[label="List.deleteBy0 ww31 (Pos Zero) primEqInt (Pos (Succ ww4000)) False",fontsize=16,color="black",shape="box"];48 -> 63[label="",style="solid", color="black", weight=3]; 13.22/5.77 49[label="Neg ww300 : List.deleteBy primEqInt (Pos (Succ ww4000)) ww31",fontsize=16,color="green",shape="box"];49 -> 64[label="",style="dashed", color="green", weight=3]; 13.22/5.77 50[label="List.deleteBy0 ww31 (Pos (Succ ww3000)) primEqInt (Pos Zero) False",fontsize=16,color="black",shape="box"];50 -> 65[label="",style="solid", color="black", weight=3]; 13.22/5.77 51[label="List.deleteBy0 ww31 (Pos Zero) primEqInt (Pos Zero) True",fontsize=16,color="black",shape="box"];51 -> 66[label="",style="solid", color="black", weight=3]; 13.22/5.77 52[label="List.deleteBy0 ww31 (Neg (Succ ww3000)) primEqInt (Pos Zero) False",fontsize=16,color="black",shape="box"];52 -> 67[label="",style="solid", color="black", weight=3]; 13.22/5.77 53[label="List.deleteBy0 ww31 (Neg Zero) primEqInt (Pos Zero) True",fontsize=16,color="black",shape="box"];53 -> 68[label="",style="solid", color="black", weight=3]; 13.22/5.77 54[label="Pos ww300 : List.deleteBy primEqInt (Neg (Succ ww4000)) ww31",fontsize=16,color="green",shape="box"];54 -> 69[label="",style="dashed", color="green", weight=3]; 13.22/5.77 55 -> 536[label="",style="dashed", color="red", weight=0]; 13.22/5.77 55[label="List.deleteBy0 ww31 (Neg (Succ ww3000)) primEqInt (Neg (Succ ww4000)) (primEqNat ww4000 ww3000)",fontsize=16,color="magenta"];55 -> 537[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 55 -> 538[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 55 -> 539[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 55 -> 540[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 55 -> 541[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 56[label="List.deleteBy0 ww31 (Neg Zero) primEqInt (Neg (Succ ww4000)) False",fontsize=16,color="black",shape="box"];56 -> 72[label="",style="solid", color="black", weight=3]; 13.22/5.77 57[label="List.deleteBy0 ww31 (Pos (Succ ww3000)) primEqInt (Neg Zero) False",fontsize=16,color="black",shape="box"];57 -> 73[label="",style="solid", color="black", weight=3]; 13.22/5.77 58[label="List.deleteBy0 ww31 (Pos Zero) primEqInt (Neg Zero) True",fontsize=16,color="black",shape="box"];58 -> 74[label="",style="solid", color="black", weight=3]; 13.22/5.77 59[label="List.deleteBy0 ww31 (Neg (Succ ww3000)) primEqInt (Neg Zero) False",fontsize=16,color="black",shape="box"];59 -> 75[label="",style="solid", color="black", weight=3]; 13.22/5.77 60[label="List.deleteBy0 ww31 (Neg Zero) primEqInt (Neg Zero) True",fontsize=16,color="black",shape="box"];60 -> 76[label="",style="solid", color="black", weight=3]; 13.22/5.77 484[label="ww4000",fontsize=16,color="green",shape="box"];485[label="ww3000",fontsize=16,color="green",shape="box"];486[label="ww3000",fontsize=16,color="green",shape="box"];487[label="ww4000",fontsize=16,color="green",shape="box"];488[label="ww31",fontsize=16,color="green",shape="box"];483[label="List.deleteBy0 ww45 (Pos (Succ ww46)) primEqInt (Pos (Succ ww47)) (primEqNat ww48 ww49)",fontsize=16,color="burlywood",shape="triangle"];649[label="ww48/Succ ww480",fontsize=10,color="white",style="solid",shape="box"];483 -> 649[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 649 -> 534[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 650[label="ww48/Zero",fontsize=10,color="white",style="solid",shape="box"];483 -> 650[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 650 -> 535[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 63[label="Pos Zero : List.deleteBy primEqInt (Pos (Succ ww4000)) ww31",fontsize=16,color="green",shape="box"];63 -> 81[label="",style="dashed", color="green", weight=3]; 13.22/5.77 64[label="List.deleteBy primEqInt (Pos (Succ ww4000)) ww31",fontsize=16,color="burlywood",shape="triangle"];651[label="ww31/ww310 : ww311",fontsize=10,color="white",style="solid",shape="box"];64 -> 651[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 651 -> 82[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 652[label="ww31/[]",fontsize=10,color="white",style="solid",shape="box"];64 -> 652[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 652 -> 83[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 65[label="Pos (Succ ww3000) : List.deleteBy primEqInt (Pos Zero) ww31",fontsize=16,color="green",shape="box"];65 -> 84[label="",style="dashed", color="green", weight=3]; 13.22/5.77 66[label="ww31",fontsize=16,color="green",shape="box"];67[label="Neg (Succ ww3000) : List.deleteBy primEqInt (Pos Zero) ww31",fontsize=16,color="green",shape="box"];67 -> 85[label="",style="dashed", color="green", weight=3]; 13.22/5.77 68[label="ww31",fontsize=16,color="green",shape="box"];69[label="List.deleteBy primEqInt (Neg (Succ ww4000)) ww31",fontsize=16,color="burlywood",shape="triangle"];653[label="ww31/ww310 : ww311",fontsize=10,color="white",style="solid",shape="box"];69 -> 653[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 653 -> 86[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 654[label="ww31/[]",fontsize=10,color="white",style="solid",shape="box"];69 -> 654[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 654 -> 87[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 537[label="ww3000",fontsize=16,color="green",shape="box"];538[label="ww3000",fontsize=16,color="green",shape="box"];539[label="ww4000",fontsize=16,color="green",shape="box"];540[label="ww31",fontsize=16,color="green",shape="box"];541[label="ww4000",fontsize=16,color="green",shape="box"];536[label="List.deleteBy0 ww51 (Neg (Succ ww52)) primEqInt (Neg (Succ ww53)) (primEqNat ww54 ww55)",fontsize=16,color="burlywood",shape="triangle"];655[label="ww54/Succ ww540",fontsize=10,color="white",style="solid",shape="box"];536 -> 655[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 655 -> 587[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 656[label="ww54/Zero",fontsize=10,color="white",style="solid",shape="box"];536 -> 656[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 656 -> 588[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 72[label="Neg Zero : List.deleteBy primEqInt (Neg (Succ ww4000)) ww31",fontsize=16,color="green",shape="box"];72 -> 92[label="",style="dashed", color="green", weight=3]; 13.22/5.77 73[label="Pos (Succ ww3000) : List.deleteBy primEqInt (Neg Zero) ww31",fontsize=16,color="green",shape="box"];73 -> 93[label="",style="dashed", color="green", weight=3]; 13.22/5.77 74[label="ww31",fontsize=16,color="green",shape="box"];75[label="Neg (Succ ww3000) : List.deleteBy primEqInt (Neg Zero) ww31",fontsize=16,color="green",shape="box"];75 -> 94[label="",style="dashed", color="green", weight=3]; 13.22/5.77 76[label="ww31",fontsize=16,color="green",shape="box"];534[label="List.deleteBy0 ww45 (Pos (Succ ww46)) primEqInt (Pos (Succ ww47)) (primEqNat (Succ ww480) ww49)",fontsize=16,color="burlywood",shape="box"];657[label="ww49/Succ ww490",fontsize=10,color="white",style="solid",shape="box"];534 -> 657[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 657 -> 589[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 658[label="ww49/Zero",fontsize=10,color="white",style="solid",shape="box"];534 -> 658[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 658 -> 590[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 535[label="List.deleteBy0 ww45 (Pos (Succ ww46)) primEqInt (Pos (Succ ww47)) (primEqNat Zero ww49)",fontsize=16,color="burlywood",shape="box"];659[label="ww49/Succ ww490",fontsize=10,color="white",style="solid",shape="box"];535 -> 659[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 659 -> 591[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 660[label="ww49/Zero",fontsize=10,color="white",style="solid",shape="box"];535 -> 660[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 660 -> 592[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 81 -> 64[label="",style="dashed", color="red", weight=0]; 13.22/5.77 81[label="List.deleteBy primEqInt (Pos (Succ ww4000)) ww31",fontsize=16,color="magenta"];82[label="List.deleteBy primEqInt (Pos (Succ ww4000)) (ww310 : ww311)",fontsize=16,color="black",shape="box"];82 -> 99[label="",style="solid", color="black", weight=3]; 13.22/5.77 83[label="List.deleteBy primEqInt (Pos (Succ ww4000)) []",fontsize=16,color="black",shape="box"];83 -> 100[label="",style="solid", color="black", weight=3]; 13.22/5.77 84[label="List.deleteBy primEqInt (Pos Zero) ww31",fontsize=16,color="burlywood",shape="triangle"];661[label="ww31/ww310 : ww311",fontsize=10,color="white",style="solid",shape="box"];84 -> 661[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 661 -> 101[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 662[label="ww31/[]",fontsize=10,color="white",style="solid",shape="box"];84 -> 662[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 662 -> 102[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 85 -> 84[label="",style="dashed", color="red", weight=0]; 13.22/5.77 85[label="List.deleteBy primEqInt (Pos Zero) ww31",fontsize=16,color="magenta"];86[label="List.deleteBy primEqInt (Neg (Succ ww4000)) (ww310 : ww311)",fontsize=16,color="black",shape="box"];86 -> 103[label="",style="solid", color="black", weight=3]; 13.22/5.77 87[label="List.deleteBy primEqInt (Neg (Succ ww4000)) []",fontsize=16,color="black",shape="box"];87 -> 104[label="",style="solid", color="black", weight=3]; 13.22/5.77 587[label="List.deleteBy0 ww51 (Neg (Succ ww52)) primEqInt (Neg (Succ ww53)) (primEqNat (Succ ww540) ww55)",fontsize=16,color="burlywood",shape="box"];663[label="ww55/Succ ww550",fontsize=10,color="white",style="solid",shape="box"];587 -> 663[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 663 -> 593[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 664[label="ww55/Zero",fontsize=10,color="white",style="solid",shape="box"];587 -> 664[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 664 -> 594[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 588[label="List.deleteBy0 ww51 (Neg (Succ ww52)) primEqInt (Neg (Succ ww53)) (primEqNat Zero ww55)",fontsize=16,color="burlywood",shape="box"];665[label="ww55/Succ ww550",fontsize=10,color="white",style="solid",shape="box"];588 -> 665[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 665 -> 595[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 666[label="ww55/Zero",fontsize=10,color="white",style="solid",shape="box"];588 -> 666[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 666 -> 596[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 92 -> 69[label="",style="dashed", color="red", weight=0]; 13.22/5.77 92[label="List.deleteBy primEqInt (Neg (Succ ww4000)) ww31",fontsize=16,color="magenta"];93[label="List.deleteBy primEqInt (Neg Zero) ww31",fontsize=16,color="burlywood",shape="triangle"];667[label="ww31/ww310 : ww311",fontsize=10,color="white",style="solid",shape="box"];93 -> 667[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 667 -> 109[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 668[label="ww31/[]",fontsize=10,color="white",style="solid",shape="box"];93 -> 668[label="",style="solid", color="burlywood", weight=9]; 13.22/5.77 668 -> 110[label="",style="solid", color="burlywood", weight=3]; 13.22/5.77 94 -> 93[label="",style="dashed", color="red", weight=0]; 13.22/5.77 94[label="List.deleteBy primEqInt (Neg Zero) ww31",fontsize=16,color="magenta"];589[label="List.deleteBy0 ww45 (Pos (Succ ww46)) primEqInt (Pos (Succ ww47)) (primEqNat (Succ ww480) (Succ ww490))",fontsize=16,color="black",shape="box"];589 -> 597[label="",style="solid", color="black", weight=3]; 13.22/5.77 590[label="List.deleteBy0 ww45 (Pos (Succ ww46)) primEqInt (Pos (Succ ww47)) (primEqNat (Succ ww480) Zero)",fontsize=16,color="black",shape="box"];590 -> 598[label="",style="solid", color="black", weight=3]; 13.22/5.77 591[label="List.deleteBy0 ww45 (Pos (Succ ww46)) primEqInt (Pos (Succ ww47)) (primEqNat Zero (Succ ww490))",fontsize=16,color="black",shape="box"];591 -> 599[label="",style="solid", color="black", weight=3]; 13.22/5.77 592[label="List.deleteBy0 ww45 (Pos (Succ ww46)) primEqInt (Pos (Succ ww47)) (primEqNat Zero Zero)",fontsize=16,color="black",shape="box"];592 -> 600[label="",style="solid", color="black", weight=3]; 13.22/5.77 99 -> 18[label="",style="dashed", color="red", weight=0]; 13.22/5.77 99[label="List.deleteBy0 ww311 ww310 primEqInt (Pos (Succ ww4000)) (primEqInt (Pos (Succ ww4000)) ww310)",fontsize=16,color="magenta"];99 -> 116[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 99 -> 117[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 99 -> 118[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 100[label="[]",fontsize=16,color="green",shape="box"];101[label="List.deleteBy primEqInt (Pos Zero) (ww310 : ww311)",fontsize=16,color="black",shape="box"];101 -> 119[label="",style="solid", color="black", weight=3]; 13.22/5.77 102[label="List.deleteBy primEqInt (Pos Zero) []",fontsize=16,color="black",shape="box"];102 -> 120[label="",style="solid", color="black", weight=3]; 13.22/5.77 103 -> 18[label="",style="dashed", color="red", weight=0]; 13.22/5.77 103[label="List.deleteBy0 ww311 ww310 primEqInt (Neg (Succ ww4000)) (primEqInt (Neg (Succ ww4000)) ww310)",fontsize=16,color="magenta"];103 -> 121[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 103 -> 122[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 103 -> 123[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 104[label="[]",fontsize=16,color="green",shape="box"];593[label="List.deleteBy0 ww51 (Neg (Succ ww52)) primEqInt (Neg (Succ ww53)) (primEqNat (Succ ww540) (Succ ww550))",fontsize=16,color="black",shape="box"];593 -> 601[label="",style="solid", color="black", weight=3]; 13.22/5.77 594[label="List.deleteBy0 ww51 (Neg (Succ ww52)) primEqInt (Neg (Succ ww53)) (primEqNat (Succ ww540) Zero)",fontsize=16,color="black",shape="box"];594 -> 602[label="",style="solid", color="black", weight=3]; 13.22/5.77 595[label="List.deleteBy0 ww51 (Neg (Succ ww52)) primEqInt (Neg (Succ ww53)) (primEqNat Zero (Succ ww550))",fontsize=16,color="black",shape="box"];595 -> 603[label="",style="solid", color="black", weight=3]; 13.22/5.77 596[label="List.deleteBy0 ww51 (Neg (Succ ww52)) primEqInt (Neg (Succ ww53)) (primEqNat Zero Zero)",fontsize=16,color="black",shape="box"];596 -> 604[label="",style="solid", color="black", weight=3]; 13.22/5.77 109[label="List.deleteBy primEqInt (Neg Zero) (ww310 : ww311)",fontsize=16,color="black",shape="box"];109 -> 129[label="",style="solid", color="black", weight=3]; 13.22/5.77 110[label="List.deleteBy primEqInt (Neg Zero) []",fontsize=16,color="black",shape="box"];110 -> 130[label="",style="solid", color="black", weight=3]; 13.22/5.77 597 -> 483[label="",style="dashed", color="red", weight=0]; 13.22/5.77 597[label="List.deleteBy0 ww45 (Pos (Succ ww46)) primEqInt (Pos (Succ ww47)) (primEqNat ww480 ww490)",fontsize=16,color="magenta"];597 -> 605[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 597 -> 606[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 598[label="List.deleteBy0 ww45 (Pos (Succ ww46)) primEqInt (Pos (Succ ww47)) False",fontsize=16,color="black",shape="triangle"];598 -> 607[label="",style="solid", color="black", weight=3]; 13.22/5.77 599 -> 598[label="",style="dashed", color="red", weight=0]; 13.22/5.77 599[label="List.deleteBy0 ww45 (Pos (Succ ww46)) primEqInt (Pos (Succ ww47)) False",fontsize=16,color="magenta"];600[label="List.deleteBy0 ww45 (Pos (Succ ww46)) primEqInt (Pos (Succ ww47)) True",fontsize=16,color="black",shape="box"];600 -> 608[label="",style="solid", color="black", weight=3]; 13.22/5.77 116[label="ww310",fontsize=16,color="green",shape="box"];117[label="Pos (Succ ww4000)",fontsize=16,color="green",shape="box"];118[label="ww311",fontsize=16,color="green",shape="box"];119 -> 18[label="",style="dashed", color="red", weight=0]; 13.22/5.77 119[label="List.deleteBy0 ww311 ww310 primEqInt (Pos Zero) (primEqInt (Pos Zero) ww310)",fontsize=16,color="magenta"];119 -> 137[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 119 -> 138[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 119 -> 139[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 120[label="[]",fontsize=16,color="green",shape="box"];121[label="ww310",fontsize=16,color="green",shape="box"];122[label="Neg (Succ ww4000)",fontsize=16,color="green",shape="box"];123[label="ww311",fontsize=16,color="green",shape="box"];601 -> 536[label="",style="dashed", color="red", weight=0]; 13.22/5.77 601[label="List.deleteBy0 ww51 (Neg (Succ ww52)) primEqInt (Neg (Succ ww53)) (primEqNat ww540 ww550)",fontsize=16,color="magenta"];601 -> 609[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 601 -> 610[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 602[label="List.deleteBy0 ww51 (Neg (Succ ww52)) primEqInt (Neg (Succ ww53)) False",fontsize=16,color="black",shape="triangle"];602 -> 611[label="",style="solid", color="black", weight=3]; 13.22/5.77 603 -> 602[label="",style="dashed", color="red", weight=0]; 13.22/5.77 603[label="List.deleteBy0 ww51 (Neg (Succ ww52)) primEqInt (Neg (Succ ww53)) False",fontsize=16,color="magenta"];604[label="List.deleteBy0 ww51 (Neg (Succ ww52)) primEqInt (Neg (Succ ww53)) True",fontsize=16,color="black",shape="box"];604 -> 612[label="",style="solid", color="black", weight=3]; 13.22/5.77 129 -> 18[label="",style="dashed", color="red", weight=0]; 13.22/5.77 129[label="List.deleteBy0 ww311 ww310 primEqInt (Neg Zero) (primEqInt (Neg Zero) ww310)",fontsize=16,color="magenta"];129 -> 146[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 129 -> 147[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 129 -> 148[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 130[label="[]",fontsize=16,color="green",shape="box"];605[label="ww480",fontsize=16,color="green",shape="box"];606[label="ww490",fontsize=16,color="green",shape="box"];607[label="Pos (Succ ww46) : List.deleteBy primEqInt (Pos (Succ ww47)) ww45",fontsize=16,color="green",shape="box"];607 -> 613[label="",style="dashed", color="green", weight=3]; 13.22/5.77 608[label="ww45",fontsize=16,color="green",shape="box"];137[label="ww310",fontsize=16,color="green",shape="box"];138[label="Pos Zero",fontsize=16,color="green",shape="box"];139[label="ww311",fontsize=16,color="green",shape="box"];609[label="ww550",fontsize=16,color="green",shape="box"];610[label="ww540",fontsize=16,color="green",shape="box"];611[label="Neg (Succ ww52) : List.deleteBy primEqInt (Neg (Succ ww53)) ww51",fontsize=16,color="green",shape="box"];611 -> 614[label="",style="dashed", color="green", weight=3]; 13.22/5.77 612[label="ww51",fontsize=16,color="green",shape="box"];146[label="ww310",fontsize=16,color="green",shape="box"];147[label="Neg Zero",fontsize=16,color="green",shape="box"];148[label="ww311",fontsize=16,color="green",shape="box"];613 -> 64[label="",style="dashed", color="red", weight=0]; 13.22/5.77 613[label="List.deleteBy primEqInt (Pos (Succ ww47)) ww45",fontsize=16,color="magenta"];613 -> 615[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 613 -> 616[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 614 -> 69[label="",style="dashed", color="red", weight=0]; 13.22/5.77 614[label="List.deleteBy primEqInt (Neg (Succ ww53)) ww51",fontsize=16,color="magenta"];614 -> 617[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 614 -> 618[label="",style="dashed", color="magenta", weight=3]; 13.22/5.77 615[label="ww47",fontsize=16,color="green",shape="box"];616[label="ww45",fontsize=16,color="green",shape="box"];617[label="ww51",fontsize=16,color="green",shape="box"];618[label="ww53",fontsize=16,color="green",shape="box"];} 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (8) 13.22/5.77 Complex Obligation (AND) 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (9) 13.22/5.77 Obligation: 13.22/5.77 Q DP problem: 13.22/5.77 The TRS P consists of the following rules: 13.22/5.77 13.22/5.77 new_deleteBy0(ww45, ww46, ww47, Succ(ww480), Zero) -> new_deleteBy(ww47, ww45) 13.22/5.77 new_deleteBy02(ww51, ww52, ww53, Succ(ww540), Zero) -> new_deleteBy2(ww53, ww51) 13.22/5.77 new_deleteBy(ww4000, :(ww310, ww311)) -> new_deleteBy01(ww311, ww310, Pos(Succ(ww4000))) 13.22/5.77 new_deleteBy02(ww51, ww52, ww53, Zero, Succ(ww550)) -> new_deleteBy03(ww51, ww52, ww53) 13.22/5.77 new_deleteBy03(ww51, ww52, ww53) -> new_deleteBy2(ww53, ww51) 13.22/5.77 new_deleteBy00(ww45, ww46, ww47) -> new_deleteBy(ww47, ww45) 13.22/5.77 new_deleteBy01(:(ww310, ww311), Pos(Succ(ww3000)), Pos(Zero)) -> new_deleteBy01(ww311, ww310, Pos(Zero)) 13.22/5.77 new_deleteBy01(:(ww310, ww311), Pos(Succ(ww3000)), Neg(Zero)) -> new_deleteBy01(ww311, ww310, Neg(Zero)) 13.22/5.77 new_deleteBy01(ww31, Neg(Succ(ww3000)), Neg(Zero)) -> new_deleteBy3(ww31) 13.22/5.77 new_deleteBy01(ww31, Pos(Succ(ww3000)), Pos(Succ(ww4000))) -> new_deleteBy0(ww31, ww3000, ww4000, ww4000, ww3000) 13.22/5.77 new_deleteBy01(:(ww310, ww311), Neg(ww300), Pos(Succ(ww4000))) -> new_deleteBy01(ww311, ww310, Pos(Succ(ww4000))) 13.22/5.77 new_deleteBy01(ww31, Neg(Succ(ww3000)), Pos(Zero)) -> new_deleteBy1(ww31) 13.22/5.77 new_deleteBy02(ww51, ww52, ww53, Succ(ww540), Succ(ww550)) -> new_deleteBy02(ww51, ww52, ww53, ww540, ww550) 13.22/5.77 new_deleteBy0(ww45, ww46, ww47, Zero, Succ(ww490)) -> new_deleteBy00(ww45, ww46, ww47) 13.22/5.77 new_deleteBy01(ww31, Neg(Succ(ww3000)), Neg(Succ(ww4000))) -> new_deleteBy02(ww31, ww3000, ww4000, ww4000, ww3000) 13.22/5.77 new_deleteBy2(ww4000, :(ww310, ww311)) -> new_deleteBy01(ww311, ww310, Neg(Succ(ww4000))) 13.22/5.77 new_deleteBy3(:(ww310, ww311)) -> new_deleteBy01(ww311, ww310, Neg(Zero)) 13.22/5.77 new_deleteBy0(ww45, ww46, ww47, Succ(ww480), Succ(ww490)) -> new_deleteBy0(ww45, ww46, ww47, ww480, ww490) 13.22/5.77 new_deleteBy1(:(ww310, ww311)) -> new_deleteBy01(ww311, ww310, Pos(Zero)) 13.22/5.77 new_deleteBy01(ww31, Neg(Zero), Neg(Succ(ww4000))) -> new_deleteBy2(ww4000, ww31) 13.22/5.77 new_deleteBy01(ww31, Pos(Zero), Pos(Succ(ww4000))) -> new_deleteBy(ww4000, ww31) 13.22/5.77 new_deleteBy01(:(ww310, ww311), Pos(ww300), Neg(Succ(ww4000))) -> new_deleteBy01(ww311, ww310, Neg(Succ(ww4000))) 13.22/5.77 13.22/5.77 R is empty. 13.22/5.77 Q is empty. 13.22/5.77 We have to consider all minimal (P,Q,R)-chains. 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (10) DependencyGraphProof (EQUIVALENT) 13.22/5.77 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 4 SCCs. 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (11) 13.22/5.77 Complex Obligation (AND) 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (12) 13.22/5.77 Obligation: 13.22/5.77 Q DP problem: 13.22/5.77 The TRS P consists of the following rules: 13.22/5.77 13.22/5.77 new_deleteBy01(ww31, Neg(Succ(ww3000)), Neg(Zero)) -> new_deleteBy3(ww31) 13.22/5.77 new_deleteBy3(:(ww310, ww311)) -> new_deleteBy01(ww311, ww310, Neg(Zero)) 13.22/5.77 new_deleteBy01(:(ww310, ww311), Pos(Succ(ww3000)), Neg(Zero)) -> new_deleteBy01(ww311, ww310, Neg(Zero)) 13.22/5.77 13.22/5.77 R is empty. 13.22/5.77 Q is empty. 13.22/5.77 We have to consider all minimal (P,Q,R)-chains. 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (13) QDPSizeChangeProof (EQUIVALENT) 13.22/5.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. 13.22/5.77 13.22/5.77 From the DPs we obtained the following set of size-change graphs: 13.22/5.77 *new_deleteBy3(:(ww310, ww311)) -> new_deleteBy01(ww311, ww310, Neg(Zero)) 13.22/5.77 The graph contains the following edges 1 > 1, 1 > 2 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy01(:(ww310, ww311), Pos(Succ(ww3000)), Neg(Zero)) -> new_deleteBy01(ww311, ww310, Neg(Zero)) 13.22/5.77 The graph contains the following edges 1 > 1, 1 > 2, 3 >= 3 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy01(ww31, Neg(Succ(ww3000)), Neg(Zero)) -> new_deleteBy3(ww31) 13.22/5.77 The graph contains the following edges 1 >= 1 13.22/5.77 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (14) 13.22/5.77 YES 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (15) 13.22/5.77 Obligation: 13.22/5.77 Q DP problem: 13.22/5.77 The TRS P consists of the following rules: 13.22/5.77 13.22/5.77 new_deleteBy01(ww31, Neg(Succ(ww3000)), Pos(Zero)) -> new_deleteBy1(ww31) 13.22/5.77 new_deleteBy1(:(ww310, ww311)) -> new_deleteBy01(ww311, ww310, Pos(Zero)) 13.22/5.77 new_deleteBy01(:(ww310, ww311), Pos(Succ(ww3000)), Pos(Zero)) -> new_deleteBy01(ww311, ww310, Pos(Zero)) 13.22/5.77 13.22/5.77 R is empty. 13.22/5.77 Q is empty. 13.22/5.77 We have to consider all minimal (P,Q,R)-chains. 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (16) QDPSizeChangeProof (EQUIVALENT) 13.22/5.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. 13.22/5.77 13.22/5.77 From the DPs we obtained the following set of size-change graphs: 13.22/5.77 *new_deleteBy1(:(ww310, ww311)) -> new_deleteBy01(ww311, ww310, Pos(Zero)) 13.22/5.77 The graph contains the following edges 1 > 1, 1 > 2 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy01(:(ww310, ww311), Pos(Succ(ww3000)), Pos(Zero)) -> new_deleteBy01(ww311, ww310, Pos(Zero)) 13.22/5.77 The graph contains the following edges 1 > 1, 1 > 2, 3 >= 3 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy01(ww31, Neg(Succ(ww3000)), Pos(Zero)) -> new_deleteBy1(ww31) 13.22/5.77 The graph contains the following edges 1 >= 1 13.22/5.77 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (17) 13.22/5.77 YES 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (18) 13.22/5.77 Obligation: 13.22/5.77 Q DP problem: 13.22/5.77 The TRS P consists of the following rules: 13.22/5.77 13.22/5.77 new_deleteBy2(ww4000, :(ww310, ww311)) -> new_deleteBy01(ww311, ww310, Neg(Succ(ww4000))) 13.22/5.77 new_deleteBy01(ww31, Neg(Succ(ww3000)), Neg(Succ(ww4000))) -> new_deleteBy02(ww31, ww3000, ww4000, ww4000, ww3000) 13.22/5.77 new_deleteBy02(ww51, ww52, ww53, Succ(ww540), Zero) -> new_deleteBy2(ww53, ww51) 13.22/5.77 new_deleteBy02(ww51, ww52, ww53, Zero, Succ(ww550)) -> new_deleteBy03(ww51, ww52, ww53) 13.22/5.77 new_deleteBy03(ww51, ww52, ww53) -> new_deleteBy2(ww53, ww51) 13.22/5.77 new_deleteBy02(ww51, ww52, ww53, Succ(ww540), Succ(ww550)) -> new_deleteBy02(ww51, ww52, ww53, ww540, ww550) 13.22/5.77 new_deleteBy01(ww31, Neg(Zero), Neg(Succ(ww4000))) -> new_deleteBy2(ww4000, ww31) 13.22/5.77 new_deleteBy01(:(ww310, ww311), Pos(ww300), Neg(Succ(ww4000))) -> new_deleteBy01(ww311, ww310, Neg(Succ(ww4000))) 13.22/5.77 13.22/5.77 R is empty. 13.22/5.77 Q is empty. 13.22/5.77 We have to consider all minimal (P,Q,R)-chains. 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (19) QDPSizeChangeProof (EQUIVALENT) 13.22/5.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. 13.22/5.77 13.22/5.77 From the DPs we obtained the following set of size-change graphs: 13.22/5.77 *new_deleteBy01(ww31, Neg(Zero), Neg(Succ(ww4000))) -> new_deleteBy2(ww4000, ww31) 13.22/5.77 The graph contains the following edges 3 > 1, 1 >= 2 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy01(:(ww310, ww311), Pos(ww300), Neg(Succ(ww4000))) -> new_deleteBy01(ww311, ww310, Neg(Succ(ww4000))) 13.22/5.77 The graph contains the following edges 1 > 1, 1 > 2, 3 >= 3 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy01(ww31, Neg(Succ(ww3000)), Neg(Succ(ww4000))) -> new_deleteBy02(ww31, ww3000, ww4000, ww4000, ww3000) 13.22/5.77 The graph contains the following edges 1 >= 1, 2 > 2, 3 > 3, 3 > 4, 2 > 5 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy02(ww51, ww52, ww53, Succ(ww540), Zero) -> new_deleteBy2(ww53, ww51) 13.22/5.77 The graph contains the following edges 3 >= 1, 1 >= 2 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy03(ww51, ww52, ww53) -> new_deleteBy2(ww53, ww51) 13.22/5.77 The graph contains the following edges 3 >= 1, 1 >= 2 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy2(ww4000, :(ww310, ww311)) -> new_deleteBy01(ww311, ww310, Neg(Succ(ww4000))) 13.22/5.77 The graph contains the following edges 2 > 1, 2 > 2 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy02(ww51, ww52, ww53, Succ(ww540), Succ(ww550)) -> new_deleteBy02(ww51, ww52, ww53, ww540, ww550) 13.22/5.77 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 > 4, 5 > 5 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy02(ww51, ww52, ww53, Zero, Succ(ww550)) -> new_deleteBy03(ww51, ww52, ww53) 13.22/5.77 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3 13.22/5.77 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (20) 13.22/5.77 YES 13.22/5.77 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (21) 13.22/5.77 Obligation: 13.22/5.77 Q DP problem: 13.22/5.77 The TRS P consists of the following rules: 13.22/5.77 13.22/5.77 new_deleteBy(ww4000, :(ww310, ww311)) -> new_deleteBy01(ww311, ww310, Pos(Succ(ww4000))) 13.22/5.77 new_deleteBy01(ww31, Pos(Succ(ww3000)), Pos(Succ(ww4000))) -> new_deleteBy0(ww31, ww3000, ww4000, ww4000, ww3000) 13.22/5.77 new_deleteBy0(ww45, ww46, ww47, Succ(ww480), Zero) -> new_deleteBy(ww47, ww45) 13.22/5.77 new_deleteBy0(ww45, ww46, ww47, Zero, Succ(ww490)) -> new_deleteBy00(ww45, ww46, ww47) 13.22/5.77 new_deleteBy00(ww45, ww46, ww47) -> new_deleteBy(ww47, ww45) 13.22/5.77 new_deleteBy0(ww45, ww46, ww47, Succ(ww480), Succ(ww490)) -> new_deleteBy0(ww45, ww46, ww47, ww480, ww490) 13.22/5.77 new_deleteBy01(:(ww310, ww311), Neg(ww300), Pos(Succ(ww4000))) -> new_deleteBy01(ww311, ww310, Pos(Succ(ww4000))) 13.22/5.77 new_deleteBy01(ww31, Pos(Zero), Pos(Succ(ww4000))) -> new_deleteBy(ww4000, ww31) 13.22/5.77 13.22/5.77 R is empty. 13.22/5.77 Q is empty. 13.22/5.77 We have to consider all minimal (P,Q,R)-chains. 13.22/5.77 ---------------------------------------- 13.22/5.77 13.22/5.77 (22) QDPSizeChangeProof (EQUIVALENT) 13.22/5.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. 13.22/5.77 13.22/5.77 From the DPs we obtained the following set of size-change graphs: 13.22/5.77 *new_deleteBy01(ww31, Pos(Zero), Pos(Succ(ww4000))) -> new_deleteBy(ww4000, ww31) 13.22/5.77 The graph contains the following edges 3 > 1, 1 >= 2 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy01(:(ww310, ww311), Neg(ww300), Pos(Succ(ww4000))) -> new_deleteBy01(ww311, ww310, Pos(Succ(ww4000))) 13.22/5.77 The graph contains the following edges 1 > 1, 1 > 2, 3 >= 3 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy01(ww31, Pos(Succ(ww3000)), Pos(Succ(ww4000))) -> new_deleteBy0(ww31, ww3000, ww4000, ww4000, ww3000) 13.22/5.77 The graph contains the following edges 1 >= 1, 2 > 2, 3 > 3, 3 > 4, 2 > 5 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy0(ww45, ww46, ww47, Succ(ww480), Zero) -> new_deleteBy(ww47, ww45) 13.22/5.77 The graph contains the following edges 3 >= 1, 1 >= 2 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy00(ww45, ww46, ww47) -> new_deleteBy(ww47, ww45) 13.22/5.77 The graph contains the following edges 3 >= 1, 1 >= 2 13.22/5.77 13.22/5.77 13.22/5.77 *new_deleteBy(ww4000, :(ww310, ww311)) -> new_deleteBy01(ww311, ww310, Pos(Succ(ww4000))) 13.22/5.78 The graph contains the following edges 2 > 1, 2 > 2 13.22/5.78 13.22/5.78 13.22/5.78 *new_deleteBy0(ww45, ww46, ww47, Succ(ww480), Succ(ww490)) -> new_deleteBy0(ww45, ww46, ww47, ww480, ww490) 13.22/5.78 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 > 4, 5 > 5 13.22/5.78 13.22/5.78 13.22/5.78 *new_deleteBy0(ww45, ww46, ww47, Zero, Succ(ww490)) -> new_deleteBy00(ww45, ww46, ww47) 13.22/5.78 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3 13.22/5.78 13.22/5.78 13.22/5.78 ---------------------------------------- 13.22/5.78 13.22/5.78 (23) 13.22/5.78 YES 13.22/5.78 13.22/5.78 ---------------------------------------- 13.22/5.78 13.22/5.78 (24) 13.22/5.78 Obligation: 13.22/5.78 Q DP problem: 13.22/5.78 The TRS P consists of the following rules: 13.22/5.78 13.22/5.78 new_foldl(ww3, :(ww40, ww41)) -> new_foldl(new_deleteBy4(ww40, ww3), ww41) 13.22/5.78 13.22/5.78 The TRS R consists of the following rules: 13.22/5.78 13.22/5.78 new_deleteBy04(ww45, ww46, ww47, Zero, Zero) -> ww45 13.22/5.78 new_deleteBy07(ww51, ww52, ww53, Succ(ww540), Zero) -> new_deleteBy08(ww51, ww52, ww53) 13.22/5.78 new_deleteBy07(ww51, ww52, ww53, Zero, Succ(ww550)) -> new_deleteBy08(ww51, ww52, ww53) 13.22/5.78 new_deleteBy4(ww40, []) -> [] 13.22/5.78 new_deleteBy06(ww31, Neg(Zero), Neg(Succ(ww4000))) -> :(Neg(Zero), new_deleteBy8(ww4000, ww31)) 13.22/5.78 new_deleteBy06(ww31, Pos(Succ(ww3000)), Pos(Succ(ww4000))) -> new_deleteBy04(ww31, ww3000, ww4000, ww4000, ww3000) 13.22/5.78 new_deleteBy7(:(ww310, ww311)) -> new_deleteBy06(ww311, ww310, Pos(Zero)) 13.22/5.78 new_deleteBy06(ww31, Neg(Succ(ww3000)), Pos(Zero)) -> :(Neg(Succ(ww3000)), new_deleteBy7(ww31)) 13.22/5.78 new_deleteBy6(ww4000, []) -> [] 13.22/5.78 new_deleteBy06(ww31, Pos(Zero), Pos(Succ(ww4000))) -> :(Pos(Zero), new_deleteBy6(ww4000, ww31)) 13.22/5.78 new_deleteBy4(ww40, :(ww30, ww31)) -> new_deleteBy06(ww31, ww30, ww40) 13.22/5.78 new_deleteBy8(ww4000, []) -> [] 13.22/5.78 new_deleteBy04(ww45, ww46, ww47, Succ(ww480), Zero) -> new_deleteBy05(ww45, ww46, ww47) 13.22/5.78 new_deleteBy04(ww45, ww46, ww47, Zero, Succ(ww490)) -> new_deleteBy05(ww45, ww46, ww47) 13.22/5.78 new_deleteBy06(ww31, Pos(Zero), Pos(Zero)) -> ww31 13.22/5.78 new_deleteBy06(ww31, Neg(Zero), Pos(Zero)) -> ww31 13.22/5.78 new_deleteBy06(ww31, Pos(Zero), Neg(Zero)) -> ww31 13.22/5.78 new_deleteBy06(ww31, Neg(Succ(ww3000)), Neg(Zero)) -> :(Neg(Succ(ww3000)), new_deleteBy5(ww31)) 13.22/5.78 new_deleteBy5(:(ww310, ww311)) -> new_deleteBy06(ww311, ww310, Neg(Zero)) 13.22/5.78 new_deleteBy06(ww31, Neg(ww300), Pos(Succ(ww4000))) -> :(Neg(ww300), new_deleteBy6(ww4000, ww31)) 13.22/5.78 new_deleteBy06(ww31, Pos(Succ(ww3000)), Pos(Zero)) -> :(Pos(Succ(ww3000)), new_deleteBy7(ww31)) 13.22/5.78 new_deleteBy04(ww45, ww46, ww47, Succ(ww480), Succ(ww490)) -> new_deleteBy04(ww45, ww46, ww47, ww480, ww490) 13.22/5.78 new_deleteBy06(ww31, Pos(Succ(ww3000)), Neg(Zero)) -> :(Pos(Succ(ww3000)), new_deleteBy5(ww31)) 13.22/5.78 new_deleteBy06(ww31, Neg(Zero), Neg(Zero)) -> ww31 13.22/5.78 new_deleteBy06(ww31, Neg(Succ(ww3000)), Neg(Succ(ww4000))) -> new_deleteBy07(ww31, ww3000, ww4000, ww4000, ww3000) 13.22/5.78 new_deleteBy7([]) -> [] 13.22/5.78 new_deleteBy5([]) -> [] 13.22/5.78 new_deleteBy07(ww51, ww52, ww53, Succ(ww540), Succ(ww550)) -> new_deleteBy07(ww51, ww52, ww53, ww540, ww550) 13.22/5.78 new_deleteBy07(ww51, ww52, ww53, Zero, Zero) -> ww51 13.22/5.78 new_deleteBy06(ww31, Pos(ww300), Neg(Succ(ww4000))) -> :(Pos(ww300), new_deleteBy8(ww4000, ww31)) 13.22/5.78 new_deleteBy05(ww45, ww46, ww47) -> :(Pos(Succ(ww46)), new_deleteBy6(ww47, ww45)) 13.22/5.78 new_deleteBy8(ww4000, :(ww310, ww311)) -> new_deleteBy06(ww311, ww310, Neg(Succ(ww4000))) 13.22/5.78 new_deleteBy6(ww4000, :(ww310, ww311)) -> new_deleteBy06(ww311, ww310, Pos(Succ(ww4000))) 13.22/5.78 new_deleteBy08(ww51, ww52, ww53) -> :(Neg(Succ(ww52)), new_deleteBy8(ww53, ww51)) 13.22/5.78 13.22/5.78 The set Q consists of the following terms: 13.22/5.78 13.22/5.78 new_deleteBy06(x0, Neg(Succ(x1)), Neg(Zero)) 13.22/5.78 new_deleteBy04(x0, x1, x2, Succ(x3), Zero) 13.22/5.78 new_deleteBy07(x0, x1, x2, Zero, Succ(x3)) 13.22/5.78 new_deleteBy6(x0, :(x1, x2)) 13.22/5.78 new_deleteBy08(x0, x1, x2) 13.22/5.78 new_deleteBy05(x0, x1, x2) 13.22/5.78 new_deleteBy07(x0, x1, x2, Succ(x3), Zero) 13.22/5.78 new_deleteBy04(x0, x1, x2, Succ(x3), Succ(x4)) 13.22/5.78 new_deleteBy5(:(x0, x1)) 13.22/5.78 new_deleteBy7([]) 13.22/5.78 new_deleteBy6(x0, []) 13.22/5.78 new_deleteBy04(x0, x1, x2, Zero, Zero) 13.22/5.78 new_deleteBy8(x0, []) 13.22/5.78 new_deleteBy06(x0, Pos(Zero), Pos(Succ(x1))) 13.22/5.78 new_deleteBy06(x0, Neg(Zero), Neg(Zero)) 13.22/5.78 new_deleteBy4(x0, []) 13.22/5.78 new_deleteBy06(x0, Neg(Zero), Pos(Zero)) 13.22/5.78 new_deleteBy06(x0, Pos(Zero), Neg(Zero)) 13.22/5.78 new_deleteBy06(x0, Pos(Succ(x1)), Pos(Zero)) 13.22/5.78 new_deleteBy8(x0, :(x1, x2)) 13.22/5.78 new_deleteBy04(x0, x1, x2, Zero, Succ(x3)) 13.22/5.78 new_deleteBy06(x0, Pos(Zero), Pos(Zero)) 13.22/5.78 new_deleteBy06(x0, Neg(Succ(x1)), Neg(Succ(x2))) 13.22/5.78 new_deleteBy06(x0, Neg(Succ(x1)), Pos(Zero)) 13.22/5.78 new_deleteBy06(x0, Pos(Succ(x1)), Neg(Zero)) 13.22/5.78 new_deleteBy5([]) 13.22/5.78 new_deleteBy7(:(x0, x1)) 13.22/5.78 new_deleteBy06(x0, Pos(Succ(x1)), Pos(Succ(x2))) 13.22/5.78 new_deleteBy07(x0, x1, x2, Zero, Zero) 13.22/5.78 new_deleteBy06(x0, Neg(x1), Pos(Succ(x2))) 13.22/5.78 new_deleteBy06(x0, Pos(x1), Neg(Succ(x2))) 13.22/5.78 new_deleteBy4(x0, :(x1, x2)) 13.22/5.78 new_deleteBy07(x0, x1, x2, Succ(x3), Succ(x4)) 13.22/5.78 new_deleteBy06(x0, Neg(Zero), Neg(Succ(x1))) 13.22/5.78 13.22/5.78 We have to consider all minimal (P,Q,R)-chains. 13.22/5.78 ---------------------------------------- 13.22/5.78 13.22/5.78 (25) QDPSizeChangeProof (EQUIVALENT) 13.22/5.78 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. 13.22/5.78 13.22/5.78 From the DPs we obtained the following set of size-change graphs: 13.22/5.78 *new_foldl(ww3, :(ww40, ww41)) -> new_foldl(new_deleteBy4(ww40, ww3), ww41) 13.22/5.78 The graph contains the following edges 2 > 2 13.22/5.78 13.22/5.78 13.22/5.78 ---------------------------------------- 13.22/5.78 13.22/5.78 (26) 13.22/5.78 YES 13.50/7.98 EOF