11.35/4.68 YES 13.25/5.17 proof of /export/starexec/sandbox/benchmark/theBenchmark.hs 13.25/5.17 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 13.25/5.17 13.25/5.17 13.25/5.17 H-Termination with start terms of the given HASKELL could be proven: 13.25/5.17 13.25/5.17 (0) HASKELL 13.25/5.17 (1) BR [EQUIVALENT, 0 ms] 13.25/5.17 (2) HASKELL 13.25/5.17 (3) COR [EQUIVALENT, 21 ms] 13.25/5.17 (4) HASKELL 13.25/5.17 (5) Narrow [SOUND, 0 ms] 13.25/5.17 (6) AND 13.25/5.17 (7) QDP 13.25/5.17 (8) QDPSizeChangeProof [EQUIVALENT, 0 ms] 13.25/5.17 (9) YES 13.25/5.17 (10) QDP 13.25/5.17 (11) TransformationProof [EQUIVALENT, 0 ms] 13.25/5.17 (12) QDP 13.25/5.17 (13) UsableRulesProof [EQUIVALENT, 0 ms] 13.25/5.17 (14) QDP 13.25/5.17 (15) QReductionProof [EQUIVALENT, 0 ms] 13.25/5.17 (16) QDP 13.25/5.17 (17) QDPSizeChangeProof [EQUIVALENT, 0 ms] 13.25/5.17 (18) YES 13.25/5.17 (19) QDP 13.25/5.17 (20) QDPSizeChangeProof [EQUIVALENT, 0 ms] 13.25/5.17 (21) YES 13.25/5.17 (22) QDP 13.25/5.17 (23) TransformationProof [EQUIVALENT, 0 ms] 13.25/5.17 (24) QDP 13.25/5.17 (25) UsableRulesProof [EQUIVALENT, 0 ms] 13.25/5.17 (26) QDP 13.25/5.17 (27) QReductionProof [EQUIVALENT, 0 ms] 13.25/5.17 (28) QDP 13.25/5.17 (29) QDPSizeChangeProof [EQUIVALENT, 0 ms] 13.25/5.17 (30) YES 13.25/5.17 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (0) 13.25/5.17 Obligation: 13.25/5.17 mainModule Main 13.25/5.17 module Maybe where { 13.25/5.17 import qualified List; 13.25/5.17 import qualified Main; 13.25/5.17 import qualified Prelude; 13.25/5.17 } 13.25/5.17 module List where { 13.25/5.17 import qualified Main; 13.25/5.17 import qualified Maybe; 13.25/5.17 import qualified Prelude; 13.25/5.17 isPrefixOf :: Eq a => [a] -> [a] -> Bool; 13.25/5.17 isPrefixOf [] _ = True; 13.25/5.17 isPrefixOf _ [] = False; 13.25/5.17 isPrefixOf (x : xs) (y : ys) = x == y && isPrefixOf xs ys; 13.25/5.17 13.25/5.17 isSuffixOf :: Eq a => [a] -> [a] -> Bool; 13.25/5.17 isSuffixOf x y = reverse x `isPrefixOf` reverse y; 13.25/5.17 13.25/5.17 } 13.25/5.17 module Main where { 13.25/5.17 import qualified List; 13.25/5.17 import qualified Maybe; 13.25/5.17 import qualified Prelude; 13.25/5.17 } 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (1) BR (EQUIVALENT) 13.25/5.17 Replaced joker patterns by fresh variables and removed binding patterns. 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (2) 13.25/5.17 Obligation: 13.25/5.17 mainModule Main 13.25/5.17 module Maybe where { 13.25/5.17 import qualified List; 13.25/5.17 import qualified Main; 13.25/5.17 import qualified Prelude; 13.25/5.17 } 13.25/5.17 module List where { 13.25/5.17 import qualified Main; 13.25/5.17 import qualified Maybe; 13.25/5.17 import qualified Prelude; 13.25/5.17 isPrefixOf :: Eq a => [a] -> [a] -> Bool; 13.25/5.17 isPrefixOf [] wu = True; 13.25/5.17 isPrefixOf wv [] = False; 13.25/5.17 isPrefixOf (x : xs) (y : ys) = x == y && isPrefixOf xs ys; 13.25/5.17 13.25/5.17 isSuffixOf :: Eq a => [a] -> [a] -> Bool; 13.25/5.17 isSuffixOf x y = reverse x `isPrefixOf` reverse y; 13.25/5.17 13.25/5.17 } 13.25/5.17 module Main where { 13.25/5.17 import qualified List; 13.25/5.17 import qualified Maybe; 13.25/5.17 import qualified Prelude; 13.25/5.17 } 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (3) COR (EQUIVALENT) 13.25/5.17 Cond Reductions: 13.25/5.17 The following Function with conditions 13.25/5.17 "undefined |Falseundefined; 13.25/5.17 " 13.25/5.17 is transformed to 13.25/5.17 "undefined = undefined1; 13.25/5.17 " 13.25/5.17 "undefined0 True = undefined; 13.25/5.17 " 13.25/5.17 "undefined1 = undefined0 False; 13.25/5.17 " 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (4) 13.25/5.17 Obligation: 13.25/5.17 mainModule Main 13.25/5.17 module Maybe where { 13.25/5.17 import qualified List; 13.25/5.17 import qualified Main; 13.25/5.17 import qualified Prelude; 13.25/5.17 } 13.25/5.17 module List where { 13.25/5.17 import qualified Main; 13.25/5.17 import qualified Maybe; 13.25/5.17 import qualified Prelude; 13.25/5.17 isPrefixOf :: Eq a => [a] -> [a] -> Bool; 13.25/5.17 isPrefixOf [] wu = True; 13.25/5.17 isPrefixOf wv [] = False; 13.25/5.17 isPrefixOf (x : xs) (y : ys) = x == y && isPrefixOf xs ys; 13.25/5.17 13.25/5.17 isSuffixOf :: Eq a => [a] -> [a] -> Bool; 13.25/5.17 isSuffixOf x y = reverse x `isPrefixOf` reverse y; 13.25/5.17 13.25/5.17 } 13.25/5.17 module Main where { 13.25/5.17 import qualified List; 13.25/5.17 import qualified Maybe; 13.25/5.17 import qualified Prelude; 13.25/5.17 } 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (5) Narrow (SOUND) 13.25/5.17 Haskell To QDPs 13.25/5.17 13.25/5.17 digraph dp_graph { 13.25/5.17 node [outthreshold=100, inthreshold=100];1[label="List.isSuffixOf",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 13.25/5.17 3[label="List.isSuffixOf ww3",fontsize=16,color="grey",shape="box"];3 -> 4[label="",style="dashed", color="grey", weight=3]; 13.25/5.17 4[label="List.isSuffixOf ww3 ww4",fontsize=16,color="black",shape="triangle"];4 -> 5[label="",style="solid", color="black", weight=3]; 13.25/5.17 5[label="List.isPrefixOf (reverse ww3) (reverse ww4)",fontsize=16,color="black",shape="box"];5 -> 6[label="",style="solid", color="black", weight=3]; 13.25/5.17 6[label="List.isPrefixOf (foldl (flip (:)) [] ww3) (reverse ww4)",fontsize=16,color="burlywood",shape="box"];490[label="ww3/ww30 : ww31",fontsize=10,color="white",style="solid",shape="box"];6 -> 490[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 490 -> 7[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 491[label="ww3/[]",fontsize=10,color="white",style="solid",shape="box"];6 -> 491[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 491 -> 8[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 7[label="List.isPrefixOf (foldl (flip (:)) [] (ww30 : ww31)) (reverse ww4)",fontsize=16,color="black",shape="box"];7 -> 9[label="",style="solid", color="black", weight=3]; 13.25/5.17 8[label="List.isPrefixOf (foldl (flip (:)) [] []) (reverse ww4)",fontsize=16,color="black",shape="box"];8 -> 10[label="",style="solid", color="black", weight=3]; 13.25/5.17 9 -> 281[label="",style="dashed", color="red", weight=0]; 13.25/5.17 9[label="List.isPrefixOf (foldl (flip (:)) (flip (:) [] ww30) ww31) (reverse ww4)",fontsize=16,color="magenta"];9 -> 282[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 9 -> 283[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 9 -> 284[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 9 -> 285[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 10[label="List.isPrefixOf [] (reverse ww4)",fontsize=16,color="black",shape="box"];10 -> 13[label="",style="solid", color="black", weight=3]; 13.25/5.17 282[label="ww4",fontsize=16,color="green",shape="box"];283[label="ww31",fontsize=16,color="green",shape="box"];284[label="ww30",fontsize=16,color="green",shape="box"];285[label="[]",fontsize=16,color="green",shape="box"];281[label="List.isPrefixOf (foldl (flip (:)) (flip (:) ww14 ww15) ww16) (reverse ww17)",fontsize=16,color="burlywood",shape="triangle"];492[label="ww16/ww160 : ww161",fontsize=10,color="white",style="solid",shape="box"];281 -> 492[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 492 -> 318[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 493[label="ww16/[]",fontsize=10,color="white",style="solid",shape="box"];281 -> 493[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 493 -> 319[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 13[label="True",fontsize=16,color="green",shape="box"];318[label="List.isPrefixOf (foldl (flip (:)) (flip (:) ww14 ww15) (ww160 : ww161)) (reverse ww17)",fontsize=16,color="black",shape="box"];318 -> 320[label="",style="solid", color="black", weight=3]; 13.25/5.17 319[label="List.isPrefixOf (foldl (flip (:)) (flip (:) ww14 ww15) []) (reverse ww17)",fontsize=16,color="black",shape="box"];319 -> 321[label="",style="solid", color="black", weight=3]; 13.25/5.17 320 -> 281[label="",style="dashed", color="red", weight=0]; 13.25/5.17 320[label="List.isPrefixOf (foldl (flip (:)) (flip (:) (flip (:) ww14 ww15) ww160) ww161) (reverse ww17)",fontsize=16,color="magenta"];320 -> 322[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 320 -> 323[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 320 -> 324[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 321[label="List.isPrefixOf (flip (:) ww14 ww15) (reverse ww17)",fontsize=16,color="black",shape="box"];321 -> 325[label="",style="solid", color="black", weight=3]; 13.25/5.17 322[label="ww161",fontsize=16,color="green",shape="box"];323[label="ww160",fontsize=16,color="green",shape="box"];324[label="flip (:) ww14 ww15",fontsize=16,color="black",shape="triangle"];324 -> 326[label="",style="solid", color="black", weight=3]; 13.25/5.17 325[label="List.isPrefixOf ((:) ww15 ww14) (reverse ww17)",fontsize=16,color="black",shape="box"];325 -> 327[label="",style="solid", color="black", weight=3]; 13.25/5.17 326[label="(:) ww15 ww14",fontsize=16,color="green",shape="box"];327 -> 332[label="",style="dashed", color="red", weight=0]; 13.25/5.17 327[label="List.isPrefixOf ((:) ww15 ww14) (foldl (flip (:)) [] ww17)",fontsize=16,color="magenta"];327 -> 333[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 327 -> 334[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 333[label="[]",fontsize=16,color="green",shape="box"];334[label="ww17",fontsize=16,color="green",shape="box"];332[label="List.isPrefixOf ((:) ww15 ww14) (foldl (flip (:)) ww18 ww171)",fontsize=16,color="burlywood",shape="triangle"];494[label="ww171/ww1710 : ww1711",fontsize=10,color="white",style="solid",shape="box"];332 -> 494[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 494 -> 336[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 495[label="ww171/[]",fontsize=10,color="white",style="solid",shape="box"];332 -> 495[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 495 -> 337[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 336[label="List.isPrefixOf ((:) ww15 ww14) (foldl (flip (:)) ww18 (ww1710 : ww1711))",fontsize=16,color="black",shape="box"];336 -> 338[label="",style="solid", color="black", weight=3]; 13.25/5.17 337[label="List.isPrefixOf ((:) ww15 ww14) (foldl (flip (:)) ww18 [])",fontsize=16,color="black",shape="box"];337 -> 339[label="",style="solid", color="black", weight=3]; 13.25/5.17 338 -> 332[label="",style="dashed", color="red", weight=0]; 13.25/5.17 338[label="List.isPrefixOf ((:) ww15 ww14) (foldl (flip (:)) (flip (:) ww18 ww1710) ww1711)",fontsize=16,color="magenta"];338 -> 340[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 338 -> 341[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 339[label="List.isPrefixOf ((:) ww15 ww14) ww18",fontsize=16,color="burlywood",shape="box"];496[label="ww18/ww180 : ww181",fontsize=10,color="white",style="solid",shape="box"];339 -> 496[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 496 -> 342[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 497[label="ww18/[]",fontsize=10,color="white",style="solid",shape="box"];339 -> 497[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 497 -> 343[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 340 -> 324[label="",style="dashed", color="red", weight=0]; 13.25/5.17 340[label="flip (:) ww18 ww1710",fontsize=16,color="magenta"];340 -> 344[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 340 -> 345[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 341[label="ww1711",fontsize=16,color="green",shape="box"];342[label="List.isPrefixOf ((:) ww15 ww14) (ww180 : ww181)",fontsize=16,color="black",shape="box"];342 -> 346[label="",style="solid", color="black", weight=3]; 13.25/5.17 343[label="List.isPrefixOf ((:) ww15 ww14) []",fontsize=16,color="black",shape="box"];343 -> 347[label="",style="solid", color="black", weight=3]; 13.25/5.17 344[label="ww1710",fontsize=16,color="green",shape="box"];345[label="ww18",fontsize=16,color="green",shape="box"];346 -> 348[label="",style="dashed", color="red", weight=0]; 13.25/5.17 346[label="ww15 == ww180 && List.isPrefixOf ww14 ww181",fontsize=16,color="magenta"];346 -> 349[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 346 -> 350[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 346 -> 351[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 347[label="False",fontsize=16,color="green",shape="box"];349[label="ww15 == ww180",fontsize=16,color="blue",shape="box"];498[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];349 -> 498[label="",style="solid", color="blue", weight=9]; 13.25/5.17 498 -> 352[label="",style="solid", color="blue", weight=3]; 13.25/5.17 499[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];349 -> 499[label="",style="solid", color="blue", weight=9]; 13.25/5.17 499 -> 353[label="",style="solid", color="blue", weight=3]; 13.25/5.17 500[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];349 -> 500[label="",style="solid", color="blue", weight=9]; 13.25/5.17 500 -> 354[label="",style="solid", color="blue", weight=3]; 13.25/5.17 501[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];349 -> 501[label="",style="solid", color="blue", weight=9]; 13.25/5.17 501 -> 355[label="",style="solid", color="blue", weight=3]; 13.25/5.17 502[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];349 -> 502[label="",style="solid", color="blue", weight=9]; 13.25/5.17 502 -> 356[label="",style="solid", color="blue", weight=3]; 13.25/5.17 503[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];349 -> 503[label="",style="solid", color="blue", weight=9]; 13.25/5.17 503 -> 357[label="",style="solid", color="blue", weight=3]; 13.25/5.17 504[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];349 -> 504[label="",style="solid", color="blue", weight=9]; 13.25/5.17 504 -> 358[label="",style="solid", color="blue", weight=3]; 13.25/5.17 505[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];349 -> 505[label="",style="solid", color="blue", weight=9]; 13.25/5.17 505 -> 359[label="",style="solid", color="blue", weight=3]; 13.25/5.17 506[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];349 -> 506[label="",style="solid", color="blue", weight=9]; 13.25/5.17 506 -> 360[label="",style="solid", color="blue", weight=3]; 13.25/5.17 507[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];349 -> 507[label="",style="solid", color="blue", weight=9]; 13.25/5.17 507 -> 361[label="",style="solid", color="blue", weight=3]; 13.25/5.17 508[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];349 -> 508[label="",style="solid", color="blue", weight=9]; 13.25/5.17 508 -> 362[label="",style="solid", color="blue", weight=3]; 13.25/5.17 509[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];349 -> 509[label="",style="solid", color="blue", weight=9]; 13.25/5.17 509 -> 363[label="",style="solid", color="blue", weight=3]; 13.25/5.17 510[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];349 -> 510[label="",style="solid", color="blue", weight=9]; 13.25/5.17 510 -> 364[label="",style="solid", color="blue", weight=3]; 13.25/5.17 511[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];349 -> 511[label="",style="solid", color="blue", weight=9]; 13.25/5.17 511 -> 365[label="",style="solid", color="blue", weight=3]; 13.25/5.17 350[label="ww181",fontsize=16,color="green",shape="box"];351[label="ww14",fontsize=16,color="green",shape="box"];348[label="ww23 && List.isPrefixOf ww24 ww25",fontsize=16,color="burlywood",shape="triangle"];512[label="ww23/False",fontsize=10,color="white",style="solid",shape="box"];348 -> 512[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 512 -> 366[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 513[label="ww23/True",fontsize=10,color="white",style="solid",shape="box"];348 -> 513[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 513 -> 367[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 352[label="ww15 == ww180",fontsize=16,color="black",shape="triangle"];352 -> 368[label="",style="solid", color="black", weight=3]; 13.25/5.17 353[label="ww15 == ww180",fontsize=16,color="black",shape="triangle"];353 -> 369[label="",style="solid", color="black", weight=3]; 13.25/5.17 354[label="ww15 == ww180",fontsize=16,color="black",shape="triangle"];354 -> 370[label="",style="solid", color="black", weight=3]; 13.25/5.17 355[label="ww15 == ww180",fontsize=16,color="black",shape="triangle"];355 -> 371[label="",style="solid", color="black", weight=3]; 13.25/5.17 356[label="ww15 == ww180",fontsize=16,color="black",shape="triangle"];356 -> 372[label="",style="solid", color="black", weight=3]; 13.25/5.17 357[label="ww15 == ww180",fontsize=16,color="black",shape="triangle"];357 -> 373[label="",style="solid", color="black", weight=3]; 13.25/5.17 358[label="ww15 == ww180",fontsize=16,color="black",shape="triangle"];358 -> 374[label="",style="solid", color="black", weight=3]; 13.25/5.17 359[label="ww15 == ww180",fontsize=16,color="black",shape="triangle"];359 -> 375[label="",style="solid", color="black", weight=3]; 13.25/5.17 360[label="ww15 == ww180",fontsize=16,color="black",shape="triangle"];360 -> 376[label="",style="solid", color="black", weight=3]; 13.25/5.17 361[label="ww15 == ww180",fontsize=16,color="black",shape="triangle"];361 -> 377[label="",style="solid", color="black", weight=3]; 13.25/5.17 362[label="ww15 == ww180",fontsize=16,color="black",shape="triangle"];362 -> 378[label="",style="solid", color="black", weight=3]; 13.25/5.17 363[label="ww15 == ww180",fontsize=16,color="black",shape="triangle"];363 -> 379[label="",style="solid", color="black", weight=3]; 13.25/5.17 364[label="ww15 == ww180",fontsize=16,color="black",shape="triangle"];364 -> 380[label="",style="solid", color="black", weight=3]; 13.25/5.17 365[label="ww15 == ww180",fontsize=16,color="black",shape="triangle"];365 -> 381[label="",style="solid", color="black", weight=3]; 13.25/5.17 366[label="False && List.isPrefixOf ww24 ww25",fontsize=16,color="black",shape="box"];366 -> 382[label="",style="solid", color="black", weight=3]; 13.25/5.17 367[label="True && List.isPrefixOf ww24 ww25",fontsize=16,color="black",shape="box"];367 -> 383[label="",style="solid", color="black", weight=3]; 13.25/5.17 368[label="error []",fontsize=16,color="red",shape="box"];369[label="error []",fontsize=16,color="red",shape="box"];370[label="error []",fontsize=16,color="red",shape="box"];371[label="error []",fontsize=16,color="red",shape="box"];372[label="error []",fontsize=16,color="red",shape="box"];373[label="error []",fontsize=16,color="red",shape="box"];374[label="error []",fontsize=16,color="red",shape="box"];375[label="primEqInt ww15 ww180",fontsize=16,color="burlywood",shape="box"];514[label="ww15/Pos ww150",fontsize=10,color="white",style="solid",shape="box"];375 -> 514[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 514 -> 384[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 515[label="ww15/Neg ww150",fontsize=10,color="white",style="solid",shape="box"];375 -> 515[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 515 -> 385[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 376[label="error []",fontsize=16,color="red",shape="box"];377[label="error []",fontsize=16,color="red",shape="box"];378[label="error []",fontsize=16,color="red",shape="box"];379[label="error []",fontsize=16,color="red",shape="box"];380[label="error []",fontsize=16,color="red",shape="box"];381[label="error []",fontsize=16,color="red",shape="box"];382[label="False",fontsize=16,color="green",shape="box"];383[label="List.isPrefixOf ww24 ww25",fontsize=16,color="burlywood",shape="box"];516[label="ww24/ww240 : ww241",fontsize=10,color="white",style="solid",shape="box"];383 -> 516[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 516 -> 386[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 517[label="ww24/[]",fontsize=10,color="white",style="solid",shape="box"];383 -> 517[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 517 -> 387[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 384[label="primEqInt (Pos ww150) ww180",fontsize=16,color="burlywood",shape="box"];518[label="ww150/Succ ww1500",fontsize=10,color="white",style="solid",shape="box"];384 -> 518[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 518 -> 388[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 519[label="ww150/Zero",fontsize=10,color="white",style="solid",shape="box"];384 -> 519[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 519 -> 389[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 385[label="primEqInt (Neg ww150) ww180",fontsize=16,color="burlywood",shape="box"];520[label="ww150/Succ ww1500",fontsize=10,color="white",style="solid",shape="box"];385 -> 520[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 520 -> 390[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 521[label="ww150/Zero",fontsize=10,color="white",style="solid",shape="box"];385 -> 521[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 521 -> 391[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 386[label="List.isPrefixOf (ww240 : ww241) ww25",fontsize=16,color="burlywood",shape="box"];522[label="ww25/ww250 : ww251",fontsize=10,color="white",style="solid",shape="box"];386 -> 522[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 522 -> 392[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 523[label="ww25/[]",fontsize=10,color="white",style="solid",shape="box"];386 -> 523[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 523 -> 393[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 387[label="List.isPrefixOf [] ww25",fontsize=16,color="black",shape="box"];387 -> 394[label="",style="solid", color="black", weight=3]; 13.25/5.17 388[label="primEqInt (Pos (Succ ww1500)) ww180",fontsize=16,color="burlywood",shape="box"];524[label="ww180/Pos ww1800",fontsize=10,color="white",style="solid",shape="box"];388 -> 524[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 524 -> 395[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 525[label="ww180/Neg ww1800",fontsize=10,color="white",style="solid",shape="box"];388 -> 525[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 525 -> 396[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 389[label="primEqInt (Pos Zero) ww180",fontsize=16,color="burlywood",shape="box"];526[label="ww180/Pos ww1800",fontsize=10,color="white",style="solid",shape="box"];389 -> 526[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 526 -> 397[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 527[label="ww180/Neg ww1800",fontsize=10,color="white",style="solid",shape="box"];389 -> 527[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 527 -> 398[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 390[label="primEqInt (Neg (Succ ww1500)) ww180",fontsize=16,color="burlywood",shape="box"];528[label="ww180/Pos ww1800",fontsize=10,color="white",style="solid",shape="box"];390 -> 528[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 528 -> 399[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 529[label="ww180/Neg ww1800",fontsize=10,color="white",style="solid",shape="box"];390 -> 529[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 529 -> 400[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 391[label="primEqInt (Neg Zero) ww180",fontsize=16,color="burlywood",shape="box"];530[label="ww180/Pos ww1800",fontsize=10,color="white",style="solid",shape="box"];391 -> 530[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 530 -> 401[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 531[label="ww180/Neg ww1800",fontsize=10,color="white",style="solid",shape="box"];391 -> 531[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 531 -> 402[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 392[label="List.isPrefixOf (ww240 : ww241) (ww250 : ww251)",fontsize=16,color="black",shape="box"];392 -> 403[label="",style="solid", color="black", weight=3]; 13.25/5.17 393[label="List.isPrefixOf (ww240 : ww241) []",fontsize=16,color="black",shape="box"];393 -> 404[label="",style="solid", color="black", weight=3]; 13.25/5.17 394[label="True",fontsize=16,color="green",shape="box"];395[label="primEqInt (Pos (Succ ww1500)) (Pos ww1800)",fontsize=16,color="burlywood",shape="box"];532[label="ww1800/Succ ww18000",fontsize=10,color="white",style="solid",shape="box"];395 -> 532[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 532 -> 405[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 533[label="ww1800/Zero",fontsize=10,color="white",style="solid",shape="box"];395 -> 533[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 533 -> 406[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 396[label="primEqInt (Pos (Succ ww1500)) (Neg ww1800)",fontsize=16,color="black",shape="box"];396 -> 407[label="",style="solid", color="black", weight=3]; 13.25/5.17 397[label="primEqInt (Pos Zero) (Pos ww1800)",fontsize=16,color="burlywood",shape="box"];534[label="ww1800/Succ ww18000",fontsize=10,color="white",style="solid",shape="box"];397 -> 534[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 534 -> 408[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 535[label="ww1800/Zero",fontsize=10,color="white",style="solid",shape="box"];397 -> 535[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 535 -> 409[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 398[label="primEqInt (Pos Zero) (Neg ww1800)",fontsize=16,color="burlywood",shape="box"];536[label="ww1800/Succ ww18000",fontsize=10,color="white",style="solid",shape="box"];398 -> 536[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 536 -> 410[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 537[label="ww1800/Zero",fontsize=10,color="white",style="solid",shape="box"];398 -> 537[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 537 -> 411[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 399[label="primEqInt (Neg (Succ ww1500)) (Pos ww1800)",fontsize=16,color="black",shape="box"];399 -> 412[label="",style="solid", color="black", weight=3]; 13.25/5.17 400[label="primEqInt (Neg (Succ ww1500)) (Neg ww1800)",fontsize=16,color="burlywood",shape="box"];538[label="ww1800/Succ ww18000",fontsize=10,color="white",style="solid",shape="box"];400 -> 538[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 538 -> 413[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 539[label="ww1800/Zero",fontsize=10,color="white",style="solid",shape="box"];400 -> 539[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 539 -> 414[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 401[label="primEqInt (Neg Zero) (Pos ww1800)",fontsize=16,color="burlywood",shape="box"];540[label="ww1800/Succ ww18000",fontsize=10,color="white",style="solid",shape="box"];401 -> 540[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 540 -> 415[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 541[label="ww1800/Zero",fontsize=10,color="white",style="solid",shape="box"];401 -> 541[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 541 -> 416[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 402[label="primEqInt (Neg Zero) (Neg ww1800)",fontsize=16,color="burlywood",shape="box"];542[label="ww1800/Succ ww18000",fontsize=10,color="white",style="solid",shape="box"];402 -> 542[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 542 -> 417[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 543[label="ww1800/Zero",fontsize=10,color="white",style="solid",shape="box"];402 -> 543[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 543 -> 418[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 403 -> 348[label="",style="dashed", color="red", weight=0]; 13.25/5.17 403[label="ww240 == ww250 && List.isPrefixOf ww241 ww251",fontsize=16,color="magenta"];403 -> 419[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 403 -> 420[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 403 -> 421[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 404[label="False",fontsize=16,color="green",shape="box"];405[label="primEqInt (Pos (Succ ww1500)) (Pos (Succ ww18000))",fontsize=16,color="black",shape="box"];405 -> 422[label="",style="solid", color="black", weight=3]; 13.25/5.17 406[label="primEqInt (Pos (Succ ww1500)) (Pos Zero)",fontsize=16,color="black",shape="box"];406 -> 423[label="",style="solid", color="black", weight=3]; 13.25/5.17 407[label="False",fontsize=16,color="green",shape="box"];408[label="primEqInt (Pos Zero) (Pos (Succ ww18000))",fontsize=16,color="black",shape="box"];408 -> 424[label="",style="solid", color="black", weight=3]; 13.25/5.17 409[label="primEqInt (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];409 -> 425[label="",style="solid", color="black", weight=3]; 13.25/5.17 410[label="primEqInt (Pos Zero) (Neg (Succ ww18000))",fontsize=16,color="black",shape="box"];410 -> 426[label="",style="solid", color="black", weight=3]; 13.25/5.17 411[label="primEqInt (Pos Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];411 -> 427[label="",style="solid", color="black", weight=3]; 13.25/5.17 412[label="False",fontsize=16,color="green",shape="box"];413[label="primEqInt (Neg (Succ ww1500)) (Neg (Succ ww18000))",fontsize=16,color="black",shape="box"];413 -> 428[label="",style="solid", color="black", weight=3]; 13.25/5.17 414[label="primEqInt (Neg (Succ ww1500)) (Neg Zero)",fontsize=16,color="black",shape="box"];414 -> 429[label="",style="solid", color="black", weight=3]; 13.25/5.17 415[label="primEqInt (Neg Zero) (Pos (Succ ww18000))",fontsize=16,color="black",shape="box"];415 -> 430[label="",style="solid", color="black", weight=3]; 13.25/5.17 416[label="primEqInt (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];416 -> 431[label="",style="solid", color="black", weight=3]; 13.25/5.17 417[label="primEqInt (Neg Zero) (Neg (Succ ww18000))",fontsize=16,color="black",shape="box"];417 -> 432[label="",style="solid", color="black", weight=3]; 13.25/5.17 418[label="primEqInt (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];418 -> 433[label="",style="solid", color="black", weight=3]; 13.25/5.17 419[label="ww240 == ww250",fontsize=16,color="blue",shape="box"];544[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];419 -> 544[label="",style="solid", color="blue", weight=9]; 13.25/5.17 544 -> 434[label="",style="solid", color="blue", weight=3]; 13.25/5.17 545[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];419 -> 545[label="",style="solid", color="blue", weight=9]; 13.25/5.17 545 -> 435[label="",style="solid", color="blue", weight=3]; 13.25/5.17 546[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];419 -> 546[label="",style="solid", color="blue", weight=9]; 13.25/5.17 546 -> 436[label="",style="solid", color="blue", weight=3]; 13.25/5.17 547[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];419 -> 547[label="",style="solid", color="blue", weight=9]; 13.25/5.17 547 -> 437[label="",style="solid", color="blue", weight=3]; 13.25/5.17 548[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];419 -> 548[label="",style="solid", color="blue", weight=9]; 13.25/5.17 548 -> 438[label="",style="solid", color="blue", weight=3]; 13.25/5.17 549[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];419 -> 549[label="",style="solid", color="blue", weight=9]; 13.25/5.17 549 -> 439[label="",style="solid", color="blue", weight=3]; 13.25/5.17 550[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];419 -> 550[label="",style="solid", color="blue", weight=9]; 13.25/5.17 550 -> 440[label="",style="solid", color="blue", weight=3]; 13.25/5.17 551[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];419 -> 551[label="",style="solid", color="blue", weight=9]; 13.25/5.17 551 -> 441[label="",style="solid", color="blue", weight=3]; 13.25/5.17 552[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];419 -> 552[label="",style="solid", color="blue", weight=9]; 13.25/5.17 552 -> 442[label="",style="solid", color="blue", weight=3]; 13.25/5.17 553[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];419 -> 553[label="",style="solid", color="blue", weight=9]; 13.25/5.17 553 -> 443[label="",style="solid", color="blue", weight=3]; 13.25/5.17 554[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];419 -> 554[label="",style="solid", color="blue", weight=9]; 13.25/5.17 554 -> 444[label="",style="solid", color="blue", weight=3]; 13.25/5.17 555[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];419 -> 555[label="",style="solid", color="blue", weight=9]; 13.25/5.17 555 -> 445[label="",style="solid", color="blue", weight=3]; 13.25/5.17 556[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];419 -> 556[label="",style="solid", color="blue", weight=9]; 13.25/5.17 556 -> 446[label="",style="solid", color="blue", weight=3]; 13.25/5.17 557[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];419 -> 557[label="",style="solid", color="blue", weight=9]; 13.25/5.17 557 -> 447[label="",style="solid", color="blue", weight=3]; 13.25/5.17 420[label="ww251",fontsize=16,color="green",shape="box"];421[label="ww241",fontsize=16,color="green",shape="box"];422[label="primEqNat ww1500 ww18000",fontsize=16,color="burlywood",shape="triangle"];558[label="ww1500/Succ ww15000",fontsize=10,color="white",style="solid",shape="box"];422 -> 558[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 558 -> 448[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 559[label="ww1500/Zero",fontsize=10,color="white",style="solid",shape="box"];422 -> 559[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 559 -> 449[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 423[label="False",fontsize=16,color="green",shape="box"];424[label="False",fontsize=16,color="green",shape="box"];425[label="True",fontsize=16,color="green",shape="box"];426[label="False",fontsize=16,color="green",shape="box"];427[label="True",fontsize=16,color="green",shape="box"];428 -> 422[label="",style="dashed", color="red", weight=0]; 13.25/5.17 428[label="primEqNat ww1500 ww18000",fontsize=16,color="magenta"];428 -> 450[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 428 -> 451[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 429[label="False",fontsize=16,color="green",shape="box"];430[label="False",fontsize=16,color="green",shape="box"];431[label="True",fontsize=16,color="green",shape="box"];432[label="False",fontsize=16,color="green",shape="box"];433[label="True",fontsize=16,color="green",shape="box"];434 -> 352[label="",style="dashed", color="red", weight=0]; 13.25/5.17 434[label="ww240 == ww250",fontsize=16,color="magenta"];434 -> 452[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 434 -> 453[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 435 -> 353[label="",style="dashed", color="red", weight=0]; 13.25/5.17 435[label="ww240 == ww250",fontsize=16,color="magenta"];435 -> 454[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 435 -> 455[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 436 -> 354[label="",style="dashed", color="red", weight=0]; 13.25/5.17 436[label="ww240 == ww250",fontsize=16,color="magenta"];436 -> 456[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 436 -> 457[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 437 -> 355[label="",style="dashed", color="red", weight=0]; 13.25/5.17 437[label="ww240 == ww250",fontsize=16,color="magenta"];437 -> 458[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 437 -> 459[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 438 -> 356[label="",style="dashed", color="red", weight=0]; 13.25/5.17 438[label="ww240 == ww250",fontsize=16,color="magenta"];438 -> 460[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 438 -> 461[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 439 -> 357[label="",style="dashed", color="red", weight=0]; 13.25/5.17 439[label="ww240 == ww250",fontsize=16,color="magenta"];439 -> 462[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 439 -> 463[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 440 -> 358[label="",style="dashed", color="red", weight=0]; 13.25/5.17 440[label="ww240 == ww250",fontsize=16,color="magenta"];440 -> 464[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 440 -> 465[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 441 -> 359[label="",style="dashed", color="red", weight=0]; 13.25/5.17 441[label="ww240 == ww250",fontsize=16,color="magenta"];441 -> 466[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 441 -> 467[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 442 -> 360[label="",style="dashed", color="red", weight=0]; 13.25/5.17 442[label="ww240 == ww250",fontsize=16,color="magenta"];442 -> 468[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 442 -> 469[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 443 -> 361[label="",style="dashed", color="red", weight=0]; 13.25/5.17 443[label="ww240 == ww250",fontsize=16,color="magenta"];443 -> 470[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 443 -> 471[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 444 -> 362[label="",style="dashed", color="red", weight=0]; 13.25/5.17 444[label="ww240 == ww250",fontsize=16,color="magenta"];444 -> 472[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 444 -> 473[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 445 -> 363[label="",style="dashed", color="red", weight=0]; 13.25/5.17 445[label="ww240 == ww250",fontsize=16,color="magenta"];445 -> 474[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 445 -> 475[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 446 -> 364[label="",style="dashed", color="red", weight=0]; 13.25/5.17 446[label="ww240 == ww250",fontsize=16,color="magenta"];446 -> 476[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 446 -> 477[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 447 -> 365[label="",style="dashed", color="red", weight=0]; 13.25/5.17 447[label="ww240 == ww250",fontsize=16,color="magenta"];447 -> 478[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 447 -> 479[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 448[label="primEqNat (Succ ww15000) ww18000",fontsize=16,color="burlywood",shape="box"];560[label="ww18000/Succ ww180000",fontsize=10,color="white",style="solid",shape="box"];448 -> 560[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 560 -> 480[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 561[label="ww18000/Zero",fontsize=10,color="white",style="solid",shape="box"];448 -> 561[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 561 -> 481[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 449[label="primEqNat Zero ww18000",fontsize=16,color="burlywood",shape="box"];562[label="ww18000/Succ ww180000",fontsize=10,color="white",style="solid",shape="box"];449 -> 562[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 562 -> 482[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 563[label="ww18000/Zero",fontsize=10,color="white",style="solid",shape="box"];449 -> 563[label="",style="solid", color="burlywood", weight=9]; 13.25/5.17 563 -> 483[label="",style="solid", color="burlywood", weight=3]; 13.25/5.17 450[label="ww18000",fontsize=16,color="green",shape="box"];451[label="ww1500",fontsize=16,color="green",shape="box"];452[label="ww240",fontsize=16,color="green",shape="box"];453[label="ww250",fontsize=16,color="green",shape="box"];454[label="ww240",fontsize=16,color="green",shape="box"];455[label="ww250",fontsize=16,color="green",shape="box"];456[label="ww240",fontsize=16,color="green",shape="box"];457[label="ww250",fontsize=16,color="green",shape="box"];458[label="ww240",fontsize=16,color="green",shape="box"];459[label="ww250",fontsize=16,color="green",shape="box"];460[label="ww240",fontsize=16,color="green",shape="box"];461[label="ww250",fontsize=16,color="green",shape="box"];462[label="ww240",fontsize=16,color="green",shape="box"];463[label="ww250",fontsize=16,color="green",shape="box"];464[label="ww240",fontsize=16,color="green",shape="box"];465[label="ww250",fontsize=16,color="green",shape="box"];466[label="ww240",fontsize=16,color="green",shape="box"];467[label="ww250",fontsize=16,color="green",shape="box"];468[label="ww240",fontsize=16,color="green",shape="box"];469[label="ww250",fontsize=16,color="green",shape="box"];470[label="ww240",fontsize=16,color="green",shape="box"];471[label="ww250",fontsize=16,color="green",shape="box"];472[label="ww240",fontsize=16,color="green",shape="box"];473[label="ww250",fontsize=16,color="green",shape="box"];474[label="ww240",fontsize=16,color="green",shape="box"];475[label="ww250",fontsize=16,color="green",shape="box"];476[label="ww240",fontsize=16,color="green",shape="box"];477[label="ww250",fontsize=16,color="green",shape="box"];478[label="ww240",fontsize=16,color="green",shape="box"];479[label="ww250",fontsize=16,color="green",shape="box"];480[label="primEqNat (Succ ww15000) (Succ ww180000)",fontsize=16,color="black",shape="box"];480 -> 484[label="",style="solid", color="black", weight=3]; 13.25/5.17 481[label="primEqNat (Succ ww15000) Zero",fontsize=16,color="black",shape="box"];481 -> 485[label="",style="solid", color="black", weight=3]; 13.25/5.17 482[label="primEqNat Zero (Succ ww180000)",fontsize=16,color="black",shape="box"];482 -> 486[label="",style="solid", color="black", weight=3]; 13.25/5.17 483[label="primEqNat Zero Zero",fontsize=16,color="black",shape="box"];483 -> 487[label="",style="solid", color="black", weight=3]; 13.25/5.17 484 -> 422[label="",style="dashed", color="red", weight=0]; 13.25/5.17 484[label="primEqNat ww15000 ww180000",fontsize=16,color="magenta"];484 -> 488[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 484 -> 489[label="",style="dashed", color="magenta", weight=3]; 13.25/5.17 485[label="False",fontsize=16,color="green",shape="box"];486[label="False",fontsize=16,color="green",shape="box"];487[label="True",fontsize=16,color="green",shape="box"];488[label="ww180000",fontsize=16,color="green",shape="box"];489[label="ww15000",fontsize=16,color="green",shape="box"];} 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (6) 13.25/5.17 Complex Obligation (AND) 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (7) 13.25/5.17 Obligation: 13.25/5.17 Q DP problem: 13.25/5.17 The TRS P consists of the following rules: 13.25/5.17 13.25/5.17 new_asAs(True, :(ww240, ww241), :(ww250, ww251), ba) -> new_asAs(new_esEs(ww240, ww250, ba), ww241, ww251, ba) 13.25/5.17 13.25/5.17 The TRS R consists of the following rules: 13.25/5.17 13.25/5.17 new_esEs1(Pos(Zero), Neg(Zero)) -> True 13.25/5.17 new_esEs1(Neg(Zero), Pos(Zero)) -> True 13.25/5.17 new_esEs(ww240, ww250, ty_Int) -> new_esEs1(ww240, ww250) 13.25/5.17 new_esEs1(Neg(Zero), Neg(Zero)) -> True 13.25/5.17 new_esEs(ww240, ww250, ty_Float) -> new_esEs8(ww240, ww250) 13.25/5.17 new_esEs1(Neg(Succ(ww1500)), Neg(Succ(ww18000))) -> new_primEqNat0(ww1500, ww18000) 13.25/5.17 new_primEqNat0(Zero, Zero) -> True 13.25/5.17 new_esEs1(Pos(Succ(ww1500)), Pos(Succ(ww18000))) -> new_primEqNat0(ww1500, ww18000) 13.25/5.17 new_esEs13(ww15, ww180) -> error([]) 13.25/5.17 new_esEs(ww240, ww250, app(ty_Maybe, cd)) -> new_esEs0(ww240, ww250, cd) 13.25/5.17 new_esEs(ww240, ww250, ty_Char) -> new_esEs6(ww240, ww250) 13.25/5.17 new_esEs7(ww15, ww180) -> error([]) 13.25/5.17 new_esEs(ww240, ww250, ty_Ordering) -> new_esEs4(ww240, ww250) 13.25/5.17 new_esEs1(Pos(Succ(ww1500)), Pos(Zero)) -> False 13.25/5.17 new_esEs1(Pos(Zero), Pos(Succ(ww18000))) -> False 13.25/5.17 new_esEs1(Pos(Zero), Pos(Zero)) -> True 13.25/5.17 new_esEs(ww240, ww250, ty_Bool) -> new_esEs12(ww240, ww250) 13.25/5.17 new_esEs12(ww15, ww180) -> error([]) 13.25/5.17 new_esEs0(ww15, ww180, bb) -> error([]) 13.25/5.17 new_esEs(ww240, ww250, app(app(app(ty_@3, ce), cf), cg)) -> new_esEs11(ww240, ww250, ce, cf, cg) 13.25/5.17 new_esEs4(ww15, ww180) -> error([]) 13.25/5.17 new_esEs10(ww15, ww180, bh) -> error([]) 13.25/5.17 new_esEs(ww240, ww250, app(app(ty_Either, de), df)) -> new_esEs9(ww240, ww250, de, df) 13.25/5.17 new_esEs(ww240, ww250, ty_@0) -> new_esEs7(ww240, ww250) 13.25/5.17 new_esEs(ww240, ww250, ty_Double) -> new_esEs13(ww240, ww250) 13.25/5.17 new_esEs11(ww15, ww180, ca, cb, cc) -> error([]) 13.25/5.17 new_primEqNat0(Succ(ww15000), Zero) -> False 13.25/5.17 new_primEqNat0(Zero, Succ(ww180000)) -> False 13.25/5.17 new_esEs1(Pos(Zero), Neg(Succ(ww18000))) -> False 13.25/5.17 new_esEs1(Neg(Zero), Pos(Succ(ww18000))) -> False 13.25/5.17 new_esEs(ww240, ww250, ty_Integer) -> new_esEs2(ww240, ww250) 13.25/5.17 new_esEs1(Neg(Succ(ww1500)), Neg(Zero)) -> False 13.25/5.17 new_esEs1(Neg(Zero), Neg(Succ(ww18000))) -> False 13.25/5.17 new_esEs2(ww15, ww180) -> error([]) 13.25/5.17 new_primEqNat0(Succ(ww15000), Succ(ww180000)) -> new_primEqNat0(ww15000, ww180000) 13.25/5.17 new_esEs3(ww15, ww180, bc, bd) -> error([]) 13.25/5.17 new_esEs5(ww15, ww180, be) -> error([]) 13.25/5.17 new_esEs(ww240, ww250, app(ty_[], dc)) -> new_esEs10(ww240, ww250, dc) 13.25/5.17 new_esEs(ww240, ww250, app(ty_Ratio, dd)) -> new_esEs5(ww240, ww250, dd) 13.25/5.17 new_esEs6(ww15, ww180) -> error([]) 13.25/5.17 new_esEs1(Pos(Succ(ww1500)), Neg(ww1800)) -> False 13.25/5.17 new_esEs1(Neg(Succ(ww1500)), Pos(ww1800)) -> False 13.25/5.17 new_esEs8(ww15, ww180) -> error([]) 13.25/5.17 new_esEs9(ww15, ww180, bf, bg) -> error([]) 13.25/5.17 new_esEs(ww240, ww250, app(app(ty_@2, da), db)) -> new_esEs3(ww240, ww250, da, db) 13.25/5.17 13.25/5.17 The set Q consists of the following terms: 13.25/5.17 13.25/5.17 new_primEqNat0(Zero, Zero) 13.25/5.17 new_esEs1(Pos(Zero), Pos(Succ(x0))) 13.25/5.17 new_esEs1(Pos(Zero), Neg(Zero)) 13.25/5.17 new_esEs1(Neg(Zero), Pos(Zero)) 13.25/5.17 new_esEs(x0, x1, app(app(ty_@2, x2), x3)) 13.25/5.17 new_esEs8(x0, x1) 13.25/5.17 new_esEs1(Pos(Succ(x0)), Pos(Succ(x1))) 13.25/5.17 new_esEs(x0, x1, ty_Integer) 13.25/5.17 new_esEs(x0, x1, ty_Ordering) 13.25/5.17 new_esEs(x0, x1, app(ty_Maybe, x2)) 13.25/5.17 new_esEs1(Pos(Succ(x0)), Pos(Zero)) 13.25/5.17 new_primEqNat0(Succ(x0), Succ(x1)) 13.25/5.17 new_esEs1(Pos(Zero), Neg(Succ(x0))) 13.25/5.17 new_esEs1(Neg(Zero), Pos(Succ(x0))) 13.25/5.17 new_esEs1(Neg(Zero), Neg(Zero)) 13.25/5.17 new_esEs(x0, x1, ty_@0) 13.25/5.17 new_esEs(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 13.25/5.17 new_esEs1(Neg(Succ(x0)), Neg(Zero)) 13.25/5.17 new_esEs7(x0, x1) 13.25/5.17 new_esEs(x0, x1, app(app(ty_Either, x2), x3)) 13.25/5.17 new_esEs(x0, x1, ty_Int) 13.25/5.17 new_esEs1(Pos(Zero), Pos(Zero)) 13.25/5.17 new_esEs2(x0, x1) 13.25/5.17 new_esEs6(x0, x1) 13.25/5.17 new_esEs1(Neg(Succ(x0)), Neg(Succ(x1))) 13.25/5.17 new_esEs(x0, x1, app(ty_Ratio, x2)) 13.25/5.17 new_esEs3(x0, x1, x2, x3) 13.25/5.17 new_esEs9(x0, x1, x2, x3) 13.25/5.17 new_primEqNat0(Zero, Succ(x0)) 13.25/5.17 new_esEs5(x0, x1, x2) 13.25/5.17 new_esEs1(Neg(Zero), Neg(Succ(x0))) 13.25/5.17 new_esEs12(x0, x1) 13.25/5.17 new_esEs(x0, x1, ty_Double) 13.25/5.17 new_esEs(x0, x1, ty_Float) 13.25/5.17 new_esEs10(x0, x1, x2) 13.25/5.17 new_esEs0(x0, x1, x2) 13.25/5.17 new_esEs4(x0, x1) 13.25/5.17 new_esEs1(Pos(Succ(x0)), Neg(x1)) 13.25/5.17 new_esEs1(Neg(Succ(x0)), Pos(x1)) 13.25/5.17 new_esEs(x0, x1, ty_Char) 13.25/5.17 new_esEs13(x0, x1) 13.25/5.17 new_esEs(x0, x1, ty_Bool) 13.25/5.17 new_esEs11(x0, x1, x2, x3, x4) 13.25/5.17 new_primEqNat0(Succ(x0), Zero) 13.25/5.17 new_esEs(x0, x1, app(ty_[], x2)) 13.25/5.17 13.25/5.17 We have to consider all minimal (P,Q,R)-chains. 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (8) QDPSizeChangeProof (EQUIVALENT) 13.25/5.17 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.25/5.17 13.25/5.17 From the DPs we obtained the following set of size-change graphs: 13.25/5.17 *new_asAs(True, :(ww240, ww241), :(ww250, ww251), ba) -> new_asAs(new_esEs(ww240, ww250, ba), ww241, ww251, ba) 13.25/5.17 The graph contains the following edges 2 > 2, 3 > 3, 4 >= 4 13.25/5.17 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (9) 13.25/5.17 YES 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (10) 13.25/5.17 Obligation: 13.25/5.17 Q DP problem: 13.25/5.17 The TRS P consists of the following rules: 13.25/5.17 13.25/5.17 new_isPrefixOf(ww15, ww14, ww18, :(ww1710, ww1711), ba) -> new_isPrefixOf(ww15, ww14, new_flip(ww18, ww1710, ba), ww1711, ba) 13.25/5.17 13.25/5.17 The TRS R consists of the following rules: 13.25/5.17 13.25/5.17 new_flip(ww14, ww15, ba) -> :(ww15, ww14) 13.25/5.17 13.25/5.17 The set Q consists of the following terms: 13.25/5.17 13.25/5.17 new_flip(x0, x1, x2) 13.25/5.17 13.25/5.17 We have to consider all minimal (P,Q,R)-chains. 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (11) TransformationProof (EQUIVALENT) 13.25/5.17 By rewriting [LPAR04] the rule new_isPrefixOf(ww15, ww14, ww18, :(ww1710, ww1711), ba) -> new_isPrefixOf(ww15, ww14, new_flip(ww18, ww1710, ba), ww1711, ba) at position [2] we obtained the following new rules [LPAR04]: 13.25/5.17 13.25/5.17 (new_isPrefixOf(ww15, ww14, ww18, :(ww1710, ww1711), ba) -> new_isPrefixOf(ww15, ww14, :(ww1710, ww18), ww1711, ba),new_isPrefixOf(ww15, ww14, ww18, :(ww1710, ww1711), ba) -> new_isPrefixOf(ww15, ww14, :(ww1710, ww18), ww1711, ba)) 13.25/5.17 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (12) 13.25/5.17 Obligation: 13.25/5.17 Q DP problem: 13.25/5.17 The TRS P consists of the following rules: 13.25/5.17 13.25/5.17 new_isPrefixOf(ww15, ww14, ww18, :(ww1710, ww1711), ba) -> new_isPrefixOf(ww15, ww14, :(ww1710, ww18), ww1711, ba) 13.25/5.17 13.25/5.17 The TRS R consists of the following rules: 13.25/5.17 13.25/5.17 new_flip(ww14, ww15, ba) -> :(ww15, ww14) 13.25/5.17 13.25/5.17 The set Q consists of the following terms: 13.25/5.17 13.25/5.17 new_flip(x0, x1, x2) 13.25/5.17 13.25/5.17 We have to consider all minimal (P,Q,R)-chains. 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (13) UsableRulesProof (EQUIVALENT) 13.25/5.17 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (14) 13.25/5.17 Obligation: 13.25/5.17 Q DP problem: 13.25/5.17 The TRS P consists of the following rules: 13.25/5.17 13.25/5.17 new_isPrefixOf(ww15, ww14, ww18, :(ww1710, ww1711), ba) -> new_isPrefixOf(ww15, ww14, :(ww1710, ww18), ww1711, ba) 13.25/5.17 13.25/5.17 R is empty. 13.25/5.17 The set Q consists of the following terms: 13.25/5.17 13.25/5.17 new_flip(x0, x1, x2) 13.25/5.17 13.25/5.17 We have to consider all minimal (P,Q,R)-chains. 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (15) QReductionProof (EQUIVALENT) 13.25/5.17 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 13.25/5.17 13.25/5.17 new_flip(x0, x1, x2) 13.25/5.17 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (16) 13.25/5.17 Obligation: 13.25/5.17 Q DP problem: 13.25/5.17 The TRS P consists of the following rules: 13.25/5.17 13.25/5.17 new_isPrefixOf(ww15, ww14, ww18, :(ww1710, ww1711), ba) -> new_isPrefixOf(ww15, ww14, :(ww1710, ww18), ww1711, ba) 13.25/5.17 13.25/5.17 R is empty. 13.25/5.17 Q is empty. 13.25/5.17 We have to consider all minimal (P,Q,R)-chains. 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (17) QDPSizeChangeProof (EQUIVALENT) 13.25/5.17 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.25/5.17 13.25/5.17 From the DPs we obtained the following set of size-change graphs: 13.25/5.17 *new_isPrefixOf(ww15, ww14, ww18, :(ww1710, ww1711), ba) -> new_isPrefixOf(ww15, ww14, :(ww1710, ww18), ww1711, ba) 13.25/5.17 The graph contains the following edges 1 >= 1, 2 >= 2, 4 > 4, 5 >= 5 13.25/5.17 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (18) 13.25/5.17 YES 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (19) 13.25/5.17 Obligation: 13.25/5.17 Q DP problem: 13.25/5.17 The TRS P consists of the following rules: 13.25/5.17 13.25/5.17 new_primEqNat(Succ(ww15000), Succ(ww180000)) -> new_primEqNat(ww15000, ww180000) 13.25/5.17 13.25/5.17 R is empty. 13.25/5.17 Q is empty. 13.25/5.17 We have to consider all minimal (P,Q,R)-chains. 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (20) QDPSizeChangeProof (EQUIVALENT) 13.25/5.17 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.25/5.17 13.25/5.17 From the DPs we obtained the following set of size-change graphs: 13.25/5.17 *new_primEqNat(Succ(ww15000), Succ(ww180000)) -> new_primEqNat(ww15000, ww180000) 13.25/5.17 The graph contains the following edges 1 > 1, 2 > 2 13.25/5.17 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (21) 13.25/5.17 YES 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (22) 13.25/5.17 Obligation: 13.25/5.17 Q DP problem: 13.25/5.17 The TRS P consists of the following rules: 13.25/5.17 13.25/5.17 new_isPrefixOf0(ww14, ww15, :(ww160, ww161), ww17, ba) -> new_isPrefixOf0(new_flip(ww14, ww15, ba), ww160, ww161, ww17, ba) 13.25/5.17 13.25/5.17 The TRS R consists of the following rules: 13.25/5.17 13.25/5.17 new_flip(ww14, ww15, ba) -> :(ww15, ww14) 13.25/5.17 13.25/5.17 The set Q consists of the following terms: 13.25/5.17 13.25/5.17 new_flip(x0, x1, x2) 13.25/5.17 13.25/5.17 We have to consider all minimal (P,Q,R)-chains. 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (23) TransformationProof (EQUIVALENT) 13.25/5.17 By rewriting [LPAR04] the rule new_isPrefixOf0(ww14, ww15, :(ww160, ww161), ww17, ba) -> new_isPrefixOf0(new_flip(ww14, ww15, ba), ww160, ww161, ww17, ba) at position [0] we obtained the following new rules [LPAR04]: 13.25/5.17 13.25/5.17 (new_isPrefixOf0(ww14, ww15, :(ww160, ww161), ww17, ba) -> new_isPrefixOf0(:(ww15, ww14), ww160, ww161, ww17, ba),new_isPrefixOf0(ww14, ww15, :(ww160, ww161), ww17, ba) -> new_isPrefixOf0(:(ww15, ww14), ww160, ww161, ww17, ba)) 13.25/5.17 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (24) 13.25/5.17 Obligation: 13.25/5.17 Q DP problem: 13.25/5.17 The TRS P consists of the following rules: 13.25/5.17 13.25/5.17 new_isPrefixOf0(ww14, ww15, :(ww160, ww161), ww17, ba) -> new_isPrefixOf0(:(ww15, ww14), ww160, ww161, ww17, ba) 13.25/5.17 13.25/5.17 The TRS R consists of the following rules: 13.25/5.17 13.25/5.17 new_flip(ww14, ww15, ba) -> :(ww15, ww14) 13.25/5.17 13.25/5.17 The set Q consists of the following terms: 13.25/5.17 13.25/5.17 new_flip(x0, x1, x2) 13.25/5.17 13.25/5.17 We have to consider all minimal (P,Q,R)-chains. 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (25) UsableRulesProof (EQUIVALENT) 13.25/5.17 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (26) 13.25/5.17 Obligation: 13.25/5.17 Q DP problem: 13.25/5.17 The TRS P consists of the following rules: 13.25/5.17 13.25/5.17 new_isPrefixOf0(ww14, ww15, :(ww160, ww161), ww17, ba) -> new_isPrefixOf0(:(ww15, ww14), ww160, ww161, ww17, ba) 13.25/5.17 13.25/5.17 R is empty. 13.25/5.17 The set Q consists of the following terms: 13.25/5.17 13.25/5.17 new_flip(x0, x1, x2) 13.25/5.17 13.25/5.17 We have to consider all minimal (P,Q,R)-chains. 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (27) QReductionProof (EQUIVALENT) 13.25/5.17 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 13.25/5.17 13.25/5.17 new_flip(x0, x1, x2) 13.25/5.17 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (28) 13.25/5.17 Obligation: 13.25/5.17 Q DP problem: 13.25/5.17 The TRS P consists of the following rules: 13.25/5.17 13.25/5.17 new_isPrefixOf0(ww14, ww15, :(ww160, ww161), ww17, ba) -> new_isPrefixOf0(:(ww15, ww14), ww160, ww161, ww17, ba) 13.25/5.17 13.25/5.17 R is empty. 13.25/5.17 Q is empty. 13.25/5.17 We have to consider all minimal (P,Q,R)-chains. 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (29) QDPSizeChangeProof (EQUIVALENT) 13.25/5.17 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.25/5.17 13.25/5.17 From the DPs we obtained the following set of size-change graphs: 13.25/5.17 *new_isPrefixOf0(ww14, ww15, :(ww160, ww161), ww17, ba) -> new_isPrefixOf0(:(ww15, ww14), ww160, ww161, ww17, ba) 13.25/5.17 The graph contains the following edges 3 > 2, 3 > 3, 4 >= 4, 5 >= 5 13.25/5.17 13.25/5.17 13.25/5.17 ---------------------------------------- 13.25/5.17 13.25/5.17 (30) 13.25/5.17 YES 13.44/6.76 EOF