/export/starexec/sandbox2/solver/bin/starexec_run_standard /export/starexec/sandbox2/benchmark/theBenchmark.hs /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox2/benchmark/theBenchmark.hs # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty H-Termination with start terms of the given HASKELL could be proven: (0) HASKELL (1) LR [EQUIVALENT, 0 ms] (2) HASKELL (3) IFR [EQUIVALENT, 0 ms] (4) HASKELL (5) BR [EQUIVALENT, 0 ms] (6) HASKELL (7) COR [EQUIVALENT, 0 ms] (8) HASKELL (9) NumRed [SOUND, 0 ms] (10) HASKELL (11) Narrow [SOUND, 0 ms] (12) AND (13) QDP (14) QDPSizeChangeProof [EQUIVALENT, 0 ms] (15) YES (16) QDP (17) QDPSizeChangeProof [EQUIVALENT, 0 ms] (18) YES ---------------------------------------- (0) Obligation: mainModule Main module Main where { import qualified Prelude; } ---------------------------------------- (1) LR (EQUIVALENT) Lambda Reductions: The following Lambda expression "\_->q" is transformed to "gtGt0 q _ = q; " ---------------------------------------- (2) Obligation: mainModule Main module Main where { import qualified Prelude; } ---------------------------------------- (3) IFR (EQUIVALENT) If Reductions: The following If expression "if b then (showChar '(') . p . showChar ')' else p" is transformed to "showParen0 p True = (showChar '(') . p . showChar ')'; showParen0 p False = p; " ---------------------------------------- (4) Obligation: mainModule Main module Main where { import qualified Prelude; } ---------------------------------------- (5) BR (EQUIVALENT) Replaced joker patterns by fresh variables and removed binding patterns. ---------------------------------------- (6) Obligation: mainModule Main module Main where { import qualified Prelude; } ---------------------------------------- (7) COR (EQUIVALENT) Cond Reductions: The following Function with conditions "randomSelect (x : []) = x; randomSelect (x : xs)|terminatorrandomSelect xs|otherwisex; " is transformed to "randomSelect (x : []) = randomSelect3 (x : []); randomSelect (x : xs) = randomSelect2 (x : xs); " "randomSelect0 x xs True = x; " "randomSelect1 x xs True = randomSelect xs; randomSelect1 x xs False = randomSelect0 x xs otherwise; " "randomSelect2 (x : xs) = randomSelect1 x xs terminator; " "randomSelect3 (x : []) = x; randomSelect3 wv = randomSelect2 wv; " The following Function with conditions "undefined |Falseundefined; " is transformed to "undefined = undefined1; " "undefined0 True = undefined; " "undefined1 = undefined0 False; " ---------------------------------------- (8) Obligation: mainModule Main module Main where { import qualified Prelude; } ---------------------------------------- (9) NumRed (SOUND) Num Reduction:All numbers are transformed to their corresponding representation with Succ, Pred and Zero. ---------------------------------------- (10) Obligation: mainModule Main module Main where { import qualified Prelude; } ---------------------------------------- (11) Narrow (SOUND) Haskell To QDPs digraph dp_graph { node [outthreshold=100, inthreshold=100];1[label="print",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 3[label="print ww3",fontsize=16,color="black",shape="triangle"];3 -> 4[label="",style="solid", color="black", weight=3]; 4[label="putStrLn . show",fontsize=16,color="black",shape="box"];4 -> 5[label="",style="solid", color="black", weight=3]; 5[label="putStrLn (show ww3)",fontsize=16,color="black",shape="box"];5 -> 6[label="",style="solid", color="black", weight=3]; 6 -> 7[label="",style="dashed", color="red", weight=0]; 6[label="putStr (show ww3) >> putChar (Char (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))",fontsize=16,color="magenta"];6 -> 8[label="",style="dashed", color="magenta", weight=3]; 6 -> 9[label="",style="dashed", color="magenta", weight=3]; 8[label="ww3",fontsize=16,color="green",shape="box"];9[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];7[label="putStr (show ww5) >> putChar (Char (Succ ww6))",fontsize=16,color="black",shape="triangle"];7 -> 10[label="",style="solid", color="black", weight=3]; 10[label="putStr (show ww5) >>= gtGt0 (putChar (Char (Succ ww6)))",fontsize=16,color="black",shape="box"];10 -> 11[label="",style="solid", color="black", weight=3]; 11 -> 233[label="",style="dashed", color="red", weight=0]; 11[label="primbindIO (putStr (show ww5)) (gtGt0 (putChar (Char (Succ ww6))))",fontsize=16,color="magenta"];11 -> 234[label="",style="dashed", color="magenta", weight=3]; 11 -> 235[label="",style="dashed", color="magenta", weight=3]; 234 -> 338[label="",style="dashed", color="red", weight=0]; 234[label="putStr (show ww5)",fontsize=16,color="magenta"];234 -> 339[label="",style="dashed", color="magenta", weight=3]; 235[label="putChar (Char (Succ ww6))",fontsize=16,color="black",shape="box"];235 -> 340[label="",style="solid", color="black", weight=3]; 233[label="primbindIO ww50 (gtGt0 ww49)",fontsize=16,color="burlywood",shape="triangle"];529[label="ww50/IO ww500",fontsize=10,color="white",style="solid",shape="box"];233 -> 529[label="",style="solid", color="burlywood", weight=9]; 529 -> 341[label="",style="solid", color="burlywood", weight=3]; 530[label="ww50/AProVE_IO ww500",fontsize=10,color="white",style="solid",shape="box"];233 -> 530[label="",style="solid", color="burlywood", weight=9]; 530 -> 342[label="",style="solid", color="burlywood", weight=3]; 531[label="ww50/AProVE_Exception ww500",fontsize=10,color="white",style="solid",shape="box"];233 -> 531[label="",style="solid", color="burlywood", weight=9]; 531 -> 343[label="",style="solid", color="burlywood", weight=3]; 532[label="ww50/AProVE_Error ww500",fontsize=10,color="white",style="solid",shape="box"];233 -> 532[label="",style="solid", color="burlywood", weight=9]; 532 -> 344[label="",style="solid", color="burlywood", weight=3]; 339[label="show ww5",fontsize=16,color="blue",shape="box"];533[label="show :: (Either a b) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 533[label="",style="solid", color="blue", weight=9]; 533 -> 345[label="",style="solid", color="blue", weight=3]; 534[label="show :: () -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 534[label="",style="solid", color="blue", weight=9]; 534 -> 346[label="",style="solid", color="blue", weight=3]; 535[label="show :: ((@3) a b c) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 535[label="",style="solid", color="blue", weight=9]; 535 -> 347[label="",style="solid", color="blue", weight=3]; 536[label="show :: IOError -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 536[label="",style="solid", color="blue", weight=9]; 536 -> 348[label="",style="solid", color="blue", weight=3]; 537[label="show :: HugsException -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 537[label="",style="solid", color="blue", weight=9]; 537 -> 349[label="",style="solid", color="blue", weight=3]; 538[label="show :: IOErrorKind -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 538[label="",style="solid", color="blue", weight=9]; 538 -> 350[label="",style="solid", color="blue", weight=3]; 539[label="show :: Double -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 539[label="",style="solid", color="blue", weight=9]; 539 -> 351[label="",style="solid", color="blue", weight=3]; 540[label="show :: Bool -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 540[label="",style="solid", color="blue", weight=9]; 540 -> 352[label="",style="solid", color="blue", weight=3]; 541[label="show :: Char -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 541[label="",style="solid", color="blue", weight=9]; 541 -> 353[label="",style="solid", color="blue", weight=3]; 542[label="show :: Ordering -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 542[label="",style="solid", color="blue", weight=9]; 542 -> 354[label="",style="solid", color="blue", weight=3]; 543[label="show :: Integer -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 543[label="",style="solid", color="blue", weight=9]; 543 -> 355[label="",style="solid", color="blue", weight=3]; 544[label="show :: ([] a) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 544[label="",style="solid", color="blue", weight=9]; 544 -> 356[label="",style="solid", color="blue", weight=3]; 545[label="show :: ((@2) a b) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 545[label="",style="solid", color="blue", weight=9]; 545 -> 357[label="",style="solid", color="blue", weight=3]; 546[label="show :: Float -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 546[label="",style="solid", color="blue", weight=9]; 546 -> 358[label="",style="solid", color="blue", weight=3]; 547[label="show :: (Maybe a) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 547[label="",style="solid", color="blue", weight=9]; 547 -> 359[label="",style="solid", color="blue", weight=3]; 548[label="show :: (Ratio a) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 548[label="",style="solid", color="blue", weight=9]; 548 -> 360[label="",style="solid", color="blue", weight=3]; 549[label="show :: (IO a) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 549[label="",style="solid", color="blue", weight=9]; 549 -> 361[label="",style="solid", color="blue", weight=3]; 550[label="show :: Int -> [] Char",fontsize=10,color="white",style="solid",shape="box"];339 -> 550[label="",style="solid", color="blue", weight=9]; 550 -> 362[label="",style="solid", color="blue", weight=3]; 338[label="putStr ww53",fontsize=16,color="burlywood",shape="triangle"];551[label="ww53/ww530 : ww531",fontsize=10,color="white",style="solid",shape="box"];338 -> 551[label="",style="solid", color="burlywood", weight=9]; 551 -> 363[label="",style="solid", color="burlywood", weight=3]; 552[label="ww53/[]",fontsize=10,color="white",style="solid",shape="box"];338 -> 552[label="",style="solid", color="burlywood", weight=9]; 552 -> 364[label="",style="solid", color="burlywood", weight=3]; 340 -> 492[label="",style="dashed", color="red", weight=0]; 340[label="(seq Char (Succ ww6) output)",fontsize=16,color="magenta"];340 -> 493[label="",style="dashed", color="magenta", weight=3]; 340 -> 494[label="",style="dashed", color="magenta", weight=3]; 341[label="primbindIO (IO ww500) (gtGt0 ww49)",fontsize=16,color="black",shape="box"];341 -> 366[label="",style="solid", color="black", weight=3]; 342[label="primbindIO (AProVE_IO ww500) (gtGt0 ww49)",fontsize=16,color="black",shape="box"];342 -> 367[label="",style="solid", color="black", weight=3]; 343[label="primbindIO (AProVE_Exception ww500) (gtGt0 ww49)",fontsize=16,color="black",shape="box"];343 -> 368[label="",style="solid", color="black", weight=3]; 344[label="primbindIO (AProVE_Error ww500) (gtGt0 ww49)",fontsize=16,color="black",shape="box"];344 -> 369[label="",style="solid", color="black", weight=3]; 345[label="show ww5",fontsize=16,color="black",shape="box"];345 -> 370[label="",style="solid", color="black", weight=3]; 346[label="show ww5",fontsize=16,color="black",shape="box"];346 -> 371[label="",style="solid", color="black", weight=3]; 347[label="show ww5",fontsize=16,color="black",shape="box"];347 -> 372[label="",style="solid", color="black", weight=3]; 348[label="show ww5",fontsize=16,color="black",shape="box"];348 -> 373[label="",style="solid", color="black", weight=3]; 349[label="show ww5",fontsize=16,color="black",shape="box"];349 -> 374[label="",style="solid", color="black", weight=3]; 350[label="show ww5",fontsize=16,color="black",shape="box"];350 -> 375[label="",style="solid", color="black", weight=3]; 351[label="show ww5",fontsize=16,color="black",shape="box"];351 -> 376[label="",style="solid", color="black", weight=3]; 352[label="show ww5",fontsize=16,color="black",shape="box"];352 -> 377[label="",style="solid", color="black", weight=3]; 353[label="show ww5",fontsize=16,color="black",shape="box"];353 -> 378[label="",style="solid", color="black", weight=3]; 354[label="show ww5",fontsize=16,color="black",shape="box"];354 -> 379[label="",style="solid", color="black", weight=3]; 355[label="show ww5",fontsize=16,color="black",shape="box"];355 -> 380[label="",style="solid", color="black", weight=3]; 356[label="show ww5",fontsize=16,color="black",shape="box"];356 -> 381[label="",style="solid", color="black", weight=3]; 357[label="show ww5",fontsize=16,color="black",shape="box"];357 -> 382[label="",style="solid", color="black", weight=3]; 358[label="show ww5",fontsize=16,color="black",shape="box"];358 -> 383[label="",style="solid", color="black", weight=3]; 359[label="show ww5",fontsize=16,color="black",shape="box"];359 -> 384[label="",style="solid", color="black", weight=3]; 360[label="show ww5",fontsize=16,color="black",shape="box"];360 -> 385[label="",style="solid", color="black", weight=3]; 361[label="show ww5",fontsize=16,color="black",shape="box"];361 -> 386[label="",style="solid", color="black", weight=3]; 362[label="show ww5",fontsize=16,color="black",shape="box"];362 -> 387[label="",style="solid", color="black", weight=3]; 363[label="putStr (ww530 : ww531)",fontsize=16,color="black",shape="box"];363 -> 388[label="",style="solid", color="black", weight=3]; 364[label="putStr []",fontsize=16,color="black",shape="box"];364 -> 389[label="",style="solid", color="black", weight=3]; 493[label="Char (Succ ww6)",fontsize=16,color="green",shape="box"];494 -> 389[label="",style="dashed", color="red", weight=0]; 494[label="output",fontsize=16,color="magenta"];492[label="(seq ww530 ww91)",fontsize=16,color="black",shape="triangle"];492 -> 496[label="",style="solid", color="black", weight=3]; 366[label="error []",fontsize=16,color="red",shape="box"];367[label="gtGt0 ww49 ww500",fontsize=16,color="black",shape="box"];367 -> 391[label="",style="solid", color="black", weight=3]; 368[label="AProVE_Exception ww500",fontsize=16,color="green",shape="box"];369[label="AProVE_Error ww500",fontsize=16,color="green",shape="box"];370[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];370 -> 392[label="",style="solid", color="black", weight=3]; 371[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];371 -> 393[label="",style="solid", color="black", weight=3]; 372[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];372 -> 394[label="",style="solid", color="black", weight=3]; 373[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];373 -> 395[label="",style="solid", color="black", weight=3]; 374[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];374 -> 396[label="",style="solid", color="black", weight=3]; 375[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];375 -> 397[label="",style="solid", color="black", weight=3]; 376[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];376 -> 398[label="",style="solid", color="black", weight=3]; 377[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="burlywood",shape="box"];553[label="ww5/False",fontsize=10,color="white",style="solid",shape="box"];377 -> 553[label="",style="solid", color="burlywood", weight=9]; 553 -> 399[label="",style="solid", color="burlywood", weight=3]; 554[label="ww5/True",fontsize=10,color="white",style="solid",shape="box"];377 -> 554[label="",style="solid", color="burlywood", weight=9]; 554 -> 400[label="",style="solid", color="burlywood", weight=3]; 378[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];378 -> 401[label="",style="solid", color="black", weight=3]; 379[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];379 -> 402[label="",style="solid", color="black", weight=3]; 380[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];380 -> 403[label="",style="solid", color="black", weight=3]; 381[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];381 -> 404[label="",style="solid", color="black", weight=3]; 382[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];382 -> 405[label="",style="solid", color="black", weight=3]; 383[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];383 -> 406[label="",style="solid", color="black", weight=3]; 384[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];384 -> 407[label="",style="solid", color="black", weight=3]; 385[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];385 -> 408[label="",style="solid", color="black", weight=3]; 386[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];386 -> 409[label="",style="solid", color="black", weight=3]; 387[label="showsPrec (Pos Zero) ww5 []",fontsize=16,color="black",shape="box"];387 -> 410[label="",style="solid", color="black", weight=3]; 388 -> 411[label="",style="dashed", color="red", weight=0]; 388[label="putChar ww530 >> putStr ww531",fontsize=16,color="magenta"];388 -> 412[label="",style="dashed", color="magenta", weight=3]; 389[label="output",fontsize=16,color="black",shape="triangle"];389 -> 413[label="",style="solid", color="black", weight=3]; 496[label="enforceWHNF (WHNF ww530) ww91",fontsize=16,color="black",shape="box"];496 -> 500[label="",style="solid", color="black", weight=3]; 391[label="ww49",fontsize=16,color="green",shape="box"];392[label="error []",fontsize=16,color="red",shape="box"];393[label="error []",fontsize=16,color="red",shape="box"];394[label="error []",fontsize=16,color="red",shape="box"];395[label="error []",fontsize=16,color="red",shape="box"];396[label="error []",fontsize=16,color="red",shape="box"];397[label="error []",fontsize=16,color="red",shape="box"];398[label="error []",fontsize=16,color="red",shape="box"];399[label="showsPrec (Pos Zero) False []",fontsize=16,color="black",shape="box"];399 -> 414[label="",style="solid", color="black", weight=3]; 400[label="showsPrec (Pos Zero) True []",fontsize=16,color="black",shape="box"];400 -> 415[label="",style="solid", color="black", weight=3]; 401[label="error []",fontsize=16,color="red",shape="box"];402[label="error []",fontsize=16,color="red",shape="box"];403[label="error []",fontsize=16,color="red",shape="box"];404[label="error []",fontsize=16,color="red",shape="box"];405[label="error []",fontsize=16,color="red",shape="box"];406[label="error []",fontsize=16,color="red",shape="box"];407[label="error []",fontsize=16,color="red",shape="box"];408[label="error []",fontsize=16,color="red",shape="box"];409[label="error []",fontsize=16,color="red",shape="box"];410[label="error []",fontsize=16,color="red",shape="box"];412 -> 338[label="",style="dashed", color="red", weight=0]; 412[label="putStr ww531",fontsize=16,color="magenta"];412 -> 416[label="",style="dashed", color="magenta", weight=3]; 411[label="putChar ww530 >> ww54",fontsize=16,color="black",shape="triangle"];411 -> 417[label="",style="solid", color="black", weight=3]; 413[label="randomSelect (aIOE IOError_FullError : aIOE IOError_PermDenied : AProVE_IO () : [])",fontsize=16,color="black",shape="box"];413 -> 418[label="",style="solid", color="black", weight=3]; 500[label="ww91",fontsize=16,color="green",shape="box"];414 -> 425[label="",style="dashed", color="red", weight=0]; 414[label="showParen (Pos Zero > Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))) (showString (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 Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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)))))))))))))))))))))))))))))))) : [])) []",fontsize=16,color="magenta"];414 -> 426[label="",style="dashed", color="magenta", weight=3]; 414 -> 427[label="",style="dashed", color="magenta", weight=3]; 415 -> 463[label="",style="dashed", color="red", weight=0]; 415[label="showParen (Pos Zero > Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))) (showString (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 Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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)))))))))))))))))))))))))))))))) : [])) []",fontsize=16,color="magenta"];415 -> 464[label="",style="dashed", color="magenta", weight=3]; 415 -> 465[label="",style="dashed", color="magenta", weight=3]; 415 -> 466[label="",style="dashed", color="magenta", weight=3]; 415 -> 467[label="",style="dashed", color="magenta", weight=3]; 415 -> 468[label="",style="dashed", color="magenta", weight=3]; 415 -> 469[label="",style="dashed", color="magenta", weight=3]; 416[label="ww531",fontsize=16,color="green",shape="box"];417[label="putChar ww530 >>= gtGt0 ww54",fontsize=16,color="black",shape="box"];417 -> 423[label="",style="solid", color="black", weight=3]; 418[label="randomSelect2 (aIOE IOError_FullError : aIOE IOError_PermDenied : AProVE_IO () : [])",fontsize=16,color="black",shape="box"];418 -> 424[label="",style="solid", color="black", weight=3]; 426[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];427[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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];425[label="showParen (Pos Zero > Pos (Succ ww60)) (showString (Char (Succ ww61) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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)))))))))))))))))))))))))))))))) : [])) []",fontsize=16,color="black",shape="triangle"];425 -> 430[label="",style="solid", color="black", weight=3]; 464[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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];465[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 Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];466[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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];467[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 Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];468[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];469[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"];463[label="showParen (Pos Zero > Pos (Succ ww81)) (showString (Char (Succ ww82) : Char (Succ ww83) : Char (Succ ww84) : Char (Succ ww85) : Char (Succ ww86) : [])) []",fontsize=16,color="black",shape="triangle"];463 -> 476[label="",style="solid", color="black", weight=3]; 423 -> 233[label="",style="dashed", color="red", weight=0]; 423[label="primbindIO (putChar ww530) (gtGt0 ww54)",fontsize=16,color="magenta"];423 -> 477[label="",style="dashed", color="magenta", weight=3]; 423 -> 478[label="",style="dashed", color="magenta", weight=3]; 424[label="randomSelect1 (aIOE IOError_FullError) (aIOE IOError_PermDenied : AProVE_IO () : []) terminator",fontsize=16,color="black",shape="box"];424 -> 479[label="",style="solid", color="black", weight=3]; 430[label="showParen0 (showString (Char (Succ ww61) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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)))))))))))))))))))))))))))))))) : [])) (Pos Zero > Pos (Succ ww60)) []",fontsize=16,color="black",shape="box"];430 -> 480[label="",style="solid", color="black", weight=3]; 476[label="showParen0 (showString (Char (Succ ww82) : Char (Succ ww83) : Char (Succ ww84) : Char (Succ ww85) : Char (Succ ww86) : [])) (Pos Zero > Pos (Succ ww81)) []",fontsize=16,color="black",shape="box"];476 -> 481[label="",style="solid", color="black", weight=3]; 477[label="putChar ww530",fontsize=16,color="black",shape="box"];477 -> 482[label="",style="solid", color="black", weight=3]; 478[label="ww54",fontsize=16,color="green",shape="box"];479[label="randomSelect1 (aIOE IOError_FullError) (aIOE IOError_PermDenied : AProVE_IO () : []) ter5m",fontsize=16,color="burlywood",shape="box"];555[label="ter5m/False",fontsize=10,color="white",style="solid",shape="box"];479 -> 555[label="",style="solid", color="burlywood", weight=9]; 555 -> 483[label="",style="solid", color="burlywood", weight=3]; 556[label="ter5m/True",fontsize=10,color="white",style="solid",shape="box"];479 -> 556[label="",style="solid", color="burlywood", weight=9]; 556 -> 484[label="",style="solid", color="burlywood", weight=3]; 480 -> 485[label="",style="dashed", color="red", weight=0]; 480[label="showParen0 (showString (Char (Succ ww61) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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)))))))))))))))))))))))))))))))) : [])) (compare (Pos Zero) (Pos (Succ ww60)) == GT) []",fontsize=16,color="magenta"];480 -> 486[label="",style="dashed", color="magenta", weight=3]; 480 -> 487[label="",style="dashed", color="magenta", weight=3]; 480 -> 488[label="",style="dashed", color="magenta", weight=3]; 481 -> 485[label="",style="dashed", color="red", weight=0]; 481[label="showParen0 (showString (Char (Succ ww82) : Char (Succ ww83) : Char (Succ ww84) : Char (Succ ww85) : Char (Succ ww86) : [])) (compare (Pos Zero) (Pos (Succ ww81)) == GT) []",fontsize=16,color="magenta"];481 -> 489[label="",style="dashed", color="magenta", weight=3]; 481 -> 490[label="",style="dashed", color="magenta", weight=3]; 481 -> 491[label="",style="dashed", color="magenta", weight=3]; 482 -> 492[label="",style="dashed", color="red", weight=0]; 482[label="(seq ww530 output)",fontsize=16,color="magenta"];482 -> 495[label="",style="dashed", color="magenta", weight=3]; 483[label="randomSelect1 (aIOE IOError_FullError) (aIOE IOError_PermDenied : AProVE_IO () : []) False",fontsize=16,color="black",shape="box"];483 -> 497[label="",style="solid", color="black", weight=3]; 484[label="randomSelect1 (aIOE IOError_FullError) (aIOE IOError_PermDenied : AProVE_IO () : []) True",fontsize=16,color="black",shape="box"];484 -> 498[label="",style="solid", color="black", weight=3]; 486[label="ww60",fontsize=16,color="green",shape="box"];487[label="ww61",fontsize=16,color="green",shape="box"];488[label="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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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 Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) : 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)))))))))))))))))))))))))))))))) : []",fontsize=16,color="green",shape="box"];485[label="showParen0 (showString (Char (Succ ww88) : ww89)) (compare (Pos Zero) (Pos (Succ ww90)) == GT) []",fontsize=16,color="black",shape="triangle"];485 -> 499[label="",style="solid", color="black", weight=3]; 489[label="ww81",fontsize=16,color="green",shape="box"];490[label="ww82",fontsize=16,color="green",shape="box"];491[label="Char (Succ ww83) : Char (Succ ww84) : Char (Succ ww85) : Char (Succ ww86) : []",fontsize=16,color="green",shape="box"];495 -> 389[label="",style="dashed", color="red", weight=0]; 495[label="output",fontsize=16,color="magenta"];497[label="randomSelect0 (aIOE IOError_FullError) (aIOE IOError_PermDenied : AProVE_IO () : []) otherwise",fontsize=16,color="black",shape="box"];497 -> 501[label="",style="solid", color="black", weight=3]; 498[label="randomSelect (aIOE IOError_PermDenied : AProVE_IO () : [])",fontsize=16,color="black",shape="box"];498 -> 502[label="",style="solid", color="black", weight=3]; 499[label="showParen0 (showString (Char (Succ ww88) : ww89)) (primCmpInt (Pos Zero) (Pos (Succ ww90)) == GT) []",fontsize=16,color="black",shape="box"];499 -> 503[label="",style="solid", color="black", weight=3]; 501[label="randomSelect0 (aIOE IOError_FullError) (aIOE IOError_PermDenied : AProVE_IO () : []) True",fontsize=16,color="black",shape="box"];501 -> 504[label="",style="solid", color="black", weight=3]; 502[label="randomSelect2 (aIOE IOError_PermDenied : AProVE_IO () : [])",fontsize=16,color="black",shape="box"];502 -> 505[label="",style="solid", color="black", weight=3]; 503[label="showParen0 (showString (Char (Succ ww88) : ww89)) (primCmpNat Zero (Succ ww90) == GT) []",fontsize=16,color="black",shape="box"];503 -> 506[label="",style="solid", color="black", weight=3]; 504[label="aIOE IOError_FullError",fontsize=16,color="black",shape="box"];504 -> 507[label="",style="solid", color="black", weight=3]; 505[label="randomSelect1 (aIOE IOError_PermDenied) (AProVE_IO () : []) terminator",fontsize=16,color="black",shape="box"];505 -> 508[label="",style="solid", color="black", weight=3]; 506[label="showParen0 (showString (Char (Succ ww88) : ww89)) (LT == GT) []",fontsize=16,color="black",shape="box"];506 -> 509[label="",style="solid", color="black", weight=3]; 507[label="AProVE_Exception (AET_IOError (IOError IOError_FullError [] [] Nothing))",fontsize=16,color="green",shape="box"];508[label="randomSelect1 (aIOE IOError_PermDenied) (AProVE_IO () : []) ter6m",fontsize=16,color="burlywood",shape="box"];557[label="ter6m/False",fontsize=10,color="white",style="solid",shape="box"];508 -> 557[label="",style="solid", color="burlywood", weight=9]; 557 -> 510[label="",style="solid", color="burlywood", weight=3]; 558[label="ter6m/True",fontsize=10,color="white",style="solid",shape="box"];508 -> 558[label="",style="solid", color="burlywood", weight=9]; 558 -> 511[label="",style="solid", color="burlywood", weight=3]; 509[label="showParen0 (showString (Char (Succ ww88) : ww89)) False []",fontsize=16,color="black",shape="box"];509 -> 512[label="",style="solid", color="black", weight=3]; 510[label="randomSelect1 (aIOE IOError_PermDenied) (AProVE_IO () : []) False",fontsize=16,color="black",shape="box"];510 -> 513[label="",style="solid", color="black", weight=3]; 511[label="randomSelect1 (aIOE IOError_PermDenied) (AProVE_IO () : []) True",fontsize=16,color="black",shape="box"];511 -> 514[label="",style="solid", color="black", weight=3]; 512[label="showString (Char (Succ ww88) : ww89) []",fontsize=16,color="black",shape="box"];512 -> 515[label="",style="solid", color="black", weight=3]; 513[label="randomSelect0 (aIOE IOError_PermDenied) (AProVE_IO () : []) otherwise",fontsize=16,color="black",shape="box"];513 -> 516[label="",style="solid", color="black", weight=3]; 514[label="randomSelect (AProVE_IO () : [])",fontsize=16,color="black",shape="box"];514 -> 517[label="",style="solid", color="black", weight=3]; 515[label="(++) (Char (Succ ww88) : ww89) []",fontsize=16,color="black",shape="box"];515 -> 518[label="",style="solid", color="black", weight=3]; 516[label="randomSelect0 (aIOE IOError_PermDenied) (AProVE_IO () : []) True",fontsize=16,color="black",shape="box"];516 -> 519[label="",style="solid", color="black", weight=3]; 517[label="randomSelect3 (AProVE_IO () : [])",fontsize=16,color="black",shape="box"];517 -> 520[label="",style="solid", color="black", weight=3]; 518[label="Char (Succ ww88) : ww89 ++ []",fontsize=16,color="green",shape="box"];518 -> 521[label="",style="dashed", color="green", weight=3]; 519[label="aIOE IOError_PermDenied",fontsize=16,color="black",shape="box"];519 -> 522[label="",style="solid", color="black", weight=3]; 520[label="AProVE_IO ()",fontsize=16,color="green",shape="box"];521[label="ww89 ++ []",fontsize=16,color="burlywood",shape="triangle"];559[label="ww89/ww890 : ww891",fontsize=10,color="white",style="solid",shape="box"];521 -> 559[label="",style="solid", color="burlywood", weight=9]; 559 -> 523[label="",style="solid", color="burlywood", weight=3]; 560[label="ww89/[]",fontsize=10,color="white",style="solid",shape="box"];521 -> 560[label="",style="solid", color="burlywood", weight=9]; 560 -> 524[label="",style="solid", color="burlywood", weight=3]; 522[label="AProVE_Exception (AET_IOError (IOError IOError_PermDenied [] [] Nothing))",fontsize=16,color="green",shape="box"];523[label="(ww890 : ww891) ++ []",fontsize=16,color="black",shape="box"];523 -> 525[label="",style="solid", color="black", weight=3]; 524[label="[] ++ []",fontsize=16,color="black",shape="box"];524 -> 526[label="",style="solid", color="black", weight=3]; 525[label="ww890 : ww891 ++ []",fontsize=16,color="green",shape="box"];525 -> 527[label="",style="dashed", color="green", weight=3]; 526[label="[]",fontsize=16,color="green",shape="box"];527 -> 521[label="",style="dashed", color="red", weight=0]; 527[label="ww891 ++ []",fontsize=16,color="magenta"];527 -> 528[label="",style="dashed", color="magenta", weight=3]; 528[label="ww891",fontsize=16,color="green",shape="box"];} ---------------------------------------- (12) Complex Obligation (AND) ---------------------------------------- (13) Obligation: Q DP problem: The TRS P consists of the following rules: new_putStr(:(ww530, ww531)) -> new_putStr(ww531) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (14) QDPSizeChangeProof (EQUIVALENT) 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. From the DPs we obtained the following set of size-change graphs: *new_putStr(:(ww530, ww531)) -> new_putStr(ww531) The graph contains the following edges 1 > 1 ---------------------------------------- (15) YES ---------------------------------------- (16) Obligation: Q DP problem: The TRS P consists of the following rules: new_psPs(:(ww890, ww891)) -> new_psPs(ww891) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (17) QDPSizeChangeProof (EQUIVALENT) 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. From the DPs we obtained the following set of size-change graphs: *new_psPs(:(ww890, ww891)) -> new_psPs(ww891) The graph contains the following edges 1 > 1 ---------------------------------------- (18) YES