9.58/4.08 YES 11.93/4.71 proof of /export/starexec/sandbox2/benchmark/theBenchmark.hs 11.93/4.71 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 11.93/4.71 11.93/4.71 11.93/4.71 H-Termination with start terms of the given HASKELL could be proven: 11.93/4.71 11.93/4.71 (0) HASKELL 11.93/4.71 (1) LR [EQUIVALENT, 0 ms] 11.93/4.71 (2) HASKELL 11.93/4.71 (3) IFR [EQUIVALENT, 0 ms] 11.93/4.71 (4) HASKELL 11.93/4.71 (5) BR [EQUIVALENT, 0 ms] 11.93/4.71 (6) HASKELL 11.93/4.71 (7) COR [EQUIVALENT, 0 ms] 11.93/4.71 (8) HASKELL 11.93/4.71 (9) LetRed [EQUIVALENT, 6 ms] 11.93/4.71 (10) HASKELL 11.93/4.71 (11) NumRed [SOUND, 0 ms] 11.93/4.71 (12) HASKELL 11.93/4.71 (13) Narrow [SOUND, 0 ms] 11.93/4.71 (14) AND 11.93/4.71 (15) QDP 11.93/4.71 (16) DependencyGraphProof [EQUIVALENT, 0 ms] 11.93/4.71 (17) AND 11.93/4.71 (18) QDP 11.93/4.71 (19) QDPOrderProof [EQUIVALENT, 0 ms] 11.93/4.71 (20) QDP 11.93/4.71 (21) DependencyGraphProof [EQUIVALENT, 0 ms] 11.93/4.71 (22) QDP 11.93/4.71 (23) QDPSizeChangeProof [EQUIVALENT, 0 ms] 11.93/4.71 (24) YES 11.93/4.71 (25) QDP 11.93/4.71 (26) MRRProof [EQUIVALENT, 0 ms] 11.93/4.71 (27) QDP 11.93/4.71 (28) PisEmptyProof [EQUIVALENT, 0 ms] 11.93/4.71 (29) YES 11.93/4.71 (30) QDP 11.93/4.71 (31) QDPSizeChangeProof [EQUIVALENT, 0 ms] 11.93/4.71 (32) YES 11.93/4.71 (33) QDP 11.93/4.71 (34) DependencyGraphProof [EQUIVALENT, 0 ms] 11.93/4.71 (35) AND 11.93/4.71 (36) QDP 11.93/4.71 (37) MRRProof [EQUIVALENT, 0 ms] 11.93/4.71 (38) QDP 11.93/4.71 (39) PisEmptyProof [EQUIVALENT, 0 ms] 11.93/4.71 (40) YES 11.93/4.71 (41) QDP 11.93/4.71 (42) QDPSizeChangeProof [EQUIVALENT, 0 ms] 11.93/4.71 (43) YES 11.93/4.71 (44) QDP 11.93/4.71 (45) QDPSizeChangeProof [EQUIVALENT, 0 ms] 11.93/4.71 (46) YES 11.93/4.71 (47) QDP 11.93/4.71 (48) QDPSizeChangeProof [EQUIVALENT, 0 ms] 11.93/4.71 (49) YES 11.93/4.71 (50) QDP 11.93/4.71 (51) QDPSizeChangeProof [EQUIVALENT, 0 ms] 11.93/4.71 (52) YES 11.93/4.71 11.93/4.71 11.93/4.71 ---------------------------------------- 11.93/4.71 11.93/4.71 (0) 11.93/4.71 Obligation: 11.93/4.71 mainModule Main 11.93/4.71 module Main where { 11.93/4.71 import qualified Prelude; 11.93/4.71 } 11.93/4.71 11.93/4.71 ---------------------------------------- 11.93/4.71 11.93/4.71 (1) LR (EQUIVALENT) 11.93/4.71 Lambda Reductions: 11.93/4.71 The following Lambda expression 11.93/4.71 "\(q,_)->q" 11.93/4.71 is transformed to 11.93/4.71 "q1 (q,_) = q; 11.93/4.71 " 11.93/4.71 The following Lambda expression 11.93/4.71 "\(_,r)->r" 11.93/4.71 is transformed to 11.93/4.71 "r0 (_,r) = r; 11.93/4.71 " 11.93/4.71 11.93/4.71 ---------------------------------------- 11.93/4.71 11.93/4.71 (2) 11.93/4.71 Obligation: 11.93/4.71 mainModule Main 11.93/4.71 module Main where { 11.93/4.71 import qualified Prelude; 11.93/4.71 } 11.93/4.71 11.93/4.71 ---------------------------------------- 11.93/4.71 11.93/4.71 (3) IFR (EQUIVALENT) 11.93/4.71 If Reductions: 11.93/4.71 The following If expression 11.93/4.71 "if primGEqNatS x y then Succ (primDivNatS (primMinusNatS x y) (Succ y)) else Zero" 11.93/4.71 is transformed to 11.93/4.71 "primDivNatS0 x y True = Succ (primDivNatS (primMinusNatS x y) (Succ y)); 11.93/4.71 primDivNatS0 x y False = Zero; 11.93/4.71 " 11.93/4.71 The following If expression 11.93/4.71 "if primGEqNatS x y then primModNatS (primMinusNatS x y) (Succ y) else Succ x" 11.93/4.71 is transformed to 11.93/4.71 "primModNatS0 x y True = primModNatS (primMinusNatS x y) (Succ y); 11.93/4.71 primModNatS0 x y False = Succ x; 11.93/4.71 " 11.93/4.71 11.93/4.71 ---------------------------------------- 11.93/4.71 11.93/4.71 (4) 11.93/4.71 Obligation: 11.93/4.71 mainModule Main 11.93/4.71 module Main where { 11.93/4.71 import qualified Prelude; 11.93/4.71 } 11.93/4.71 11.93/4.71 ---------------------------------------- 11.93/4.71 11.93/4.71 (5) BR (EQUIVALENT) 11.93/4.71 Replaced joker patterns by fresh variables and removed binding patterns. 11.93/4.71 11.93/4.71 Binding Reductions: 11.93/4.71 The bind variable of the following binding Pattern 12.05/4.71 "frac@(Float vy vz)" 12.05/4.71 is replaced by the following term 12.05/4.71 "Float vy vz" 12.05/4.71 The bind variable of the following binding Pattern 12.05/4.71 "frac@(Double wz xu)" 12.05/4.71 is replaced by the following term 12.05/4.71 "Double wz xu" 12.05/4.71 12.05/4.71 ---------------------------------------- 12.05/4.71 12.05/4.71 (6) 12.05/4.71 Obligation: 12.05/4.71 mainModule Main 12.05/4.71 module Main where { 12.05/4.71 import qualified Prelude; 12.05/4.71 } 12.05/4.71 12.05/4.71 ---------------------------------------- 12.05/4.71 12.05/4.71 (7) COR (EQUIVALENT) 12.05/4.71 Cond Reductions: 12.05/4.71 The following Function with conditions 12.05/4.71 "undefined |Falseundefined; 12.05/4.71 " 12.05/4.71 is transformed to 12.05/4.71 "undefined = undefined1; 12.05/4.71 " 12.05/4.71 "undefined0 True = undefined; 12.05/4.71 " 12.05/4.71 "undefined1 = undefined0 False; 12.05/4.71 " 12.05/4.71 12.05/4.71 ---------------------------------------- 12.05/4.71 12.05/4.71 (8) 12.05/4.71 Obligation: 12.05/4.71 mainModule Main 12.05/4.71 module Main where { 12.05/4.71 import qualified Prelude; 12.05/4.71 } 12.05/4.71 12.05/4.71 ---------------------------------------- 12.05/4.71 12.05/4.71 (9) LetRed (EQUIVALENT) 12.05/4.71 Let/Where Reductions: 12.05/4.71 The bindings of the following Let/Where expression 12.05/4.71 "(fromIntegral q,r :% y) where { 12.05/4.71 q = q1 vu30; 12.05/4.71 ; 12.05/4.71 q1 (q,vv) = q; 12.05/4.71 ; 12.05/4.71 r = r0 vu30; 12.05/4.71 ; 12.05/4.71 r0 (vw,r) = r; 12.05/4.71 ; 12.05/4.71 vu30 = quotRem x y; 12.05/4.71 } 12.05/4.71 " 12.05/4.71 are unpacked to the following functions on top level 12.05/4.71 "properFractionVu30 xv xw = quotRem xv xw; 12.05/4.71 " 12.05/4.71 "properFractionQ1 xv xw (q,vv) = q; 12.05/4.71 " 12.05/4.71 "properFractionR xv xw = properFractionR0 xv xw (properFractionVu30 xv xw); 12.05/4.71 " 12.05/4.71 "properFractionR0 xv xw (vw,r) = r; 12.05/4.71 " 12.05/4.71 "properFractionQ xv xw = properFractionQ1 xv xw (properFractionVu30 xv xw); 12.05/4.71 " 12.05/4.71 12.05/4.71 ---------------------------------------- 12.05/4.71 12.05/4.71 (10) 12.05/4.71 Obligation: 12.05/4.71 mainModule Main 12.05/4.71 module Main where { 12.05/4.71 import qualified Prelude; 12.05/4.71 } 12.05/4.71 12.05/4.71 ---------------------------------------- 12.05/4.71 12.05/4.71 (11) NumRed (SOUND) 12.05/4.71 Num Reduction:All numbers are transformed to their corresponding representation with Succ, Pred and Zero. 12.05/4.71 ---------------------------------------- 12.05/4.71 12.05/4.71 (12) 12.05/4.71 Obligation: 12.05/4.71 mainModule Main 12.05/4.71 module Main where { 12.05/4.71 import qualified Prelude; 12.05/4.71 } 12.05/4.71 12.05/4.71 ---------------------------------------- 12.05/4.71 12.05/4.71 (13) Narrow (SOUND) 12.05/4.71 Haskell To QDPs 12.05/4.71 12.05/4.71 digraph dp_graph { 12.05/4.71 node [outthreshold=100, inthreshold=100];1[label="properFraction",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 12.05/4.71 3[label="properFraction xx3",fontsize=16,color="blue",shape="box"];892[label="properFraction :: Float -> (@2) Int Float",fontsize=10,color="white",style="solid",shape="box"];3 -> 892[label="",style="solid", color="blue", weight=9]; 12.05/4.71 892 -> 4[label="",style="solid", color="blue", weight=3]; 12.05/4.71 893[label="properFraction :: (Ratio a) -> (@2) Int (Ratio a)",fontsize=10,color="white",style="solid",shape="box"];3 -> 893[label="",style="solid", color="blue", weight=9]; 12.05/4.71 893 -> 5[label="",style="solid", color="blue", weight=3]; 12.05/4.71 894[label="properFraction :: Double -> (@2) Int Double",fontsize=10,color="white",style="solid",shape="box"];3 -> 894[label="",style="solid", color="blue", weight=9]; 12.05/4.71 894 -> 6[label="",style="solid", color="blue", weight=3]; 12.05/4.71 4[label="properFraction xx3",fontsize=16,color="black",shape="box"];4 -> 7[label="",style="solid", color="black", weight=3]; 12.05/4.71 5[label="properFraction xx3",fontsize=16,color="burlywood",shape="box"];895[label="xx3/xx30 :% xx31",fontsize=10,color="white",style="solid",shape="box"];5 -> 895[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 895 -> 8[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 6[label="properFraction xx3",fontsize=16,color="black",shape="box"];6 -> 9[label="",style="solid", color="black", weight=3]; 12.05/4.71 7[label="floatProperFractionFloat xx3",fontsize=16,color="burlywood",shape="box"];896[label="xx3/Float xx30 xx31",fontsize=10,color="white",style="solid",shape="box"];7 -> 896[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 896 -> 10[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 8[label="properFraction (xx30 :% xx31)",fontsize=16,color="black",shape="box"];8 -> 11[label="",style="solid", color="black", weight=3]; 12.05/4.71 9[label="floatProperFractionDouble xx3",fontsize=16,color="burlywood",shape="box"];897[label="xx3/Double xx30 xx31",fontsize=10,color="white",style="solid",shape="box"];9 -> 897[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 897 -> 12[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 10[label="floatProperFractionFloat (Float xx30 xx31)",fontsize=16,color="black",shape="box"];10 -> 13[label="",style="solid", color="black", weight=3]; 12.05/4.71 11[label="(fromIntegral (properFractionQ xx30 xx31),properFractionR xx30 xx31 :% xx31)",fontsize=16,color="green",shape="box"];11 -> 14[label="",style="dashed", color="green", weight=3]; 12.05/4.71 11 -> 15[label="",style="dashed", color="green", weight=3]; 12.05/4.71 12[label="floatProperFractionDouble (Double xx30 xx31)",fontsize=16,color="black",shape="box"];12 -> 16[label="",style="solid", color="black", weight=3]; 12.05/4.71 13[label="(fromInt (xx30 `quot` xx31),Float xx30 xx31 - fromInt (xx30 `quot` xx31))",fontsize=16,color="green",shape="box"];13 -> 17[label="",style="dashed", color="green", weight=3]; 12.05/4.71 13 -> 18[label="",style="dashed", color="green", weight=3]; 12.05/4.71 14[label="fromIntegral (properFractionQ xx30 xx31)",fontsize=16,color="black",shape="box"];14 -> 19[label="",style="solid", color="black", weight=3]; 12.05/4.71 15[label="properFractionR xx30 xx31",fontsize=16,color="black",shape="box"];15 -> 20[label="",style="solid", color="black", weight=3]; 12.05/4.71 16[label="(fromInt (xx30 `quot` xx31),Double xx30 xx31 - fromInt (xx30 `quot` xx31))",fontsize=16,color="green",shape="box"];16 -> 21[label="",style="dashed", color="green", weight=3]; 12.05/4.71 16 -> 22[label="",style="dashed", color="green", weight=3]; 12.05/4.71 17[label="fromInt (xx30 `quot` xx31)",fontsize=16,color="black",shape="triangle"];17 -> 23[label="",style="solid", color="black", weight=3]; 12.05/4.71 18[label="Float xx30 xx31 - fromInt (xx30 `quot` xx31)",fontsize=16,color="black",shape="box"];18 -> 24[label="",style="solid", color="black", weight=3]; 12.05/4.71 19[label="fromInteger . toInteger",fontsize=16,color="black",shape="box"];19 -> 25[label="",style="solid", color="black", weight=3]; 12.05/4.71 20 -> 35[label="",style="dashed", color="red", weight=0]; 12.05/4.71 20[label="properFractionR0 xx30 xx31 (properFractionVu30 xx30 xx31)",fontsize=16,color="magenta"];20 -> 36[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 20 -> 37[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 20 -> 38[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 21 -> 17[label="",style="dashed", color="red", weight=0]; 12.05/4.71 21[label="fromInt (xx30 `quot` xx31)",fontsize=16,color="magenta"];21 -> 27[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 21 -> 28[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 22[label="Double xx30 xx31 - fromInt (xx30 `quot` xx31)",fontsize=16,color="black",shape="box"];22 -> 29[label="",style="solid", color="black", weight=3]; 12.05/4.71 23[label="xx30 `quot` xx31",fontsize=16,color="black",shape="triangle"];23 -> 30[label="",style="solid", color="black", weight=3]; 12.05/4.71 24 -> 31[label="",style="dashed", color="red", weight=0]; 12.05/4.71 24[label="primMinusFloat (Float xx30 xx31) (fromInt (xx30 `quot` xx31))",fontsize=16,color="magenta"];24 -> 32[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 25[label="fromInteger (toInteger (properFractionQ xx30 xx31))",fontsize=16,color="blue",shape="box"];898[label="toInteger :: Int -> Integer",fontsize=10,color="white",style="solid",shape="box"];25 -> 898[label="",style="solid", color="blue", weight=9]; 12.05/4.71 898 -> 33[label="",style="solid", color="blue", weight=3]; 12.05/4.71 899[label="toInteger :: Integer -> Integer",fontsize=10,color="white",style="solid",shape="box"];25 -> 899[label="",style="solid", color="blue", weight=9]; 12.05/4.71 899 -> 34[label="",style="solid", color="blue", weight=3]; 12.05/4.71 36[label="xx30",fontsize=16,color="green",shape="box"];37[label="xx31",fontsize=16,color="green",shape="box"];38[label="properFractionVu30 xx30 xx31",fontsize=16,color="black",shape="triangle"];38 -> 42[label="",style="solid", color="black", weight=3]; 12.05/4.71 35[label="properFractionR0 xx11 xx12 xx13",fontsize=16,color="burlywood",shape="triangle"];900[label="xx13/(xx130,xx131)",fontsize=10,color="white",style="solid",shape="box"];35 -> 900[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 900 -> 43[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 27[label="xx31",fontsize=16,color="green",shape="box"];28[label="xx30",fontsize=16,color="green",shape="box"];29 -> 44[label="",style="dashed", color="red", weight=0]; 12.05/4.71 29[label="primMinusDouble (Double xx30 xx31) (fromInt (xx30 `quot` xx31))",fontsize=16,color="magenta"];29 -> 45[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 30[label="primQuotInt xx30 xx31",fontsize=16,color="burlywood",shape="triangle"];901[label="xx30/Pos xx300",fontsize=10,color="white",style="solid",shape="box"];30 -> 901[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 901 -> 46[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 902[label="xx30/Neg xx300",fontsize=10,color="white",style="solid",shape="box"];30 -> 902[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 902 -> 47[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 32 -> 23[label="",style="dashed", color="red", weight=0]; 12.05/4.71 32[label="xx30 `quot` xx31",fontsize=16,color="magenta"];31[label="primMinusFloat (Float xx30 xx31) (fromInt xx4)",fontsize=16,color="black",shape="triangle"];31 -> 48[label="",style="solid", color="black", weight=3]; 12.05/4.71 33[label="fromInteger (toInteger (properFractionQ xx30 xx31))",fontsize=16,color="black",shape="box"];33 -> 49[label="",style="solid", color="black", weight=3]; 12.05/4.71 34[label="fromInteger (toInteger (properFractionQ xx30 xx31))",fontsize=16,color="black",shape="box"];34 -> 50[label="",style="solid", color="black", weight=3]; 12.05/4.71 42[label="quotRem xx30 xx31",fontsize=16,color="blue",shape="box"];903[label="quotRem :: Int -> Int -> (@2) Int Int",fontsize=10,color="white",style="solid",shape="box"];42 -> 903[label="",style="solid", color="blue", weight=9]; 12.05/4.71 903 -> 51[label="",style="solid", color="blue", weight=3]; 12.05/4.71 904[label="quotRem :: Integer -> Integer -> (@2) Integer Integer",fontsize=10,color="white",style="solid",shape="box"];42 -> 904[label="",style="solid", color="blue", weight=9]; 12.05/4.71 904 -> 52[label="",style="solid", color="blue", weight=3]; 12.05/4.71 43[label="properFractionR0 xx11 xx12 (xx130,xx131)",fontsize=16,color="black",shape="box"];43 -> 53[label="",style="solid", color="black", weight=3]; 12.05/4.71 45 -> 23[label="",style="dashed", color="red", weight=0]; 12.05/4.71 45[label="xx30 `quot` xx31",fontsize=16,color="magenta"];45 -> 54[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 45 -> 55[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 44[label="primMinusDouble (Double xx30 xx31) (fromInt xx14)",fontsize=16,color="black",shape="triangle"];44 -> 56[label="",style="solid", color="black", weight=3]; 12.05/4.71 46[label="primQuotInt (Pos xx300) xx31",fontsize=16,color="burlywood",shape="box"];905[label="xx31/Pos xx310",fontsize=10,color="white",style="solid",shape="box"];46 -> 905[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 905 -> 57[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 906[label="xx31/Neg xx310",fontsize=10,color="white",style="solid",shape="box"];46 -> 906[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 906 -> 58[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 47[label="primQuotInt (Neg xx300) xx31",fontsize=16,color="burlywood",shape="box"];907[label="xx31/Pos xx310",fontsize=10,color="white",style="solid",shape="box"];47 -> 907[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 907 -> 59[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 908[label="xx31/Neg xx310",fontsize=10,color="white",style="solid",shape="box"];47 -> 908[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 908 -> 60[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 48[label="primMinusFloat (Float xx30 xx31) (primIntToFloat xx4)",fontsize=16,color="black",shape="box"];48 -> 61[label="",style="solid", color="black", weight=3]; 12.05/4.71 49[label="fromInteger (Integer (properFractionQ xx30 xx31))",fontsize=16,color="black",shape="box"];49 -> 62[label="",style="solid", color="black", weight=3]; 12.05/4.71 50[label="fromInteger (properFractionQ xx30 xx31)",fontsize=16,color="black",shape="box"];50 -> 63[label="",style="solid", color="black", weight=3]; 12.05/4.71 51[label="quotRem xx30 xx31",fontsize=16,color="black",shape="box"];51 -> 64[label="",style="solid", color="black", weight=3]; 12.05/4.71 52[label="quotRem xx30 xx31",fontsize=16,color="burlywood",shape="box"];909[label="xx30/Integer xx300",fontsize=10,color="white",style="solid",shape="box"];52 -> 909[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 909 -> 65[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 53[label="xx131",fontsize=16,color="green",shape="box"];54[label="xx31",fontsize=16,color="green",shape="box"];55[label="xx30",fontsize=16,color="green",shape="box"];56[label="primMinusDouble (Double xx30 xx31) (primIntToDouble xx14)",fontsize=16,color="black",shape="box"];56 -> 66[label="",style="solid", color="black", weight=3]; 12.05/4.71 57[label="primQuotInt (Pos xx300) (Pos xx310)",fontsize=16,color="burlywood",shape="box"];910[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];57 -> 910[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 910 -> 67[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 911[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];57 -> 911[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 911 -> 68[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 58[label="primQuotInt (Pos xx300) (Neg xx310)",fontsize=16,color="burlywood",shape="box"];912[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];58 -> 912[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 912 -> 69[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 913[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];58 -> 913[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 913 -> 70[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 59[label="primQuotInt (Neg xx300) (Pos xx310)",fontsize=16,color="burlywood",shape="box"];914[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];59 -> 914[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 914 -> 71[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 915[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];59 -> 915[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 915 -> 72[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 60[label="primQuotInt (Neg xx300) (Neg xx310)",fontsize=16,color="burlywood",shape="box"];916[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];60 -> 916[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 916 -> 73[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 917[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];60 -> 917[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 917 -> 74[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 61[label="primMinusFloat (Float xx30 xx31) (Float xx4 (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];61 -> 75[label="",style="solid", color="black", weight=3]; 12.05/4.71 62[label="properFractionQ xx30 xx31",fontsize=16,color="black",shape="box"];62 -> 76[label="",style="solid", color="black", weight=3]; 12.05/4.71 63 -> 77[label="",style="dashed", color="red", weight=0]; 12.05/4.71 63[label="fromInteger (properFractionQ1 xx30 xx31 (properFractionVu30 xx30 xx31))",fontsize=16,color="magenta"];63 -> 78[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 64[label="primQrmInt xx30 xx31",fontsize=16,color="black",shape="box"];64 -> 79[label="",style="solid", color="black", weight=3]; 12.05/4.71 65[label="quotRem (Integer xx300) xx31",fontsize=16,color="burlywood",shape="box"];918[label="xx31/Integer xx310",fontsize=10,color="white",style="solid",shape="box"];65 -> 918[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 918 -> 80[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 66[label="primMinusDouble (Double xx30 xx31) (Double xx14 (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];66 -> 81[label="",style="solid", color="black", weight=3]; 12.05/4.71 67[label="primQuotInt (Pos xx300) (Pos (Succ xx3100))",fontsize=16,color="black",shape="box"];67 -> 82[label="",style="solid", color="black", weight=3]; 12.05/4.71 68[label="primQuotInt (Pos xx300) (Pos Zero)",fontsize=16,color="black",shape="box"];68 -> 83[label="",style="solid", color="black", weight=3]; 12.05/4.71 69[label="primQuotInt (Pos xx300) (Neg (Succ xx3100))",fontsize=16,color="black",shape="box"];69 -> 84[label="",style="solid", color="black", weight=3]; 12.05/4.71 70[label="primQuotInt (Pos xx300) (Neg Zero)",fontsize=16,color="black",shape="box"];70 -> 85[label="",style="solid", color="black", weight=3]; 12.05/4.71 71[label="primQuotInt (Neg xx300) (Pos (Succ xx3100))",fontsize=16,color="black",shape="box"];71 -> 86[label="",style="solid", color="black", weight=3]; 12.05/4.71 72[label="primQuotInt (Neg xx300) (Pos Zero)",fontsize=16,color="black",shape="box"];72 -> 87[label="",style="solid", color="black", weight=3]; 12.05/4.71 73[label="primQuotInt (Neg xx300) (Neg (Succ xx3100))",fontsize=16,color="black",shape="box"];73 -> 88[label="",style="solid", color="black", weight=3]; 12.05/4.71 74[label="primQuotInt (Neg xx300) (Neg Zero)",fontsize=16,color="black",shape="box"];74 -> 89[label="",style="solid", color="black", weight=3]; 12.05/4.71 75[label="Float (xx30 * Pos (Succ Zero) - xx4 * xx31) (xx31 * Pos (Succ Zero))",fontsize=16,color="green",shape="box"];75 -> 90[label="",style="dashed", color="green", weight=3]; 12.05/4.71 75 -> 91[label="",style="dashed", color="green", weight=3]; 12.05/4.71 76 -> 92[label="",style="dashed", color="red", weight=0]; 12.05/4.71 76[label="properFractionQ1 xx30 xx31 (properFractionVu30 xx30 xx31)",fontsize=16,color="magenta"];76 -> 93[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 78 -> 38[label="",style="dashed", color="red", weight=0]; 12.05/4.71 78[label="properFractionVu30 xx30 xx31",fontsize=16,color="magenta"];77[label="fromInteger (properFractionQ1 xx30 xx31 xx15)",fontsize=16,color="burlywood",shape="triangle"];919[label="xx15/(xx150,xx151)",fontsize=10,color="white",style="solid",shape="box"];77 -> 919[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 919 -> 94[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 79[label="(primQuotInt xx30 xx31,primRemInt xx30 xx31)",fontsize=16,color="green",shape="box"];79 -> 95[label="",style="dashed", color="green", weight=3]; 12.05/4.71 79 -> 96[label="",style="dashed", color="green", weight=3]; 12.05/4.71 80[label="quotRem (Integer xx300) (Integer xx310)",fontsize=16,color="black",shape="box"];80 -> 97[label="",style="solid", color="black", weight=3]; 12.05/4.71 81[label="Double (xx30 * Pos (Succ Zero) - xx14 * xx31) (xx31 * Pos (Succ Zero))",fontsize=16,color="green",shape="box"];81 -> 98[label="",style="dashed", color="green", weight=3]; 12.05/4.71 81 -> 99[label="",style="dashed", color="green", weight=3]; 12.05/4.71 82[label="Pos (primDivNatS xx300 (Succ xx3100))",fontsize=16,color="green",shape="box"];82 -> 100[label="",style="dashed", color="green", weight=3]; 12.05/4.71 83[label="error []",fontsize=16,color="black",shape="triangle"];83 -> 101[label="",style="solid", color="black", weight=3]; 12.05/4.71 84[label="Neg (primDivNatS xx300 (Succ xx3100))",fontsize=16,color="green",shape="box"];84 -> 102[label="",style="dashed", color="green", weight=3]; 12.05/4.71 85 -> 83[label="",style="dashed", color="red", weight=0]; 12.05/4.71 85[label="error []",fontsize=16,color="magenta"];86[label="Neg (primDivNatS xx300 (Succ xx3100))",fontsize=16,color="green",shape="box"];86 -> 103[label="",style="dashed", color="green", weight=3]; 12.05/4.71 87 -> 83[label="",style="dashed", color="red", weight=0]; 12.05/4.71 87[label="error []",fontsize=16,color="magenta"];88[label="Pos (primDivNatS xx300 (Succ xx3100))",fontsize=16,color="green",shape="box"];88 -> 104[label="",style="dashed", color="green", weight=3]; 12.05/4.71 89 -> 83[label="",style="dashed", color="red", weight=0]; 12.05/4.71 89[label="error []",fontsize=16,color="magenta"];90[label="xx30 * Pos (Succ Zero) - xx4 * xx31",fontsize=16,color="black",shape="triangle"];90 -> 105[label="",style="solid", color="black", weight=3]; 12.05/4.71 91[label="xx31 * Pos (Succ Zero)",fontsize=16,color="black",shape="triangle"];91 -> 106[label="",style="solid", color="black", weight=3]; 12.05/4.71 93 -> 38[label="",style="dashed", color="red", weight=0]; 12.05/4.71 93[label="properFractionVu30 xx30 xx31",fontsize=16,color="magenta"];92[label="properFractionQ1 xx30 xx31 xx16",fontsize=16,color="burlywood",shape="triangle"];920[label="xx16/(xx160,xx161)",fontsize=10,color="white",style="solid",shape="box"];92 -> 920[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 920 -> 107[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 94[label="fromInteger (properFractionQ1 xx30 xx31 (xx150,xx151))",fontsize=16,color="black",shape="box"];94 -> 108[label="",style="solid", color="black", weight=3]; 12.05/4.71 95 -> 30[label="",style="dashed", color="red", weight=0]; 12.05/4.71 95[label="primQuotInt xx30 xx31",fontsize=16,color="magenta"];95 -> 109[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 95 -> 110[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 96[label="primRemInt xx30 xx31",fontsize=16,color="burlywood",shape="triangle"];921[label="xx30/Pos xx300",fontsize=10,color="white",style="solid",shape="box"];96 -> 921[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 921 -> 111[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 922[label="xx30/Neg xx300",fontsize=10,color="white",style="solid",shape="box"];96 -> 922[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 922 -> 112[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 97[label="(Integer (primQuotInt xx300 xx310),Integer (primRemInt xx300 xx310))",fontsize=16,color="green",shape="box"];97 -> 113[label="",style="dashed", color="green", weight=3]; 12.05/4.71 97 -> 114[label="",style="dashed", color="green", weight=3]; 12.05/4.71 98 -> 90[label="",style="dashed", color="red", weight=0]; 12.05/4.71 98[label="xx30 * Pos (Succ Zero) - xx14 * xx31",fontsize=16,color="magenta"];98 -> 115[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 98 -> 116[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 98 -> 117[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 99 -> 91[label="",style="dashed", color="red", weight=0]; 12.05/4.71 99[label="xx31 * Pos (Succ Zero)",fontsize=16,color="magenta"];99 -> 118[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 100[label="primDivNatS xx300 (Succ xx3100)",fontsize=16,color="burlywood",shape="triangle"];923[label="xx300/Succ xx3000",fontsize=10,color="white",style="solid",shape="box"];100 -> 923[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 923 -> 119[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 924[label="xx300/Zero",fontsize=10,color="white",style="solid",shape="box"];100 -> 924[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 924 -> 120[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 101[label="error []",fontsize=16,color="red",shape="box"];102 -> 100[label="",style="dashed", color="red", weight=0]; 12.05/4.71 102[label="primDivNatS xx300 (Succ xx3100)",fontsize=16,color="magenta"];102 -> 121[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 103 -> 100[label="",style="dashed", color="red", weight=0]; 12.05/4.71 103[label="primDivNatS xx300 (Succ xx3100)",fontsize=16,color="magenta"];103 -> 122[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 104 -> 100[label="",style="dashed", color="red", weight=0]; 12.05/4.71 104[label="primDivNatS xx300 (Succ xx3100)",fontsize=16,color="magenta"];104 -> 123[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 104 -> 124[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 105 -> 125[label="",style="dashed", color="red", weight=0]; 12.05/4.71 105[label="primMinusInt (xx30 * Pos (Succ Zero)) (xx4 * xx31)",fontsize=16,color="magenta"];105 -> 126[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 106[label="primMulInt xx31 (Pos (Succ Zero))",fontsize=16,color="burlywood",shape="box"];925[label="xx31/Pos xx310",fontsize=10,color="white",style="solid",shape="box"];106 -> 925[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 925 -> 127[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 926[label="xx31/Neg xx310",fontsize=10,color="white",style="solid",shape="box"];106 -> 926[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 926 -> 128[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 107[label="properFractionQ1 xx30 xx31 (xx160,xx161)",fontsize=16,color="black",shape="box"];107 -> 129[label="",style="solid", color="black", weight=3]; 12.05/4.71 108[label="fromInteger xx150",fontsize=16,color="burlywood",shape="box"];927[label="xx150/Integer xx1500",fontsize=10,color="white",style="solid",shape="box"];108 -> 927[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 927 -> 130[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 109[label="xx31",fontsize=16,color="green",shape="box"];110[label="xx30",fontsize=16,color="green",shape="box"];111[label="primRemInt (Pos xx300) xx31",fontsize=16,color="burlywood",shape="box"];928[label="xx31/Pos xx310",fontsize=10,color="white",style="solid",shape="box"];111 -> 928[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 928 -> 131[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 929[label="xx31/Neg xx310",fontsize=10,color="white",style="solid",shape="box"];111 -> 929[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 929 -> 132[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 112[label="primRemInt (Neg xx300) xx31",fontsize=16,color="burlywood",shape="box"];930[label="xx31/Pos xx310",fontsize=10,color="white",style="solid",shape="box"];112 -> 930[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 930 -> 133[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 931[label="xx31/Neg xx310",fontsize=10,color="white",style="solid",shape="box"];112 -> 931[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 931 -> 134[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 113 -> 30[label="",style="dashed", color="red", weight=0]; 12.05/4.71 113[label="primQuotInt xx300 xx310",fontsize=16,color="magenta"];113 -> 135[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 113 -> 136[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 114 -> 96[label="",style="dashed", color="red", weight=0]; 12.05/4.71 114[label="primRemInt xx300 xx310",fontsize=16,color="magenta"];114 -> 137[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 114 -> 138[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 115[label="xx31",fontsize=16,color="green",shape="box"];116[label="xx30",fontsize=16,color="green",shape="box"];117[label="xx14",fontsize=16,color="green",shape="box"];118[label="xx31",fontsize=16,color="green",shape="box"];119[label="primDivNatS (Succ xx3000) (Succ xx3100)",fontsize=16,color="black",shape="box"];119 -> 139[label="",style="solid", color="black", weight=3]; 12.05/4.71 120[label="primDivNatS Zero (Succ xx3100)",fontsize=16,color="black",shape="box"];120 -> 140[label="",style="solid", color="black", weight=3]; 12.05/4.71 121[label="xx3100",fontsize=16,color="green",shape="box"];122[label="xx300",fontsize=16,color="green",shape="box"];123[label="xx300",fontsize=16,color="green",shape="box"];124[label="xx3100",fontsize=16,color="green",shape="box"];126 -> 91[label="",style="dashed", color="red", weight=0]; 12.05/4.71 126[label="xx30 * Pos (Succ Zero)",fontsize=16,color="magenta"];126 -> 141[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 125[label="primMinusInt xx17 (xx4 * xx31)",fontsize=16,color="burlywood",shape="triangle"];932[label="xx17/Pos xx170",fontsize=10,color="white",style="solid",shape="box"];125 -> 932[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 932 -> 142[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 933[label="xx17/Neg xx170",fontsize=10,color="white",style="solid",shape="box"];125 -> 933[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 933 -> 143[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 127[label="primMulInt (Pos xx310) (Pos (Succ Zero))",fontsize=16,color="black",shape="box"];127 -> 144[label="",style="solid", color="black", weight=3]; 12.05/4.71 128[label="primMulInt (Neg xx310) (Pos (Succ Zero))",fontsize=16,color="black",shape="box"];128 -> 145[label="",style="solid", color="black", weight=3]; 12.05/4.71 129[label="xx160",fontsize=16,color="green",shape="box"];130[label="fromInteger (Integer xx1500)",fontsize=16,color="black",shape="box"];130 -> 146[label="",style="solid", color="black", weight=3]; 12.05/4.71 131[label="primRemInt (Pos xx300) (Pos xx310)",fontsize=16,color="burlywood",shape="box"];934[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];131 -> 934[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 934 -> 147[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 935[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];131 -> 935[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 935 -> 148[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 132[label="primRemInt (Pos xx300) (Neg xx310)",fontsize=16,color="burlywood",shape="box"];936[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];132 -> 936[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 936 -> 149[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 937[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];132 -> 937[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 937 -> 150[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 133[label="primRemInt (Neg xx300) (Pos xx310)",fontsize=16,color="burlywood",shape="box"];938[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];133 -> 938[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 938 -> 151[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 939[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];133 -> 939[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 939 -> 152[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 134[label="primRemInt (Neg xx300) (Neg xx310)",fontsize=16,color="burlywood",shape="box"];940[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];134 -> 940[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 940 -> 153[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 941[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];134 -> 941[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 941 -> 154[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 135[label="xx310",fontsize=16,color="green",shape="box"];136[label="xx300",fontsize=16,color="green",shape="box"];137[label="xx300",fontsize=16,color="green",shape="box"];138[label="xx310",fontsize=16,color="green",shape="box"];139[label="primDivNatS0 xx3000 xx3100 (primGEqNatS xx3000 xx3100)",fontsize=16,color="burlywood",shape="box"];942[label="xx3000/Succ xx30000",fontsize=10,color="white",style="solid",shape="box"];139 -> 942[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 942 -> 155[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 943[label="xx3000/Zero",fontsize=10,color="white",style="solid",shape="box"];139 -> 943[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 943 -> 156[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 140[label="Zero",fontsize=16,color="green",shape="box"];141[label="xx30",fontsize=16,color="green",shape="box"];142[label="primMinusInt (Pos xx170) (xx4 * xx31)",fontsize=16,color="black",shape="box"];142 -> 157[label="",style="solid", color="black", weight=3]; 12.05/4.71 143[label="primMinusInt (Neg xx170) (xx4 * xx31)",fontsize=16,color="black",shape="box"];143 -> 158[label="",style="solid", color="black", weight=3]; 12.05/4.71 144[label="Pos (primMulNat xx310 (Succ Zero))",fontsize=16,color="green",shape="box"];144 -> 159[label="",style="dashed", color="green", weight=3]; 12.05/4.71 145[label="Neg (primMulNat xx310 (Succ Zero))",fontsize=16,color="green",shape="box"];145 -> 160[label="",style="dashed", color="green", weight=3]; 12.05/4.71 146[label="xx1500",fontsize=16,color="green",shape="box"];147[label="primRemInt (Pos xx300) (Pos (Succ xx3100))",fontsize=16,color="black",shape="box"];147 -> 161[label="",style="solid", color="black", weight=3]; 12.05/4.71 148[label="primRemInt (Pos xx300) (Pos Zero)",fontsize=16,color="black",shape="box"];148 -> 162[label="",style="solid", color="black", weight=3]; 12.05/4.71 149[label="primRemInt (Pos xx300) (Neg (Succ xx3100))",fontsize=16,color="black",shape="box"];149 -> 163[label="",style="solid", color="black", weight=3]; 12.05/4.71 150[label="primRemInt (Pos xx300) (Neg Zero)",fontsize=16,color="black",shape="box"];150 -> 164[label="",style="solid", color="black", weight=3]; 12.05/4.71 151[label="primRemInt (Neg xx300) (Pos (Succ xx3100))",fontsize=16,color="black",shape="box"];151 -> 165[label="",style="solid", color="black", weight=3]; 12.05/4.71 152[label="primRemInt (Neg xx300) (Pos Zero)",fontsize=16,color="black",shape="box"];152 -> 166[label="",style="solid", color="black", weight=3]; 12.05/4.71 153[label="primRemInt (Neg xx300) (Neg (Succ xx3100))",fontsize=16,color="black",shape="box"];153 -> 167[label="",style="solid", color="black", weight=3]; 12.05/4.71 154[label="primRemInt (Neg xx300) (Neg Zero)",fontsize=16,color="black",shape="box"];154 -> 168[label="",style="solid", color="black", weight=3]; 12.05/4.71 155[label="primDivNatS0 (Succ xx30000) xx3100 (primGEqNatS (Succ xx30000) xx3100)",fontsize=16,color="burlywood",shape="box"];944[label="xx3100/Succ xx31000",fontsize=10,color="white",style="solid",shape="box"];155 -> 944[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 944 -> 169[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 945[label="xx3100/Zero",fontsize=10,color="white",style="solid",shape="box"];155 -> 945[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 945 -> 170[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 156[label="primDivNatS0 Zero xx3100 (primGEqNatS Zero xx3100)",fontsize=16,color="burlywood",shape="box"];946[label="xx3100/Succ xx31000",fontsize=10,color="white",style="solid",shape="box"];156 -> 946[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 946 -> 171[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 947[label="xx3100/Zero",fontsize=10,color="white",style="solid",shape="box"];156 -> 947[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 947 -> 172[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 157[label="primMinusInt (Pos xx170) (primMulInt xx4 xx31)",fontsize=16,color="burlywood",shape="box"];948[label="xx4/Pos xx40",fontsize=10,color="white",style="solid",shape="box"];157 -> 948[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 948 -> 173[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 949[label="xx4/Neg xx40",fontsize=10,color="white",style="solid",shape="box"];157 -> 949[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 949 -> 174[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 158[label="primMinusInt (Neg xx170) (primMulInt xx4 xx31)",fontsize=16,color="burlywood",shape="box"];950[label="xx4/Pos xx40",fontsize=10,color="white",style="solid",shape="box"];158 -> 950[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 950 -> 175[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 951[label="xx4/Neg xx40",fontsize=10,color="white",style="solid",shape="box"];158 -> 951[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 951 -> 176[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 159[label="primMulNat xx310 (Succ Zero)",fontsize=16,color="burlywood",shape="triangle"];952[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];159 -> 952[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 952 -> 177[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 953[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];159 -> 953[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 953 -> 178[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 160 -> 159[label="",style="dashed", color="red", weight=0]; 12.05/4.71 160[label="primMulNat xx310 (Succ Zero)",fontsize=16,color="magenta"];160 -> 179[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 161[label="Pos (primModNatS xx300 (Succ xx3100))",fontsize=16,color="green",shape="box"];161 -> 180[label="",style="dashed", color="green", weight=3]; 12.05/4.71 162 -> 83[label="",style="dashed", color="red", weight=0]; 12.05/4.71 162[label="error []",fontsize=16,color="magenta"];163[label="Pos (primModNatS xx300 (Succ xx3100))",fontsize=16,color="green",shape="box"];163 -> 181[label="",style="dashed", color="green", weight=3]; 12.05/4.71 164 -> 83[label="",style="dashed", color="red", weight=0]; 12.05/4.71 164[label="error []",fontsize=16,color="magenta"];165[label="Neg (primModNatS xx300 (Succ xx3100))",fontsize=16,color="green",shape="box"];165 -> 182[label="",style="dashed", color="green", weight=3]; 12.05/4.71 166 -> 83[label="",style="dashed", color="red", weight=0]; 12.05/4.71 166[label="error []",fontsize=16,color="magenta"];167[label="Neg (primModNatS xx300 (Succ xx3100))",fontsize=16,color="green",shape="box"];167 -> 183[label="",style="dashed", color="green", weight=3]; 12.05/4.71 168 -> 83[label="",style="dashed", color="red", weight=0]; 12.05/4.71 168[label="error []",fontsize=16,color="magenta"];169[label="primDivNatS0 (Succ xx30000) (Succ xx31000) (primGEqNatS (Succ xx30000) (Succ xx31000))",fontsize=16,color="black",shape="box"];169 -> 184[label="",style="solid", color="black", weight=3]; 12.05/4.71 170[label="primDivNatS0 (Succ xx30000) Zero (primGEqNatS (Succ xx30000) Zero)",fontsize=16,color="black",shape="box"];170 -> 185[label="",style="solid", color="black", weight=3]; 12.05/4.71 171[label="primDivNatS0 Zero (Succ xx31000) (primGEqNatS Zero (Succ xx31000))",fontsize=16,color="black",shape="box"];171 -> 186[label="",style="solid", color="black", weight=3]; 12.05/4.71 172[label="primDivNatS0 Zero Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];172 -> 187[label="",style="solid", color="black", weight=3]; 12.05/4.71 173[label="primMinusInt (Pos xx170) (primMulInt (Pos xx40) xx31)",fontsize=16,color="burlywood",shape="box"];954[label="xx31/Pos xx310",fontsize=10,color="white",style="solid",shape="box"];173 -> 954[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 954 -> 188[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 955[label="xx31/Neg xx310",fontsize=10,color="white",style="solid",shape="box"];173 -> 955[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 955 -> 189[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 174[label="primMinusInt (Pos xx170) (primMulInt (Neg xx40) xx31)",fontsize=16,color="burlywood",shape="box"];956[label="xx31/Pos xx310",fontsize=10,color="white",style="solid",shape="box"];174 -> 956[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 956 -> 190[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 957[label="xx31/Neg xx310",fontsize=10,color="white",style="solid",shape="box"];174 -> 957[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 957 -> 191[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 175[label="primMinusInt (Neg xx170) (primMulInt (Pos xx40) xx31)",fontsize=16,color="burlywood",shape="box"];958[label="xx31/Pos xx310",fontsize=10,color="white",style="solid",shape="box"];175 -> 958[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 958 -> 192[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 959[label="xx31/Neg xx310",fontsize=10,color="white",style="solid",shape="box"];175 -> 959[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 959 -> 193[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 176[label="primMinusInt (Neg xx170) (primMulInt (Neg xx40) xx31)",fontsize=16,color="burlywood",shape="box"];960[label="xx31/Pos xx310",fontsize=10,color="white",style="solid",shape="box"];176 -> 960[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 960 -> 194[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 961[label="xx31/Neg xx310",fontsize=10,color="white",style="solid",shape="box"];176 -> 961[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 961 -> 195[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 177[label="primMulNat (Succ xx3100) (Succ Zero)",fontsize=16,color="black",shape="box"];177 -> 196[label="",style="solid", color="black", weight=3]; 12.05/4.71 178[label="primMulNat Zero (Succ Zero)",fontsize=16,color="black",shape="box"];178 -> 197[label="",style="solid", color="black", weight=3]; 12.05/4.71 179[label="xx310",fontsize=16,color="green",shape="box"];180[label="primModNatS xx300 (Succ xx3100)",fontsize=16,color="burlywood",shape="triangle"];962[label="xx300/Succ xx3000",fontsize=10,color="white",style="solid",shape="box"];180 -> 962[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 962 -> 198[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 963[label="xx300/Zero",fontsize=10,color="white",style="solid",shape="box"];180 -> 963[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 963 -> 199[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 181 -> 180[label="",style="dashed", color="red", weight=0]; 12.05/4.71 181[label="primModNatS xx300 (Succ xx3100)",fontsize=16,color="magenta"];181 -> 200[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 182 -> 180[label="",style="dashed", color="red", weight=0]; 12.05/4.71 182[label="primModNatS xx300 (Succ xx3100)",fontsize=16,color="magenta"];182 -> 201[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 183 -> 180[label="",style="dashed", color="red", weight=0]; 12.05/4.71 183[label="primModNatS xx300 (Succ xx3100)",fontsize=16,color="magenta"];183 -> 202[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 183 -> 203[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 184 -> 693[label="",style="dashed", color="red", weight=0]; 12.05/4.71 184[label="primDivNatS0 (Succ xx30000) (Succ xx31000) (primGEqNatS xx30000 xx31000)",fontsize=16,color="magenta"];184 -> 694[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 184 -> 695[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 184 -> 696[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 184 -> 697[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 185[label="primDivNatS0 (Succ xx30000) Zero True",fontsize=16,color="black",shape="box"];185 -> 206[label="",style="solid", color="black", weight=3]; 12.05/4.71 186[label="primDivNatS0 Zero (Succ xx31000) False",fontsize=16,color="black",shape="box"];186 -> 207[label="",style="solid", color="black", weight=3]; 12.05/4.71 187[label="primDivNatS0 Zero Zero True",fontsize=16,color="black",shape="box"];187 -> 208[label="",style="solid", color="black", weight=3]; 12.05/4.71 188[label="primMinusInt (Pos xx170) (primMulInt (Pos xx40) (Pos xx310))",fontsize=16,color="black",shape="box"];188 -> 209[label="",style="solid", color="black", weight=3]; 12.05/4.71 189[label="primMinusInt (Pos xx170) (primMulInt (Pos xx40) (Neg xx310))",fontsize=16,color="black",shape="box"];189 -> 210[label="",style="solid", color="black", weight=3]; 12.05/4.71 190[label="primMinusInt (Pos xx170) (primMulInt (Neg xx40) (Pos xx310))",fontsize=16,color="black",shape="box"];190 -> 211[label="",style="solid", color="black", weight=3]; 12.05/4.71 191[label="primMinusInt (Pos xx170) (primMulInt (Neg xx40) (Neg xx310))",fontsize=16,color="black",shape="box"];191 -> 212[label="",style="solid", color="black", weight=3]; 12.05/4.71 192[label="primMinusInt (Neg xx170) (primMulInt (Pos xx40) (Pos xx310))",fontsize=16,color="black",shape="box"];192 -> 213[label="",style="solid", color="black", weight=3]; 12.05/4.71 193[label="primMinusInt (Neg xx170) (primMulInt (Pos xx40) (Neg xx310))",fontsize=16,color="black",shape="box"];193 -> 214[label="",style="solid", color="black", weight=3]; 12.05/4.71 194[label="primMinusInt (Neg xx170) (primMulInt (Neg xx40) (Pos xx310))",fontsize=16,color="black",shape="box"];194 -> 215[label="",style="solid", color="black", weight=3]; 12.05/4.71 195[label="primMinusInt (Neg xx170) (primMulInt (Neg xx40) (Neg xx310))",fontsize=16,color="black",shape="box"];195 -> 216[label="",style="solid", color="black", weight=3]; 12.05/4.71 196 -> 470[label="",style="dashed", color="red", weight=0]; 12.05/4.71 196[label="primPlusNat (primMulNat xx3100 (Succ Zero)) (Succ Zero)",fontsize=16,color="magenta"];196 -> 471[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 196 -> 472[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 197[label="Zero",fontsize=16,color="green",shape="box"];198[label="primModNatS (Succ xx3000) (Succ xx3100)",fontsize=16,color="black",shape="box"];198 -> 219[label="",style="solid", color="black", weight=3]; 12.05/4.71 199[label="primModNatS Zero (Succ xx3100)",fontsize=16,color="black",shape="box"];199 -> 220[label="",style="solid", color="black", weight=3]; 12.05/4.71 200[label="xx3100",fontsize=16,color="green",shape="box"];201[label="xx300",fontsize=16,color="green",shape="box"];202[label="xx300",fontsize=16,color="green",shape="box"];203[label="xx3100",fontsize=16,color="green",shape="box"];694[label="xx31000",fontsize=16,color="green",shape="box"];695[label="xx30000",fontsize=16,color="green",shape="box"];696[label="xx31000",fontsize=16,color="green",shape="box"];697[label="xx30000",fontsize=16,color="green",shape="box"];693[label="primDivNatS0 (Succ xx42) (Succ xx43) (primGEqNatS xx44 xx45)",fontsize=16,color="burlywood",shape="triangle"];964[label="xx44/Succ xx440",fontsize=10,color="white",style="solid",shape="box"];693 -> 964[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 964 -> 726[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 965[label="xx44/Zero",fontsize=10,color="white",style="solid",shape="box"];693 -> 965[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 965 -> 727[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 206[label="Succ (primDivNatS (primMinusNatS (Succ xx30000) Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];206 -> 225[label="",style="dashed", color="green", weight=3]; 12.05/4.71 207[label="Zero",fontsize=16,color="green",shape="box"];208[label="Succ (primDivNatS (primMinusNatS Zero Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];208 -> 226[label="",style="dashed", color="green", weight=3]; 12.05/4.71 209[label="primMinusInt (Pos xx170) (Pos (primMulNat xx40 xx310))",fontsize=16,color="black",shape="triangle"];209 -> 227[label="",style="solid", color="black", weight=3]; 12.05/4.71 210[label="primMinusInt (Pos xx170) (Neg (primMulNat xx40 xx310))",fontsize=16,color="black",shape="triangle"];210 -> 228[label="",style="solid", color="black", weight=3]; 12.05/4.71 211 -> 210[label="",style="dashed", color="red", weight=0]; 12.05/4.71 211[label="primMinusInt (Pos xx170) (Neg (primMulNat xx40 xx310))",fontsize=16,color="magenta"];211 -> 229[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 211 -> 230[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 212 -> 209[label="",style="dashed", color="red", weight=0]; 12.05/4.71 212[label="primMinusInt (Pos xx170) (Pos (primMulNat xx40 xx310))",fontsize=16,color="magenta"];212 -> 231[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 212 -> 232[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 213[label="primMinusInt (Neg xx170) (Pos (primMulNat xx40 xx310))",fontsize=16,color="black",shape="triangle"];213 -> 233[label="",style="solid", color="black", weight=3]; 12.05/4.71 214[label="primMinusInt (Neg xx170) (Neg (primMulNat xx40 xx310))",fontsize=16,color="black",shape="triangle"];214 -> 234[label="",style="solid", color="black", weight=3]; 12.05/4.71 215 -> 214[label="",style="dashed", color="red", weight=0]; 12.05/4.71 215[label="primMinusInt (Neg xx170) (Neg (primMulNat xx40 xx310))",fontsize=16,color="magenta"];215 -> 235[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 215 -> 236[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 216 -> 213[label="",style="dashed", color="red", weight=0]; 12.05/4.71 216[label="primMinusInt (Neg xx170) (Pos (primMulNat xx40 xx310))",fontsize=16,color="magenta"];216 -> 237[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 216 -> 238[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 471 -> 408[label="",style="dashed", color="red", weight=0]; 12.05/4.71 471[label="primMulNat xx3100 (Succ Zero)",fontsize=16,color="magenta"];471 -> 484[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 471 -> 485[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 472[label="Zero",fontsize=16,color="green",shape="box"];470[label="primPlusNat xx24 (Succ xx3100)",fontsize=16,color="burlywood",shape="triangle"];966[label="xx24/Succ xx240",fontsize=10,color="white",style="solid",shape="box"];470 -> 966[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 966 -> 486[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 967[label="xx24/Zero",fontsize=10,color="white",style="solid",shape="box"];470 -> 967[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 967 -> 487[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 219[label="primModNatS0 xx3000 xx3100 (primGEqNatS xx3000 xx3100)",fontsize=16,color="burlywood",shape="box"];968[label="xx3000/Succ xx30000",fontsize=10,color="white",style="solid",shape="box"];219 -> 968[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 968 -> 242[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 969[label="xx3000/Zero",fontsize=10,color="white",style="solid",shape="box"];219 -> 969[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 969 -> 243[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 220[label="Zero",fontsize=16,color="green",shape="box"];726[label="primDivNatS0 (Succ xx42) (Succ xx43) (primGEqNatS (Succ xx440) xx45)",fontsize=16,color="burlywood",shape="box"];970[label="xx45/Succ xx450",fontsize=10,color="white",style="solid",shape="box"];726 -> 970[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 970 -> 733[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 971[label="xx45/Zero",fontsize=10,color="white",style="solid",shape="box"];726 -> 971[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 971 -> 734[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 727[label="primDivNatS0 (Succ xx42) (Succ xx43) (primGEqNatS Zero xx45)",fontsize=16,color="burlywood",shape="box"];972[label="xx45/Succ xx450",fontsize=10,color="white",style="solid",shape="box"];727 -> 972[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 972 -> 735[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 973[label="xx45/Zero",fontsize=10,color="white",style="solid",shape="box"];727 -> 973[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 973 -> 736[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 225 -> 100[label="",style="dashed", color="red", weight=0]; 12.05/4.71 225[label="primDivNatS (primMinusNatS (Succ xx30000) Zero) (Succ Zero)",fontsize=16,color="magenta"];225 -> 248[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 225 -> 249[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 226 -> 100[label="",style="dashed", color="red", weight=0]; 12.05/4.71 226[label="primDivNatS (primMinusNatS Zero Zero) (Succ Zero)",fontsize=16,color="magenta"];226 -> 250[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 226 -> 251[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 227[label="primMinusNat xx170 (primMulNat xx40 xx310)",fontsize=16,color="burlywood",shape="box"];974[label="xx170/Succ xx1700",fontsize=10,color="white",style="solid",shape="box"];227 -> 974[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 974 -> 252[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 975[label="xx170/Zero",fontsize=10,color="white",style="solid",shape="box"];227 -> 975[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 975 -> 253[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 228[label="Pos (primPlusNat xx170 (primMulNat xx40 xx310))",fontsize=16,color="green",shape="box"];228 -> 254[label="",style="dashed", color="green", weight=3]; 12.05/4.71 229[label="xx310",fontsize=16,color="green",shape="box"];230[label="xx40",fontsize=16,color="green",shape="box"];231[label="xx310",fontsize=16,color="green",shape="box"];232[label="xx40",fontsize=16,color="green",shape="box"];233[label="Neg (primPlusNat xx170 (primMulNat xx40 xx310))",fontsize=16,color="green",shape="box"];233 -> 255[label="",style="dashed", color="green", weight=3]; 12.05/4.71 234[label="primMinusNat (primMulNat xx40 xx310) xx170",fontsize=16,color="burlywood",shape="box"];976[label="xx40/Succ xx400",fontsize=10,color="white",style="solid",shape="box"];234 -> 976[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 976 -> 256[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 977[label="xx40/Zero",fontsize=10,color="white",style="solid",shape="box"];234 -> 977[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 977 -> 257[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 235[label="xx310",fontsize=16,color="green",shape="box"];236[label="xx40",fontsize=16,color="green",shape="box"];237[label="xx310",fontsize=16,color="green",shape="box"];238[label="xx40",fontsize=16,color="green",shape="box"];484[label="Zero",fontsize=16,color="green",shape="box"];485[label="xx3100",fontsize=16,color="green",shape="box"];408[label="primMulNat xx400 (Succ xx3100)",fontsize=16,color="burlywood",shape="triangle"];978[label="xx400/Succ xx4000",fontsize=10,color="white",style="solid",shape="box"];408 -> 978[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 978 -> 411[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 979[label="xx400/Zero",fontsize=10,color="white",style="solid",shape="box"];408 -> 979[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 979 -> 412[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 486[label="primPlusNat (Succ xx240) (Succ xx3100)",fontsize=16,color="black",shape="box"];486 -> 514[label="",style="solid", color="black", weight=3]; 12.05/4.71 487[label="primPlusNat Zero (Succ xx3100)",fontsize=16,color="black",shape="box"];487 -> 515[label="",style="solid", color="black", weight=3]; 12.05/4.71 242[label="primModNatS0 (Succ xx30000) xx3100 (primGEqNatS (Succ xx30000) xx3100)",fontsize=16,color="burlywood",shape="box"];980[label="xx3100/Succ xx31000",fontsize=10,color="white",style="solid",shape="box"];242 -> 980[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 980 -> 260[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 981[label="xx3100/Zero",fontsize=10,color="white",style="solid",shape="box"];242 -> 981[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 981 -> 261[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 243[label="primModNatS0 Zero xx3100 (primGEqNatS Zero xx3100)",fontsize=16,color="burlywood",shape="box"];982[label="xx3100/Succ xx31000",fontsize=10,color="white",style="solid",shape="box"];243 -> 982[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 982 -> 262[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 983[label="xx3100/Zero",fontsize=10,color="white",style="solid",shape="box"];243 -> 983[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 983 -> 263[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 733[label="primDivNatS0 (Succ xx42) (Succ xx43) (primGEqNatS (Succ xx440) (Succ xx450))",fontsize=16,color="black",shape="box"];733 -> 739[label="",style="solid", color="black", weight=3]; 12.05/4.71 734[label="primDivNatS0 (Succ xx42) (Succ xx43) (primGEqNatS (Succ xx440) Zero)",fontsize=16,color="black",shape="box"];734 -> 740[label="",style="solid", color="black", weight=3]; 12.05/4.71 735[label="primDivNatS0 (Succ xx42) (Succ xx43) (primGEqNatS Zero (Succ xx450))",fontsize=16,color="black",shape="box"];735 -> 741[label="",style="solid", color="black", weight=3]; 12.05/4.71 736[label="primDivNatS0 (Succ xx42) (Succ xx43) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];736 -> 742[label="",style="solid", color="black", weight=3]; 12.05/4.71 248[label="primMinusNatS (Succ xx30000) Zero",fontsize=16,color="black",shape="triangle"];248 -> 269[label="",style="solid", color="black", weight=3]; 12.05/4.71 249[label="Zero",fontsize=16,color="green",shape="box"];250[label="primMinusNatS Zero Zero",fontsize=16,color="black",shape="triangle"];250 -> 270[label="",style="solid", color="black", weight=3]; 12.05/4.71 251[label="Zero",fontsize=16,color="green",shape="box"];252[label="primMinusNat (Succ xx1700) (primMulNat xx40 xx310)",fontsize=16,color="burlywood",shape="box"];984[label="xx40/Succ xx400",fontsize=10,color="white",style="solid",shape="box"];252 -> 984[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 984 -> 271[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 985[label="xx40/Zero",fontsize=10,color="white",style="solid",shape="box"];252 -> 985[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 985 -> 272[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 253[label="primMinusNat Zero (primMulNat xx40 xx310)",fontsize=16,color="burlywood",shape="box"];986[label="xx40/Succ xx400",fontsize=10,color="white",style="solid",shape="box"];253 -> 986[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 986 -> 273[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 987[label="xx40/Zero",fontsize=10,color="white",style="solid",shape="box"];253 -> 987[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 987 -> 274[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 254[label="primPlusNat xx170 (primMulNat xx40 xx310)",fontsize=16,color="burlywood",shape="triangle"];988[label="xx170/Succ xx1700",fontsize=10,color="white",style="solid",shape="box"];254 -> 988[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 988 -> 275[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 989[label="xx170/Zero",fontsize=10,color="white",style="solid",shape="box"];254 -> 989[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 989 -> 276[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 255 -> 254[label="",style="dashed", color="red", weight=0]; 12.05/4.71 255[label="primPlusNat xx170 (primMulNat xx40 xx310)",fontsize=16,color="magenta"];255 -> 277[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 255 -> 278[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 256[label="primMinusNat (primMulNat (Succ xx400) xx310) xx170",fontsize=16,color="burlywood",shape="box"];990[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];256 -> 990[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 990 -> 279[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 991[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];256 -> 991[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 991 -> 280[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 257[label="primMinusNat (primMulNat Zero xx310) xx170",fontsize=16,color="burlywood",shape="box"];992[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];257 -> 992[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 992 -> 281[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 993[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];257 -> 993[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 993 -> 282[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 411[label="primMulNat (Succ xx4000) (Succ xx3100)",fontsize=16,color="black",shape="box"];411 -> 435[label="",style="solid", color="black", weight=3]; 12.05/4.71 412[label="primMulNat Zero (Succ xx3100)",fontsize=16,color="black",shape="box"];412 -> 436[label="",style="solid", color="black", weight=3]; 12.05/4.71 514[label="Succ (Succ (primPlusNat xx240 xx3100))",fontsize=16,color="green",shape="box"];514 -> 536[label="",style="dashed", color="green", weight=3]; 12.05/4.71 515[label="Succ xx3100",fontsize=16,color="green",shape="box"];260[label="primModNatS0 (Succ xx30000) (Succ xx31000) (primGEqNatS (Succ xx30000) (Succ xx31000))",fontsize=16,color="black",shape="box"];260 -> 284[label="",style="solid", color="black", weight=3]; 12.05/4.71 261[label="primModNatS0 (Succ xx30000) Zero (primGEqNatS (Succ xx30000) Zero)",fontsize=16,color="black",shape="box"];261 -> 285[label="",style="solid", color="black", weight=3]; 12.05/4.71 262[label="primModNatS0 Zero (Succ xx31000) (primGEqNatS Zero (Succ xx31000))",fontsize=16,color="black",shape="box"];262 -> 286[label="",style="solid", color="black", weight=3]; 12.05/4.71 263[label="primModNatS0 Zero Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];263 -> 287[label="",style="solid", color="black", weight=3]; 12.05/4.71 739 -> 693[label="",style="dashed", color="red", weight=0]; 12.05/4.71 739[label="primDivNatS0 (Succ xx42) (Succ xx43) (primGEqNatS xx440 xx450)",fontsize=16,color="magenta"];739 -> 750[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 739 -> 751[label="",style="dashed", color="magenta", weight=3]; 12.05/4.71 740[label="primDivNatS0 (Succ xx42) (Succ xx43) True",fontsize=16,color="black",shape="triangle"];740 -> 752[label="",style="solid", color="black", weight=3]; 12.05/4.71 741[label="primDivNatS0 (Succ xx42) (Succ xx43) False",fontsize=16,color="black",shape="box"];741 -> 753[label="",style="solid", color="black", weight=3]; 12.05/4.71 742 -> 740[label="",style="dashed", color="red", weight=0]; 12.05/4.71 742[label="primDivNatS0 (Succ xx42) (Succ xx43) True",fontsize=16,color="magenta"];269[label="Succ xx30000",fontsize=16,color="green",shape="box"];270[label="Zero",fontsize=16,color="green",shape="box"];271[label="primMinusNat (Succ xx1700) (primMulNat (Succ xx400) xx310)",fontsize=16,color="burlywood",shape="box"];994[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];271 -> 994[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 994 -> 294[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 995[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];271 -> 995[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 995 -> 295[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 272[label="primMinusNat (Succ xx1700) (primMulNat Zero xx310)",fontsize=16,color="burlywood",shape="box"];996[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];272 -> 996[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 996 -> 296[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 997[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];272 -> 997[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 997 -> 297[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 273[label="primMinusNat Zero (primMulNat (Succ xx400) xx310)",fontsize=16,color="burlywood",shape="box"];998[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];273 -> 998[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 998 -> 298[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 999[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];273 -> 999[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 999 -> 299[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 274[label="primMinusNat Zero (primMulNat Zero xx310)",fontsize=16,color="burlywood",shape="box"];1000[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];274 -> 1000[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 1000 -> 300[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 1001[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];274 -> 1001[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 1001 -> 301[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 275[label="primPlusNat (Succ xx1700) (primMulNat xx40 xx310)",fontsize=16,color="burlywood",shape="box"];1002[label="xx40/Succ xx400",fontsize=10,color="white",style="solid",shape="box"];275 -> 1002[label="",style="solid", color="burlywood", weight=9]; 12.05/4.71 1002 -> 302[label="",style="solid", color="burlywood", weight=3]; 12.05/4.71 1003[label="xx40/Zero",fontsize=10,color="white",style="solid",shape="box"];275 -> 1003[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1003 -> 303[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 276[label="primPlusNat Zero (primMulNat xx40 xx310)",fontsize=16,color="burlywood",shape="box"];1004[label="xx40/Succ xx400",fontsize=10,color="white",style="solid",shape="box"];276 -> 1004[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1004 -> 304[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1005[label="xx40/Zero",fontsize=10,color="white",style="solid",shape="box"];276 -> 1005[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1005 -> 305[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 277[label="xx310",fontsize=16,color="green",shape="box"];278[label="xx170",fontsize=16,color="green",shape="box"];279[label="primMinusNat (primMulNat (Succ xx400) (Succ xx3100)) xx170",fontsize=16,color="black",shape="box"];279 -> 306[label="",style="solid", color="black", weight=3]; 12.05/4.72 280[label="primMinusNat (primMulNat (Succ xx400) Zero) xx170",fontsize=16,color="black",shape="box"];280 -> 307[label="",style="solid", color="black", weight=3]; 12.05/4.72 281[label="primMinusNat (primMulNat Zero (Succ xx3100)) xx170",fontsize=16,color="black",shape="box"];281 -> 308[label="",style="solid", color="black", weight=3]; 12.05/4.72 282[label="primMinusNat (primMulNat Zero Zero) xx170",fontsize=16,color="black",shape="box"];282 -> 309[label="",style="solid", color="black", weight=3]; 12.05/4.72 435 -> 470[label="",style="dashed", color="red", weight=0]; 12.05/4.72 435[label="primPlusNat (primMulNat xx4000 (Succ xx3100)) (Succ xx3100)",fontsize=16,color="magenta"];435 -> 480[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 435 -> 481[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 436[label="Zero",fontsize=16,color="green",shape="box"];536 -> 516[label="",style="dashed", color="red", weight=0]; 12.05/4.72 536[label="primPlusNat xx240 xx3100",fontsize=16,color="magenta"];536 -> 564[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 284 -> 837[label="",style="dashed", color="red", weight=0]; 12.05/4.72 284[label="primModNatS0 (Succ xx30000) (Succ xx31000) (primGEqNatS xx30000 xx31000)",fontsize=16,color="magenta"];284 -> 838[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 284 -> 839[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 284 -> 840[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 284 -> 841[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 285[label="primModNatS0 (Succ xx30000) Zero True",fontsize=16,color="black",shape="box"];285 -> 314[label="",style="solid", color="black", weight=3]; 12.05/4.72 286[label="primModNatS0 Zero (Succ xx31000) False",fontsize=16,color="black",shape="box"];286 -> 315[label="",style="solid", color="black", weight=3]; 12.05/4.72 287[label="primModNatS0 Zero Zero True",fontsize=16,color="black",shape="box"];287 -> 316[label="",style="solid", color="black", weight=3]; 12.05/4.72 750[label="xx450",fontsize=16,color="green",shape="box"];751[label="xx440",fontsize=16,color="green",shape="box"];752[label="Succ (primDivNatS (primMinusNatS (Succ xx42) (Succ xx43)) (Succ (Succ xx43)))",fontsize=16,color="green",shape="box"];752 -> 760[label="",style="dashed", color="green", weight=3]; 12.05/4.72 753[label="Zero",fontsize=16,color="green",shape="box"];294[label="primMinusNat (Succ xx1700) (primMulNat (Succ xx400) (Succ xx3100))",fontsize=16,color="black",shape="box"];294 -> 325[label="",style="solid", color="black", weight=3]; 12.05/4.72 295[label="primMinusNat (Succ xx1700) (primMulNat (Succ xx400) Zero)",fontsize=16,color="black",shape="box"];295 -> 326[label="",style="solid", color="black", weight=3]; 12.05/4.72 296[label="primMinusNat (Succ xx1700) (primMulNat Zero (Succ xx3100))",fontsize=16,color="black",shape="box"];296 -> 327[label="",style="solid", color="black", weight=3]; 12.05/4.72 297[label="primMinusNat (Succ xx1700) (primMulNat Zero Zero)",fontsize=16,color="black",shape="box"];297 -> 328[label="",style="solid", color="black", weight=3]; 12.05/4.72 298[label="primMinusNat Zero (primMulNat (Succ xx400) (Succ xx3100))",fontsize=16,color="black",shape="box"];298 -> 329[label="",style="solid", color="black", weight=3]; 12.05/4.72 299[label="primMinusNat Zero (primMulNat (Succ xx400) Zero)",fontsize=16,color="black",shape="box"];299 -> 330[label="",style="solid", color="black", weight=3]; 12.05/4.72 300[label="primMinusNat Zero (primMulNat Zero (Succ xx3100))",fontsize=16,color="black",shape="box"];300 -> 331[label="",style="solid", color="black", weight=3]; 12.05/4.72 301[label="primMinusNat Zero (primMulNat Zero Zero)",fontsize=16,color="black",shape="box"];301 -> 332[label="",style="solid", color="black", weight=3]; 12.05/4.72 302[label="primPlusNat (Succ xx1700) (primMulNat (Succ xx400) xx310)",fontsize=16,color="burlywood",shape="box"];1006[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];302 -> 1006[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1006 -> 333[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1007[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];302 -> 1007[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1007 -> 334[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 303[label="primPlusNat (Succ xx1700) (primMulNat Zero xx310)",fontsize=16,color="burlywood",shape="box"];1008[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];303 -> 1008[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1008 -> 335[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1009[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];303 -> 1009[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1009 -> 336[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 304[label="primPlusNat Zero (primMulNat (Succ xx400) xx310)",fontsize=16,color="burlywood",shape="box"];1010[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];304 -> 1010[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1010 -> 337[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1011[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];304 -> 1011[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1011 -> 338[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 305[label="primPlusNat Zero (primMulNat Zero xx310)",fontsize=16,color="burlywood",shape="box"];1012[label="xx310/Succ xx3100",fontsize=10,color="white",style="solid",shape="box"];305 -> 1012[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1012 -> 339[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1013[label="xx310/Zero",fontsize=10,color="white",style="solid",shape="box"];305 -> 1013[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1013 -> 340[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 306 -> 407[label="",style="dashed", color="red", weight=0]; 12.05/4.72 306[label="primMinusNat (primPlusNat (primMulNat xx400 (Succ xx3100)) (Succ xx3100)) xx170",fontsize=16,color="magenta"];306 -> 408[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 307[label="primMinusNat Zero xx170",fontsize=16,color="burlywood",shape="triangle"];1014[label="xx170/Succ xx1700",fontsize=10,color="white",style="solid",shape="box"];307 -> 1014[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1014 -> 343[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1015[label="xx170/Zero",fontsize=10,color="white",style="solid",shape="box"];307 -> 1015[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1015 -> 344[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 308 -> 307[label="",style="dashed", color="red", weight=0]; 12.05/4.72 308[label="primMinusNat Zero xx170",fontsize=16,color="magenta"];309 -> 307[label="",style="dashed", color="red", weight=0]; 12.05/4.72 309[label="primMinusNat Zero xx170",fontsize=16,color="magenta"];480 -> 408[label="",style="dashed", color="red", weight=0]; 12.05/4.72 480[label="primMulNat xx4000 (Succ xx3100)",fontsize=16,color="magenta"];480 -> 497[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 481[label="xx3100",fontsize=16,color="green",shape="box"];564[label="xx240",fontsize=16,color="green",shape="box"];516[label="primPlusNat xx220 xx3100",fontsize=16,color="burlywood",shape="triangle"];1016[label="xx220/Succ xx2200",fontsize=10,color="white",style="solid",shape="box"];516 -> 1016[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1016 -> 537[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1017[label="xx220/Zero",fontsize=10,color="white",style="solid",shape="box"];516 -> 1017[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1017 -> 538[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 838[label="xx31000",fontsize=16,color="green",shape="box"];839[label="xx30000",fontsize=16,color="green",shape="box"];840[label="xx31000",fontsize=16,color="green",shape="box"];841[label="xx30000",fontsize=16,color="green",shape="box"];837[label="primModNatS0 (Succ xx66) (Succ xx67) (primGEqNatS xx68 xx69)",fontsize=16,color="burlywood",shape="triangle"];1018[label="xx68/Succ xx680",fontsize=10,color="white",style="solid",shape="box"];837 -> 1018[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1018 -> 874[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1019[label="xx68/Zero",fontsize=10,color="white",style="solid",shape="box"];837 -> 1019[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1019 -> 875[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 314 -> 180[label="",style="dashed", color="red", weight=0]; 12.05/4.72 314[label="primModNatS (primMinusNatS (Succ xx30000) Zero) (Succ Zero)",fontsize=16,color="magenta"];314 -> 351[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 314 -> 352[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 315[label="Succ Zero",fontsize=16,color="green",shape="box"];316 -> 180[label="",style="dashed", color="red", weight=0]; 12.05/4.72 316[label="primModNatS (primMinusNatS Zero Zero) (Succ Zero)",fontsize=16,color="magenta"];316 -> 353[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 316 -> 354[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 760 -> 100[label="",style="dashed", color="red", weight=0]; 12.05/4.72 760[label="primDivNatS (primMinusNatS (Succ xx42) (Succ xx43)) (Succ (Succ xx43))",fontsize=16,color="magenta"];760 -> 765[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 760 -> 766[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 325 -> 428[label="",style="dashed", color="red", weight=0]; 12.05/4.72 325[label="primMinusNat (Succ xx1700) (primPlusNat (primMulNat xx400 (Succ xx3100)) (Succ xx3100))",fontsize=16,color="magenta"];325 -> 429[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 326[label="primMinusNat (Succ xx1700) Zero",fontsize=16,color="black",shape="triangle"];326 -> 364[label="",style="solid", color="black", weight=3]; 12.05/4.72 327 -> 326[label="",style="dashed", color="red", weight=0]; 12.05/4.72 327[label="primMinusNat (Succ xx1700) Zero",fontsize=16,color="magenta"];328 -> 326[label="",style="dashed", color="red", weight=0]; 12.05/4.72 328[label="primMinusNat (Succ xx1700) Zero",fontsize=16,color="magenta"];329 -> 307[label="",style="dashed", color="red", weight=0]; 12.05/4.72 329[label="primMinusNat Zero (primPlusNat (primMulNat xx400 (Succ xx3100)) (Succ xx3100))",fontsize=16,color="magenta"];329 -> 365[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 330 -> 307[label="",style="dashed", color="red", weight=0]; 12.05/4.72 330[label="primMinusNat Zero Zero",fontsize=16,color="magenta"];330 -> 366[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 331 -> 307[label="",style="dashed", color="red", weight=0]; 12.05/4.72 331[label="primMinusNat Zero Zero",fontsize=16,color="magenta"];331 -> 367[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 332 -> 307[label="",style="dashed", color="red", weight=0]; 12.05/4.72 332[label="primMinusNat Zero Zero",fontsize=16,color="magenta"];332 -> 368[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 333[label="primPlusNat (Succ xx1700) (primMulNat (Succ xx400) (Succ xx3100))",fontsize=16,color="black",shape="box"];333 -> 369[label="",style="solid", color="black", weight=3]; 12.05/4.72 334[label="primPlusNat (Succ xx1700) (primMulNat (Succ xx400) Zero)",fontsize=16,color="black",shape="box"];334 -> 370[label="",style="solid", color="black", weight=3]; 12.05/4.72 335[label="primPlusNat (Succ xx1700) (primMulNat Zero (Succ xx3100))",fontsize=16,color="black",shape="box"];335 -> 371[label="",style="solid", color="black", weight=3]; 12.05/4.72 336[label="primPlusNat (Succ xx1700) (primMulNat Zero Zero)",fontsize=16,color="black",shape="box"];336 -> 372[label="",style="solid", color="black", weight=3]; 12.05/4.72 337[label="primPlusNat Zero (primMulNat (Succ xx400) (Succ xx3100))",fontsize=16,color="black",shape="box"];337 -> 373[label="",style="solid", color="black", weight=3]; 12.05/4.72 338[label="primPlusNat Zero (primMulNat (Succ xx400) Zero)",fontsize=16,color="black",shape="box"];338 -> 374[label="",style="solid", color="black", weight=3]; 12.05/4.72 339[label="primPlusNat Zero (primMulNat Zero (Succ xx3100))",fontsize=16,color="black",shape="box"];339 -> 375[label="",style="solid", color="black", weight=3]; 12.05/4.72 340[label="primPlusNat Zero (primMulNat Zero Zero)",fontsize=16,color="black",shape="box"];340 -> 376[label="",style="solid", color="black", weight=3]; 12.05/4.72 407[label="primMinusNat (primPlusNat xx21 (Succ xx3100)) xx170",fontsize=16,color="burlywood",shape="triangle"];1020[label="xx21/Succ xx210",fontsize=10,color="white",style="solid",shape="box"];407 -> 1020[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1020 -> 413[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1021[label="xx21/Zero",fontsize=10,color="white",style="solid",shape="box"];407 -> 1021[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1021 -> 414[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 343[label="primMinusNat Zero (Succ xx1700)",fontsize=16,color="black",shape="box"];343 -> 379[label="",style="solid", color="black", weight=3]; 12.05/4.72 344[label="primMinusNat Zero Zero",fontsize=16,color="black",shape="box"];344 -> 380[label="",style="solid", color="black", weight=3]; 12.05/4.72 497[label="xx4000",fontsize=16,color="green",shape="box"];537[label="primPlusNat (Succ xx2200) xx3100",fontsize=16,color="burlywood",shape="box"];1022[label="xx3100/Succ xx31000",fontsize=10,color="white",style="solid",shape="box"];537 -> 1022[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1022 -> 565[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1023[label="xx3100/Zero",fontsize=10,color="white",style="solid",shape="box"];537 -> 1023[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1023 -> 566[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 538[label="primPlusNat Zero xx3100",fontsize=16,color="burlywood",shape="box"];1024[label="xx3100/Succ xx31000",fontsize=10,color="white",style="solid",shape="box"];538 -> 1024[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1024 -> 567[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1025[label="xx3100/Zero",fontsize=10,color="white",style="solid",shape="box"];538 -> 1025[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1025 -> 568[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 874[label="primModNatS0 (Succ xx66) (Succ xx67) (primGEqNatS (Succ xx680) xx69)",fontsize=16,color="burlywood",shape="box"];1026[label="xx69/Succ xx690",fontsize=10,color="white",style="solid",shape="box"];874 -> 1026[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1026 -> 876[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1027[label="xx69/Zero",fontsize=10,color="white",style="solid",shape="box"];874 -> 1027[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1027 -> 877[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 875[label="primModNatS0 (Succ xx66) (Succ xx67) (primGEqNatS Zero xx69)",fontsize=16,color="burlywood",shape="box"];1028[label="xx69/Succ xx690",fontsize=10,color="white",style="solid",shape="box"];875 -> 1028[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1028 -> 878[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1029[label="xx69/Zero",fontsize=10,color="white",style="solid",shape="box"];875 -> 1029[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1029 -> 879[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 351 -> 248[label="",style="dashed", color="red", weight=0]; 12.05/4.72 351[label="primMinusNatS (Succ xx30000) Zero",fontsize=16,color="magenta"];351 -> 385[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 352[label="Zero",fontsize=16,color="green",shape="box"];353 -> 250[label="",style="dashed", color="red", weight=0]; 12.05/4.72 353[label="primMinusNatS Zero Zero",fontsize=16,color="magenta"];354[label="Zero",fontsize=16,color="green",shape="box"];765[label="primMinusNatS (Succ xx42) (Succ xx43)",fontsize=16,color="black",shape="box"];765 -> 770[label="",style="solid", color="black", weight=3]; 12.05/4.72 766[label="Succ xx43",fontsize=16,color="green",shape="box"];429 -> 408[label="",style="dashed", color="red", weight=0]; 12.05/4.72 429[label="primMulNat xx400 (Succ xx3100)",fontsize=16,color="magenta"];429 -> 432[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 428[label="primMinusNat (Succ xx1700) (primPlusNat xx22 (Succ xx3100))",fontsize=16,color="burlywood",shape="triangle"];1030[label="xx22/Succ xx220",fontsize=10,color="white",style="solid",shape="box"];428 -> 1030[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1030 -> 433[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1031[label="xx22/Zero",fontsize=10,color="white",style="solid",shape="box"];428 -> 1031[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1031 -> 434[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 364[label="Pos (Succ xx1700)",fontsize=16,color="green",shape="box"];365 -> 470[label="",style="dashed", color="red", weight=0]; 12.05/4.72 365[label="primPlusNat (primMulNat xx400 (Succ xx3100)) (Succ xx3100)",fontsize=16,color="magenta"];365 -> 475[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 366[label="Zero",fontsize=16,color="green",shape="box"];367[label="Zero",fontsize=16,color="green",shape="box"];368[label="Zero",fontsize=16,color="green",shape="box"];369 -> 397[label="",style="dashed", color="red", weight=0]; 12.05/4.72 369[label="primPlusNat (Succ xx1700) (primPlusNat (primMulNat xx400 (Succ xx3100)) (Succ xx3100))",fontsize=16,color="magenta"];369 -> 398[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 370 -> 397[label="",style="dashed", color="red", weight=0]; 12.05/4.72 370[label="primPlusNat (Succ xx1700) Zero",fontsize=16,color="magenta"];370 -> 399[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 371 -> 397[label="",style="dashed", color="red", weight=0]; 12.05/4.72 371[label="primPlusNat (Succ xx1700) Zero",fontsize=16,color="magenta"];371 -> 400[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 372 -> 397[label="",style="dashed", color="red", weight=0]; 12.05/4.72 372[label="primPlusNat (Succ xx1700) Zero",fontsize=16,color="magenta"];372 -> 401[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 373 -> 402[label="",style="dashed", color="red", weight=0]; 12.05/4.72 373[label="primPlusNat Zero (primPlusNat (primMulNat xx400 (Succ xx3100)) (Succ xx3100))",fontsize=16,color="magenta"];373 -> 403[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 374 -> 402[label="",style="dashed", color="red", weight=0]; 12.05/4.72 374[label="primPlusNat Zero Zero",fontsize=16,color="magenta"];374 -> 404[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 375 -> 402[label="",style="dashed", color="red", weight=0]; 12.05/4.72 375[label="primPlusNat Zero Zero",fontsize=16,color="magenta"];375 -> 405[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 376 -> 402[label="",style="dashed", color="red", weight=0]; 12.05/4.72 376[label="primPlusNat Zero Zero",fontsize=16,color="magenta"];376 -> 406[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 413[label="primMinusNat (primPlusNat (Succ xx210) (Succ xx3100)) xx170",fontsize=16,color="black",shape="box"];413 -> 437[label="",style="solid", color="black", weight=3]; 12.05/4.72 414[label="primMinusNat (primPlusNat Zero (Succ xx3100)) xx170",fontsize=16,color="black",shape="box"];414 -> 438[label="",style="solid", color="black", weight=3]; 12.05/4.72 379[label="Neg (Succ xx1700)",fontsize=16,color="green",shape="box"];380[label="Pos Zero",fontsize=16,color="green",shape="box"];565[label="primPlusNat (Succ xx2200) (Succ xx31000)",fontsize=16,color="black",shape="box"];565 -> 585[label="",style="solid", color="black", weight=3]; 12.05/4.72 566[label="primPlusNat (Succ xx2200) Zero",fontsize=16,color="black",shape="box"];566 -> 586[label="",style="solid", color="black", weight=3]; 12.05/4.72 567[label="primPlusNat Zero (Succ xx31000)",fontsize=16,color="black",shape="box"];567 -> 587[label="",style="solid", color="black", weight=3]; 12.05/4.72 568[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];568 -> 588[label="",style="solid", color="black", weight=3]; 12.05/4.72 876[label="primModNatS0 (Succ xx66) (Succ xx67) (primGEqNatS (Succ xx680) (Succ xx690))",fontsize=16,color="black",shape="box"];876 -> 880[label="",style="solid", color="black", weight=3]; 12.05/4.72 877[label="primModNatS0 (Succ xx66) (Succ xx67) (primGEqNatS (Succ xx680) Zero)",fontsize=16,color="black",shape="box"];877 -> 881[label="",style="solid", color="black", weight=3]; 12.05/4.72 878[label="primModNatS0 (Succ xx66) (Succ xx67) (primGEqNatS Zero (Succ xx690))",fontsize=16,color="black",shape="box"];878 -> 882[label="",style="solid", color="black", weight=3]; 12.05/4.72 879[label="primModNatS0 (Succ xx66) (Succ xx67) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];879 -> 883[label="",style="solid", color="black", weight=3]; 12.05/4.72 385[label="xx30000",fontsize=16,color="green",shape="box"];770[label="primMinusNatS xx42 xx43",fontsize=16,color="burlywood",shape="triangle"];1032[label="xx42/Succ xx420",fontsize=10,color="white",style="solid",shape="box"];770 -> 1032[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1032 -> 774[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1033[label="xx42/Zero",fontsize=10,color="white",style="solid",shape="box"];770 -> 1033[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1033 -> 775[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 432[label="xx3100",fontsize=16,color="green",shape="box"];433[label="primMinusNat (Succ xx1700) (primPlusNat (Succ xx220) (Succ xx3100))",fontsize=16,color="black",shape="box"];433 -> 462[label="",style="solid", color="black", weight=3]; 12.05/4.72 434[label="primMinusNat (Succ xx1700) (primPlusNat Zero (Succ xx3100))",fontsize=16,color="black",shape="box"];434 -> 463[label="",style="solid", color="black", weight=3]; 12.05/4.72 475 -> 408[label="",style="dashed", color="red", weight=0]; 12.05/4.72 475[label="primMulNat xx400 (Succ xx3100)",fontsize=16,color="magenta"];475 -> 488[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 398 -> 470[label="",style="dashed", color="red", weight=0]; 12.05/4.72 398[label="primPlusNat (primMulNat xx400 (Succ xx3100)) (Succ xx3100)",fontsize=16,color="magenta"];398 -> 476[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 398 -> 477[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 397[label="primPlusNat (Succ xx1700) xx19",fontsize=16,color="burlywood",shape="triangle"];1034[label="xx19/Succ xx190",fontsize=10,color="white",style="solid",shape="box"];397 -> 1034[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1034 -> 442[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1035[label="xx19/Zero",fontsize=10,color="white",style="solid",shape="box"];397 -> 1035[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1035 -> 443[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 399[label="Zero",fontsize=16,color="green",shape="box"];400[label="Zero",fontsize=16,color="green",shape="box"];401[label="Zero",fontsize=16,color="green",shape="box"];403 -> 470[label="",style="dashed", color="red", weight=0]; 12.05/4.72 403[label="primPlusNat (primMulNat xx400 (Succ xx3100)) (Succ xx3100)",fontsize=16,color="magenta"];403 -> 478[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 403 -> 479[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 402[label="primPlusNat Zero xx20",fontsize=16,color="burlywood",shape="triangle"];1036[label="xx20/Succ xx200",fontsize=10,color="white",style="solid",shape="box"];402 -> 1036[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1036 -> 445[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1037[label="xx20/Zero",fontsize=10,color="white",style="solid",shape="box"];402 -> 1037[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1037 -> 446[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 404[label="Zero",fontsize=16,color="green",shape="box"];405[label="Zero",fontsize=16,color="green",shape="box"];406[label="Zero",fontsize=16,color="green",shape="box"];437[label="primMinusNat (Succ (Succ (primPlusNat xx210 xx3100))) xx170",fontsize=16,color="burlywood",shape="box"];1038[label="xx170/Succ xx1700",fontsize=10,color="white",style="solid",shape="box"];437 -> 1038[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1038 -> 466[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1039[label="xx170/Zero",fontsize=10,color="white",style="solid",shape="box"];437 -> 1039[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1039 -> 467[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 438[label="primMinusNat (Succ xx3100) xx170",fontsize=16,color="burlywood",shape="triangle"];1040[label="xx170/Succ xx1700",fontsize=10,color="white",style="solid",shape="box"];438 -> 1040[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1040 -> 468[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1041[label="xx170/Zero",fontsize=10,color="white",style="solid",shape="box"];438 -> 1041[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1041 -> 469[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 585[label="Succ (Succ (primPlusNat xx2200 xx31000))",fontsize=16,color="green",shape="box"];585 -> 604[label="",style="dashed", color="green", weight=3]; 12.05/4.72 586[label="Succ xx2200",fontsize=16,color="green",shape="box"];587[label="Succ xx31000",fontsize=16,color="green",shape="box"];588[label="Zero",fontsize=16,color="green",shape="box"];880 -> 837[label="",style="dashed", color="red", weight=0]; 12.05/4.72 880[label="primModNatS0 (Succ xx66) (Succ xx67) (primGEqNatS xx680 xx690)",fontsize=16,color="magenta"];880 -> 884[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 880 -> 885[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 881[label="primModNatS0 (Succ xx66) (Succ xx67) True",fontsize=16,color="black",shape="triangle"];881 -> 886[label="",style="solid", color="black", weight=3]; 12.05/4.72 882[label="primModNatS0 (Succ xx66) (Succ xx67) False",fontsize=16,color="black",shape="box"];882 -> 887[label="",style="solid", color="black", weight=3]; 12.05/4.72 883 -> 881[label="",style="dashed", color="red", weight=0]; 12.05/4.72 883[label="primModNatS0 (Succ xx66) (Succ xx67) True",fontsize=16,color="magenta"];774[label="primMinusNatS (Succ xx420) xx43",fontsize=16,color="burlywood",shape="box"];1042[label="xx43/Succ xx430",fontsize=10,color="white",style="solid",shape="box"];774 -> 1042[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1042 -> 778[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1043[label="xx43/Zero",fontsize=10,color="white",style="solid",shape="box"];774 -> 1043[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1043 -> 779[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 775[label="primMinusNatS Zero xx43",fontsize=16,color="burlywood",shape="box"];1044[label="xx43/Succ xx430",fontsize=10,color="white",style="solid",shape="box"];775 -> 1044[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1044 -> 780[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1045[label="xx43/Zero",fontsize=10,color="white",style="solid",shape="box"];775 -> 1045[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1045 -> 781[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 462 -> 438[label="",style="dashed", color="red", weight=0]; 12.05/4.72 462[label="primMinusNat (Succ xx1700) (Succ (Succ (primPlusNat xx220 xx3100)))",fontsize=16,color="magenta"];462 -> 489[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 462 -> 490[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 463 -> 438[label="",style="dashed", color="red", weight=0]; 12.05/4.72 463[label="primMinusNat (Succ xx1700) (Succ xx3100)",fontsize=16,color="magenta"];463 -> 491[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 463 -> 492[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 488[label="xx3100",fontsize=16,color="green",shape="box"];476 -> 408[label="",style="dashed", color="red", weight=0]; 12.05/4.72 476[label="primMulNat xx400 (Succ xx3100)",fontsize=16,color="magenta"];477[label="xx3100",fontsize=16,color="green",shape="box"];442[label="primPlusNat (Succ xx1700) (Succ xx190)",fontsize=16,color="black",shape="box"];442 -> 493[label="",style="solid", color="black", weight=3]; 12.05/4.72 443[label="primPlusNat (Succ xx1700) Zero",fontsize=16,color="black",shape="box"];443 -> 494[label="",style="solid", color="black", weight=3]; 12.05/4.72 478 -> 408[label="",style="dashed", color="red", weight=0]; 12.05/4.72 478[label="primMulNat xx400 (Succ xx3100)",fontsize=16,color="magenta"];479[label="xx3100",fontsize=16,color="green",shape="box"];445[label="primPlusNat Zero (Succ xx200)",fontsize=16,color="black",shape="box"];445 -> 495[label="",style="solid", color="black", weight=3]; 12.05/4.72 446[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];446 -> 496[label="",style="solid", color="black", weight=3]; 12.05/4.72 466[label="primMinusNat (Succ (Succ (primPlusNat xx210 xx3100))) (Succ xx1700)",fontsize=16,color="black",shape="box"];466 -> 498[label="",style="solid", color="black", weight=3]; 12.05/4.72 467[label="primMinusNat (Succ (Succ (primPlusNat xx210 xx3100))) Zero",fontsize=16,color="black",shape="box"];467 -> 499[label="",style="solid", color="black", weight=3]; 12.05/4.72 468[label="primMinusNat (Succ xx3100) (Succ xx1700)",fontsize=16,color="black",shape="box"];468 -> 500[label="",style="solid", color="black", weight=3]; 12.05/4.72 469[label="primMinusNat (Succ xx3100) Zero",fontsize=16,color="black",shape="box"];469 -> 501[label="",style="solid", color="black", weight=3]; 12.05/4.72 604 -> 516[label="",style="dashed", color="red", weight=0]; 12.05/4.72 604[label="primPlusNat xx2200 xx31000",fontsize=16,color="magenta"];604 -> 617[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 604 -> 618[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 884[label="xx680",fontsize=16,color="green",shape="box"];885[label="xx690",fontsize=16,color="green",shape="box"];886 -> 180[label="",style="dashed", color="red", weight=0]; 12.05/4.72 886[label="primModNatS (primMinusNatS (Succ xx66) (Succ xx67)) (Succ (Succ xx67))",fontsize=16,color="magenta"];886 -> 888[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 886 -> 889[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 887[label="Succ (Succ xx66)",fontsize=16,color="green",shape="box"];778[label="primMinusNatS (Succ xx420) (Succ xx430)",fontsize=16,color="black",shape="box"];778 -> 818[label="",style="solid", color="black", weight=3]; 12.05/4.72 779[label="primMinusNatS (Succ xx420) Zero",fontsize=16,color="black",shape="box"];779 -> 819[label="",style="solid", color="black", weight=3]; 12.05/4.72 780[label="primMinusNatS Zero (Succ xx430)",fontsize=16,color="black",shape="box"];780 -> 820[label="",style="solid", color="black", weight=3]; 12.05/4.72 781[label="primMinusNatS Zero Zero",fontsize=16,color="black",shape="box"];781 -> 821[label="",style="solid", color="black", weight=3]; 12.05/4.72 489[label="Succ (Succ (primPlusNat xx220 xx3100))",fontsize=16,color="green",shape="box"];489 -> 516[label="",style="dashed", color="green", weight=3]; 12.05/4.72 490[label="xx1700",fontsize=16,color="green",shape="box"];491[label="Succ xx3100",fontsize=16,color="green",shape="box"];492[label="xx1700",fontsize=16,color="green",shape="box"];493[label="Succ (Succ (primPlusNat xx1700 xx190))",fontsize=16,color="green",shape="box"];493 -> 517[label="",style="dashed", color="green", weight=3]; 12.05/4.72 494[label="Succ xx1700",fontsize=16,color="green",shape="box"];495[label="Succ xx200",fontsize=16,color="green",shape="box"];496[label="Zero",fontsize=16,color="green",shape="box"];498 -> 438[label="",style="dashed", color="red", weight=0]; 12.05/4.72 498[label="primMinusNat (Succ (primPlusNat xx210 xx3100)) xx1700",fontsize=16,color="magenta"];498 -> 518[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 498 -> 519[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 499[label="Pos (Succ (Succ (primPlusNat xx210 xx3100)))",fontsize=16,color="green",shape="box"];499 -> 520[label="",style="dashed", color="green", weight=3]; 12.05/4.72 500[label="primMinusNat xx3100 xx1700",fontsize=16,color="burlywood",shape="triangle"];1046[label="xx3100/Succ xx31000",fontsize=10,color="white",style="solid",shape="box"];500 -> 1046[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1046 -> 521[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1047[label="xx3100/Zero",fontsize=10,color="white",style="solid",shape="box"];500 -> 1047[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1047 -> 522[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 501[label="Pos (Succ xx3100)",fontsize=16,color="green",shape="box"];617[label="xx31000",fontsize=16,color="green",shape="box"];618[label="xx2200",fontsize=16,color="green",shape="box"];888 -> 770[label="",style="dashed", color="red", weight=0]; 12.05/4.72 888[label="primMinusNatS (Succ xx66) (Succ xx67)",fontsize=16,color="magenta"];888 -> 890[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 888 -> 891[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 889[label="Succ xx67",fontsize=16,color="green",shape="box"];818 -> 770[label="",style="dashed", color="red", weight=0]; 12.05/4.72 818[label="primMinusNatS xx420 xx430",fontsize=16,color="magenta"];818 -> 829[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 818 -> 830[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 819[label="Succ xx420",fontsize=16,color="green",shape="box"];820[label="Zero",fontsize=16,color="green",shape="box"];821[label="Zero",fontsize=16,color="green",shape="box"];517 -> 516[label="",style="dashed", color="red", weight=0]; 12.05/4.72 517[label="primPlusNat xx1700 xx190",fontsize=16,color="magenta"];517 -> 539[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 517 -> 540[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 518[label="xx1700",fontsize=16,color="green",shape="box"];519 -> 516[label="",style="dashed", color="red", weight=0]; 12.05/4.72 519[label="primPlusNat xx210 xx3100",fontsize=16,color="magenta"];519 -> 541[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 519 -> 542[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 520 -> 516[label="",style="dashed", color="red", weight=0]; 12.05/4.72 520[label="primPlusNat xx210 xx3100",fontsize=16,color="magenta"];520 -> 543[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 520 -> 544[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 521[label="primMinusNat (Succ xx31000) xx1700",fontsize=16,color="burlywood",shape="box"];1048[label="xx1700/Succ xx17000",fontsize=10,color="white",style="solid",shape="box"];521 -> 1048[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1048 -> 545[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1049[label="xx1700/Zero",fontsize=10,color="white",style="solid",shape="box"];521 -> 1049[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1049 -> 546[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 522[label="primMinusNat Zero xx1700",fontsize=16,color="burlywood",shape="box"];1050[label="xx1700/Succ xx17000",fontsize=10,color="white",style="solid",shape="box"];522 -> 1050[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1050 -> 547[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 1051[label="xx1700/Zero",fontsize=10,color="white",style="solid",shape="box"];522 -> 1051[label="",style="solid", color="burlywood", weight=9]; 12.05/4.72 1051 -> 548[label="",style="solid", color="burlywood", weight=3]; 12.05/4.72 890[label="Succ xx67",fontsize=16,color="green",shape="box"];891[label="Succ xx66",fontsize=16,color="green",shape="box"];829[label="xx430",fontsize=16,color="green",shape="box"];830[label="xx420",fontsize=16,color="green",shape="box"];539[label="xx190",fontsize=16,color="green",shape="box"];540[label="xx1700",fontsize=16,color="green",shape="box"];541[label="xx3100",fontsize=16,color="green",shape="box"];542[label="xx210",fontsize=16,color="green",shape="box"];543[label="xx3100",fontsize=16,color="green",shape="box"];544[label="xx210",fontsize=16,color="green",shape="box"];545[label="primMinusNat (Succ xx31000) (Succ xx17000)",fontsize=16,color="black",shape="box"];545 -> 569[label="",style="solid", color="black", weight=3]; 12.05/4.72 546[label="primMinusNat (Succ xx31000) Zero",fontsize=16,color="black",shape="box"];546 -> 570[label="",style="solid", color="black", weight=3]; 12.05/4.72 547[label="primMinusNat Zero (Succ xx17000)",fontsize=16,color="black",shape="box"];547 -> 571[label="",style="solid", color="black", weight=3]; 12.05/4.72 548[label="primMinusNat Zero Zero",fontsize=16,color="black",shape="box"];548 -> 572[label="",style="solid", color="black", weight=3]; 12.05/4.72 569 -> 500[label="",style="dashed", color="red", weight=0]; 12.05/4.72 569[label="primMinusNat xx31000 xx17000",fontsize=16,color="magenta"];569 -> 589[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 569 -> 590[label="",style="dashed", color="magenta", weight=3]; 12.05/4.72 570[label="Pos (Succ xx31000)",fontsize=16,color="green",shape="box"];571[label="Neg (Succ xx17000)",fontsize=16,color="green",shape="box"];572[label="Pos Zero",fontsize=16,color="green",shape="box"];589[label="xx17000",fontsize=16,color="green",shape="box"];590[label="xx31000",fontsize=16,color="green",shape="box"];} 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (14) 12.05/4.72 Complex Obligation (AND) 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (15) 12.05/4.72 Obligation: 12.05/4.72 Q DP problem: 12.05/4.72 The TRS P consists of the following rules: 12.05/4.72 12.05/4.72 new_primModNatS(Succ(Succ(xx30000)), Zero) -> new_primModNatS(new_primMinusNatS0(xx30000), Zero) 12.05/4.72 new_primModNatS(Succ(Succ(xx30000)), Succ(xx31000)) -> new_primModNatS0(xx30000, xx31000, xx30000, xx31000) 12.05/4.72 new_primModNatS(Succ(Zero), Zero) -> new_primModNatS(new_primMinusNatS1, Zero) 12.05/4.72 new_primModNatS0(xx66, xx67, Succ(xx680), Zero) -> new_primModNatS(new_primMinusNatS2(Succ(xx66), Succ(xx67)), Succ(xx67)) 12.05/4.72 new_primModNatS0(xx66, xx67, Succ(xx680), Succ(xx690)) -> new_primModNatS0(xx66, xx67, xx680, xx690) 12.05/4.72 new_primModNatS0(xx66, xx67, Zero, Zero) -> new_primModNatS00(xx66, xx67) 12.05/4.72 new_primModNatS00(xx66, xx67) -> new_primModNatS(new_primMinusNatS2(Succ(xx66), Succ(xx67)), Succ(xx67)) 12.05/4.72 12.05/4.72 The TRS R consists of the following rules: 12.05/4.72 12.05/4.72 new_primMinusNatS1 -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Zero) -> Succ(xx420) 12.05/4.72 new_primMinusNatS2(Zero, Zero) -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Succ(xx430)) -> new_primMinusNatS2(xx420, xx430) 12.05/4.72 new_primMinusNatS2(Zero, Succ(xx430)) -> Zero 12.05/4.72 new_primMinusNatS0(xx30000) -> Succ(xx30000) 12.05/4.72 12.05/4.72 The set Q consists of the following terms: 12.05/4.72 12.05/4.72 new_primMinusNatS0(x0) 12.05/4.72 new_primMinusNatS2(Zero, Succ(x0)) 12.05/4.72 new_primMinusNatS2(Succ(x0), Succ(x1)) 12.05/4.72 new_primMinusNatS2(Zero, Zero) 12.05/4.72 new_primMinusNatS1 12.05/4.72 new_primMinusNatS2(Succ(x0), Zero) 12.05/4.72 12.05/4.72 We have to consider all minimal (P,Q,R)-chains. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (16) DependencyGraphProof (EQUIVALENT) 12.05/4.72 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 1 less node. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (17) 12.05/4.72 Complex Obligation (AND) 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (18) 12.05/4.72 Obligation: 12.05/4.72 Q DP problem: 12.05/4.72 The TRS P consists of the following rules: 12.05/4.72 12.05/4.72 new_primModNatS0(xx66, xx67, Succ(xx680), Zero) -> new_primModNatS(new_primMinusNatS2(Succ(xx66), Succ(xx67)), Succ(xx67)) 12.05/4.72 new_primModNatS(Succ(Succ(xx30000)), Succ(xx31000)) -> new_primModNatS0(xx30000, xx31000, xx30000, xx31000) 12.05/4.72 new_primModNatS0(xx66, xx67, Succ(xx680), Succ(xx690)) -> new_primModNatS0(xx66, xx67, xx680, xx690) 12.05/4.72 new_primModNatS0(xx66, xx67, Zero, Zero) -> new_primModNatS00(xx66, xx67) 12.05/4.72 new_primModNatS00(xx66, xx67) -> new_primModNatS(new_primMinusNatS2(Succ(xx66), Succ(xx67)), Succ(xx67)) 12.05/4.72 12.05/4.72 The TRS R consists of the following rules: 12.05/4.72 12.05/4.72 new_primMinusNatS1 -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Zero) -> Succ(xx420) 12.05/4.72 new_primMinusNatS2(Zero, Zero) -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Succ(xx430)) -> new_primMinusNatS2(xx420, xx430) 12.05/4.72 new_primMinusNatS2(Zero, Succ(xx430)) -> Zero 12.05/4.72 new_primMinusNatS0(xx30000) -> Succ(xx30000) 12.05/4.72 12.05/4.72 The set Q consists of the following terms: 12.05/4.72 12.05/4.72 new_primMinusNatS0(x0) 12.05/4.72 new_primMinusNatS2(Zero, Succ(x0)) 12.05/4.72 new_primMinusNatS2(Succ(x0), Succ(x1)) 12.05/4.72 new_primMinusNatS2(Zero, Zero) 12.05/4.72 new_primMinusNatS1 12.05/4.72 new_primMinusNatS2(Succ(x0), Zero) 12.05/4.72 12.05/4.72 We have to consider all minimal (P,Q,R)-chains. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (19) QDPOrderProof (EQUIVALENT) 12.05/4.72 We use the reduction pair processor [LPAR04,JAR06]. 12.05/4.72 12.05/4.72 12.05/4.72 The following pairs can be oriented strictly and are deleted. 12.05/4.72 12.05/4.72 new_primModNatS(Succ(Succ(xx30000)), Succ(xx31000)) -> new_primModNatS0(xx30000, xx31000, xx30000, xx31000) 12.05/4.72 The remaining pairs can at least be oriented weakly. 12.05/4.72 Used ordering: Polynomial interpretation [POLO]: 12.05/4.72 12.05/4.72 POL(Succ(x_1)) = 1 + x_1 12.05/4.72 POL(Zero) = 1 12.05/4.72 POL(new_primMinusNatS2(x_1, x_2)) = x_1 12.05/4.72 POL(new_primModNatS(x_1, x_2)) = x_1 12.05/4.72 POL(new_primModNatS0(x_1, x_2, x_3, x_4)) = 1 + x_1 12.05/4.72 POL(new_primModNatS00(x_1, x_2)) = 1 + x_1 12.05/4.72 12.05/4.72 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 12.05/4.72 12.05/4.72 new_primMinusNatS2(Succ(xx420), Succ(xx430)) -> new_primMinusNatS2(xx420, xx430) 12.05/4.72 new_primMinusNatS2(Succ(xx420), Zero) -> Succ(xx420) 12.05/4.72 new_primMinusNatS2(Zero, Zero) -> Zero 12.05/4.72 new_primMinusNatS2(Zero, Succ(xx430)) -> Zero 12.05/4.72 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (20) 12.05/4.72 Obligation: 12.05/4.72 Q DP problem: 12.05/4.72 The TRS P consists of the following rules: 12.05/4.72 12.05/4.72 new_primModNatS0(xx66, xx67, Succ(xx680), Zero) -> new_primModNatS(new_primMinusNatS2(Succ(xx66), Succ(xx67)), Succ(xx67)) 12.05/4.72 new_primModNatS0(xx66, xx67, Succ(xx680), Succ(xx690)) -> new_primModNatS0(xx66, xx67, xx680, xx690) 12.05/4.72 new_primModNatS0(xx66, xx67, Zero, Zero) -> new_primModNatS00(xx66, xx67) 12.05/4.72 new_primModNatS00(xx66, xx67) -> new_primModNatS(new_primMinusNatS2(Succ(xx66), Succ(xx67)), Succ(xx67)) 12.05/4.72 12.05/4.72 The TRS R consists of the following rules: 12.05/4.72 12.05/4.72 new_primMinusNatS1 -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Zero) -> Succ(xx420) 12.05/4.72 new_primMinusNatS2(Zero, Zero) -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Succ(xx430)) -> new_primMinusNatS2(xx420, xx430) 12.05/4.72 new_primMinusNatS2(Zero, Succ(xx430)) -> Zero 12.05/4.72 new_primMinusNatS0(xx30000) -> Succ(xx30000) 12.05/4.72 12.05/4.72 The set Q consists of the following terms: 12.05/4.72 12.05/4.72 new_primMinusNatS0(x0) 12.05/4.72 new_primMinusNatS2(Zero, Succ(x0)) 12.05/4.72 new_primMinusNatS2(Succ(x0), Succ(x1)) 12.05/4.72 new_primMinusNatS2(Zero, Zero) 12.05/4.72 new_primMinusNatS1 12.05/4.72 new_primMinusNatS2(Succ(x0), Zero) 12.05/4.72 12.05/4.72 We have to consider all minimal (P,Q,R)-chains. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (21) DependencyGraphProof (EQUIVALENT) 12.05/4.72 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 3 less nodes. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (22) 12.05/4.72 Obligation: 12.05/4.72 Q DP problem: 12.05/4.72 The TRS P consists of the following rules: 12.05/4.72 12.05/4.72 new_primModNatS0(xx66, xx67, Succ(xx680), Succ(xx690)) -> new_primModNatS0(xx66, xx67, xx680, xx690) 12.05/4.72 12.05/4.72 The TRS R consists of the following rules: 12.05/4.72 12.05/4.72 new_primMinusNatS1 -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Zero) -> Succ(xx420) 12.05/4.72 new_primMinusNatS2(Zero, Zero) -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Succ(xx430)) -> new_primMinusNatS2(xx420, xx430) 12.05/4.72 new_primMinusNatS2(Zero, Succ(xx430)) -> Zero 12.05/4.72 new_primMinusNatS0(xx30000) -> Succ(xx30000) 12.05/4.72 12.05/4.72 The set Q consists of the following terms: 12.05/4.72 12.05/4.72 new_primMinusNatS0(x0) 12.05/4.72 new_primMinusNatS2(Zero, Succ(x0)) 12.05/4.72 new_primMinusNatS2(Succ(x0), Succ(x1)) 12.05/4.72 new_primMinusNatS2(Zero, Zero) 12.05/4.72 new_primMinusNatS1 12.05/4.72 new_primMinusNatS2(Succ(x0), Zero) 12.05/4.72 12.05/4.72 We have to consider all minimal (P,Q,R)-chains. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (23) QDPSizeChangeProof (EQUIVALENT) 12.05/4.72 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.05/4.72 12.05/4.72 From the DPs we obtained the following set of size-change graphs: 12.05/4.72 *new_primModNatS0(xx66, xx67, Succ(xx680), Succ(xx690)) -> new_primModNatS0(xx66, xx67, xx680, xx690) 12.05/4.72 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 12.05/4.72 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (24) 12.05/4.72 YES 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (25) 12.05/4.72 Obligation: 12.05/4.72 Q DP problem: 12.05/4.72 The TRS P consists of the following rules: 12.05/4.72 12.05/4.72 new_primModNatS(Succ(Succ(xx30000)), Zero) -> new_primModNatS(new_primMinusNatS0(xx30000), Zero) 12.05/4.72 12.05/4.72 The TRS R consists of the following rules: 12.05/4.72 12.05/4.72 new_primMinusNatS1 -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Zero) -> Succ(xx420) 12.05/4.72 new_primMinusNatS2(Zero, Zero) -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Succ(xx430)) -> new_primMinusNatS2(xx420, xx430) 12.05/4.72 new_primMinusNatS2(Zero, Succ(xx430)) -> Zero 12.05/4.72 new_primMinusNatS0(xx30000) -> Succ(xx30000) 12.05/4.72 12.05/4.72 The set Q consists of the following terms: 12.05/4.72 12.05/4.72 new_primMinusNatS0(x0) 12.05/4.72 new_primMinusNatS2(Zero, Succ(x0)) 12.05/4.72 new_primMinusNatS2(Succ(x0), Succ(x1)) 12.05/4.72 new_primMinusNatS2(Zero, Zero) 12.05/4.72 new_primMinusNatS1 12.05/4.72 new_primMinusNatS2(Succ(x0), Zero) 12.05/4.72 12.05/4.72 We have to consider all minimal (P,Q,R)-chains. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (26) MRRProof (EQUIVALENT) 12.05/4.72 By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. 12.05/4.72 12.05/4.72 Strictly oriented dependency pairs: 12.05/4.72 12.05/4.72 new_primModNatS(Succ(Succ(xx30000)), Zero) -> new_primModNatS(new_primMinusNatS0(xx30000), Zero) 12.05/4.72 12.05/4.72 Strictly oriented rules of the TRS R: 12.05/4.72 12.05/4.72 new_primMinusNatS2(Succ(xx420), Zero) -> Succ(xx420) 12.05/4.72 new_primMinusNatS2(Zero, Zero) -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Succ(xx430)) -> new_primMinusNatS2(xx420, xx430) 12.05/4.72 new_primMinusNatS2(Zero, Succ(xx430)) -> Zero 12.05/4.72 12.05/4.72 Used ordering: Polynomial interpretation [POLO]: 12.05/4.72 12.05/4.72 POL(Succ(x_1)) = 1 + x_1 12.05/4.72 POL(Zero) = 2 12.05/4.72 POL(new_primMinusNatS0(x_1)) = 1 + x_1 12.05/4.72 POL(new_primMinusNatS1) = 2 12.05/4.72 POL(new_primMinusNatS2(x_1, x_2)) = 1 + 2*x_1 + 2*x_2 12.05/4.72 POL(new_primModNatS(x_1, x_2)) = x_1 + x_2 12.05/4.72 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (27) 12.05/4.72 Obligation: 12.05/4.72 Q DP problem: 12.05/4.72 P is empty. 12.05/4.72 The TRS R consists of the following rules: 12.05/4.72 12.05/4.72 new_primMinusNatS1 -> Zero 12.05/4.72 new_primMinusNatS0(xx30000) -> Succ(xx30000) 12.05/4.72 12.05/4.72 The set Q consists of the following terms: 12.05/4.72 12.05/4.72 new_primMinusNatS0(x0) 12.05/4.72 new_primMinusNatS2(Zero, Succ(x0)) 12.05/4.72 new_primMinusNatS2(Succ(x0), Succ(x1)) 12.05/4.72 new_primMinusNatS2(Zero, Zero) 12.05/4.72 new_primMinusNatS1 12.05/4.72 new_primMinusNatS2(Succ(x0), Zero) 12.05/4.72 12.05/4.72 We have to consider all minimal (P,Q,R)-chains. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (28) PisEmptyProof (EQUIVALENT) 12.05/4.72 The TRS P is empty. Hence, there is no (P,Q,R) chain. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (29) 12.05/4.72 YES 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (30) 12.05/4.72 Obligation: 12.05/4.72 Q DP problem: 12.05/4.72 The TRS P consists of the following rules: 12.05/4.72 12.05/4.72 new_primMulNat(Succ(xx4000), xx3100) -> new_primMulNat(xx4000, xx3100) 12.05/4.72 12.05/4.72 R is empty. 12.05/4.72 Q is empty. 12.05/4.72 We have to consider all minimal (P,Q,R)-chains. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (31) QDPSizeChangeProof (EQUIVALENT) 12.05/4.72 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.05/4.72 12.05/4.72 From the DPs we obtained the following set of size-change graphs: 12.05/4.72 *new_primMulNat(Succ(xx4000), xx3100) -> new_primMulNat(xx4000, xx3100) 12.05/4.72 The graph contains the following edges 1 > 1, 2 >= 2 12.05/4.72 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (32) 12.05/4.72 YES 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (33) 12.05/4.72 Obligation: 12.05/4.72 Q DP problem: 12.05/4.72 The TRS P consists of the following rules: 12.05/4.72 12.05/4.72 new_primDivNatS(Succ(Succ(xx30000)), Succ(xx31000)) -> new_primDivNatS0(xx30000, xx31000, xx30000, xx31000) 12.05/4.72 new_primDivNatS0(xx42, xx43, Zero, Zero) -> new_primDivNatS00(xx42, xx43) 12.05/4.72 new_primDivNatS(Succ(Succ(xx30000)), Zero) -> new_primDivNatS(new_primMinusNatS0(xx30000), Zero) 12.05/4.72 new_primDivNatS0(xx42, xx43, Succ(xx440), Succ(xx450)) -> new_primDivNatS0(xx42, xx43, xx440, xx450) 12.05/4.72 new_primDivNatS0(xx42, xx43, Succ(xx440), Zero) -> new_primDivNatS(new_primMinusNatS2(xx42, xx43), Succ(xx43)) 12.05/4.72 new_primDivNatS00(xx42, xx43) -> new_primDivNatS(new_primMinusNatS2(xx42, xx43), Succ(xx43)) 12.05/4.72 new_primDivNatS(Succ(Zero), Zero) -> new_primDivNatS(new_primMinusNatS1, Zero) 12.05/4.72 12.05/4.72 The TRS R consists of the following rules: 12.05/4.72 12.05/4.72 new_primMinusNatS1 -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Zero) -> Succ(xx420) 12.05/4.72 new_primMinusNatS2(Zero, Zero) -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Succ(xx430)) -> new_primMinusNatS2(xx420, xx430) 12.05/4.72 new_primMinusNatS2(Zero, Succ(xx430)) -> Zero 12.05/4.72 new_primMinusNatS0(xx30000) -> Succ(xx30000) 12.05/4.72 12.05/4.72 The set Q consists of the following terms: 12.05/4.72 12.05/4.72 new_primMinusNatS0(x0) 12.05/4.72 new_primMinusNatS2(Zero, Succ(x0)) 12.05/4.72 new_primMinusNatS2(Succ(x0), Succ(x1)) 12.05/4.72 new_primMinusNatS2(Zero, Zero) 12.05/4.72 new_primMinusNatS1 12.05/4.72 new_primMinusNatS2(Succ(x0), Zero) 12.05/4.72 12.05/4.72 We have to consider all minimal (P,Q,R)-chains. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (34) DependencyGraphProof (EQUIVALENT) 12.05/4.72 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 1 less node. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (35) 12.05/4.72 Complex Obligation (AND) 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (36) 12.05/4.72 Obligation: 12.05/4.72 Q DP problem: 12.05/4.72 The TRS P consists of the following rules: 12.05/4.72 12.05/4.72 new_primDivNatS(Succ(Succ(xx30000)), Zero) -> new_primDivNatS(new_primMinusNatS0(xx30000), Zero) 12.05/4.72 12.05/4.72 The TRS R consists of the following rules: 12.05/4.72 12.05/4.72 new_primMinusNatS1 -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Zero) -> Succ(xx420) 12.05/4.72 new_primMinusNatS2(Zero, Zero) -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Succ(xx430)) -> new_primMinusNatS2(xx420, xx430) 12.05/4.72 new_primMinusNatS2(Zero, Succ(xx430)) -> Zero 12.05/4.72 new_primMinusNatS0(xx30000) -> Succ(xx30000) 12.05/4.72 12.05/4.72 The set Q consists of the following terms: 12.05/4.72 12.05/4.72 new_primMinusNatS0(x0) 12.05/4.72 new_primMinusNatS2(Zero, Succ(x0)) 12.05/4.72 new_primMinusNatS2(Succ(x0), Succ(x1)) 12.05/4.72 new_primMinusNatS2(Zero, Zero) 12.05/4.72 new_primMinusNatS1 12.05/4.72 new_primMinusNatS2(Succ(x0), Zero) 12.05/4.72 12.05/4.72 We have to consider all minimal (P,Q,R)-chains. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (37) MRRProof (EQUIVALENT) 12.05/4.72 By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. 12.05/4.72 12.05/4.72 Strictly oriented dependency pairs: 12.05/4.72 12.05/4.72 new_primDivNatS(Succ(Succ(xx30000)), Zero) -> new_primDivNatS(new_primMinusNatS0(xx30000), Zero) 12.05/4.72 12.05/4.72 Strictly oriented rules of the TRS R: 12.05/4.72 12.05/4.72 new_primMinusNatS2(Succ(xx420), Zero) -> Succ(xx420) 12.05/4.72 new_primMinusNatS2(Zero, Zero) -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Succ(xx430)) -> new_primMinusNatS2(xx420, xx430) 12.05/4.72 new_primMinusNatS2(Zero, Succ(xx430)) -> Zero 12.05/4.72 12.05/4.72 Used ordering: Polynomial interpretation [POLO]: 12.05/4.72 12.05/4.72 POL(Succ(x_1)) = 1 + x_1 12.05/4.72 POL(Zero) = 2 12.05/4.72 POL(new_primDivNatS(x_1, x_2)) = x_1 + x_2 12.05/4.72 POL(new_primMinusNatS0(x_1)) = 1 + x_1 12.05/4.72 POL(new_primMinusNatS1) = 2 12.05/4.72 POL(new_primMinusNatS2(x_1, x_2)) = 1 + 2*x_1 + 2*x_2 12.05/4.72 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (38) 12.05/4.72 Obligation: 12.05/4.72 Q DP problem: 12.05/4.72 P is empty. 12.05/4.72 The TRS R consists of the following rules: 12.05/4.72 12.05/4.72 new_primMinusNatS1 -> Zero 12.05/4.72 new_primMinusNatS0(xx30000) -> Succ(xx30000) 12.05/4.72 12.05/4.72 The set Q consists of the following terms: 12.05/4.72 12.05/4.72 new_primMinusNatS0(x0) 12.05/4.72 new_primMinusNatS2(Zero, Succ(x0)) 12.05/4.72 new_primMinusNatS2(Succ(x0), Succ(x1)) 12.05/4.72 new_primMinusNatS2(Zero, Zero) 12.05/4.72 new_primMinusNatS1 12.05/4.72 new_primMinusNatS2(Succ(x0), Zero) 12.05/4.72 12.05/4.72 We have to consider all minimal (P,Q,R)-chains. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (39) PisEmptyProof (EQUIVALENT) 12.05/4.72 The TRS P is empty. Hence, there is no (P,Q,R) chain. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (40) 12.05/4.72 YES 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (41) 12.05/4.72 Obligation: 12.05/4.72 Q DP problem: 12.05/4.72 The TRS P consists of the following rules: 12.05/4.72 12.05/4.72 new_primDivNatS0(xx42, xx43, Zero, Zero) -> new_primDivNatS00(xx42, xx43) 12.05/4.72 new_primDivNatS00(xx42, xx43) -> new_primDivNatS(new_primMinusNatS2(xx42, xx43), Succ(xx43)) 12.05/4.72 new_primDivNatS(Succ(Succ(xx30000)), Succ(xx31000)) -> new_primDivNatS0(xx30000, xx31000, xx30000, xx31000) 12.05/4.72 new_primDivNatS0(xx42, xx43, Succ(xx440), Succ(xx450)) -> new_primDivNatS0(xx42, xx43, xx440, xx450) 12.05/4.72 new_primDivNatS0(xx42, xx43, Succ(xx440), Zero) -> new_primDivNatS(new_primMinusNatS2(xx42, xx43), Succ(xx43)) 12.05/4.72 12.05/4.72 The TRS R consists of the following rules: 12.05/4.72 12.05/4.72 new_primMinusNatS1 -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Zero) -> Succ(xx420) 12.05/4.72 new_primMinusNatS2(Zero, Zero) -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Succ(xx430)) -> new_primMinusNatS2(xx420, xx430) 12.05/4.72 new_primMinusNatS2(Zero, Succ(xx430)) -> Zero 12.05/4.72 new_primMinusNatS0(xx30000) -> Succ(xx30000) 12.05/4.72 12.05/4.72 The set Q consists of the following terms: 12.05/4.72 12.05/4.72 new_primMinusNatS0(x0) 12.05/4.72 new_primMinusNatS2(Zero, Succ(x0)) 12.05/4.72 new_primMinusNatS2(Succ(x0), Succ(x1)) 12.05/4.72 new_primMinusNatS2(Zero, Zero) 12.05/4.72 new_primMinusNatS1 12.05/4.72 new_primMinusNatS2(Succ(x0), Zero) 12.05/4.72 12.05/4.72 We have to consider all minimal (P,Q,R)-chains. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (42) QDPSizeChangeProof (EQUIVALENT) 12.05/4.72 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 12.05/4.72 12.05/4.72 Order:Polynomial interpretation [POLO]: 12.05/4.72 12.05/4.72 POL(Succ(x_1)) = 1 + x_1 12.05/4.72 POL(Zero) = 1 12.05/4.72 POL(new_primMinusNatS2(x_1, x_2)) = x_1 12.05/4.72 12.05/4.72 12.05/4.72 12.05/4.72 12.05/4.72 From the DPs we obtained the following set of size-change graphs: 12.05/4.72 *new_primDivNatS00(xx42, xx43) -> new_primDivNatS(new_primMinusNatS2(xx42, xx43), Succ(xx43)) (allowed arguments on rhs = {1, 2}) 12.05/4.72 The graph contains the following edges 1 >= 1 12.05/4.72 12.05/4.72 12.05/4.72 *new_primDivNatS(Succ(Succ(xx30000)), Succ(xx31000)) -> new_primDivNatS0(xx30000, xx31000, xx30000, xx31000) (allowed arguments on rhs = {1, 2, 3, 4}) 12.05/4.72 The graph contains the following edges 1 > 1, 2 > 2, 1 > 3, 2 > 4 12.05/4.72 12.05/4.72 12.05/4.72 *new_primDivNatS0(xx42, xx43, Succ(xx440), Succ(xx450)) -> new_primDivNatS0(xx42, xx43, xx440, xx450) (allowed arguments on rhs = {1, 2, 3, 4}) 12.05/4.72 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 12.05/4.72 12.05/4.72 12.05/4.72 *new_primDivNatS0(xx42, xx43, Zero, Zero) -> new_primDivNatS00(xx42, xx43) (allowed arguments on rhs = {1, 2}) 12.05/4.72 The graph contains the following edges 1 >= 1, 2 >= 2 12.05/4.72 12.05/4.72 12.05/4.72 *new_primDivNatS0(xx42, xx43, Succ(xx440), Zero) -> new_primDivNatS(new_primMinusNatS2(xx42, xx43), Succ(xx43)) (allowed arguments on rhs = {1, 2}) 12.05/4.72 The graph contains the following edges 1 >= 1 12.05/4.72 12.05/4.72 12.05/4.72 12.05/4.72 We oriented the following set of usable rules [AAECC05,FROCOS05]. 12.05/4.72 12.05/4.72 new_primMinusNatS2(Zero, Zero) -> Zero 12.05/4.72 new_primMinusNatS2(Zero, Succ(xx430)) -> Zero 12.05/4.72 new_primMinusNatS2(Succ(xx420), Zero) -> Succ(xx420) 12.05/4.72 new_primMinusNatS2(Succ(xx420), Succ(xx430)) -> new_primMinusNatS2(xx420, xx430) 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (43) 12.05/4.72 YES 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (44) 12.05/4.72 Obligation: 12.05/4.72 Q DP problem: 12.05/4.72 The TRS P consists of the following rules: 12.05/4.72 12.05/4.72 new_primMinusNatS(Succ(xx420), Succ(xx430)) -> new_primMinusNatS(xx420, xx430) 12.05/4.72 12.05/4.72 R is empty. 12.05/4.72 Q is empty. 12.05/4.72 We have to consider all minimal (P,Q,R)-chains. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (45) QDPSizeChangeProof (EQUIVALENT) 12.05/4.72 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.05/4.72 12.05/4.72 From the DPs we obtained the following set of size-change graphs: 12.05/4.72 *new_primMinusNatS(Succ(xx420), Succ(xx430)) -> new_primMinusNatS(xx420, xx430) 12.05/4.72 The graph contains the following edges 1 > 1, 2 > 2 12.05/4.72 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (46) 12.05/4.72 YES 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (47) 12.05/4.72 Obligation: 12.05/4.72 Q DP problem: 12.05/4.72 The TRS P consists of the following rules: 12.05/4.72 12.05/4.72 new_primPlusNat(Succ(xx2200), Succ(xx31000)) -> new_primPlusNat(xx2200, xx31000) 12.05/4.72 12.05/4.72 R is empty. 12.05/4.72 Q is empty. 12.05/4.72 We have to consider all minimal (P,Q,R)-chains. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (48) QDPSizeChangeProof (EQUIVALENT) 12.05/4.72 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.05/4.72 12.05/4.72 From the DPs we obtained the following set of size-change graphs: 12.05/4.72 *new_primPlusNat(Succ(xx2200), Succ(xx31000)) -> new_primPlusNat(xx2200, xx31000) 12.05/4.72 The graph contains the following edges 1 > 1, 2 > 2 12.05/4.72 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (49) 12.05/4.72 YES 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (50) 12.05/4.72 Obligation: 12.05/4.72 Q DP problem: 12.05/4.72 The TRS P consists of the following rules: 12.05/4.72 12.05/4.72 new_primMinusNat(Succ(xx31000), Succ(xx17000)) -> new_primMinusNat(xx31000, xx17000) 12.05/4.72 12.05/4.72 R is empty. 12.05/4.72 Q is empty. 12.05/4.72 We have to consider all minimal (P,Q,R)-chains. 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (51) QDPSizeChangeProof (EQUIVALENT) 12.05/4.72 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.05/4.72 12.05/4.72 From the DPs we obtained the following set of size-change graphs: 12.05/4.72 *new_primMinusNat(Succ(xx31000), Succ(xx17000)) -> new_primMinusNat(xx31000, xx17000) 12.05/4.72 The graph contains the following edges 1 > 1, 2 > 2 12.05/4.72 12.05/4.72 12.05/4.72 ---------------------------------------- 12.05/4.72 12.05/4.72 (52) 12.05/4.72 YES 12.08/4.75 EOF