10.54/4.53 YES 12.37/5.07 proof of /export/starexec/sandbox/benchmark/theBenchmark.hs 12.37/5.07 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 12.37/5.07 12.37/5.07 12.37/5.07 H-Termination with start terms of the given HASKELL could be proven: 12.37/5.07 12.37/5.07 (0) HASKELL 12.37/5.07 (1) BR [EQUIVALENT, 0 ms] 12.37/5.07 (2) HASKELL 12.37/5.07 (3) COR [EQUIVALENT, 0 ms] 12.37/5.07 (4) HASKELL 12.37/5.07 (5) NumRed [SOUND, 8 ms] 12.37/5.07 (6) HASKELL 12.37/5.07 (7) Narrow [SOUND, 0 ms] 12.37/5.07 (8) AND 12.37/5.07 (9) QDP 12.37/5.07 (10) QDPSizeChangeProof [EQUIVALENT, 0 ms] 12.37/5.07 (11) YES 12.37/5.07 (12) QDP 12.37/5.07 (13) QDPSizeChangeProof [EQUIVALENT, 0 ms] 12.37/5.07 (14) YES 12.37/5.07 (15) QDP 12.37/5.07 (16) QDPSizeChangeProof [EQUIVALENT, 0 ms] 12.37/5.07 (17) YES 12.37/5.07 12.37/5.07 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (0) 12.37/5.07 Obligation: 12.37/5.07 mainModule Main 12.37/5.07 module Main where { 12.37/5.07 import qualified Prelude; 12.37/5.07 } 12.37/5.07 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (1) BR (EQUIVALENT) 12.37/5.07 Replaced joker patterns by fresh variables and removed binding patterns. 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (2) 12.37/5.07 Obligation: 12.37/5.07 mainModule Main 12.37/5.07 module Main where { 12.37/5.07 import qualified Prelude; 12.37/5.07 } 12.37/5.07 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (3) COR (EQUIVALENT) 12.37/5.07 Cond Reductions: 12.37/5.07 The following Function with conditions 12.37/5.07 "undefined |Falseundefined; 12.37/5.07 " 12.37/5.07 is transformed to 12.37/5.07 "undefined = undefined1; 12.37/5.07 " 12.37/5.07 "undefined0 True = undefined; 12.37/5.07 " 12.37/5.07 "undefined1 = undefined0 False; 12.37/5.07 " 12.37/5.07 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (4) 12.37/5.07 Obligation: 12.37/5.07 mainModule Main 12.37/5.07 module Main where { 12.37/5.07 import qualified Prelude; 12.37/5.07 } 12.37/5.07 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (5) NumRed (SOUND) 12.37/5.07 Num Reduction:All numbers are transformed to their corresponding representation with Succ, Pred and Zero. 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (6) 12.37/5.07 Obligation: 12.37/5.07 mainModule Main 12.37/5.07 module Main where { 12.37/5.07 import qualified Prelude; 12.37/5.07 } 12.37/5.07 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (7) Narrow (SOUND) 12.37/5.07 Haskell To QDPs 12.37/5.07 12.37/5.07 digraph dp_graph { 12.37/5.07 node [outthreshold=100, inthreshold=100];1[label="isPrint",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 12.37/5.07 3[label="isPrint vx3",fontsize=16,color="black",shape="triangle"];3 -> 4[label="",style="solid", color="black", weight=3]; 12.37/5.07 4 -> 295[label="",style="dashed", color="red", weight=0]; 12.37/5.07 4[label="not (isControl vx3)",fontsize=16,color="magenta"];4 -> 296[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 296[label="isControl vx3",fontsize=16,color="black",shape="box"];296 -> 431[label="",style="solid", color="black", weight=3]; 12.37/5.07 295[label="not vx20",fontsize=16,color="burlywood",shape="triangle"];579[label="vx20/False",fontsize=10,color="white",style="solid",shape="box"];295 -> 579[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 579 -> 432[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 580[label="vx20/True",fontsize=10,color="white",style="solid",shape="box"];295 -> 580[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 580 -> 433[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 431 -> 446[label="",style="dashed", color="red", weight=0]; 12.37/5.07 431[label="vx3 < Char (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))))))))))))))))))))) || vx3 >= Char (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) && vx3 <= Char (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="magenta"];431 -> 447[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 431 -> 448[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 431 -> 449[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 431 -> 450[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 432[label="not False",fontsize=16,color="black",shape="box"];432 -> 437[label="",style="solid", color="black", weight=3]; 12.37/5.07 433[label="not True",fontsize=16,color="black",shape="box"];433 -> 438[label="",style="solid", color="black", weight=3]; 12.37/5.07 447[label="vx3",fontsize=16,color="green",shape="box"];448[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];449[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];450[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];446[label="vx29 < Char (Succ vx30) || vx29 >= Char (Succ vx31) && vx29 <= Char (Succ vx32)",fontsize=16,color="black",shape="triangle"];446 -> 455[label="",style="solid", color="black", weight=3]; 12.37/5.07 437[label="True",fontsize=16,color="green",shape="box"];438[label="False",fontsize=16,color="green",shape="box"];455[label="compare vx29 (Char (Succ vx30)) == LT || vx29 >= Char (Succ vx31) && vx29 <= Char (Succ vx32)",fontsize=16,color="black",shape="box"];455 -> 456[label="",style="solid", color="black", weight=3]; 12.37/5.07 456[label="primCmpChar vx29 (Char (Succ vx30)) == LT || vx29 >= Char (Succ vx31) && vx29 <= Char (Succ vx32)",fontsize=16,color="burlywood",shape="box"];581[label="vx29/Char vx290",fontsize=10,color="white",style="solid",shape="box"];456 -> 581[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 581 -> 457[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 457[label="primCmpChar (Char vx290) (Char (Succ vx30)) == LT || Char vx290 >= Char (Succ vx31) && Char vx290 <= Char (Succ vx32)",fontsize=16,color="black",shape="box"];457 -> 458[label="",style="solid", color="black", weight=3]; 12.37/5.07 458 -> 493[label="",style="dashed", color="red", weight=0]; 12.37/5.07 458[label="primCmpNat vx290 (Succ vx30) == LT || Char vx290 >= Char (Succ vx31) && Char vx290 <= Char (Succ vx32)",fontsize=16,color="magenta"];458 -> 494[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 458 -> 495[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 458 -> 496[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 494[label="vx290",fontsize=16,color="green",shape="box"];495[label="Succ vx30",fontsize=16,color="green",shape="box"];496 -> 512[label="",style="dashed", color="red", weight=0]; 12.37/5.07 496[label="Char vx290 >= Char (Succ vx31) && Char vx290 <= Char (Succ vx32)",fontsize=16,color="magenta"];496 -> 513[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 493[label="primCmpNat vx290000 vx3000 == LT || vx33",fontsize=16,color="burlywood",shape="triangle"];582[label="vx290000/Succ vx2900000",fontsize=10,color="white",style="solid",shape="box"];493 -> 582[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 582 -> 505[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 583[label="vx290000/Zero",fontsize=10,color="white",style="solid",shape="box"];493 -> 583[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 583 -> 506[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 513[label="Char vx290 >= Char (Succ vx31)",fontsize=16,color="black",shape="box"];513 -> 516[label="",style="solid", color="black", weight=3]; 12.37/5.07 512[label="vx34 && Char vx290 <= Char (Succ vx32)",fontsize=16,color="burlywood",shape="triangle"];584[label="vx34/False",fontsize=10,color="white",style="solid",shape="box"];512 -> 584[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 584 -> 517[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 585[label="vx34/True",fontsize=10,color="white",style="solid",shape="box"];512 -> 585[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 585 -> 518[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 505[label="primCmpNat (Succ vx2900000) vx3000 == LT || vx33",fontsize=16,color="burlywood",shape="box"];586[label="vx3000/Succ vx30000",fontsize=10,color="white",style="solid",shape="box"];505 -> 586[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 586 -> 508[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 587[label="vx3000/Zero",fontsize=10,color="white",style="solid",shape="box"];505 -> 587[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 587 -> 509[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 506[label="primCmpNat Zero vx3000 == LT || vx33",fontsize=16,color="burlywood",shape="box"];588[label="vx3000/Succ vx30000",fontsize=10,color="white",style="solid",shape="box"];506 -> 588[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 588 -> 510[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 589[label="vx3000/Zero",fontsize=10,color="white",style="solid",shape="box"];506 -> 589[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 589 -> 511[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 516[label="compare (Char vx290) (Char (Succ vx31)) /= LT",fontsize=16,color="black",shape="box"];516 -> 523[label="",style="solid", color="black", weight=3]; 12.37/5.07 517[label="False && Char vx290 <= Char (Succ vx32)",fontsize=16,color="black",shape="box"];517 -> 524[label="",style="solid", color="black", weight=3]; 12.37/5.07 518[label="True && Char vx290 <= Char (Succ vx32)",fontsize=16,color="black",shape="box"];518 -> 525[label="",style="solid", color="black", weight=3]; 12.37/5.07 508[label="primCmpNat (Succ vx2900000) (Succ vx30000) == LT || vx33",fontsize=16,color="black",shape="box"];508 -> 519[label="",style="solid", color="black", weight=3]; 12.37/5.07 509[label="primCmpNat (Succ vx2900000) Zero == LT || vx33",fontsize=16,color="black",shape="box"];509 -> 520[label="",style="solid", color="black", weight=3]; 12.37/5.07 510[label="primCmpNat Zero (Succ vx30000) == LT || vx33",fontsize=16,color="black",shape="box"];510 -> 521[label="",style="solid", color="black", weight=3]; 12.37/5.07 511[label="primCmpNat Zero Zero == LT || vx33",fontsize=16,color="black",shape="box"];511 -> 522[label="",style="solid", color="black", weight=3]; 12.37/5.07 523 -> 295[label="",style="dashed", color="red", weight=0]; 12.37/5.07 523[label="not (compare (Char vx290) (Char (Succ vx31)) == LT)",fontsize=16,color="magenta"];523 -> 531[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 524[label="False",fontsize=16,color="green",shape="box"];525[label="Char vx290 <= Char (Succ vx32)",fontsize=16,color="black",shape="box"];525 -> 532[label="",style="solid", color="black", weight=3]; 12.37/5.07 519 -> 493[label="",style="dashed", color="red", weight=0]; 12.37/5.07 519[label="primCmpNat vx2900000 vx30000 == LT || vx33",fontsize=16,color="magenta"];519 -> 526[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 519 -> 527[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 520[label="GT == LT || vx33",fontsize=16,color="black",shape="box"];520 -> 528[label="",style="solid", color="black", weight=3]; 12.37/5.07 521[label="LT == LT || vx33",fontsize=16,color="black",shape="box"];521 -> 529[label="",style="solid", color="black", weight=3]; 12.37/5.07 522[label="EQ == LT || vx33",fontsize=16,color="black",shape="box"];522 -> 530[label="",style="solid", color="black", weight=3]; 12.37/5.07 531[label="compare (Char vx290) (Char (Succ vx31)) == LT",fontsize=16,color="black",shape="box"];531 -> 535[label="",style="solid", color="black", weight=3]; 12.37/5.07 532[label="compare (Char vx290) (Char (Succ vx32)) /= GT",fontsize=16,color="black",shape="box"];532 -> 536[label="",style="solid", color="black", weight=3]; 12.37/5.07 526[label="vx2900000",fontsize=16,color="green",shape="box"];527[label="vx30000",fontsize=16,color="green",shape="box"];528[label="False || vx33",fontsize=16,color="black",shape="triangle"];528 -> 533[label="",style="solid", color="black", weight=3]; 12.37/5.07 529[label="True || vx33",fontsize=16,color="black",shape="box"];529 -> 534[label="",style="solid", color="black", weight=3]; 12.37/5.07 530 -> 528[label="",style="dashed", color="red", weight=0]; 12.37/5.07 530[label="False || vx33",fontsize=16,color="magenta"];535[label="primCmpChar (Char vx290) (Char (Succ vx31)) == LT",fontsize=16,color="black",shape="box"];535 -> 537[label="",style="solid", color="black", weight=3]; 12.37/5.07 536 -> 295[label="",style="dashed", color="red", weight=0]; 12.37/5.07 536[label="not (compare (Char vx290) (Char (Succ vx32)) == GT)",fontsize=16,color="magenta"];536 -> 538[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 533[label="vx33",fontsize=16,color="green",shape="box"];534[label="True",fontsize=16,color="green",shape="box"];537[label="primCmpNat vx290 (Succ vx31) == LT",fontsize=16,color="burlywood",shape="box"];590[label="vx290/Succ vx2900",fontsize=10,color="white",style="solid",shape="box"];537 -> 590[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 590 -> 539[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 591[label="vx290/Zero",fontsize=10,color="white",style="solid",shape="box"];537 -> 591[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 591 -> 540[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 538[label="compare (Char vx290) (Char (Succ vx32)) == GT",fontsize=16,color="black",shape="box"];538 -> 541[label="",style="solid", color="black", weight=3]; 12.37/5.07 539[label="primCmpNat (Succ vx2900) (Succ vx31) == LT",fontsize=16,color="black",shape="box"];539 -> 542[label="",style="solid", color="black", weight=3]; 12.37/5.07 540[label="primCmpNat Zero (Succ vx31) == LT",fontsize=16,color="black",shape="box"];540 -> 543[label="",style="solid", color="black", weight=3]; 12.37/5.07 541[label="primCmpChar (Char vx290) (Char (Succ vx32)) == GT",fontsize=16,color="black",shape="box"];541 -> 544[label="",style="solid", color="black", weight=3]; 12.37/5.07 542[label="primCmpNat vx2900 vx31 == LT",fontsize=16,color="burlywood",shape="triangle"];592[label="vx2900/Succ vx29000",fontsize=10,color="white",style="solid",shape="box"];542 -> 592[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 592 -> 545[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 593[label="vx2900/Zero",fontsize=10,color="white",style="solid",shape="box"];542 -> 593[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 593 -> 546[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 543[label="LT == LT",fontsize=16,color="black",shape="triangle"];543 -> 547[label="",style="solid", color="black", weight=3]; 12.37/5.07 544[label="primCmpNat vx290 (Succ vx32) == GT",fontsize=16,color="burlywood",shape="box"];594[label="vx290/Succ vx2900",fontsize=10,color="white",style="solid",shape="box"];544 -> 594[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 594 -> 548[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 595[label="vx290/Zero",fontsize=10,color="white",style="solid",shape="box"];544 -> 595[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 595 -> 549[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 545[label="primCmpNat (Succ vx29000) vx31 == LT",fontsize=16,color="burlywood",shape="box"];596[label="vx31/Succ vx310",fontsize=10,color="white",style="solid",shape="box"];545 -> 596[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 596 -> 550[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 597[label="vx31/Zero",fontsize=10,color="white",style="solid",shape="box"];545 -> 597[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 597 -> 551[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 546[label="primCmpNat Zero vx31 == LT",fontsize=16,color="burlywood",shape="box"];598[label="vx31/Succ vx310",fontsize=10,color="white",style="solid",shape="box"];546 -> 598[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 598 -> 552[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 599[label="vx31/Zero",fontsize=10,color="white",style="solid",shape="box"];546 -> 599[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 599 -> 553[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 547[label="True",fontsize=16,color="green",shape="box"];548[label="primCmpNat (Succ vx2900) (Succ vx32) == GT",fontsize=16,color="black",shape="box"];548 -> 554[label="",style="solid", color="black", weight=3]; 12.37/5.07 549[label="primCmpNat Zero (Succ vx32) == GT",fontsize=16,color="black",shape="box"];549 -> 555[label="",style="solid", color="black", weight=3]; 12.37/5.07 550[label="primCmpNat (Succ vx29000) (Succ vx310) == LT",fontsize=16,color="black",shape="box"];550 -> 556[label="",style="solid", color="black", weight=3]; 12.37/5.07 551[label="primCmpNat (Succ vx29000) Zero == LT",fontsize=16,color="black",shape="box"];551 -> 557[label="",style="solid", color="black", weight=3]; 12.37/5.07 552[label="primCmpNat Zero (Succ vx310) == LT",fontsize=16,color="black",shape="box"];552 -> 558[label="",style="solid", color="black", weight=3]; 12.37/5.07 553[label="primCmpNat Zero Zero == LT",fontsize=16,color="black",shape="box"];553 -> 559[label="",style="solid", color="black", weight=3]; 12.37/5.07 554[label="primCmpNat vx2900 vx32 == GT",fontsize=16,color="burlywood",shape="triangle"];600[label="vx2900/Succ vx29000",fontsize=10,color="white",style="solid",shape="box"];554 -> 600[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 600 -> 560[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 601[label="vx2900/Zero",fontsize=10,color="white",style="solid",shape="box"];554 -> 601[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 601 -> 561[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 555[label="LT == GT",fontsize=16,color="black",shape="triangle"];555 -> 562[label="",style="solid", color="black", weight=3]; 12.37/5.07 556 -> 542[label="",style="dashed", color="red", weight=0]; 12.37/5.07 556[label="primCmpNat vx29000 vx310 == LT",fontsize=16,color="magenta"];556 -> 563[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 556 -> 564[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 557[label="GT == LT",fontsize=16,color="black",shape="box"];557 -> 565[label="",style="solid", color="black", weight=3]; 12.37/5.07 558 -> 543[label="",style="dashed", color="red", weight=0]; 12.37/5.07 558[label="LT == LT",fontsize=16,color="magenta"];559[label="EQ == LT",fontsize=16,color="black",shape="box"];559 -> 566[label="",style="solid", color="black", weight=3]; 12.37/5.07 560[label="primCmpNat (Succ vx29000) vx32 == GT",fontsize=16,color="burlywood",shape="box"];602[label="vx32/Succ vx320",fontsize=10,color="white",style="solid",shape="box"];560 -> 602[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 602 -> 567[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 603[label="vx32/Zero",fontsize=10,color="white",style="solid",shape="box"];560 -> 603[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 603 -> 568[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 561[label="primCmpNat Zero vx32 == GT",fontsize=16,color="burlywood",shape="box"];604[label="vx32/Succ vx320",fontsize=10,color="white",style="solid",shape="box"];561 -> 604[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 604 -> 569[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 605[label="vx32/Zero",fontsize=10,color="white",style="solid",shape="box"];561 -> 605[label="",style="solid", color="burlywood", weight=9]; 12.37/5.07 605 -> 570[label="",style="solid", color="burlywood", weight=3]; 12.37/5.07 562[label="False",fontsize=16,color="green",shape="box"];563[label="vx29000",fontsize=16,color="green",shape="box"];564[label="vx310",fontsize=16,color="green",shape="box"];565[label="False",fontsize=16,color="green",shape="box"];566[label="False",fontsize=16,color="green",shape="box"];567[label="primCmpNat (Succ vx29000) (Succ vx320) == GT",fontsize=16,color="black",shape="box"];567 -> 571[label="",style="solid", color="black", weight=3]; 12.37/5.07 568[label="primCmpNat (Succ vx29000) Zero == GT",fontsize=16,color="black",shape="box"];568 -> 572[label="",style="solid", color="black", weight=3]; 12.37/5.07 569[label="primCmpNat Zero (Succ vx320) == GT",fontsize=16,color="black",shape="box"];569 -> 573[label="",style="solid", color="black", weight=3]; 12.37/5.07 570[label="primCmpNat Zero Zero == GT",fontsize=16,color="black",shape="box"];570 -> 574[label="",style="solid", color="black", weight=3]; 12.37/5.07 571 -> 554[label="",style="dashed", color="red", weight=0]; 12.37/5.07 571[label="primCmpNat vx29000 vx320 == GT",fontsize=16,color="magenta"];571 -> 575[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 571 -> 576[label="",style="dashed", color="magenta", weight=3]; 12.37/5.07 572[label="GT == GT",fontsize=16,color="black",shape="box"];572 -> 577[label="",style="solid", color="black", weight=3]; 12.37/5.07 573 -> 555[label="",style="dashed", color="red", weight=0]; 12.37/5.07 573[label="LT == GT",fontsize=16,color="magenta"];574[label="EQ == GT",fontsize=16,color="black",shape="box"];574 -> 578[label="",style="solid", color="black", weight=3]; 12.37/5.07 575[label="vx29000",fontsize=16,color="green",shape="box"];576[label="vx320",fontsize=16,color="green",shape="box"];577[label="True",fontsize=16,color="green",shape="box"];578[label="False",fontsize=16,color="green",shape="box"];} 12.37/5.07 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (8) 12.37/5.07 Complex Obligation (AND) 12.37/5.07 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (9) 12.37/5.07 Obligation: 12.37/5.07 Q DP problem: 12.37/5.07 The TRS P consists of the following rules: 12.37/5.07 12.37/5.07 new_pePe(Succ(vx2900000), Succ(vx30000), vx33) -> new_pePe(vx2900000, vx30000, vx33) 12.37/5.07 12.37/5.07 R is empty. 12.37/5.07 Q is empty. 12.37/5.07 We have to consider all minimal (P,Q,R)-chains. 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (10) QDPSizeChangeProof (EQUIVALENT) 12.37/5.07 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. 12.37/5.07 12.37/5.07 From the DPs we obtained the following set of size-change graphs: 12.37/5.07 *new_pePe(Succ(vx2900000), Succ(vx30000), vx33) -> new_pePe(vx2900000, vx30000, vx33) 12.37/5.07 The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3 12.37/5.07 12.37/5.07 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (11) 12.37/5.07 YES 12.37/5.07 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (12) 12.37/5.07 Obligation: 12.37/5.07 Q DP problem: 12.37/5.07 The TRS P consists of the following rules: 12.37/5.07 12.37/5.07 new_esEs0(Succ(vx29000), Succ(vx320)) -> new_esEs0(vx29000, vx320) 12.37/5.07 12.37/5.07 R is empty. 12.37/5.07 Q is empty. 12.37/5.07 We have to consider all minimal (P,Q,R)-chains. 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (13) QDPSizeChangeProof (EQUIVALENT) 12.37/5.07 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. 12.37/5.07 12.37/5.07 From the DPs we obtained the following set of size-change graphs: 12.37/5.07 *new_esEs0(Succ(vx29000), Succ(vx320)) -> new_esEs0(vx29000, vx320) 12.37/5.07 The graph contains the following edges 1 > 1, 2 > 2 12.37/5.07 12.37/5.07 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (14) 12.37/5.07 YES 12.37/5.07 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (15) 12.37/5.07 Obligation: 12.37/5.07 Q DP problem: 12.37/5.07 The TRS P consists of the following rules: 12.37/5.07 12.37/5.07 new_esEs(Succ(vx29000), Succ(vx310)) -> new_esEs(vx29000, vx310) 12.37/5.07 12.37/5.07 R is empty. 12.37/5.07 Q is empty. 12.37/5.07 We have to consider all minimal (P,Q,R)-chains. 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (16) QDPSizeChangeProof (EQUIVALENT) 12.37/5.07 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. 12.37/5.07 12.37/5.07 From the DPs we obtained the following set of size-change graphs: 12.37/5.07 *new_esEs(Succ(vx29000), Succ(vx310)) -> new_esEs(vx29000, vx310) 12.37/5.07 The graph contains the following edges 1 > 1, 2 > 2 12.37/5.07 12.37/5.07 12.37/5.07 ---------------------------------------- 12.37/5.07 12.37/5.07 (17) 12.37/5.07 YES 12.57/5.11 EOF