70.27/39.56 MAYBE 72.57/40.26 proof of /export/starexec/sandbox/benchmark/theBenchmark.hs 72.57/40.26 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 72.57/40.26 72.57/40.26 72.57/40.26 H-Termination with start terms of the given HASKELL could not be shown: 72.57/40.26 72.57/40.26 (0) HASKELL 72.57/40.26 (1) BR [EQUIVALENT, 0 ms] 72.57/40.26 (2) HASKELL 72.57/40.26 (3) COR [EQUIVALENT, 0 ms] 72.57/40.26 (4) HASKELL 72.57/40.26 (5) Narrow [SOUND, 0 ms] 72.57/40.26 (6) AND 72.57/40.26 (7) QDP 72.57/40.26 (8) QDPOrderProof [EQUIVALENT, 0 ms] 72.57/40.26 (9) QDP 72.57/40.26 (10) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (11) QDP 72.57/40.26 (12) QDPSizeChangeProof [EQUIVALENT, 0 ms] 72.57/40.26 (13) YES 72.57/40.26 (14) QDP 72.57/40.26 (15) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (16) AND 72.57/40.26 (17) QDP 72.57/40.26 (18) QDPSizeChangeProof [EQUIVALENT, 0 ms] 72.57/40.26 (19) YES 72.57/40.26 (20) QDP 72.57/40.26 (21) QDPSizeChangeProof [EQUIVALENT, 0 ms] 72.57/40.26 (22) YES 72.57/40.26 (23) QDP 72.57/40.26 (24) QDPSizeChangeProof [EQUIVALENT, 0 ms] 72.57/40.26 (25) YES 72.57/40.26 (26) QDP 72.57/40.26 (27) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (28) QDP 72.57/40.26 (29) QDPOrderProof [EQUIVALENT, 0 ms] 72.57/40.26 (30) QDP 72.57/40.26 (31) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (32) QDP 72.57/40.26 (33) QDPSizeChangeProof [EQUIVALENT, 0 ms] 72.57/40.26 (34) YES 72.57/40.26 (35) QDP 72.57/40.26 (36) QDPSizeChangeProof [EQUIVALENT, 0 ms] 72.57/40.26 (37) YES 72.57/40.26 (38) QDP 72.57/40.26 (39) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (40) QDP 72.57/40.26 (41) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (42) QDP 72.57/40.26 (43) UsableRulesProof [EQUIVALENT, 0 ms] 72.57/40.26 (44) QDP 72.57/40.26 (45) QReductionProof [EQUIVALENT, 0 ms] 72.57/40.26 (46) QDP 72.57/40.26 (47) TransformationProof [EQUIVALENT, 109 ms] 72.57/40.26 (48) QDP 72.57/40.26 (49) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (50) QDP 72.57/40.26 (51) UsableRulesProof [EQUIVALENT, 0 ms] 72.57/40.26 (52) QDP 72.57/40.26 (53) QReductionProof [EQUIVALENT, 0 ms] 72.57/40.26 (54) QDP 72.57/40.26 (55) TransformationProof [EQUIVALENT, 62 ms] 72.57/40.26 (56) QDP 72.57/40.26 (57) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (58) QDP 72.57/40.26 (59) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (60) QDP 72.57/40.26 (61) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (62) QDP 72.57/40.26 (63) UsableRulesProof [EQUIVALENT, 0 ms] 72.57/40.26 (64) QDP 72.57/40.26 (65) QReductionProof [EQUIVALENT, 0 ms] 72.57/40.26 (66) QDP 72.57/40.26 (67) TransformationProof [EQUIVALENT, 5 ms] 72.57/40.26 (68) QDP 72.57/40.26 (69) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (70) QDP 72.57/40.26 (71) UsableRulesProof [EQUIVALENT, 0 ms] 72.57/40.26 (72) QDP 72.57/40.26 (73) QReductionProof [EQUIVALENT, 0 ms] 72.57/40.26 (74) QDP 72.57/40.26 (75) TransformationProof [EQUIVALENT, 2 ms] 72.57/40.26 (76) QDP 72.57/40.26 (77) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (78) QDP 72.57/40.26 (79) UsableRulesProof [EQUIVALENT, 0 ms] 72.57/40.26 (80) QDP 72.57/40.26 (81) QReductionProof [EQUIVALENT, 0 ms] 72.57/40.26 (82) QDP 72.57/40.26 (83) TransformationProof [EQUIVALENT, 15 ms] 72.57/40.26 (84) QDP 72.57/40.26 (85) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (86) QDP 72.57/40.26 (87) UsableRulesProof [EQUIVALENT, 0 ms] 72.57/40.26 (88) QDP 72.57/40.26 (89) QReductionProof [EQUIVALENT, 0 ms] 72.57/40.26 (90) QDP 72.57/40.26 (91) InductionCalculusProof [EQUIVALENT, 0 ms] 72.57/40.26 (92) QDP 72.57/40.26 (93) QDPPairToRuleProof [EQUIVALENT, 0 ms] 72.57/40.26 (94) AND 72.57/40.26 (95) QDP 72.57/40.26 (96) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (97) QDP 72.57/40.26 (98) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (99) QDP 72.57/40.26 (100) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (101) QDP 72.57/40.26 (102) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (103) QDP 72.57/40.26 (104) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (105) QDP 72.57/40.26 (106) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (107) QDP 72.57/40.26 (108) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (109) QDP 72.57/40.26 (110) UsableRulesProof [EQUIVALENT, 0 ms] 72.57/40.26 (111) QDP 72.57/40.26 (112) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (113) QDP 72.57/40.26 (114) InductionCalculusProof [EQUIVALENT, 0 ms] 72.57/40.26 (115) QDP 72.57/40.26 (116) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (117) QDP 72.57/40.26 (118) UsableRulesProof [EQUIVALENT, 0 ms] 72.57/40.26 (119) QDP 72.57/40.26 (120) QReductionProof [EQUIVALENT, 0 ms] 72.57/40.26 (121) QDP 72.57/40.26 (122) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (123) QDP 72.57/40.26 (124) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (125) QDP 72.57/40.26 (126) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (127) QDP 72.57/40.26 (128) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (129) QDP 72.57/40.26 (130) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (131) QDP 72.57/40.26 (132) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (133) QDP 72.57/40.26 (134) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (135) QDP 72.57/40.26 (136) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (137) QDP 72.57/40.26 (138) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (139) QDP 72.57/40.26 (140) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (141) QDP 72.57/40.26 (142) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (143) QDP 72.57/40.26 (144) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (145) QDP 72.57/40.26 (146) UsableRulesProof [EQUIVALENT, 0 ms] 72.57/40.26 (147) QDP 72.57/40.26 (148) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (149) QDP 72.57/40.26 (150) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (151) QDP 72.57/40.26 (152) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (153) QDP 72.57/40.26 (154) UsableRulesProof [EQUIVALENT, 0 ms] 72.57/40.26 (155) QDP 72.57/40.26 (156) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (157) QDP 72.57/40.26 (158) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (159) QDP 72.57/40.26 (160) UsableRulesProof [EQUIVALENT, 0 ms] 72.57/40.26 (161) QDP 72.57/40.26 (162) TransformationProof [EQUIVALENT, 0 ms] 72.57/40.26 (163) QDP 72.57/40.26 (164) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (165) QDP 72.57/40.26 (166) UsableRulesProof [EQUIVALENT, 0 ms] 72.57/40.26 (167) QDP 72.57/40.26 (168) InductionCalculusProof [EQUIVALENT, 0 ms] 72.57/40.26 (169) QDP 72.57/40.26 (170) QDP 72.57/40.26 (171) QDPSizeChangeProof [EQUIVALENT, 0 ms] 72.57/40.26 (172) YES 72.57/40.26 (173) Narrow [COMPLETE, 0 ms] 72.57/40.26 (174) QDP 72.57/40.26 (175) DependencyGraphProof [EQUIVALENT, 0 ms] 72.57/40.26 (176) QDP 72.57/40.26 72.57/40.26 72.57/40.26 ---------------------------------------- 72.57/40.26 72.57/40.26 (0) 72.57/40.26 Obligation: 72.57/40.26 mainModule Main 72.57/40.26 module Main where { 72.57/40.26 import qualified Prelude; 72.57/40.26 data Main.Char = Char MyInt ; 72.57/40.26 72.57/40.26 data List a = Cons a (List a) | Nil ; 72.57/40.26 72.57/40.26 data MyBool = MyTrue | MyFalse ; 72.57/40.26 72.57/40.26 data MyInt = Pos Main.Nat | Neg Main.Nat ; 72.57/40.26 72.57/40.26 data Main.Nat = Succ Main.Nat | Zero ; 72.57/40.26 72.57/40.26 data Ordering = LT | EQ | GT ; 72.57/40.26 72.57/40.26 data Tup2 b a = Tup2 b a ; 72.57/40.26 72.57/40.26 compareMyInt :: MyInt -> MyInt -> Ordering; 72.57/40.26 compareMyInt = primCmpInt; 72.57/40.26 72.57/40.26 error :: a; 72.57/40.26 error = stop MyTrue; 72.57/40.26 72.57/40.26 esEsMyInt :: MyInt -> MyInt -> MyBool; 72.57/40.26 esEsMyInt = primEqInt; 72.57/40.26 72.57/40.26 esEsOrdering :: Ordering -> Ordering -> MyBool; 72.57/40.26 esEsOrdering LT LT = MyTrue; 72.57/40.26 esEsOrdering LT EQ = MyFalse; 72.57/40.26 esEsOrdering LT GT = MyFalse; 72.57/40.26 esEsOrdering EQ LT = MyFalse; 72.57/40.26 esEsOrdering EQ EQ = MyTrue; 72.57/40.26 esEsOrdering EQ GT = MyFalse; 72.57/40.26 esEsOrdering GT LT = MyFalse; 72.57/40.26 esEsOrdering GT EQ = MyFalse; 72.57/40.26 esEsOrdering GT GT = MyTrue; 72.57/40.26 72.57/40.26 fromEnumChar :: Main.Char -> MyInt; 72.57/40.26 fromEnumChar = primCharToInt; 72.57/40.26 72.57/40.26 fromIntMyInt :: MyInt -> MyInt; 72.57/40.26 fromIntMyInt x = x; 72.57/40.26 72.57/40.26 ltMyInt :: MyInt -> MyInt -> MyBool; 72.57/40.26 ltMyInt x y = esEsOrdering (compareMyInt x y) LT; 72.57/40.26 72.57/40.26 otherwise :: MyBool; 72.57/40.26 otherwise = MyTrue; 72.57/40.26 72.57/40.26 primCharToInt :: Main.Char -> MyInt; 72.57/40.26 primCharToInt (Main.Char x) = x; 72.57/40.26 72.57/40.26 primCmpInt :: MyInt -> MyInt -> Ordering; 72.57/40.26 primCmpInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = EQ; 72.57/40.26 primCmpInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = EQ; 72.57/40.26 primCmpInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = EQ; 72.57/40.26 primCmpInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = EQ; 72.57/40.26 primCmpInt (Main.Pos x) (Main.Pos y) = primCmpNat x y; 72.57/40.26 primCmpInt (Main.Pos x) (Main.Neg y) = GT; 72.57/40.26 primCmpInt (Main.Neg x) (Main.Pos y) = LT; 72.57/40.26 primCmpInt (Main.Neg x) (Main.Neg y) = primCmpNat y x; 72.57/40.26 72.57/40.26 primCmpNat :: Main.Nat -> Main.Nat -> Ordering; 72.57/40.26 primCmpNat Main.Zero Main.Zero = EQ; 72.57/40.26 primCmpNat Main.Zero (Main.Succ y) = LT; 72.57/40.26 primCmpNat (Main.Succ x) Main.Zero = GT; 72.57/40.26 primCmpNat (Main.Succ x) (Main.Succ y) = primCmpNat x y; 72.57/40.26 72.57/40.26 primDivNatS :: Main.Nat -> Main.Nat -> Main.Nat; 72.57/40.26 primDivNatS Main.Zero Main.Zero = Main.error; 72.57/40.26 primDivNatS (Main.Succ x) Main.Zero = Main.error; 72.57/40.26 primDivNatS (Main.Succ x) (Main.Succ y) = primDivNatS0 x y (primGEqNatS x y); 72.57/40.26 primDivNatS Main.Zero (Main.Succ x) = Main.Zero; 72.57/40.26 72.57/40.26 primDivNatS0 x y MyTrue = Main.Succ (primDivNatS (primMinusNatS x y) (Main.Succ y)); 72.57/40.26 primDivNatS0 x y MyFalse = Main.Zero; 72.57/40.26 72.57/40.26 primEqInt :: MyInt -> MyInt -> MyBool; 72.57/40.26 primEqInt (Main.Pos (Main.Succ x)) (Main.Pos (Main.Succ y)) = primEqNat x y; 72.57/40.26 primEqInt (Main.Neg (Main.Succ x)) (Main.Neg (Main.Succ y)) = primEqNat x y; 72.57/40.26 primEqInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = MyTrue; 72.57/40.26 primEqInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = MyTrue; 72.57/40.26 primEqInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = MyTrue; 72.57/40.26 primEqInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = MyTrue; 72.57/40.26 primEqInt wv ww = MyFalse; 72.57/40.26 72.57/40.26 primEqNat :: Main.Nat -> Main.Nat -> MyBool; 72.57/40.26 primEqNat Main.Zero Main.Zero = MyTrue; 72.57/40.26 primEqNat Main.Zero (Main.Succ y) = MyFalse; 72.57/40.26 primEqNat (Main.Succ x) Main.Zero = MyFalse; 72.57/40.26 primEqNat (Main.Succ x) (Main.Succ y) = primEqNat x y; 72.57/40.26 72.57/40.26 primGEqNatS :: Main.Nat -> Main.Nat -> MyBool; 72.57/40.26 primGEqNatS (Main.Succ x) Main.Zero = MyTrue; 72.57/40.26 primGEqNatS (Main.Succ x) (Main.Succ y) = primGEqNatS x y; 72.57/40.26 primGEqNatS Main.Zero (Main.Succ x) = MyFalse; 72.57/40.26 primGEqNatS Main.Zero Main.Zero = MyTrue; 72.57/40.26 72.57/40.26 primIntToChar :: MyInt -> Main.Char; 72.57/40.26 primIntToChar x = Main.Char x; 72.57/40.26 72.57/40.26 primMinusNat :: Main.Nat -> Main.Nat -> MyInt; 72.57/40.26 primMinusNat Main.Zero Main.Zero = Main.Pos Main.Zero; 72.57/40.26 primMinusNat Main.Zero (Main.Succ y) = Main.Neg (Main.Succ y); 72.57/40.26 primMinusNat (Main.Succ x) Main.Zero = Main.Pos (Main.Succ x); 72.57/40.26 primMinusNat (Main.Succ x) (Main.Succ y) = primMinusNat x y; 72.57/40.26 72.57/40.26 primMinusNatS :: Main.Nat -> Main.Nat -> Main.Nat; 72.57/40.26 primMinusNatS (Main.Succ x) (Main.Succ y) = primMinusNatS x y; 72.57/40.26 primMinusNatS Main.Zero (Main.Succ y) = Main.Zero; 72.57/40.26 primMinusNatS x Main.Zero = x; 72.57/40.26 72.57/40.26 primModNatS :: Main.Nat -> Main.Nat -> Main.Nat; 72.57/40.26 primModNatS Main.Zero Main.Zero = Main.error; 72.57/40.26 primModNatS Main.Zero (Main.Succ x) = Main.Zero; 72.57/40.26 primModNatS (Main.Succ x) Main.Zero = Main.error; 72.57/40.26 primModNatS (Main.Succ x) (Main.Succ Main.Zero) = Main.Zero; 72.57/40.26 primModNatS (Main.Succ x) (Main.Succ (Main.Succ y)) = primModNatS0 x y (primGEqNatS x (Main.Succ y)); 72.57/40.26 72.57/40.26 primModNatS0 x y MyTrue = primModNatS (primMinusNatS x (Main.Succ y)) (Main.Succ (Main.Succ y)); 72.57/40.26 primModNatS0 x y MyFalse = Main.Succ x; 72.57/40.26 72.57/40.26 primPlusInt :: MyInt -> MyInt -> MyInt; 72.57/40.26 primPlusInt (Main.Pos x) (Main.Neg y) = primMinusNat x y; 72.57/40.26 primPlusInt (Main.Neg x) (Main.Pos y) = primMinusNat y x; 72.57/40.26 primPlusInt (Main.Neg x) (Main.Neg y) = Main.Neg (primPlusNat x y); 72.57/40.26 primPlusInt (Main.Pos x) (Main.Pos y) = Main.Pos (primPlusNat x y); 72.57/40.26 72.57/40.26 primPlusNat :: Main.Nat -> Main.Nat -> Main.Nat; 72.57/40.26 primPlusNat Main.Zero Main.Zero = Main.Zero; 72.57/40.26 primPlusNat Main.Zero (Main.Succ y) = Main.Succ y; 72.57/40.26 primPlusNat (Main.Succ x) Main.Zero = Main.Succ x; 72.57/40.26 primPlusNat (Main.Succ x) (Main.Succ y) = Main.Succ (Main.Succ (primPlusNat x y)); 72.57/40.26 72.57/40.26 primQrmInt :: MyInt -> MyInt -> Tup2 MyInt MyInt; 72.57/40.26 primQrmInt x y = Tup2 (primQuotInt x y) (primRemInt x y); 72.57/40.26 72.57/40.26 primQuotInt :: MyInt -> MyInt -> MyInt; 72.57/40.26 primQuotInt (Main.Pos x) (Main.Pos (Main.Succ y)) = Main.Pos (primDivNatS x (Main.Succ y)); 72.57/40.26 primQuotInt (Main.Pos x) (Main.Neg (Main.Succ y)) = Main.Neg (primDivNatS x (Main.Succ y)); 72.57/40.26 primQuotInt (Main.Neg x) (Main.Pos (Main.Succ y)) = Main.Neg (primDivNatS x (Main.Succ y)); 72.57/40.26 primQuotInt (Main.Neg x) (Main.Neg (Main.Succ y)) = Main.Pos (primDivNatS x (Main.Succ y)); 72.57/40.26 primQuotInt vx vy = Main.error; 72.57/40.26 72.57/40.26 primRemInt :: MyInt -> MyInt -> MyInt; 72.57/40.26 primRemInt (Main.Pos x) (Main.Pos (Main.Succ y)) = Main.Pos (primModNatS x (Main.Succ y)); 72.57/40.26 primRemInt (Main.Pos x) (Main.Neg (Main.Succ y)) = Main.Pos (primModNatS x (Main.Succ y)); 72.57/40.26 primRemInt (Main.Neg x) (Main.Pos (Main.Succ y)) = Main.Neg (primModNatS x (Main.Succ y)); 72.57/40.26 primRemInt (Main.Neg x) (Main.Neg (Main.Succ y)) = Main.Neg (primModNatS x (Main.Succ y)); 72.57/40.26 primRemInt vv vw = Main.error; 72.57/40.26 72.57/40.26 psMyInt :: MyInt -> MyInt -> MyInt; 72.57/40.26 psMyInt = primPlusInt; 72.57/40.26 72.57/40.26 quotRemMyInt :: MyInt -> MyInt -> Tup2 MyInt MyInt; 72.57/40.26 quotRemMyInt = primQrmInt; 72.57/40.26 72.57/40.26 showInt n r = showInt3 n r; 72.57/40.26 72.57/40.26 showInt1 n r MyTrue = showInt1ShowInt0 r n (esEsMyInt (showInt1N' r n) (fromIntMyInt (Main.Pos Main.Zero))); 72.57/40.26 72.57/40.26 showInt1D wx wy = showInt1D0 wx wy (showInt1Vu76 wx wy); 72.57/40.26 72.57/40.26 showInt1D0 wx wy (Tup2 wu d) = d; 72.57/40.26 72.57/40.26 showInt1N' wx wy = showInt1N'0 wx wy (showInt1Vu76 wx wy); 72.57/40.26 72.57/40.26 showInt1N'0 wx wy (Tup2 n' vz) = n'; 72.57/40.26 72.57/40.26 showInt1R' wx wy = Cons (toEnumChar (psMyInt (fromEnumChar (Main.Char (Main.Pos (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D wx wy)))) wx; 72.57/40.26 72.57/40.26 showInt1ShowInt0 wx wy MyTrue = showInt1R' wx wy; 72.57/40.26 showInt1ShowInt0 wx wy MyFalse = showInt (showInt1N' wx wy) (showInt1R' wx wy); 72.57/40.26 72.57/40.26 showInt1Vu76 wx wy = quotRemMyInt wy (fromIntMyInt (Main.Pos (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ Main.Zero)))))))))))); 72.57/40.26 72.57/40.26 showInt2 n r MyTrue = Main.error; 72.57/40.26 showInt2 n r MyFalse = showInt1 n r otherwise; 72.57/40.26 72.57/40.26 showInt3 n r = showInt2 n r (ltMyInt n (fromIntMyInt (Main.Pos Main.Zero))); 72.57/40.26 72.57/40.26 stop :: MyBool -> a; 72.57/40.26 stop MyFalse = stop MyFalse; 72.57/40.26 72.57/40.26 toEnumChar :: MyInt -> Main.Char; 72.57/40.26 toEnumChar = primIntToChar; 72.57/40.26 72.57/40.26 } 72.57/40.26 72.57/40.26 ---------------------------------------- 72.57/40.26 72.57/40.26 (1) BR (EQUIVALENT) 72.57/40.26 Replaced joker patterns by fresh variables and removed binding patterns. 72.57/40.26 ---------------------------------------- 72.57/40.26 72.57/40.26 (2) 72.57/40.26 Obligation: 72.57/40.26 mainModule Main 72.57/40.26 module Main where { 72.57/40.26 import qualified Prelude; 72.57/40.26 data Main.Char = Char MyInt ; 72.57/40.26 72.57/40.26 data List a = Cons a (List a) | Nil ; 72.57/40.26 72.57/40.26 data MyBool = MyTrue | MyFalse ; 72.57/40.26 72.57/40.26 data MyInt = Pos Main.Nat | Neg Main.Nat ; 72.57/40.26 72.57/40.26 data Main.Nat = Succ Main.Nat | Zero ; 72.57/40.26 72.57/40.26 data Ordering = LT | EQ | GT ; 72.57/40.26 72.57/40.26 data Tup2 b a = Tup2 b a ; 72.57/40.26 72.57/40.26 compareMyInt :: MyInt -> MyInt -> Ordering; 72.57/40.26 compareMyInt = primCmpInt; 72.57/40.26 72.57/40.26 error :: a; 72.57/40.26 error = stop MyTrue; 72.57/40.26 72.57/40.26 esEsMyInt :: MyInt -> MyInt -> MyBool; 72.57/40.26 esEsMyInt = primEqInt; 72.57/40.26 72.57/40.26 esEsOrdering :: Ordering -> Ordering -> MyBool; 72.57/40.26 esEsOrdering LT LT = MyTrue; 72.57/40.26 esEsOrdering LT EQ = MyFalse; 72.57/40.26 esEsOrdering LT GT = MyFalse; 72.57/40.26 esEsOrdering EQ LT = MyFalse; 72.57/40.26 esEsOrdering EQ EQ = MyTrue; 72.57/40.26 esEsOrdering EQ GT = MyFalse; 72.57/40.26 esEsOrdering GT LT = MyFalse; 72.57/40.26 esEsOrdering GT EQ = MyFalse; 72.57/40.26 esEsOrdering GT GT = MyTrue; 72.57/40.26 72.57/40.26 fromEnumChar :: Main.Char -> MyInt; 72.57/40.26 fromEnumChar = primCharToInt; 72.57/40.26 72.57/40.26 fromIntMyInt :: MyInt -> MyInt; 72.57/40.26 fromIntMyInt x = x; 72.57/40.26 72.57/40.26 ltMyInt :: MyInt -> MyInt -> MyBool; 72.57/40.26 ltMyInt x y = esEsOrdering (compareMyInt x y) LT; 72.57/40.26 72.57/40.26 otherwise :: MyBool; 72.57/40.26 otherwise = MyTrue; 72.57/40.26 72.57/40.26 primCharToInt :: Main.Char -> MyInt; 72.57/40.26 primCharToInt (Main.Char x) = x; 72.57/40.26 72.57/40.26 primCmpInt :: MyInt -> MyInt -> Ordering; 72.57/40.26 primCmpInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = EQ; 72.57/40.26 primCmpInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = EQ; 72.57/40.26 primCmpInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = EQ; 72.57/40.26 primCmpInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = EQ; 72.57/40.26 primCmpInt (Main.Pos x) (Main.Pos y) = primCmpNat x y; 72.57/40.26 primCmpInt (Main.Pos x) (Main.Neg y) = GT; 72.57/40.26 primCmpInt (Main.Neg x) (Main.Pos y) = LT; 72.57/40.26 primCmpInt (Main.Neg x) (Main.Neg y) = primCmpNat y x; 72.57/40.26 72.57/40.26 primCmpNat :: Main.Nat -> Main.Nat -> Ordering; 72.57/40.26 primCmpNat Main.Zero Main.Zero = EQ; 72.57/40.26 primCmpNat Main.Zero (Main.Succ y) = LT; 72.57/40.26 primCmpNat (Main.Succ x) Main.Zero = GT; 72.57/40.26 primCmpNat (Main.Succ x) (Main.Succ y) = primCmpNat x y; 72.57/40.26 72.57/40.26 primDivNatS :: Main.Nat -> Main.Nat -> Main.Nat; 72.57/40.26 primDivNatS Main.Zero Main.Zero = Main.error; 72.57/40.26 primDivNatS (Main.Succ x) Main.Zero = Main.error; 72.57/40.26 primDivNatS (Main.Succ x) (Main.Succ y) = primDivNatS0 x y (primGEqNatS x y); 72.57/40.26 primDivNatS Main.Zero (Main.Succ x) = Main.Zero; 72.57/40.26 72.57/40.26 primDivNatS0 x y MyTrue = Main.Succ (primDivNatS (primMinusNatS x y) (Main.Succ y)); 72.57/40.26 primDivNatS0 x y MyFalse = Main.Zero; 72.57/40.26 72.57/40.26 primEqInt :: MyInt -> MyInt -> MyBool; 72.57/40.26 primEqInt (Main.Pos (Main.Succ x)) (Main.Pos (Main.Succ y)) = primEqNat x y; 72.57/40.26 primEqInt (Main.Neg (Main.Succ x)) (Main.Neg (Main.Succ y)) = primEqNat x y; 72.57/40.26 primEqInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = MyTrue; 72.57/40.26 primEqInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = MyTrue; 72.57/40.26 primEqInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = MyTrue; 72.57/40.26 primEqInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = MyTrue; 72.57/40.26 primEqInt wv ww = MyFalse; 72.57/40.26 72.57/40.26 primEqNat :: Main.Nat -> Main.Nat -> MyBool; 72.57/40.26 primEqNat Main.Zero Main.Zero = MyTrue; 72.57/40.26 primEqNat Main.Zero (Main.Succ y) = MyFalse; 72.57/40.26 primEqNat (Main.Succ x) Main.Zero = MyFalse; 72.57/40.26 primEqNat (Main.Succ x) (Main.Succ y) = primEqNat x y; 72.57/40.26 72.57/40.26 primGEqNatS :: Main.Nat -> Main.Nat -> MyBool; 72.57/40.26 primGEqNatS (Main.Succ x) Main.Zero = MyTrue; 72.57/40.26 primGEqNatS (Main.Succ x) (Main.Succ y) = primGEqNatS x y; 72.57/40.26 primGEqNatS Main.Zero (Main.Succ x) = MyFalse; 72.57/40.26 primGEqNatS Main.Zero Main.Zero = MyTrue; 72.57/40.26 72.57/40.26 primIntToChar :: MyInt -> Main.Char; 72.57/40.26 primIntToChar x = Main.Char x; 72.57/40.26 72.57/40.26 primMinusNat :: Main.Nat -> Main.Nat -> MyInt; 72.57/40.26 primMinusNat Main.Zero Main.Zero = Main.Pos Main.Zero; 72.57/40.26 primMinusNat Main.Zero (Main.Succ y) = Main.Neg (Main.Succ y); 72.57/40.26 primMinusNat (Main.Succ x) Main.Zero = Main.Pos (Main.Succ x); 72.57/40.26 primMinusNat (Main.Succ x) (Main.Succ y) = primMinusNat x y; 72.57/40.26 72.57/40.26 primMinusNatS :: Main.Nat -> Main.Nat -> Main.Nat; 72.57/40.26 primMinusNatS (Main.Succ x) (Main.Succ y) = primMinusNatS x y; 72.57/40.26 primMinusNatS Main.Zero (Main.Succ y) = Main.Zero; 72.57/40.26 primMinusNatS x Main.Zero = x; 72.57/40.26 72.57/40.26 primModNatS :: Main.Nat -> Main.Nat -> Main.Nat; 72.57/40.26 primModNatS Main.Zero Main.Zero = Main.error; 72.57/40.26 primModNatS Main.Zero (Main.Succ x) = Main.Zero; 72.57/40.26 primModNatS (Main.Succ x) Main.Zero = Main.error; 72.57/40.26 primModNatS (Main.Succ x) (Main.Succ Main.Zero) = Main.Zero; 72.57/40.26 primModNatS (Main.Succ x) (Main.Succ (Main.Succ y)) = primModNatS0 x y (primGEqNatS x (Main.Succ y)); 72.57/40.26 72.57/40.26 primModNatS0 x y MyTrue = primModNatS (primMinusNatS x (Main.Succ y)) (Main.Succ (Main.Succ y)); 72.57/40.26 primModNatS0 x y MyFalse = Main.Succ x; 72.57/40.26 72.57/40.26 primPlusInt :: MyInt -> MyInt -> MyInt; 72.57/40.26 primPlusInt (Main.Pos x) (Main.Neg y) = primMinusNat x y; 72.57/40.26 primPlusInt (Main.Neg x) (Main.Pos y) = primMinusNat y x; 72.57/40.26 primPlusInt (Main.Neg x) (Main.Neg y) = Main.Neg (primPlusNat x y); 72.57/40.26 primPlusInt (Main.Pos x) (Main.Pos y) = Main.Pos (primPlusNat x y); 72.57/40.26 72.57/40.26 primPlusNat :: Main.Nat -> Main.Nat -> Main.Nat; 72.57/40.26 primPlusNat Main.Zero Main.Zero = Main.Zero; 72.57/40.26 primPlusNat Main.Zero (Main.Succ y) = Main.Succ y; 72.57/40.26 primPlusNat (Main.Succ x) Main.Zero = Main.Succ x; 72.57/40.26 primPlusNat (Main.Succ x) (Main.Succ y) = Main.Succ (Main.Succ (primPlusNat x y)); 72.57/40.26 72.57/40.26 primQrmInt :: MyInt -> MyInt -> Tup2 MyInt MyInt; 72.57/40.26 primQrmInt x y = Tup2 (primQuotInt x y) (primRemInt x y); 72.57/40.26 72.57/40.26 primQuotInt :: MyInt -> MyInt -> MyInt; 72.57/40.26 primQuotInt (Main.Pos x) (Main.Pos (Main.Succ y)) = Main.Pos (primDivNatS x (Main.Succ y)); 72.57/40.26 primQuotInt (Main.Pos x) (Main.Neg (Main.Succ y)) = Main.Neg (primDivNatS x (Main.Succ y)); 72.57/40.26 primQuotInt (Main.Neg x) (Main.Pos (Main.Succ y)) = Main.Neg (primDivNatS x (Main.Succ y)); 72.57/40.26 primQuotInt (Main.Neg x) (Main.Neg (Main.Succ y)) = Main.Pos (primDivNatS x (Main.Succ y)); 72.57/40.26 primQuotInt vx vy = Main.error; 72.57/40.26 72.57/40.26 primRemInt :: MyInt -> MyInt -> MyInt; 72.57/40.26 primRemInt (Main.Pos x) (Main.Pos (Main.Succ y)) = Main.Pos (primModNatS x (Main.Succ y)); 72.57/40.26 primRemInt (Main.Pos x) (Main.Neg (Main.Succ y)) = Main.Pos (primModNatS x (Main.Succ y)); 72.57/40.26 primRemInt (Main.Neg x) (Main.Pos (Main.Succ y)) = Main.Neg (primModNatS x (Main.Succ y)); 72.57/40.26 primRemInt (Main.Neg x) (Main.Neg (Main.Succ y)) = Main.Neg (primModNatS x (Main.Succ y)); 72.57/40.26 primRemInt vv vw = Main.error; 72.57/40.26 72.57/40.26 psMyInt :: MyInt -> MyInt -> MyInt; 72.57/40.26 psMyInt = primPlusInt; 72.57/40.26 72.57/40.26 quotRemMyInt :: MyInt -> MyInt -> Tup2 MyInt MyInt; 72.57/40.26 quotRemMyInt = primQrmInt; 72.57/40.26 72.57/40.26 showInt n r = showInt3 n r; 72.57/40.26 72.57/40.26 showInt1 n r MyTrue = showInt1ShowInt0 r n (esEsMyInt (showInt1N' r n) (fromIntMyInt (Main.Pos Main.Zero))); 72.57/40.26 72.57/40.26 showInt1D wx wy = showInt1D0 wx wy (showInt1Vu76 wx wy); 72.57/40.26 72.57/40.26 showInt1D0 wx wy (Tup2 wu d) = d; 72.57/40.26 72.57/40.26 showInt1N' wx wy = showInt1N'0 wx wy (showInt1Vu76 wx wy); 72.57/40.26 72.57/40.26 showInt1N'0 wx wy (Tup2 n' vz) = n'; 72.57/40.26 72.57/40.26 showInt1R' wx wy = Cons (toEnumChar (psMyInt (fromEnumChar (Main.Char (Main.Pos (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D wx wy)))) wx; 72.57/40.26 72.57/40.26 showInt1ShowInt0 wx wy MyTrue = showInt1R' wx wy; 72.57/40.26 showInt1ShowInt0 wx wy MyFalse = showInt (showInt1N' wx wy) (showInt1R' wx wy); 72.57/40.26 72.57/40.26 showInt1Vu76 wx wy = quotRemMyInt wy (fromIntMyInt (Main.Pos (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ Main.Zero)))))))))))); 72.57/40.26 72.57/40.26 showInt2 n r MyTrue = Main.error; 72.57/40.26 showInt2 n r MyFalse = showInt1 n r otherwise; 72.57/40.26 72.57/40.26 showInt3 n r = showInt2 n r (ltMyInt n (fromIntMyInt (Main.Pos Main.Zero))); 72.57/40.26 72.57/40.26 stop :: MyBool -> a; 72.57/40.26 stop MyFalse = stop MyFalse; 72.57/40.26 72.57/40.26 toEnumChar :: MyInt -> Main.Char; 72.57/40.26 toEnumChar = primIntToChar; 72.57/40.26 72.57/40.26 } 72.57/40.26 72.57/40.26 ---------------------------------------- 72.57/40.26 72.57/40.26 (3) COR (EQUIVALENT) 72.57/40.26 Cond Reductions: 72.57/40.26 The following Function with conditions 72.57/40.26 "undefined |Falseundefined; 72.57/40.26 " 72.57/40.26 is transformed to 72.57/40.26 "undefined = undefined1; 72.57/40.26 " 72.57/40.26 "undefined0 True = undefined; 72.57/40.26 " 72.57/40.26 "undefined1 = undefined0 False; 72.57/40.26 " 72.57/40.26 72.57/40.26 ---------------------------------------- 72.57/40.26 72.57/40.26 (4) 72.57/40.26 Obligation: 72.57/40.26 mainModule Main 72.57/40.26 module Main where { 72.57/40.26 import qualified Prelude; 72.57/40.26 data Main.Char = Char MyInt ; 72.57/40.26 72.57/40.26 data List a = Cons a (List a) | Nil ; 72.57/40.26 72.57/40.26 data MyBool = MyTrue | MyFalse ; 72.57/40.26 72.57/40.26 data MyInt = Pos Main.Nat | Neg Main.Nat ; 72.57/40.26 72.57/40.26 data Main.Nat = Succ Main.Nat | Zero ; 72.57/40.26 72.57/40.26 data Ordering = LT | EQ | GT ; 72.57/40.26 72.57/40.26 data Tup2 a b = Tup2 a b ; 72.57/40.26 72.57/40.26 compareMyInt :: MyInt -> MyInt -> Ordering; 72.57/40.26 compareMyInt = primCmpInt; 72.57/40.26 72.57/40.26 error :: a; 72.57/40.26 error = stop MyTrue; 72.57/40.26 72.57/40.26 esEsMyInt :: MyInt -> MyInt -> MyBool; 72.57/40.26 esEsMyInt = primEqInt; 72.57/40.26 72.57/40.26 esEsOrdering :: Ordering -> Ordering -> MyBool; 72.57/40.26 esEsOrdering LT LT = MyTrue; 72.57/40.26 esEsOrdering LT EQ = MyFalse; 72.57/40.26 esEsOrdering LT GT = MyFalse; 72.57/40.26 esEsOrdering EQ LT = MyFalse; 72.57/40.26 esEsOrdering EQ EQ = MyTrue; 72.57/40.26 esEsOrdering EQ GT = MyFalse; 72.57/40.26 esEsOrdering GT LT = MyFalse; 72.57/40.26 esEsOrdering GT EQ = MyFalse; 72.57/40.26 esEsOrdering GT GT = MyTrue; 72.57/40.26 72.57/40.26 fromEnumChar :: Main.Char -> MyInt; 72.57/40.26 fromEnumChar = primCharToInt; 72.57/40.26 72.57/40.26 fromIntMyInt :: MyInt -> MyInt; 72.57/40.26 fromIntMyInt x = x; 72.57/40.26 72.57/40.26 ltMyInt :: MyInt -> MyInt -> MyBool; 72.57/40.26 ltMyInt x y = esEsOrdering (compareMyInt x y) LT; 72.57/40.26 72.57/40.26 otherwise :: MyBool; 72.57/40.26 otherwise = MyTrue; 72.57/40.26 72.57/40.26 primCharToInt :: Main.Char -> MyInt; 72.57/40.26 primCharToInt (Main.Char x) = x; 72.57/40.26 72.57/40.26 primCmpInt :: MyInt -> MyInt -> Ordering; 72.57/40.26 primCmpInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = EQ; 72.57/40.26 primCmpInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = EQ; 72.57/40.26 primCmpInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = EQ; 72.57/40.26 primCmpInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = EQ; 72.57/40.26 primCmpInt (Main.Pos x) (Main.Pos y) = primCmpNat x y; 72.57/40.26 primCmpInt (Main.Pos x) (Main.Neg y) = GT; 72.57/40.26 primCmpInt (Main.Neg x) (Main.Pos y) = LT; 72.57/40.26 primCmpInt (Main.Neg x) (Main.Neg y) = primCmpNat y x; 72.57/40.26 72.57/40.26 primCmpNat :: Main.Nat -> Main.Nat -> Ordering; 72.57/40.26 primCmpNat Main.Zero Main.Zero = EQ; 72.57/40.26 primCmpNat Main.Zero (Main.Succ y) = LT; 72.57/40.26 primCmpNat (Main.Succ x) Main.Zero = GT; 72.57/40.26 primCmpNat (Main.Succ x) (Main.Succ y) = primCmpNat x y; 72.57/40.26 72.57/40.26 primDivNatS :: Main.Nat -> Main.Nat -> Main.Nat; 72.57/40.26 primDivNatS Main.Zero Main.Zero = Main.error; 72.57/40.26 primDivNatS (Main.Succ x) Main.Zero = Main.error; 72.57/40.26 primDivNatS (Main.Succ x) (Main.Succ y) = primDivNatS0 x y (primGEqNatS x y); 72.57/40.26 primDivNatS Main.Zero (Main.Succ x) = Main.Zero; 72.57/40.26 72.57/40.26 primDivNatS0 x y MyTrue = Main.Succ (primDivNatS (primMinusNatS x y) (Main.Succ y)); 72.57/40.26 primDivNatS0 x y MyFalse = Main.Zero; 72.57/40.26 72.57/40.26 primEqInt :: MyInt -> MyInt -> MyBool; 72.57/40.26 primEqInt (Main.Pos (Main.Succ x)) (Main.Pos (Main.Succ y)) = primEqNat x y; 72.57/40.26 primEqInt (Main.Neg (Main.Succ x)) (Main.Neg (Main.Succ y)) = primEqNat x y; 72.57/40.26 primEqInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = MyTrue; 72.57/40.26 primEqInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = MyTrue; 72.57/40.26 primEqInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = MyTrue; 72.57/40.26 primEqInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = MyTrue; 72.57/40.26 primEqInt wv ww = MyFalse; 72.57/40.26 72.57/40.26 primEqNat :: Main.Nat -> Main.Nat -> MyBool; 72.57/40.26 primEqNat Main.Zero Main.Zero = MyTrue; 72.57/40.26 primEqNat Main.Zero (Main.Succ y) = MyFalse; 72.57/40.26 primEqNat (Main.Succ x) Main.Zero = MyFalse; 72.57/40.26 primEqNat (Main.Succ x) (Main.Succ y) = primEqNat x y; 72.57/40.26 72.57/40.26 primGEqNatS :: Main.Nat -> Main.Nat -> MyBool; 72.57/40.26 primGEqNatS (Main.Succ x) Main.Zero = MyTrue; 72.57/40.26 primGEqNatS (Main.Succ x) (Main.Succ y) = primGEqNatS x y; 72.57/40.26 primGEqNatS Main.Zero (Main.Succ x) = MyFalse; 72.57/40.26 primGEqNatS Main.Zero Main.Zero = MyTrue; 72.57/40.26 72.57/40.26 primIntToChar :: MyInt -> Main.Char; 72.57/40.26 primIntToChar x = Main.Char x; 72.57/40.26 72.57/40.26 primMinusNat :: Main.Nat -> Main.Nat -> MyInt; 72.57/40.26 primMinusNat Main.Zero Main.Zero = Main.Pos Main.Zero; 72.57/40.26 primMinusNat Main.Zero (Main.Succ y) = Main.Neg (Main.Succ y); 72.57/40.26 primMinusNat (Main.Succ x) Main.Zero = Main.Pos (Main.Succ x); 72.57/40.26 primMinusNat (Main.Succ x) (Main.Succ y) = primMinusNat x y; 72.57/40.26 72.57/40.26 primMinusNatS :: Main.Nat -> Main.Nat -> Main.Nat; 72.57/40.26 primMinusNatS (Main.Succ x) (Main.Succ y) = primMinusNatS x y; 72.57/40.26 primMinusNatS Main.Zero (Main.Succ y) = Main.Zero; 72.57/40.26 primMinusNatS x Main.Zero = x; 72.57/40.26 72.57/40.26 primModNatS :: Main.Nat -> Main.Nat -> Main.Nat; 72.57/40.26 primModNatS Main.Zero Main.Zero = Main.error; 72.57/40.26 primModNatS Main.Zero (Main.Succ x) = Main.Zero; 72.57/40.26 primModNatS (Main.Succ x) Main.Zero = Main.error; 72.57/40.26 primModNatS (Main.Succ x) (Main.Succ Main.Zero) = Main.Zero; 72.57/40.26 primModNatS (Main.Succ x) (Main.Succ (Main.Succ y)) = primModNatS0 x y (primGEqNatS x (Main.Succ y)); 72.57/40.26 72.57/40.26 primModNatS0 x y MyTrue = primModNatS (primMinusNatS x (Main.Succ y)) (Main.Succ (Main.Succ y)); 72.57/40.26 primModNatS0 x y MyFalse = Main.Succ x; 72.57/40.26 72.57/40.26 primPlusInt :: MyInt -> MyInt -> MyInt; 72.57/40.26 primPlusInt (Main.Pos x) (Main.Neg y) = primMinusNat x y; 72.57/40.26 primPlusInt (Main.Neg x) (Main.Pos y) = primMinusNat y x; 72.57/40.26 primPlusInt (Main.Neg x) (Main.Neg y) = Main.Neg (primPlusNat x y); 72.57/40.26 primPlusInt (Main.Pos x) (Main.Pos y) = Main.Pos (primPlusNat x y); 72.57/40.26 72.57/40.26 primPlusNat :: Main.Nat -> Main.Nat -> Main.Nat; 72.57/40.26 primPlusNat Main.Zero Main.Zero = Main.Zero; 72.57/40.26 primPlusNat Main.Zero (Main.Succ y) = Main.Succ y; 72.57/40.26 primPlusNat (Main.Succ x) Main.Zero = Main.Succ x; 72.57/40.26 primPlusNat (Main.Succ x) (Main.Succ y) = Main.Succ (Main.Succ (primPlusNat x y)); 72.57/40.26 72.57/40.26 primQrmInt :: MyInt -> MyInt -> Tup2 MyInt MyInt; 72.57/40.26 primQrmInt x y = Tup2 (primQuotInt x y) (primRemInt x y); 72.57/40.26 72.57/40.26 primQuotInt :: MyInt -> MyInt -> MyInt; 72.57/40.26 primQuotInt (Main.Pos x) (Main.Pos (Main.Succ y)) = Main.Pos (primDivNatS x (Main.Succ y)); 72.57/40.26 primQuotInt (Main.Pos x) (Main.Neg (Main.Succ y)) = Main.Neg (primDivNatS x (Main.Succ y)); 72.57/40.26 primQuotInt (Main.Neg x) (Main.Pos (Main.Succ y)) = Main.Neg (primDivNatS x (Main.Succ y)); 72.57/40.26 primQuotInt (Main.Neg x) (Main.Neg (Main.Succ y)) = Main.Pos (primDivNatS x (Main.Succ y)); 72.57/40.26 primQuotInt vx vy = Main.error; 72.57/40.26 72.57/40.26 primRemInt :: MyInt -> MyInt -> MyInt; 72.57/40.26 primRemInt (Main.Pos x) (Main.Pos (Main.Succ y)) = Main.Pos (primModNatS x (Main.Succ y)); 72.57/40.26 primRemInt (Main.Pos x) (Main.Neg (Main.Succ y)) = Main.Pos (primModNatS x (Main.Succ y)); 72.57/40.26 primRemInt (Main.Neg x) (Main.Pos (Main.Succ y)) = Main.Neg (primModNatS x (Main.Succ y)); 72.57/40.26 primRemInt (Main.Neg x) (Main.Neg (Main.Succ y)) = Main.Neg (primModNatS x (Main.Succ y)); 72.57/40.26 primRemInt vv vw = Main.error; 72.57/40.26 72.57/40.26 psMyInt :: MyInt -> MyInt -> MyInt; 72.57/40.26 psMyInt = primPlusInt; 72.57/40.26 72.57/40.26 quotRemMyInt :: MyInt -> MyInt -> Tup2 MyInt MyInt; 72.57/40.26 quotRemMyInt = primQrmInt; 72.57/40.26 72.57/40.26 showInt n r = showInt3 n r; 72.57/40.26 72.57/40.26 showInt1 n r MyTrue = showInt1ShowInt0 r n (esEsMyInt (showInt1N' r n) (fromIntMyInt (Main.Pos Main.Zero))); 72.57/40.26 72.57/40.26 showInt1D wx wy = showInt1D0 wx wy (showInt1Vu76 wx wy); 72.57/40.26 72.57/40.26 showInt1D0 wx wy (Tup2 wu d) = d; 72.57/40.26 72.57/40.26 showInt1N' wx wy = showInt1N'0 wx wy (showInt1Vu76 wx wy); 72.57/40.26 72.57/40.26 showInt1N'0 wx wy (Tup2 n' vz) = n'; 72.57/40.26 72.57/40.26 showInt1R' wx wy = Cons (toEnumChar (psMyInt (fromEnumChar (Main.Char (Main.Pos (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D wx wy)))) wx; 72.57/40.26 72.57/40.26 showInt1ShowInt0 wx wy MyTrue = showInt1R' wx wy; 72.57/40.26 showInt1ShowInt0 wx wy MyFalse = showInt (showInt1N' wx wy) (showInt1R' wx wy); 72.57/40.26 72.57/40.26 showInt1Vu76 wx wy = quotRemMyInt wy (fromIntMyInt (Main.Pos (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ Main.Zero)))))))))))); 72.57/40.26 72.57/40.26 showInt2 n r MyTrue = Main.error; 72.57/40.26 showInt2 n r MyFalse = showInt1 n r otherwise; 72.57/40.26 72.57/40.26 showInt3 n r = showInt2 n r (ltMyInt n (fromIntMyInt (Main.Pos Main.Zero))); 72.57/40.26 72.57/40.26 stop :: MyBool -> a; 72.57/40.26 stop MyFalse = stop MyFalse; 72.57/40.26 72.57/40.26 toEnumChar :: MyInt -> Main.Char; 72.57/40.26 toEnumChar = primIntToChar; 72.57/40.26 72.57/40.26 } 72.57/40.26 72.57/40.26 ---------------------------------------- 72.57/40.26 72.57/40.26 (5) Narrow (SOUND) 72.57/40.26 Haskell To QDPs 72.57/40.26 72.57/40.26 digraph dp_graph { 72.57/40.26 node [outthreshold=100, inthreshold=100];1[label="showInt",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 72.57/40.26 3[label="showInt xv3",fontsize=16,color="grey",shape="box"];3 -> 4[label="",style="dashed", color="grey", weight=3]; 72.57/40.26 4[label="showInt xv3 xv4",fontsize=16,color="black",shape="triangle"];4 -> 5[label="",style="solid", color="black", weight=3]; 72.57/40.26 5[label="showInt3 xv3 xv4",fontsize=16,color="black",shape="box"];5 -> 6[label="",style="solid", color="black", weight=3]; 72.57/40.26 6[label="showInt2 xv3 xv4 (ltMyInt xv3 (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];6 -> 7[label="",style="solid", color="black", weight=3]; 72.57/40.26 7[label="showInt2 xv3 xv4 (esEsOrdering (compareMyInt xv3 (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];7 -> 8[label="",style="solid", color="black", weight=3]; 72.57/40.26 8[label="showInt2 xv3 xv4 (esEsOrdering (primCmpInt xv3 (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="burlywood",shape="box"];1456[label="xv3/Pos xv30",fontsize=10,color="white",style="solid",shape="box"];8 -> 1456[label="",style="solid", color="burlywood", weight=9]; 72.57/40.26 1456 -> 9[label="",style="solid", color="burlywood", weight=3]; 72.57/40.26 1457[label="xv3/Neg xv30",fontsize=10,color="white",style="solid",shape="box"];8 -> 1457[label="",style="solid", color="burlywood", weight=9]; 72.57/40.26 1457 -> 10[label="",style="solid", color="burlywood", weight=3]; 72.57/40.26 9[label="showInt2 (Pos xv30) xv4 (esEsOrdering (primCmpInt (Pos xv30) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="burlywood",shape="box"];1458[label="xv30/Succ xv300",fontsize=10,color="white",style="solid",shape="box"];9 -> 1458[label="",style="solid", color="burlywood", weight=9]; 72.57/40.26 1458 -> 11[label="",style="solid", color="burlywood", weight=3]; 72.57/40.26 1459[label="xv30/Zero",fontsize=10,color="white",style="solid",shape="box"];9 -> 1459[label="",style="solid", color="burlywood", weight=9]; 72.57/40.26 1459 -> 12[label="",style="solid", color="burlywood", weight=3]; 72.57/40.26 10[label="showInt2 (Neg xv30) xv4 (esEsOrdering (primCmpInt (Neg xv30) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="burlywood",shape="box"];1460[label="xv30/Succ xv300",fontsize=10,color="white",style="solid",shape="box"];10 -> 1460[label="",style="solid", color="burlywood", weight=9]; 72.57/40.26 1460 -> 13[label="",style="solid", color="burlywood", weight=3]; 72.57/40.26 1461[label="xv30/Zero",fontsize=10,color="white",style="solid",shape="box"];10 -> 1461[label="",style="solid", color="burlywood", weight=9]; 72.57/40.26 1461 -> 14[label="",style="solid", color="burlywood", weight=3]; 72.57/40.26 11[label="showInt2 (Pos (Succ xv300)) xv4 (esEsOrdering (primCmpInt (Pos (Succ xv300)) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];11 -> 15[label="",style="solid", color="black", weight=3]; 72.57/40.26 12[label="showInt2 (Pos Zero) xv4 (esEsOrdering (primCmpInt (Pos Zero) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];12 -> 16[label="",style="solid", color="black", weight=3]; 72.57/40.26 13[label="showInt2 (Neg (Succ xv300)) xv4 (esEsOrdering (primCmpInt (Neg (Succ xv300)) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];13 -> 17[label="",style="solid", color="black", weight=3]; 72.57/40.26 14[label="showInt2 (Neg Zero) xv4 (esEsOrdering (primCmpInt (Neg Zero) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];14 -> 18[label="",style="solid", color="black", weight=3]; 72.57/40.26 15[label="showInt2 (Pos (Succ xv300)) xv4 (esEsOrdering (primCmpInt (Pos (Succ xv300)) (Pos Zero)) LT)",fontsize=16,color="black",shape="box"];15 -> 19[label="",style="solid", color="black", weight=3]; 72.57/40.26 16[label="showInt2 (Pos Zero) xv4 (esEsOrdering (primCmpInt (Pos Zero) (Pos Zero)) LT)",fontsize=16,color="black",shape="box"];16 -> 20[label="",style="solid", color="black", weight=3]; 72.57/40.26 17[label="showInt2 (Neg (Succ xv300)) xv4 (esEsOrdering (primCmpInt (Neg (Succ xv300)) (Pos Zero)) LT)",fontsize=16,color="black",shape="box"];17 -> 21[label="",style="solid", color="black", weight=3]; 72.57/40.26 18[label="showInt2 (Neg Zero) xv4 (esEsOrdering (primCmpInt (Neg Zero) (Pos Zero)) LT)",fontsize=16,color="black",shape="box"];18 -> 22[label="",style="solid", color="black", weight=3]; 72.57/40.26 19[label="showInt2 (Pos (Succ xv300)) xv4 (esEsOrdering (primCmpNat (Succ xv300) Zero) LT)",fontsize=16,color="black",shape="box"];19 -> 23[label="",style="solid", color="black", weight=3]; 72.57/40.26 20[label="showInt2 (Pos Zero) xv4 (esEsOrdering EQ LT)",fontsize=16,color="black",shape="box"];20 -> 24[label="",style="solid", color="black", weight=3]; 72.57/40.26 21[label="showInt2 (Neg (Succ xv300)) xv4 (esEsOrdering LT LT)",fontsize=16,color="black",shape="box"];21 -> 25[label="",style="solid", color="black", weight=3]; 72.57/40.26 22[label="showInt2 (Neg Zero) xv4 (esEsOrdering EQ LT)",fontsize=16,color="black",shape="box"];22 -> 26[label="",style="solid", color="black", weight=3]; 72.57/40.26 23[label="showInt2 (Pos (Succ xv300)) xv4 (esEsOrdering GT LT)",fontsize=16,color="black",shape="box"];23 -> 27[label="",style="solid", color="black", weight=3]; 72.57/40.26 24[label="showInt2 (Pos Zero) xv4 MyFalse",fontsize=16,color="black",shape="box"];24 -> 28[label="",style="solid", color="black", weight=3]; 72.57/40.26 25[label="showInt2 (Neg (Succ xv300)) xv4 MyTrue",fontsize=16,color="black",shape="box"];25 -> 29[label="",style="solid", color="black", weight=3]; 72.57/40.26 26[label="showInt2 (Neg Zero) xv4 MyFalse",fontsize=16,color="black",shape="box"];26 -> 30[label="",style="solid", color="black", weight=3]; 72.57/40.26 27[label="showInt2 (Pos (Succ xv300)) xv4 MyFalse",fontsize=16,color="black",shape="box"];27 -> 31[label="",style="solid", color="black", weight=3]; 72.57/40.26 28[label="showInt1 (Pos Zero) xv4 otherwise",fontsize=16,color="black",shape="box"];28 -> 32[label="",style="solid", color="black", weight=3]; 72.57/40.26 29[label="error",fontsize=16,color="black",shape="box"];29 -> 33[label="",style="solid", color="black", weight=3]; 72.57/40.26 30[label="showInt1 (Neg Zero) xv4 otherwise",fontsize=16,color="black",shape="box"];30 -> 34[label="",style="solid", color="black", weight=3]; 72.57/40.26 31[label="showInt1 (Pos (Succ xv300)) xv4 otherwise",fontsize=16,color="black",shape="box"];31 -> 35[label="",style="solid", color="black", weight=3]; 72.57/40.26 32[label="showInt1 (Pos Zero) xv4 MyTrue",fontsize=16,color="black",shape="box"];32 -> 36[label="",style="solid", color="black", weight=3]; 72.57/40.26 33[label="stop MyTrue",fontsize=16,color="black",shape="box"];33 -> 37[label="",style="solid", color="black", weight=3]; 72.57/40.26 34[label="showInt1 (Neg Zero) xv4 MyTrue",fontsize=16,color="black",shape="box"];34 -> 38[label="",style="solid", color="black", weight=3]; 72.57/40.26 35[label="showInt1 (Pos (Succ xv300)) xv4 MyTrue",fontsize=16,color="black",shape="box"];35 -> 39[label="",style="solid", color="black", weight=3]; 72.57/40.26 36[label="showInt1ShowInt0 xv4 (Pos Zero) (esEsMyInt (showInt1N' xv4 (Pos Zero)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];36 -> 40[label="",style="solid", color="black", weight=3]; 72.57/40.26 37[label="error []",fontsize=16,color="red",shape="box"];38[label="showInt1ShowInt0 xv4 (Neg Zero) (esEsMyInt (showInt1N' xv4 (Neg Zero)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];38 -> 41[label="",style="solid", color="black", weight=3]; 72.57/40.26 39[label="showInt1ShowInt0 xv4 (Pos (Succ xv300)) (esEsMyInt (showInt1N' xv4 (Pos (Succ xv300))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];39 -> 42[label="",style="solid", color="black", weight=3]; 72.57/40.26 40[label="showInt1ShowInt0 xv4 (Pos Zero) (primEqInt (showInt1N' xv4 (Pos Zero)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];40 -> 43[label="",style="solid", color="black", weight=3]; 72.57/40.26 41[label="showInt1ShowInt0 xv4 (Neg Zero) (primEqInt (showInt1N' xv4 (Neg Zero)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];41 -> 44[label="",style="solid", color="black", weight=3]; 72.57/40.26 42[label="showInt1ShowInt0 xv4 (Pos (Succ xv300)) (primEqInt (showInt1N' xv4 (Pos (Succ xv300))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];42 -> 45[label="",style="solid", color="black", weight=3]; 72.57/40.26 43[label="showInt1ShowInt0 xv4 (Pos Zero) (primEqInt (showInt1N'0 xv4 (Pos Zero) (showInt1Vu76 xv4 (Pos Zero))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];43 -> 46[label="",style="solid", color="black", weight=3]; 72.57/40.26 44[label="showInt1ShowInt0 xv4 (Neg Zero) (primEqInt (showInt1N'0 xv4 (Neg Zero) (showInt1Vu76 xv4 (Neg Zero))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];44 -> 47[label="",style="solid", color="black", weight=3]; 72.57/40.26 45[label="showInt1ShowInt0 xv4 (Pos (Succ xv300)) (primEqInt (showInt1N'0 xv4 (Pos (Succ xv300)) (showInt1Vu76 xv4 (Pos (Succ xv300)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];45 -> 48[label="",style="solid", color="black", weight=3]; 72.57/40.26 46 -> 49[label="",style="dashed", color="red", weight=0]; 72.57/40.26 46[label="showInt1ShowInt0 xv4 (Pos Zero) (primEqInt (showInt1N'0 xv4 (Pos Zero) (quotRemMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];46 -> 50[label="",style="dashed", color="magenta", weight=3]; 72.57/40.26 46 -> 51[label="",style="dashed", color="magenta", weight=3]; 72.57/40.26 47 -> 52[label="",style="dashed", color="red", weight=0]; 72.57/40.26 47[label="showInt1ShowInt0 xv4 (Neg Zero) (primEqInt (showInt1N'0 xv4 (Neg Zero) (quotRemMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];47 -> 53[label="",style="dashed", color="magenta", weight=3]; 72.57/40.26 47 -> 54[label="",style="dashed", color="magenta", weight=3]; 72.57/40.26 48 -> 55[label="",style="dashed", color="red", weight=0]; 72.57/40.26 48[label="showInt1ShowInt0 xv4 (Pos (Succ xv300)) (primEqInt (showInt1N'0 xv4 (Pos (Succ xv300)) (quotRemMyInt (Pos (Succ xv300)) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];48 -> 56[label="",style="dashed", color="magenta", weight=3]; 72.57/40.26 48 -> 57[label="",style="dashed", color="magenta", weight=3]; 72.57/40.26 48 -> 58[label="",style="dashed", color="magenta", weight=3]; 72.57/40.26 50[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];51[label="xv4",fontsize=16,color="green",shape="box"];49[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (showInt1N'0 xv6 (Pos Zero) (quotRemMyInt (Pos Zero) (fromIntMyInt (Pos (Succ xv7))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="triangle"];49 -> 59[label="",style="solid", color="black", weight=3]; 72.57/40.26 53[label="xv4",fontsize=16,color="green",shape="box"];54[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];52[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (showInt1N'0 xv9 (Neg Zero) (quotRemMyInt (Neg Zero) (fromIntMyInt (Pos (Succ xv10))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="triangle"];52 -> 60[label="",style="solid", color="black", weight=3]; 72.57/40.26 56[label="xv4",fontsize=16,color="green",shape="box"];57[label="xv300",fontsize=16,color="green",shape="box"];58[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];55[label="showInt1ShowInt0 xv12 (Pos (Succ xv13)) (primEqInt (showInt1N'0 xv12 (Pos (Succ xv13)) (quotRemMyInt (Pos (Succ xv13)) (fromIntMyInt (Pos (Succ xv14))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="triangle"];55 -> 61[label="",style="solid", color="black", weight=3]; 72.57/40.26 59[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (showInt1N'0 xv6 (Pos Zero) (primQrmInt (Pos Zero) (fromIntMyInt (Pos (Succ xv7))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];59 -> 62[label="",style="solid", color="black", weight=3]; 72.57/40.26 60[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (showInt1N'0 xv9 (Neg Zero) (primQrmInt (Neg Zero) (fromIntMyInt (Pos (Succ xv10))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];60 -> 63[label="",style="solid", color="black", weight=3]; 72.57/40.26 61[label="showInt1ShowInt0 xv12 (Pos (Succ xv13)) (primEqInt (showInt1N'0 xv12 (Pos (Succ xv13)) (primQrmInt (Pos (Succ xv13)) (fromIntMyInt (Pos (Succ xv14))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];61 -> 64[label="",style="solid", color="black", weight=3]; 72.57/40.26 62[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (showInt1N'0 xv6 (Pos Zero) (Tup2 (primQuotInt (Pos Zero) (fromIntMyInt (Pos (Succ xv7)))) (primRemInt (Pos Zero) (fromIntMyInt (Pos (Succ xv7)))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];62 -> 65[label="",style="solid", color="black", weight=3]; 72.57/40.26 63[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (showInt1N'0 xv9 (Neg Zero) (Tup2 (primQuotInt (Neg Zero) (fromIntMyInt (Pos (Succ xv10)))) (primRemInt (Neg Zero) (fromIntMyInt (Pos (Succ xv10)))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];63 -> 66[label="",style="solid", color="black", weight=3]; 72.57/40.26 64[label="showInt1ShowInt0 xv12 (Pos (Succ xv13)) (primEqInt (showInt1N'0 xv12 (Pos (Succ xv13)) (Tup2 (primQuotInt (Pos (Succ xv13)) (fromIntMyInt (Pos (Succ xv14)))) (primRemInt (Pos (Succ xv13)) (fromIntMyInt (Pos (Succ xv14)))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];64 -> 67[label="",style="solid", color="black", weight=3]; 72.57/40.26 65[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (primQuotInt (Pos Zero) (fromIntMyInt (Pos (Succ xv7)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];65 -> 68[label="",style="solid", color="black", weight=3]; 72.57/40.26 66[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (primQuotInt (Neg Zero) (fromIntMyInt (Pos (Succ xv10)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];66 -> 69[label="",style="solid", color="black", weight=3]; 72.57/40.26 67[label="showInt1ShowInt0 xv12 (Pos (Succ xv13)) (primEqInt (primQuotInt (Pos (Succ xv13)) (fromIntMyInt (Pos (Succ xv14)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];67 -> 70[label="",style="solid", color="black", weight=3]; 72.57/40.26 68[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (primQuotInt (Pos Zero) (Pos (Succ xv7))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];68 -> 71[label="",style="solid", color="black", weight=3]; 72.57/40.26 69[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (primQuotInt (Neg Zero) (Pos (Succ xv10))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];69 -> 72[label="",style="solid", color="black", weight=3]; 72.57/40.26 70[label="showInt1ShowInt0 xv12 (Pos (Succ xv13)) (primEqInt (primQuotInt (Pos (Succ xv13)) (Pos (Succ xv14))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];70 -> 73[label="",style="solid", color="black", weight=3]; 72.57/40.26 71[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (Pos (primDivNatS Zero (Succ xv7))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];71 -> 74[label="",style="solid", color="black", weight=3]; 72.57/40.26 72[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (Neg (primDivNatS Zero (Succ xv10))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];72 -> 75[label="",style="solid", color="black", weight=3]; 72.57/40.26 73[label="showInt1ShowInt0 xv12 (Pos (Succ xv13)) (primEqInt (Pos (primDivNatS (Succ xv13) (Succ xv14))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];73 -> 76[label="",style="solid", color="black", weight=3]; 72.57/40.26 74[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];74 -> 77[label="",style="solid", color="black", weight=3]; 72.57/40.26 75[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];75 -> 78[label="",style="solid", color="black", weight=3]; 72.57/40.26 76[label="showInt1ShowInt0 xv12 (Pos (Succ xv13)) (primEqInt (Pos (primDivNatS0 xv13 xv14 (primGEqNatS xv13 xv14))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];1462[label="xv13/Succ xv130",fontsize=10,color="white",style="solid",shape="box"];76 -> 1462[label="",style="solid", color="burlywood", weight=9]; 72.57/40.26 1462 -> 79[label="",style="solid", color="burlywood", weight=3]; 72.57/40.26 1463[label="xv13/Zero",fontsize=10,color="white",style="solid",shape="box"];76 -> 1463[label="",style="solid", color="burlywood", weight=9]; 72.57/40.26 1463 -> 80[label="",style="solid", color="burlywood", weight=3]; 72.57/40.26 77[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];77 -> 81[label="",style="solid", color="black", weight=3]; 72.57/40.26 78[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];78 -> 82[label="",style="solid", color="black", weight=3]; 72.57/40.26 79[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) (primEqInt (Pos (primDivNatS0 (Succ xv130) xv14 (primGEqNatS (Succ xv130) xv14))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];1464[label="xv14/Succ xv140",fontsize=10,color="white",style="solid",shape="box"];79 -> 1464[label="",style="solid", color="burlywood", weight=9]; 72.57/40.26 1464 -> 83[label="",style="solid", color="burlywood", weight=3]; 72.57/40.26 1465[label="xv14/Zero",fontsize=10,color="white",style="solid",shape="box"];79 -> 1465[label="",style="solid", color="burlywood", weight=9]; 72.57/40.26 1465 -> 84[label="",style="solid", color="burlywood", weight=3]; 72.57/40.26 80[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos (primDivNatS0 Zero xv14 (primGEqNatS Zero xv14))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];1466[label="xv14/Succ xv140",fontsize=10,color="white",style="solid",shape="box"];80 -> 1466[label="",style="solid", color="burlywood", weight=9]; 72.57/40.26 1466 -> 85[label="",style="solid", color="burlywood", weight=3]; 72.57/40.26 1467[label="xv14/Zero",fontsize=10,color="white",style="solid",shape="box"];80 -> 1467[label="",style="solid", color="burlywood", weight=9]; 72.57/40.26 1467 -> 86[label="",style="solid", color="burlywood", weight=3]; 72.57/40.26 81[label="showInt1ShowInt0 xv6 (Pos Zero) MyTrue",fontsize=16,color="black",shape="box"];81 -> 87[label="",style="solid", color="black", weight=3]; 72.57/40.26 82[label="showInt1ShowInt0 xv9 (Neg Zero) MyTrue",fontsize=16,color="black",shape="box"];82 -> 88[label="",style="solid", color="black", weight=3]; 72.57/40.26 83[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) (primEqInt (Pos (primDivNatS0 (Succ xv130) (Succ xv140) (primGEqNatS (Succ xv130) (Succ xv140)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];83 -> 89[label="",style="solid", color="black", weight=3]; 72.57/40.26 84[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) (primEqInt (Pos (primDivNatS0 (Succ xv130) Zero (primGEqNatS (Succ xv130) Zero))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];84 -> 90[label="",style="solid", color="black", weight=3]; 72.57/40.26 85[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos (primDivNatS0 Zero (Succ xv140) (primGEqNatS Zero (Succ xv140)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];85 -> 91[label="",style="solid", color="black", weight=3]; 72.57/40.26 86[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos (primDivNatS0 Zero Zero (primGEqNatS Zero Zero))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];86 -> 92[label="",style="solid", color="black", weight=3]; 72.57/40.26 87[label="showInt1R' xv6 (Pos Zero)",fontsize=16,color="black",shape="box"];87 -> 93[label="",style="solid", color="black", weight=3]; 72.57/40.26 88[label="showInt1R' xv9 (Neg Zero)",fontsize=16,color="black",shape="box"];88 -> 94[label="",style="solid", color="black", weight=3]; 72.57/40.26 89 -> 482[label="",style="dashed", color="red", weight=0]; 72.57/40.26 89[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) (primEqInt (Pos (primDivNatS0 (Succ xv130) (Succ xv140) (primGEqNatS xv130 xv140))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];89 -> 483[label="",style="dashed", color="magenta", weight=3]; 72.57/40.26 89 -> 484[label="",style="dashed", color="magenta", weight=3]; 72.57/40.26 89 -> 485[label="",style="dashed", color="magenta", weight=3]; 72.57/40.26 89 -> 486[label="",style="dashed", color="magenta", weight=3]; 72.57/40.26 89 -> 487[label="",style="dashed", color="magenta", weight=3]; 72.57/40.26 90[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) (primEqInt (Pos (primDivNatS0 (Succ xv130) Zero MyTrue)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];90 -> 97[label="",style="solid", color="black", weight=3]; 72.57/40.26 91[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos (primDivNatS0 Zero (Succ xv140) MyFalse)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];91 -> 98[label="",style="solid", color="black", weight=3]; 72.57/40.26 92[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos (primDivNatS0 Zero Zero MyTrue)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];92 -> 99[label="",style="solid", color="black", weight=3]; 72.57/40.27 93[label="Cons (toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv6 (Pos Zero))))) xv6",fontsize=16,color="green",shape="box"];93 -> 100[label="",style="dashed", color="green", weight=3]; 72.57/40.27 94[label="Cons (toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv9 (Neg Zero))))) xv9",fontsize=16,color="green",shape="box"];94 -> 101[label="",style="dashed", color="green", weight=3]; 72.57/40.27 483[label="Succ xv130",fontsize=16,color="green",shape="box"];484[label="xv140",fontsize=16,color="green",shape="box"];485[label="xv140",fontsize=16,color="green",shape="box"];486[label="xv130",fontsize=16,color="green",shape="box"];487[label="xv12",fontsize=16,color="green",shape="box"];482[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS xv78 xv79))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="triangle"];1468[label="xv78/Succ xv780",fontsize=10,color="white",style="solid",shape="box"];482 -> 1468[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1468 -> 533[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1469[label="xv78/Zero",fontsize=10,color="white",style="solid",shape="box"];482 -> 1469[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1469 -> 534[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 97[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) (primEqInt (Pos (Succ (primDivNatS (primMinusNatS (Succ xv130) Zero) (Succ Zero)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];97 -> 106[label="",style="solid", color="black", weight=3]; 72.57/40.27 98[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];98 -> 107[label="",style="solid", color="black", weight=3]; 72.57/40.27 99[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos (Succ (primDivNatS (primMinusNatS Zero Zero) (Succ Zero)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];99 -> 108[label="",style="solid", color="black", weight=3]; 72.57/40.27 100 -> 109[label="",style="dashed", color="red", weight=0]; 72.57/40.27 100[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv6 (Pos Zero))))",fontsize=16,color="magenta"];100 -> 110[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 100 -> 111[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 101 -> 112[label="",style="dashed", color="red", weight=0]; 72.57/40.27 101[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv9 (Neg Zero))))",fontsize=16,color="magenta"];101 -> 113[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 101 -> 114[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 533[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS (Succ xv780) xv79))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];1470[label="xv79/Succ xv790",fontsize=10,color="white",style="solid",shape="box"];533 -> 1470[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1470 -> 537[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1471[label="xv79/Zero",fontsize=10,color="white",style="solid",shape="box"];533 -> 1471[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1471 -> 538[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 534[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS Zero xv79))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];1472[label="xv79/Succ xv790",fontsize=10,color="white",style="solid",shape="box"];534 -> 1472[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1472 -> 539[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1473[label="xv79/Zero",fontsize=10,color="white",style="solid",shape="box"];534 -> 1473[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1473 -> 540[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 106[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) (primEqInt (Pos (Succ (primDivNatS (primMinusNatS (Succ xv130) Zero) (Succ Zero)))) (Pos Zero))",fontsize=16,color="black",shape="box"];106 -> 119[label="",style="solid", color="black", weight=3]; 72.57/40.27 107[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];107 -> 120[label="",style="solid", color="black", weight=3]; 72.57/40.27 108[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos (Succ (primDivNatS (primMinusNatS Zero Zero) (Succ Zero)))) (Pos Zero))",fontsize=16,color="black",shape="box"];108 -> 121[label="",style="solid", color="black", weight=3]; 72.57/40.27 110[label="xv6",fontsize=16,color="green",shape="box"];111[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];109[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ xv16)))) (fromIntMyInt (showInt1D xv17 (Pos Zero))))",fontsize=16,color="black",shape="triangle"];109 -> 122[label="",style="solid", color="black", weight=3]; 72.57/40.27 113[label="xv9",fontsize=16,color="green",shape="box"];114[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];112[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ xv19)))) (fromIntMyInt (showInt1D xv20 (Neg Zero))))",fontsize=16,color="black",shape="triangle"];112 -> 123[label="",style="solid", color="black", weight=3]; 72.57/40.27 537[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS (Succ xv780) (Succ xv790)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];537 -> 547[label="",style="solid", color="black", weight=3]; 72.57/40.27 538[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS (Succ xv780) Zero))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];538 -> 548[label="",style="solid", color="black", weight=3]; 72.57/40.27 539[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS Zero (Succ xv790)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];539 -> 549[label="",style="solid", color="black", weight=3]; 72.57/40.27 540[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS Zero Zero))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];540 -> 550[label="",style="solid", color="black", weight=3]; 72.57/40.27 119[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) MyFalse",fontsize=16,color="black",shape="triangle"];119 -> 129[label="",style="solid", color="black", weight=3]; 72.57/40.27 120 -> 313[label="",style="dashed", color="red", weight=0]; 72.57/40.27 120[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) MyTrue",fontsize=16,color="magenta"];120 -> 314[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 120 -> 315[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 121[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) MyFalse",fontsize=16,color="black",shape="box"];121 -> 131[label="",style="solid", color="black", weight=3]; 72.57/40.27 122[label="primIntToChar (psMyInt (fromEnumChar (Char (Pos (Succ xv16)))) (fromIntMyInt (showInt1D xv17 (Pos Zero))))",fontsize=16,color="black",shape="box"];122 -> 132[label="",style="solid", color="black", weight=3]; 72.57/40.27 123[label="primIntToChar (psMyInt (fromEnumChar (Char (Pos (Succ xv19)))) (fromIntMyInt (showInt1D xv20 (Neg Zero))))",fontsize=16,color="black",shape="box"];123 -> 133[label="",style="solid", color="black", weight=3]; 72.57/40.27 547 -> 482[label="",style="dashed", color="red", weight=0]; 72.57/40.27 547[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS xv780 xv790))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];547 -> 554[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 547 -> 555[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 548[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) MyTrue)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="triangle"];548 -> 556[label="",style="solid", color="black", weight=3]; 72.57/40.27 549[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) MyFalse)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];549 -> 557[label="",style="solid", color="black", weight=3]; 72.57/40.27 550 -> 548[label="",style="dashed", color="red", weight=0]; 72.57/40.27 550[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) MyTrue)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];129 -> 4[label="",style="dashed", color="red", weight=0]; 72.57/40.27 129[label="showInt (showInt1N' xv12 (Pos (Succ (Succ xv130)))) (showInt1R' xv12 (Pos (Succ (Succ xv130))))",fontsize=16,color="magenta"];129 -> 141[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 129 -> 142[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 314[label="Zero",fontsize=16,color="green",shape="box"];315[label="xv12",fontsize=16,color="green",shape="box"];313[label="showInt1ShowInt0 xv56 (Pos (Succ xv57)) MyTrue",fontsize=16,color="black",shape="triangle"];313 -> 324[label="",style="solid", color="black", weight=3]; 72.57/40.27 131 -> 4[label="",style="dashed", color="red", weight=0]; 72.57/40.27 131[label="showInt (showInt1N' xv12 (Pos (Succ Zero))) (showInt1R' xv12 (Pos (Succ Zero)))",fontsize=16,color="magenta"];131 -> 144[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 131 -> 145[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 132[label="Char (psMyInt (fromEnumChar (Char (Pos (Succ xv16)))) (fromIntMyInt (showInt1D xv17 (Pos Zero))))",fontsize=16,color="green",shape="box"];132 -> 146[label="",style="dashed", color="green", weight=3]; 72.57/40.27 133[label="Char (psMyInt (fromEnumChar (Char (Pos (Succ xv19)))) (fromIntMyInt (showInt1D xv20 (Neg Zero))))",fontsize=16,color="green",shape="box"];133 -> 147[label="",style="dashed", color="green", weight=3]; 72.57/40.27 554[label="xv790",fontsize=16,color="green",shape="box"];555[label="xv780",fontsize=16,color="green",shape="box"];556[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (Succ (primDivNatS (primMinusNatS xv76 (Succ xv77)) (Succ (Succ xv77))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];556 -> 563[label="",style="solid", color="black", weight=3]; 72.57/40.27 557[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];557 -> 564[label="",style="solid", color="black", weight=3]; 72.57/40.27 141[label="showInt1N' xv12 (Pos (Succ (Succ xv130)))",fontsize=16,color="black",shape="box"];141 -> 155[label="",style="solid", color="black", weight=3]; 72.57/40.27 142[label="showInt1R' xv12 (Pos (Succ (Succ xv130)))",fontsize=16,color="black",shape="triangle"];142 -> 156[label="",style="solid", color="black", weight=3]; 72.57/40.27 324[label="showInt1R' xv56 (Pos (Succ xv57))",fontsize=16,color="black",shape="triangle"];324 -> 341[label="",style="solid", color="black", weight=3]; 72.57/40.27 144[label="showInt1N' xv12 (Pos (Succ Zero))",fontsize=16,color="black",shape="box"];144 -> 158[label="",style="solid", color="black", weight=3]; 72.57/40.27 145 -> 130[label="",style="dashed", color="red", weight=0]; 72.57/40.27 145[label="showInt1R' xv12 (Pos (Succ Zero))",fontsize=16,color="magenta"];146[label="psMyInt (fromEnumChar (Char (Pos (Succ xv16)))) (fromIntMyInt (showInt1D xv17 (Pos Zero)))",fontsize=16,color="black",shape="box"];146 -> 159[label="",style="solid", color="black", weight=3]; 72.57/40.27 147[label="psMyInt (fromEnumChar (Char (Pos (Succ xv19)))) (fromIntMyInt (showInt1D xv20 (Neg Zero)))",fontsize=16,color="black",shape="box"];147 -> 160[label="",style="solid", color="black", weight=3]; 72.57/40.27 563[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (Succ (primDivNatS (primMinusNatS xv76 (Succ xv77)) (Succ (Succ xv77))))) (Pos Zero))",fontsize=16,color="black",shape="box"];563 -> 571[label="",style="solid", color="black", weight=3]; 72.57/40.27 564[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];564 -> 572[label="",style="solid", color="black", weight=3]; 72.57/40.27 155[label="showInt1N'0 xv12 (Pos (Succ (Succ xv130))) (showInt1Vu76 xv12 (Pos (Succ (Succ xv130))))",fontsize=16,color="black",shape="box"];155 -> 169[label="",style="solid", color="black", weight=3]; 72.57/40.27 156[label="Cons (toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv12 (Pos (Succ (Succ xv130))))))) xv12",fontsize=16,color="green",shape="box"];156 -> 170[label="",style="dashed", color="green", weight=3]; 72.57/40.27 341[label="Cons (toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv56 (Pos (Succ xv57)))))) xv56",fontsize=16,color="green",shape="box"];341 -> 357[label="",style="dashed", color="green", weight=3]; 72.57/40.27 158[label="showInt1N'0 xv12 (Pos (Succ Zero)) (showInt1Vu76 xv12 (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];158 -> 174[label="",style="solid", color="black", weight=3]; 72.57/40.27 130[label="showInt1R' xv12 (Pos (Succ Zero))",fontsize=16,color="black",shape="triangle"];130 -> 143[label="",style="solid", color="black", weight=3]; 72.57/40.27 159[label="primPlusInt (fromEnumChar (Char (Pos (Succ xv16)))) (fromIntMyInt (showInt1D xv17 (Pos Zero)))",fontsize=16,color="black",shape="box"];159 -> 175[label="",style="solid", color="black", weight=3]; 72.57/40.27 160[label="primPlusInt (fromEnumChar (Char (Pos (Succ xv19)))) (fromIntMyInt (showInt1D xv20 (Neg Zero)))",fontsize=16,color="black",shape="box"];160 -> 176[label="",style="solid", color="black", weight=3]; 72.57/40.27 571[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) MyFalse",fontsize=16,color="black",shape="box"];571 -> 581[label="",style="solid", color="black", weight=3]; 72.57/40.27 572 -> 313[label="",style="dashed", color="red", weight=0]; 72.57/40.27 572[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) MyTrue",fontsize=16,color="magenta"];572 -> 582[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 572 -> 583[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 169 -> 432[label="",style="dashed", color="red", weight=0]; 72.57/40.27 169[label="showInt1N'0 xv12 (Pos (Succ (Succ xv130))) (quotRemMyInt (Pos (Succ (Succ xv130))) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))",fontsize=16,color="magenta"];169 -> 433[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 169 -> 434[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 169 -> 435[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 170 -> 368[label="",style="dashed", color="red", weight=0]; 72.57/40.27 170[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv12 (Pos (Succ (Succ xv130))))))",fontsize=16,color="magenta"];170 -> 369[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 170 -> 370[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 170 -> 371[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 357 -> 368[label="",style="dashed", color="red", weight=0]; 72.57/40.27 357[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv56 (Pos (Succ xv57)))))",fontsize=16,color="magenta"];357 -> 372[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 357 -> 373[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 357 -> 374[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 174 -> 432[label="",style="dashed", color="red", weight=0]; 72.57/40.27 174[label="showInt1N'0 xv12 (Pos (Succ Zero)) (quotRemMyInt (Pos (Succ Zero)) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))",fontsize=16,color="magenta"];174 -> 436[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 174 -> 437[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 174 -> 438[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 143[label="Cons (toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv12 (Pos (Succ Zero)))))) xv12",fontsize=16,color="green",shape="box"];143 -> 157[label="",style="dashed", color="green", weight=3]; 72.57/40.27 175[label="primPlusInt (primCharToInt (Char (Pos (Succ xv16)))) (fromIntMyInt (showInt1D xv17 (Pos Zero)))",fontsize=16,color="black",shape="box"];175 -> 197[label="",style="solid", color="black", weight=3]; 72.57/40.27 176[label="primPlusInt (primCharToInt (Char (Pos (Succ xv19)))) (fromIntMyInt (showInt1D xv20 (Neg Zero)))",fontsize=16,color="black",shape="box"];176 -> 198[label="",style="solid", color="black", weight=3]; 72.57/40.27 581 -> 4[label="",style="dashed", color="red", weight=0]; 72.57/40.27 581[label="showInt (showInt1N' xv75 (Pos (Succ xv76))) (showInt1R' xv75 (Pos (Succ xv76)))",fontsize=16,color="magenta"];581 -> 591[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 581 -> 592[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 582[label="xv76",fontsize=16,color="green",shape="box"];583[label="xv75",fontsize=16,color="green",shape="box"];433[label="xv12",fontsize=16,color="green",shape="box"];434[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];435[label="Succ xv130",fontsize=16,color="green",shape="box"];432[label="showInt1N'0 xv71 (Pos (Succ xv72)) (quotRemMyInt (Pos (Succ xv72)) (fromIntMyInt (Pos (Succ xv73))))",fontsize=16,color="black",shape="triangle"];432 -> 448[label="",style="solid", color="black", weight=3]; 72.57/40.27 369[label="Succ xv130",fontsize=16,color="green",shape="box"];370[label="xv12",fontsize=16,color="green",shape="box"];371[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];368[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ xv67)))) (fromIntMyInt (showInt1D xv68 (Pos (Succ xv69)))))",fontsize=16,color="black",shape="triangle"];368 -> 384[label="",style="solid", color="black", weight=3]; 72.57/40.27 372[label="xv57",fontsize=16,color="green",shape="box"];373[label="xv56",fontsize=16,color="green",shape="box"];374[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];436[label="xv12",fontsize=16,color="green",shape="box"];437[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];438[label="Zero",fontsize=16,color="green",shape="box"];157 -> 368[label="",style="dashed", color="red", weight=0]; 72.57/40.27 157[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv12 (Pos (Succ Zero)))))",fontsize=16,color="magenta"];157 -> 378[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 157 -> 379[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 157 -> 380[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 197[label="primPlusInt (Pos (Succ xv16)) (fromIntMyInt (showInt1D xv17 (Pos Zero)))",fontsize=16,color="black",shape="box"];197 -> 210[label="",style="solid", color="black", weight=3]; 72.57/40.27 198[label="primPlusInt (Pos (Succ xv19)) (fromIntMyInt (showInt1D xv20 (Neg Zero)))",fontsize=16,color="black",shape="box"];198 -> 211[label="",style="solid", color="black", weight=3]; 72.57/40.27 591[label="showInt1N' xv75 (Pos (Succ xv76))",fontsize=16,color="black",shape="box"];591 -> 600[label="",style="solid", color="black", weight=3]; 72.57/40.27 592 -> 324[label="",style="dashed", color="red", weight=0]; 72.57/40.27 592[label="showInt1R' xv75 (Pos (Succ xv76))",fontsize=16,color="magenta"];592 -> 601[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 592 -> 602[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 448[label="showInt1N'0 xv71 (Pos (Succ xv72)) (primQrmInt (Pos (Succ xv72)) (fromIntMyInt (Pos (Succ xv73))))",fontsize=16,color="black",shape="box"];448 -> 456[label="",style="solid", color="black", weight=3]; 72.57/40.27 384[label="primIntToChar (psMyInt (fromEnumChar (Char (Pos (Succ xv67)))) (fromIntMyInt (showInt1D xv68 (Pos (Succ xv69)))))",fontsize=16,color="black",shape="box"];384 -> 403[label="",style="solid", color="black", weight=3]; 72.57/40.27 378[label="Zero",fontsize=16,color="green",shape="box"];379[label="xv12",fontsize=16,color="green",shape="box"];380[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];210[label="primPlusInt (Pos (Succ xv16)) (showInt1D xv17 (Pos Zero))",fontsize=16,color="black",shape="box"];210 -> 224[label="",style="solid", color="black", weight=3]; 72.57/40.27 211[label="primPlusInt (Pos (Succ xv19)) (showInt1D xv20 (Neg Zero))",fontsize=16,color="black",shape="box"];211 -> 225[label="",style="solid", color="black", weight=3]; 72.57/40.27 600[label="showInt1N'0 xv75 (Pos (Succ xv76)) (showInt1Vu76 xv75 (Pos (Succ xv76)))",fontsize=16,color="black",shape="box"];600 -> 612[label="",style="solid", color="black", weight=3]; 72.57/40.27 601[label="xv76",fontsize=16,color="green",shape="box"];602[label="xv75",fontsize=16,color="green",shape="box"];456[label="showInt1N'0 xv71 (Pos (Succ xv72)) (Tup2 (primQuotInt (Pos (Succ xv72)) (fromIntMyInt (Pos (Succ xv73)))) (primRemInt (Pos (Succ xv72)) (fromIntMyInt (Pos (Succ xv73)))))",fontsize=16,color="black",shape="box"];456 -> 466[label="",style="solid", color="black", weight=3]; 72.57/40.27 403[label="Char (psMyInt (fromEnumChar (Char (Pos (Succ xv67)))) (fromIntMyInt (showInt1D xv68 (Pos (Succ xv69)))))",fontsize=16,color="green",shape="box"];403 -> 423[label="",style="dashed", color="green", weight=3]; 72.57/40.27 224[label="primPlusInt (Pos (Succ xv16)) (showInt1D0 xv17 (Pos Zero) (showInt1Vu76 xv17 (Pos Zero)))",fontsize=16,color="black",shape="box"];224 -> 238[label="",style="solid", color="black", weight=3]; 72.57/40.27 225[label="primPlusInt (Pos (Succ xv19)) (showInt1D0 xv20 (Neg Zero) (showInt1Vu76 xv20 (Neg Zero)))",fontsize=16,color="black",shape="box"];225 -> 239[label="",style="solid", color="black", weight=3]; 72.57/40.27 612 -> 432[label="",style="dashed", color="red", weight=0]; 72.57/40.27 612[label="showInt1N'0 xv75 (Pos (Succ xv76)) (quotRemMyInt (Pos (Succ xv76)) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))",fontsize=16,color="magenta"];612 -> 620[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 612 -> 621[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 612 -> 622[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 466[label="primQuotInt (Pos (Succ xv72)) (fromIntMyInt (Pos (Succ xv73)))",fontsize=16,color="black",shape="triangle"];466 -> 473[label="",style="solid", color="black", weight=3]; 72.57/40.27 423[label="psMyInt (fromEnumChar (Char (Pos (Succ xv67)))) (fromIntMyInt (showInt1D xv68 (Pos (Succ xv69))))",fontsize=16,color="black",shape="box"];423 -> 449[label="",style="solid", color="black", weight=3]; 72.57/40.27 238 -> 251[label="",style="dashed", color="red", weight=0]; 72.57/40.27 238[label="primPlusInt (Pos (Succ xv16)) (showInt1D0 xv17 (Pos Zero) (quotRemMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))",fontsize=16,color="magenta"];238 -> 252[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 238 -> 253[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 238 -> 254[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 239 -> 255[label="",style="dashed", color="red", weight=0]; 72.57/40.27 239[label="primPlusInt (Pos (Succ xv19)) (showInt1D0 xv20 (Neg Zero) (quotRemMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))",fontsize=16,color="magenta"];239 -> 256[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 239 -> 257[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 239 -> 258[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 620[label="xv75",fontsize=16,color="green",shape="box"];621[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];622[label="xv76",fontsize=16,color="green",shape="box"];473[label="primQuotInt (Pos (Succ xv72)) (Pos (Succ xv73))",fontsize=16,color="black",shape="box"];473 -> 480[label="",style="solid", color="black", weight=3]; 72.57/40.27 449[label="primPlusInt (fromEnumChar (Char (Pos (Succ xv67)))) (fromIntMyInt (showInt1D xv68 (Pos (Succ xv69))))",fontsize=16,color="black",shape="box"];449 -> 457[label="",style="solid", color="black", weight=3]; 72.57/40.27 252[label="xv17",fontsize=16,color="green",shape="box"];253[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];254[label="xv16",fontsize=16,color="green",shape="box"];251[label="primPlusInt (Pos (Succ xv36)) (showInt1D0 xv37 (Pos Zero) (quotRemMyInt (Pos Zero) (fromIntMyInt (Pos (Succ xv38)))))",fontsize=16,color="black",shape="triangle"];251 -> 274[label="",style="solid", color="black", weight=3]; 72.57/40.27 256[label="xv20",fontsize=16,color="green",shape="box"];257[label="xv19",fontsize=16,color="green",shape="box"];258[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];255[label="primPlusInt (Pos (Succ xv40)) (showInt1D0 xv41 (Neg Zero) (quotRemMyInt (Neg Zero) (fromIntMyInt (Pos (Succ xv42)))))",fontsize=16,color="black",shape="triangle"];255 -> 275[label="",style="solid", color="black", weight=3]; 72.57/40.27 480[label="Pos (primDivNatS (Succ xv72) (Succ xv73))",fontsize=16,color="green",shape="box"];480 -> 535[label="",style="dashed", color="green", weight=3]; 72.57/40.27 457[label="primPlusInt (primCharToInt (Char (Pos (Succ xv67)))) (fromIntMyInt (showInt1D xv68 (Pos (Succ xv69))))",fontsize=16,color="black",shape="box"];457 -> 467[label="",style="solid", color="black", weight=3]; 72.57/40.27 274[label="primPlusInt (Pos (Succ xv36)) (showInt1D0 xv37 (Pos Zero) (primQrmInt (Pos Zero) (fromIntMyInt (Pos (Succ xv38)))))",fontsize=16,color="black",shape="box"];274 -> 287[label="",style="solid", color="black", weight=3]; 72.57/40.27 275[label="primPlusInt (Pos (Succ xv40)) (showInt1D0 xv41 (Neg Zero) (primQrmInt (Neg Zero) (fromIntMyInt (Pos (Succ xv42)))))",fontsize=16,color="black",shape="box"];275 -> 288[label="",style="solid", color="black", weight=3]; 72.57/40.27 535[label="primDivNatS (Succ xv72) (Succ xv73)",fontsize=16,color="black",shape="triangle"];535 -> 541[label="",style="solid", color="black", weight=3]; 72.57/40.27 467[label="primPlusInt (Pos (Succ xv67)) (fromIntMyInt (showInt1D xv68 (Pos (Succ xv69))))",fontsize=16,color="black",shape="box"];467 -> 474[label="",style="solid", color="black", weight=3]; 72.57/40.27 287[label="primPlusInt (Pos (Succ xv36)) (showInt1D0 xv37 (Pos Zero) (Tup2 (primQuotInt (Pos Zero) (fromIntMyInt (Pos (Succ xv38)))) (primRemInt (Pos Zero) (fromIntMyInt (Pos (Succ xv38))))))",fontsize=16,color="black",shape="box"];287 -> 299[label="",style="solid", color="black", weight=3]; 72.57/40.27 288[label="primPlusInt (Pos (Succ xv40)) (showInt1D0 xv41 (Neg Zero) (Tup2 (primQuotInt (Neg Zero) (fromIntMyInt (Pos (Succ xv42)))) (primRemInt (Neg Zero) (fromIntMyInt (Pos (Succ xv42))))))",fontsize=16,color="black",shape="box"];288 -> 300[label="",style="solid", color="black", weight=3]; 72.57/40.27 541[label="primDivNatS0 xv72 xv73 (primGEqNatS xv72 xv73)",fontsize=16,color="burlywood",shape="box"];1474[label="xv72/Succ xv720",fontsize=10,color="white",style="solid",shape="box"];541 -> 1474[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1474 -> 551[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1475[label="xv72/Zero",fontsize=10,color="white",style="solid",shape="box"];541 -> 1475[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1475 -> 552[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 474[label="primPlusInt (Pos (Succ xv67)) (showInt1D xv68 (Pos (Succ xv69)))",fontsize=16,color="black",shape="box"];474 -> 481[label="",style="solid", color="black", weight=3]; 72.57/40.27 299[label="primPlusInt (Pos (Succ xv36)) (primRemInt (Pos Zero) (fromIntMyInt (Pos (Succ xv38))))",fontsize=16,color="black",shape="box"];299 -> 330[label="",style="solid", color="black", weight=3]; 72.57/40.27 300[label="primPlusInt (Pos (Succ xv40)) (primRemInt (Neg Zero) (fromIntMyInt (Pos (Succ xv42))))",fontsize=16,color="black",shape="box"];300 -> 331[label="",style="solid", color="black", weight=3]; 72.57/40.27 551[label="primDivNatS0 (Succ xv720) xv73 (primGEqNatS (Succ xv720) xv73)",fontsize=16,color="burlywood",shape="box"];1476[label="xv73/Succ xv730",fontsize=10,color="white",style="solid",shape="box"];551 -> 1476[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1476 -> 558[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1477[label="xv73/Zero",fontsize=10,color="white",style="solid",shape="box"];551 -> 1477[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1477 -> 559[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 552[label="primDivNatS0 Zero xv73 (primGEqNatS Zero xv73)",fontsize=16,color="burlywood",shape="box"];1478[label="xv73/Succ xv730",fontsize=10,color="white",style="solid",shape="box"];552 -> 1478[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1478 -> 560[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1479[label="xv73/Zero",fontsize=10,color="white",style="solid",shape="box"];552 -> 1479[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1479 -> 561[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 481[label="primPlusInt (Pos (Succ xv67)) (showInt1D0 xv68 (Pos (Succ xv69)) (showInt1Vu76 xv68 (Pos (Succ xv69))))",fontsize=16,color="black",shape="box"];481 -> 536[label="",style="solid", color="black", weight=3]; 72.57/40.27 330[label="primPlusInt (Pos (Succ xv36)) (primRemInt (Pos Zero) (Pos (Succ xv38)))",fontsize=16,color="black",shape="box"];330 -> 348[label="",style="solid", color="black", weight=3]; 72.57/40.27 331[label="primPlusInt (Pos (Succ xv40)) (primRemInt (Neg Zero) (Pos (Succ xv42)))",fontsize=16,color="black",shape="box"];331 -> 349[label="",style="solid", color="black", weight=3]; 72.57/40.27 558[label="primDivNatS0 (Succ xv720) (Succ xv730) (primGEqNatS (Succ xv720) (Succ xv730))",fontsize=16,color="black",shape="box"];558 -> 565[label="",style="solid", color="black", weight=3]; 72.57/40.27 559[label="primDivNatS0 (Succ xv720) Zero (primGEqNatS (Succ xv720) Zero)",fontsize=16,color="black",shape="box"];559 -> 566[label="",style="solid", color="black", weight=3]; 72.57/40.27 560[label="primDivNatS0 Zero (Succ xv730) (primGEqNatS Zero (Succ xv730))",fontsize=16,color="black",shape="box"];560 -> 567[label="",style="solid", color="black", weight=3]; 72.57/40.27 561[label="primDivNatS0 Zero Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];561 -> 568[label="",style="solid", color="black", weight=3]; 72.57/40.27 536 -> 542[label="",style="dashed", color="red", weight=0]; 72.57/40.27 536[label="primPlusInt (Pos (Succ xv67)) (showInt1D0 xv68 (Pos (Succ xv69)) (quotRemMyInt (Pos (Succ xv69)) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))",fontsize=16,color="magenta"];536 -> 543[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 536 -> 544[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 536 -> 545[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 536 -> 546[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 348[label="primPlusInt (Pos (Succ xv36)) (Pos (primModNatS Zero (Succ xv38)))",fontsize=16,color="black",shape="box"];348 -> 387[label="",style="solid", color="black", weight=3]; 72.57/40.27 349[label="primPlusInt (Pos (Succ xv40)) (Neg (primModNatS Zero (Succ xv42)))",fontsize=16,color="black",shape="box"];349 -> 388[label="",style="solid", color="black", weight=3]; 72.57/40.27 565 -> 819[label="",style="dashed", color="red", weight=0]; 72.57/40.27 565[label="primDivNatS0 (Succ xv720) (Succ xv730) (primGEqNatS xv720 xv730)",fontsize=16,color="magenta"];565 -> 820[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 565 -> 821[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 565 -> 822[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 565 -> 823[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 566[label="primDivNatS0 (Succ xv720) Zero MyTrue",fontsize=16,color="black",shape="box"];566 -> 575[label="",style="solid", color="black", weight=3]; 72.57/40.27 567[label="primDivNatS0 Zero (Succ xv730) MyFalse",fontsize=16,color="black",shape="box"];567 -> 576[label="",style="solid", color="black", weight=3]; 72.57/40.27 568[label="primDivNatS0 Zero Zero MyTrue",fontsize=16,color="black",shape="box"];568 -> 577[label="",style="solid", color="black", weight=3]; 72.57/40.27 543[label="xv67",fontsize=16,color="green",shape="box"];544[label="xv68",fontsize=16,color="green",shape="box"];545[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];546[label="xv69",fontsize=16,color="green",shape="box"];542[label="primPlusInt (Pos (Succ xv81)) (showInt1D0 xv82 (Pos (Succ xv83)) (quotRemMyInt (Pos (Succ xv83)) (fromIntMyInt (Pos (Succ xv84)))))",fontsize=16,color="black",shape="triangle"];542 -> 553[label="",style="solid", color="black", weight=3]; 72.57/40.27 387[label="Pos (primPlusNat (Succ xv36) (primModNatS Zero (Succ xv38)))",fontsize=16,color="green",shape="box"];387 -> 405[label="",style="dashed", color="green", weight=3]; 72.57/40.27 388[label="primMinusNat (Succ xv40) (primModNatS Zero (Succ xv42))",fontsize=16,color="black",shape="box"];388 -> 406[label="",style="solid", color="black", weight=3]; 72.57/40.27 820[label="xv730",fontsize=16,color="green",shape="box"];821[label="xv720",fontsize=16,color="green",shape="box"];822[label="xv720",fontsize=16,color="green",shape="box"];823[label="xv730",fontsize=16,color="green",shape="box"];819[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS xv104 xv105)",fontsize=16,color="burlywood",shape="triangle"];1480[label="xv104/Succ xv1040",fontsize=10,color="white",style="solid",shape="box"];819 -> 1480[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1480 -> 852[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1481[label="xv104/Zero",fontsize=10,color="white",style="solid",shape="box"];819 -> 1481[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1481 -> 853[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 575[label="Succ (primDivNatS (primMinusNatS (Succ xv720) Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];575 -> 588[label="",style="dashed", color="green", weight=3]; 72.57/40.27 576[label="Zero",fontsize=16,color="green",shape="box"];577[label="Succ (primDivNatS (primMinusNatS Zero Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];577 -> 589[label="",style="dashed", color="green", weight=3]; 72.57/40.27 553[label="primPlusInt (Pos (Succ xv81)) (showInt1D0 xv82 (Pos (Succ xv83)) (primQrmInt (Pos (Succ xv83)) (fromIntMyInt (Pos (Succ xv84)))))",fontsize=16,color="black",shape="box"];553 -> 562[label="",style="solid", color="black", weight=3]; 72.57/40.27 405[label="primPlusNat (Succ xv36) (primModNatS Zero (Succ xv38))",fontsize=16,color="black",shape="triangle"];405 -> 425[label="",style="solid", color="black", weight=3]; 72.57/40.27 406[label="primMinusNat (Succ xv40) Zero",fontsize=16,color="black",shape="box"];406 -> 426[label="",style="solid", color="black", weight=3]; 72.57/40.27 852[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS (Succ xv1040) xv105)",fontsize=16,color="burlywood",shape="box"];1482[label="xv105/Succ xv1050",fontsize=10,color="white",style="solid",shape="box"];852 -> 1482[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1482 -> 862[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1483[label="xv105/Zero",fontsize=10,color="white",style="solid",shape="box"];852 -> 1483[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1483 -> 863[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 853[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS Zero xv105)",fontsize=16,color="burlywood",shape="box"];1484[label="xv105/Succ xv1050",fontsize=10,color="white",style="solid",shape="box"];853 -> 1484[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1484 -> 864[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1485[label="xv105/Zero",fontsize=10,color="white",style="solid",shape="box"];853 -> 1485[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1485 -> 865[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 588 -> 1242[label="",style="dashed", color="red", weight=0]; 72.57/40.27 588[label="primDivNatS (primMinusNatS (Succ xv720) Zero) (Succ Zero)",fontsize=16,color="magenta"];588 -> 1243[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 588 -> 1244[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 588 -> 1245[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 589 -> 1242[label="",style="dashed", color="red", weight=0]; 72.57/40.27 589[label="primDivNatS (primMinusNatS Zero Zero) (Succ Zero)",fontsize=16,color="magenta"];589 -> 1246[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 589 -> 1247[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 589 -> 1248[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 562 -> 569[label="",style="dashed", color="red", weight=0]; 72.57/40.27 562[label="primPlusInt (Pos (Succ xv81)) (showInt1D0 xv82 (Pos (Succ xv83)) (Tup2 (primQuotInt (Pos (Succ xv83)) (fromIntMyInt (Pos (Succ xv84)))) (primRemInt (Pos (Succ xv83)) (fromIntMyInt (Pos (Succ xv84))))))",fontsize=16,color="magenta"];562 -> 570[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 425[label="primPlusNat (Succ xv36) Zero",fontsize=16,color="black",shape="triangle"];425 -> 450[label="",style="solid", color="black", weight=3]; 72.57/40.27 426[label="Pos (Succ xv40)",fontsize=16,color="green",shape="box"];862[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS (Succ xv1040) (Succ xv1050))",fontsize=16,color="black",shape="box"];862 -> 876[label="",style="solid", color="black", weight=3]; 72.57/40.27 863[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS (Succ xv1040) Zero)",fontsize=16,color="black",shape="box"];863 -> 877[label="",style="solid", color="black", weight=3]; 72.57/40.27 864[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS Zero (Succ xv1050))",fontsize=16,color="black",shape="box"];864 -> 878[label="",style="solid", color="black", weight=3]; 72.57/40.27 865[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];865 -> 879[label="",style="solid", color="black", weight=3]; 72.57/40.27 1243[label="Zero",fontsize=16,color="green",shape="box"];1244[label="Zero",fontsize=16,color="green",shape="box"];1245[label="Succ xv720",fontsize=16,color="green",shape="box"];1242[label="primDivNatS (primMinusNatS xv146 xv147) (Succ xv148)",fontsize=16,color="burlywood",shape="triangle"];1486[label="xv146/Succ xv1460",fontsize=10,color="white",style="solid",shape="box"];1242 -> 1486[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1486 -> 1276[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1487[label="xv146/Zero",fontsize=10,color="white",style="solid",shape="box"];1242 -> 1487[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1487 -> 1277[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1246[label="Zero",fontsize=16,color="green",shape="box"];1247[label="Zero",fontsize=16,color="green",shape="box"];1248[label="Zero",fontsize=16,color="green",shape="box"];570 -> 466[label="",style="dashed", color="red", weight=0]; 72.57/40.27 570[label="primQuotInt (Pos (Succ xv83)) (fromIntMyInt (Pos (Succ xv84)))",fontsize=16,color="magenta"];570 -> 578[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 570 -> 579[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 569[label="primPlusInt (Pos (Succ xv81)) (showInt1D0 xv82 (Pos (Succ xv83)) (Tup2 xv85 (primRemInt (Pos (Succ xv83)) (fromIntMyInt (Pos (Succ xv84))))))",fontsize=16,color="black",shape="triangle"];569 -> 580[label="",style="solid", color="black", weight=3]; 72.57/40.27 450[label="Succ xv36",fontsize=16,color="green",shape="box"];876 -> 819[label="",style="dashed", color="red", weight=0]; 72.57/40.27 876[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS xv1040 xv1050)",fontsize=16,color="magenta"];876 -> 893[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 876 -> 894[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 877[label="primDivNatS0 (Succ xv102) (Succ xv103) MyTrue",fontsize=16,color="black",shape="triangle"];877 -> 895[label="",style="solid", color="black", weight=3]; 72.57/40.27 878[label="primDivNatS0 (Succ xv102) (Succ xv103) MyFalse",fontsize=16,color="black",shape="box"];878 -> 896[label="",style="solid", color="black", weight=3]; 72.57/40.27 879 -> 877[label="",style="dashed", color="red", weight=0]; 72.57/40.27 879[label="primDivNatS0 (Succ xv102) (Succ xv103) MyTrue",fontsize=16,color="magenta"];1276[label="primDivNatS (primMinusNatS (Succ xv1460) xv147) (Succ xv148)",fontsize=16,color="burlywood",shape="box"];1488[label="xv147/Succ xv1470",fontsize=10,color="white",style="solid",shape="box"];1276 -> 1488[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1488 -> 1292[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1489[label="xv147/Zero",fontsize=10,color="white",style="solid",shape="box"];1276 -> 1489[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1489 -> 1293[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1277[label="primDivNatS (primMinusNatS Zero xv147) (Succ xv148)",fontsize=16,color="burlywood",shape="box"];1490[label="xv147/Succ xv1470",fontsize=10,color="white",style="solid",shape="box"];1277 -> 1490[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1490 -> 1294[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1491[label="xv147/Zero",fontsize=10,color="white",style="solid",shape="box"];1277 -> 1491[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1491 -> 1295[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 578[label="xv84",fontsize=16,color="green",shape="box"];579[label="xv83",fontsize=16,color="green",shape="box"];580[label="primPlusInt (Pos (Succ xv81)) (primRemInt (Pos (Succ xv83)) (fromIntMyInt (Pos (Succ xv84))))",fontsize=16,color="black",shape="box"];580 -> 590[label="",style="solid", color="black", weight=3]; 72.57/40.27 893[label="xv1040",fontsize=16,color="green",shape="box"];894[label="xv1050",fontsize=16,color="green",shape="box"];895[label="Succ (primDivNatS (primMinusNatS (Succ xv102) (Succ xv103)) (Succ (Succ xv103)))",fontsize=16,color="green",shape="box"];895 -> 905[label="",style="dashed", color="green", weight=3]; 72.57/40.27 896[label="Zero",fontsize=16,color="green",shape="box"];1292[label="primDivNatS (primMinusNatS (Succ xv1460) (Succ xv1470)) (Succ xv148)",fontsize=16,color="black",shape="box"];1292 -> 1327[label="",style="solid", color="black", weight=3]; 72.57/40.27 1293[label="primDivNatS (primMinusNatS (Succ xv1460) Zero) (Succ xv148)",fontsize=16,color="black",shape="box"];1293 -> 1328[label="",style="solid", color="black", weight=3]; 72.57/40.27 1294[label="primDivNatS (primMinusNatS Zero (Succ xv1470)) (Succ xv148)",fontsize=16,color="black",shape="box"];1294 -> 1329[label="",style="solid", color="black", weight=3]; 72.57/40.27 1295[label="primDivNatS (primMinusNatS Zero Zero) (Succ xv148)",fontsize=16,color="black",shape="box"];1295 -> 1330[label="",style="solid", color="black", weight=3]; 72.57/40.27 590[label="primPlusInt (Pos (Succ xv81)) (primRemInt (Pos (Succ xv83)) (Pos (Succ xv84)))",fontsize=16,color="black",shape="box"];590 -> 599[label="",style="solid", color="black", weight=3]; 72.57/40.27 905 -> 1242[label="",style="dashed", color="red", weight=0]; 72.57/40.27 905[label="primDivNatS (primMinusNatS (Succ xv102) (Succ xv103)) (Succ (Succ xv103))",fontsize=16,color="magenta"];905 -> 1249[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 905 -> 1250[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 905 -> 1251[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1327 -> 1242[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1327[label="primDivNatS (primMinusNatS xv1460 xv1470) (Succ xv148)",fontsize=16,color="magenta"];1327 -> 1338[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1327 -> 1339[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1328 -> 535[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1328[label="primDivNatS (Succ xv1460) (Succ xv148)",fontsize=16,color="magenta"];1328 -> 1340[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1328 -> 1341[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1329[label="primDivNatS Zero (Succ xv148)",fontsize=16,color="black",shape="triangle"];1329 -> 1342[label="",style="solid", color="black", weight=3]; 72.57/40.27 1330 -> 1329[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1330[label="primDivNatS Zero (Succ xv148)",fontsize=16,color="magenta"];599[label="primPlusInt (Pos (Succ xv81)) (Pos (primModNatS (Succ xv83) (Succ xv84)))",fontsize=16,color="black",shape="box"];599 -> 611[label="",style="solid", color="black", weight=3]; 72.57/40.27 1249[label="Succ xv103",fontsize=16,color="green",shape="box"];1250[label="Succ xv103",fontsize=16,color="green",shape="box"];1251[label="Succ xv102",fontsize=16,color="green",shape="box"];1338[label="xv1470",fontsize=16,color="green",shape="box"];1339[label="xv1460",fontsize=16,color="green",shape="box"];1340[label="xv148",fontsize=16,color="green",shape="box"];1341[label="xv1460",fontsize=16,color="green",shape="box"];1342[label="Zero",fontsize=16,color="green",shape="box"];611[label="Pos (primPlusNat (Succ xv81) (primModNatS (Succ xv83) (Succ xv84)))",fontsize=16,color="green",shape="box"];611 -> 619[label="",style="dashed", color="green", weight=3]; 72.57/40.27 619[label="primPlusNat (Succ xv81) (primModNatS (Succ xv83) (Succ xv84))",fontsize=16,color="burlywood",shape="triangle"];1492[label="xv84/Succ xv840",fontsize=10,color="white",style="solid",shape="box"];619 -> 1492[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1492 -> 629[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1493[label="xv84/Zero",fontsize=10,color="white",style="solid",shape="box"];619 -> 1493[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1493 -> 630[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 629[label="primPlusNat (Succ xv81) (primModNatS (Succ xv83) (Succ (Succ xv840)))",fontsize=16,color="black",shape="box"];629 -> 638[label="",style="solid", color="black", weight=3]; 72.57/40.27 630[label="primPlusNat (Succ xv81) (primModNatS (Succ xv83) (Succ Zero))",fontsize=16,color="black",shape="box"];630 -> 639[label="",style="solid", color="black", weight=3]; 72.57/40.27 638[label="primPlusNat (Succ xv81) (primModNatS0 xv83 xv840 (primGEqNatS xv83 (Succ xv840)))",fontsize=16,color="burlywood",shape="box"];1494[label="xv83/Succ xv830",fontsize=10,color="white",style="solid",shape="box"];638 -> 1494[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1494 -> 649[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1495[label="xv83/Zero",fontsize=10,color="white",style="solid",shape="box"];638 -> 1495[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1495 -> 650[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 639 -> 425[label="",style="dashed", color="red", weight=0]; 72.57/40.27 639[label="primPlusNat (Succ xv81) Zero",fontsize=16,color="magenta"];639 -> 651[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 649[label="primPlusNat (Succ xv81) (primModNatS0 (Succ xv830) xv840 (primGEqNatS (Succ xv830) (Succ xv840)))",fontsize=16,color="black",shape="box"];649 -> 658[label="",style="solid", color="black", weight=3]; 72.57/40.27 650[label="primPlusNat (Succ xv81) (primModNatS0 Zero xv840 (primGEqNatS Zero (Succ xv840)))",fontsize=16,color="black",shape="box"];650 -> 659[label="",style="solid", color="black", weight=3]; 72.57/40.27 651[label="xv81",fontsize=16,color="green",shape="box"];658[label="primPlusNat (Succ xv81) (primModNatS0 (Succ xv830) xv840 (primGEqNatS xv830 xv840))",fontsize=16,color="burlywood",shape="box"];1496[label="xv830/Succ xv8300",fontsize=10,color="white",style="solid",shape="box"];658 -> 1496[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1496 -> 667[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1497[label="xv830/Zero",fontsize=10,color="white",style="solid",shape="box"];658 -> 1497[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1497 -> 668[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 659[label="primPlusNat (Succ xv81) (primModNatS0 Zero xv840 MyFalse)",fontsize=16,color="black",shape="box"];659 -> 669[label="",style="solid", color="black", weight=3]; 72.57/40.27 667[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ xv8300)) xv840 (primGEqNatS (Succ xv8300) xv840))",fontsize=16,color="burlywood",shape="box"];1498[label="xv840/Succ xv8400",fontsize=10,color="white",style="solid",shape="box"];667 -> 1498[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1498 -> 678[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1499[label="xv840/Zero",fontsize=10,color="white",style="solid",shape="box"];667 -> 1499[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1499 -> 679[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 668[label="primPlusNat (Succ xv81) (primModNatS0 (Succ Zero) xv840 (primGEqNatS Zero xv840))",fontsize=16,color="burlywood",shape="box"];1500[label="xv840/Succ xv8400",fontsize=10,color="white",style="solid",shape="box"];668 -> 1500[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1500 -> 680[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1501[label="xv840/Zero",fontsize=10,color="white",style="solid",shape="box"];668 -> 1501[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1501 -> 681[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 669 -> 969[label="",style="dashed", color="red", weight=0]; 72.57/40.27 669[label="primPlusNat (Succ xv81) (Succ Zero)",fontsize=16,color="magenta"];669 -> 970[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 669 -> 971[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 678[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ xv8300)) (Succ xv8400) (primGEqNatS (Succ xv8300) (Succ xv8400)))",fontsize=16,color="black",shape="box"];678 -> 692[label="",style="solid", color="black", weight=3]; 72.57/40.27 679[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ xv8300)) Zero (primGEqNatS (Succ xv8300) Zero))",fontsize=16,color="black",shape="box"];679 -> 693[label="",style="solid", color="black", weight=3]; 72.57/40.27 680[label="primPlusNat (Succ xv81) (primModNatS0 (Succ Zero) (Succ xv8400) (primGEqNatS Zero (Succ xv8400)))",fontsize=16,color="black",shape="box"];680 -> 694[label="",style="solid", color="black", weight=3]; 72.57/40.27 681[label="primPlusNat (Succ xv81) (primModNatS0 (Succ Zero) Zero (primGEqNatS Zero Zero))",fontsize=16,color="black",shape="box"];681 -> 695[label="",style="solid", color="black", weight=3]; 72.57/40.27 970[label="xv81",fontsize=16,color="green",shape="box"];971[label="Zero",fontsize=16,color="green",shape="box"];969[label="primPlusNat (Succ xv110) (Succ xv111)",fontsize=16,color="black",shape="triangle"];969 -> 988[label="",style="solid", color="black", weight=3]; 72.57/40.27 692[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ xv8300)) (Succ xv8400) (primGEqNatS xv8300 xv8400))",fontsize=16,color="burlywood",shape="box"];1502[label="xv8300/Succ xv83000",fontsize=10,color="white",style="solid",shape="box"];692 -> 1502[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1502 -> 704[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1503[label="xv8300/Zero",fontsize=10,color="white",style="solid",shape="box"];692 -> 1503[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1503 -> 705[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 693[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ xv8300)) Zero MyTrue)",fontsize=16,color="black",shape="box"];693 -> 706[label="",style="solid", color="black", weight=3]; 72.57/40.27 694[label="primPlusNat (Succ xv81) (primModNatS0 (Succ Zero) (Succ xv8400) MyFalse)",fontsize=16,color="black",shape="box"];694 -> 707[label="",style="solid", color="black", weight=3]; 72.57/40.27 695[label="primPlusNat (Succ xv81) (primModNatS0 (Succ Zero) Zero MyTrue)",fontsize=16,color="black",shape="box"];695 -> 708[label="",style="solid", color="black", weight=3]; 72.57/40.27 988[label="Succ (Succ (primPlusNat xv110 xv111))",fontsize=16,color="green",shape="box"];988 -> 1000[label="",style="dashed", color="green", weight=3]; 72.57/40.27 704[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ xv83000))) (Succ xv8400) (primGEqNatS (Succ xv83000) xv8400))",fontsize=16,color="burlywood",shape="box"];1504[label="xv8400/Succ xv84000",fontsize=10,color="white",style="solid",shape="box"];704 -> 1504[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1504 -> 719[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1505[label="xv8400/Zero",fontsize=10,color="white",style="solid",shape="box"];704 -> 1505[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1505 -> 720[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 705[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ Zero)) (Succ xv8400) (primGEqNatS Zero xv8400))",fontsize=16,color="burlywood",shape="box"];1506[label="xv8400/Succ xv84000",fontsize=10,color="white",style="solid",shape="box"];705 -> 1506[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1506 -> 721[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1507[label="xv8400/Zero",fontsize=10,color="white",style="solid",shape="box"];705 -> 1507[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1507 -> 722[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 706[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ xv8300)) (Succ Zero)) (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];706 -> 723[label="",style="solid", color="black", weight=3]; 72.57/40.27 707 -> 969[label="",style="dashed", color="red", weight=0]; 72.57/40.27 707[label="primPlusNat (Succ xv81) (Succ (Succ Zero))",fontsize=16,color="magenta"];707 -> 972[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 707 -> 973[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 708[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ Zero) (Succ Zero)) (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];708 -> 725[label="",style="solid", color="black", weight=3]; 72.57/40.27 1000[label="primPlusNat xv110 xv111",fontsize=16,color="burlywood",shape="triangle"];1508[label="xv110/Succ xv1100",fontsize=10,color="white",style="solid",shape="box"];1000 -> 1508[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1508 -> 1016[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1509[label="xv110/Zero",fontsize=10,color="white",style="solid",shape="box"];1000 -> 1509[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1509 -> 1017[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 719[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ xv83000))) (Succ (Succ xv84000)) (primGEqNatS (Succ xv83000) (Succ xv84000)))",fontsize=16,color="black",shape="box"];719 -> 736[label="",style="solid", color="black", weight=3]; 72.57/40.27 720[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ xv83000))) (Succ Zero) (primGEqNatS (Succ xv83000) Zero))",fontsize=16,color="black",shape="box"];720 -> 737[label="",style="solid", color="black", weight=3]; 72.57/40.27 721[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ Zero)) (Succ (Succ xv84000)) (primGEqNatS Zero (Succ xv84000)))",fontsize=16,color="black",shape="box"];721 -> 738[label="",style="solid", color="black", weight=3]; 72.57/40.27 722[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ Zero)) (Succ Zero) (primGEqNatS Zero Zero))",fontsize=16,color="black",shape="box"];722 -> 739[label="",style="solid", color="black", weight=3]; 72.57/40.27 723[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ xv8300) Zero) (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];723 -> 740[label="",style="solid", color="black", weight=3]; 72.57/40.27 972[label="xv81",fontsize=16,color="green",shape="box"];973[label="Succ Zero",fontsize=16,color="green",shape="box"];725[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS Zero Zero) (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];725 -> 742[label="",style="solid", color="black", weight=3]; 72.57/40.27 1016[label="primPlusNat (Succ xv1100) xv111",fontsize=16,color="burlywood",shape="box"];1510[label="xv111/Succ xv1110",fontsize=10,color="white",style="solid",shape="box"];1016 -> 1510[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1510 -> 1038[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1511[label="xv111/Zero",fontsize=10,color="white",style="solid",shape="box"];1016 -> 1511[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1511 -> 1039[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1017[label="primPlusNat Zero xv111",fontsize=16,color="burlywood",shape="box"];1512[label="xv111/Succ xv1110",fontsize=10,color="white",style="solid",shape="box"];1017 -> 1512[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1512 -> 1040[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1513[label="xv111/Zero",fontsize=10,color="white",style="solid",shape="box"];1017 -> 1513[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1513 -> 1041[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 736[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ xv83000))) (Succ (Succ xv84000)) (primGEqNatS xv83000 xv84000))",fontsize=16,color="burlywood",shape="box"];1514[label="xv83000/Succ xv830000",fontsize=10,color="white",style="solid",shape="box"];736 -> 1514[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1514 -> 793[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1515[label="xv83000/Zero",fontsize=10,color="white",style="solid",shape="box"];736 -> 1515[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1515 -> 794[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 737[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ xv83000))) (Succ Zero) MyTrue)",fontsize=16,color="black",shape="box"];737 -> 795[label="",style="solid", color="black", weight=3]; 72.57/40.27 738[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ Zero)) (Succ (Succ xv84000)) MyFalse)",fontsize=16,color="black",shape="box"];738 -> 796[label="",style="solid", color="black", weight=3]; 72.57/40.27 739[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ Zero)) (Succ Zero) MyTrue)",fontsize=16,color="black",shape="box"];739 -> 797[label="",style="solid", color="black", weight=3]; 72.57/40.27 740 -> 619[label="",style="dashed", color="red", weight=0]; 72.57/40.27 740[label="primPlusNat (Succ xv81) (primModNatS (Succ xv8300) (Succ (Succ Zero)))",fontsize=16,color="magenta"];740 -> 798[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 740 -> 799[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 742 -> 405[label="",style="dashed", color="red", weight=0]; 72.57/40.27 742[label="primPlusNat (Succ xv81) (primModNatS Zero (Succ (Succ Zero)))",fontsize=16,color="magenta"];742 -> 802[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 742 -> 803[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1038[label="primPlusNat (Succ xv1100) (Succ xv1110)",fontsize=16,color="black",shape="box"];1038 -> 1051[label="",style="solid", color="black", weight=3]; 72.57/40.27 1039[label="primPlusNat (Succ xv1100) Zero",fontsize=16,color="black",shape="box"];1039 -> 1052[label="",style="solid", color="black", weight=3]; 72.57/40.27 1040[label="primPlusNat Zero (Succ xv1110)",fontsize=16,color="black",shape="box"];1040 -> 1053[label="",style="solid", color="black", weight=3]; 72.57/40.27 1041[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];1041 -> 1054[label="",style="solid", color="black", weight=3]; 72.57/40.27 793[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ xv830000)))) (Succ (Succ xv84000)) (primGEqNatS (Succ xv830000) xv84000))",fontsize=16,color="burlywood",shape="box"];1516[label="xv84000/Succ xv840000",fontsize=10,color="white",style="solid",shape="box"];793 -> 1516[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1516 -> 809[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1517[label="xv84000/Zero",fontsize=10,color="white",style="solid",shape="box"];793 -> 1517[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1517 -> 810[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 794[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ Zero))) (Succ (Succ xv84000)) (primGEqNatS Zero xv84000))",fontsize=16,color="burlywood",shape="box"];1518[label="xv84000/Succ xv840000",fontsize=10,color="white",style="solid",shape="box"];794 -> 1518[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1518 -> 811[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1519[label="xv84000/Zero",fontsize=10,color="white",style="solid",shape="box"];794 -> 1519[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1519 -> 812[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 795[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ xv83000))) (Succ (Succ Zero))) (Succ (Succ (Succ Zero))))",fontsize=16,color="black",shape="box"];795 -> 813[label="",style="solid", color="black", weight=3]; 72.57/40.27 796 -> 969[label="",style="dashed", color="red", weight=0]; 72.57/40.27 796[label="primPlusNat (Succ xv81) (Succ (Succ (Succ Zero)))",fontsize=16,color="magenta"];796 -> 974[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 796 -> 975[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 797[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ Zero)) (Succ (Succ Zero))) (Succ (Succ (Succ Zero))))",fontsize=16,color="black",shape="box"];797 -> 815[label="",style="solid", color="black", weight=3]; 72.57/40.27 798[label="Succ Zero",fontsize=16,color="green",shape="box"];799[label="xv8300",fontsize=16,color="green",shape="box"];802[label="Succ Zero",fontsize=16,color="green",shape="box"];803[label="xv81",fontsize=16,color="green",shape="box"];1051[label="Succ (Succ (primPlusNat xv1100 xv1110))",fontsize=16,color="green",shape="box"];1051 -> 1069[label="",style="dashed", color="green", weight=3]; 72.57/40.27 1052[label="Succ xv1100",fontsize=16,color="green",shape="box"];1053[label="Succ xv1110",fontsize=16,color="green",shape="box"];1054[label="Zero",fontsize=16,color="green",shape="box"];809[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ xv830000)))) (Succ (Succ (Succ xv840000))) (primGEqNatS (Succ xv830000) (Succ xv840000)))",fontsize=16,color="black",shape="box"];809 -> 854[label="",style="solid", color="black", weight=3]; 72.57/40.27 810[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ xv830000)))) (Succ (Succ Zero)) (primGEqNatS (Succ xv830000) Zero))",fontsize=16,color="black",shape="box"];810 -> 855[label="",style="solid", color="black", weight=3]; 72.57/40.27 811[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ Zero))) (Succ (Succ (Succ xv840000))) (primGEqNatS Zero (Succ xv840000)))",fontsize=16,color="black",shape="box"];811 -> 856[label="",style="solid", color="black", weight=3]; 72.57/40.27 812[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ Zero))) (Succ (Succ Zero)) (primGEqNatS Zero Zero))",fontsize=16,color="black",shape="box"];812 -> 857[label="",style="solid", color="black", weight=3]; 72.57/40.27 813[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ xv83000)) (Succ Zero)) (Succ (Succ (Succ Zero))))",fontsize=16,color="black",shape="box"];813 -> 858[label="",style="solid", color="black", weight=3]; 72.57/40.27 974[label="xv81",fontsize=16,color="green",shape="box"];975[label="Succ (Succ Zero)",fontsize=16,color="green",shape="box"];815[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ Zero) (Succ Zero)) (Succ (Succ (Succ Zero))))",fontsize=16,color="black",shape="box"];815 -> 860[label="",style="solid", color="black", weight=3]; 72.57/40.27 1069 -> 1000[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1069[label="primPlusNat xv1100 xv1110",fontsize=16,color="magenta"];1069 -> 1087[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1069 -> 1088[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 854[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ xv830000)))) (Succ (Succ (Succ xv840000))) (primGEqNatS xv830000 xv840000))",fontsize=16,color="burlywood",shape="box"];1520[label="xv830000/Succ xv8300000",fontsize=10,color="white",style="solid",shape="box"];854 -> 1520[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1520 -> 866[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1521[label="xv830000/Zero",fontsize=10,color="white",style="solid",shape="box"];854 -> 1521[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1521 -> 867[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 855[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ xv830000)))) (Succ (Succ Zero)) MyTrue)",fontsize=16,color="black",shape="box"];855 -> 868[label="",style="solid", color="black", weight=3]; 72.57/40.27 856[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ Zero))) (Succ (Succ (Succ xv840000))) MyFalse)",fontsize=16,color="black",shape="box"];856 -> 869[label="",style="solid", color="black", weight=3]; 72.57/40.27 857[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ Zero))) (Succ (Succ Zero)) MyTrue)",fontsize=16,color="black",shape="box"];857 -> 870[label="",style="solid", color="black", weight=3]; 72.57/40.27 858[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ xv83000) Zero) (Succ (Succ (Succ Zero))))",fontsize=16,color="black",shape="box"];858 -> 871[label="",style="solid", color="black", weight=3]; 72.57/40.27 860[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS Zero Zero) (Succ (Succ (Succ Zero))))",fontsize=16,color="black",shape="box"];860 -> 874[label="",style="solid", color="black", weight=3]; 72.57/40.27 1087[label="xv1100",fontsize=16,color="green",shape="box"];1088[label="xv1110",fontsize=16,color="green",shape="box"];866[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ xv8300000))))) (Succ (Succ (Succ xv840000))) (primGEqNatS (Succ xv8300000) xv840000))",fontsize=16,color="burlywood",shape="box"];1522[label="xv840000/Succ xv8400000",fontsize=10,color="white",style="solid",shape="box"];866 -> 1522[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1522 -> 880[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1523[label="xv840000/Zero",fontsize=10,color="white",style="solid",shape="box"];866 -> 1523[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1523 -> 881[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 867[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ xv840000))) (primGEqNatS Zero xv840000))",fontsize=16,color="burlywood",shape="box"];1524[label="xv840000/Succ xv8400000",fontsize=10,color="white",style="solid",shape="box"];867 -> 1524[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1524 -> 882[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1525[label="xv840000/Zero",fontsize=10,color="white",style="solid",shape="box"];867 -> 1525[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1525 -> 883[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 868[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ (Succ xv830000)))) (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];868 -> 884[label="",style="solid", color="black", weight=3]; 72.57/40.27 869 -> 969[label="",style="dashed", color="red", weight=0]; 72.57/40.27 869[label="primPlusNat (Succ xv81) (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="magenta"];869 -> 976[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 869 -> 977[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 870[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ Zero))) (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];870 -> 886[label="",style="solid", color="black", weight=3]; 72.57/40.27 871 -> 619[label="",style="dashed", color="red", weight=0]; 72.57/40.27 871[label="primPlusNat (Succ xv81) (primModNatS (Succ xv83000) (Succ (Succ (Succ Zero))))",fontsize=16,color="magenta"];871 -> 887[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 871 -> 888[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 874 -> 405[label="",style="dashed", color="red", weight=0]; 72.57/40.27 874[label="primPlusNat (Succ xv81) (primModNatS Zero (Succ (Succ (Succ Zero))))",fontsize=16,color="magenta"];874 -> 891[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 874 -> 892[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 880[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ xv8300000))))) (Succ (Succ (Succ (Succ xv8400000)))) (primGEqNatS (Succ xv8300000) (Succ xv8400000)))",fontsize=16,color="black",shape="box"];880 -> 897[label="",style="solid", color="black", weight=3]; 72.57/40.27 881[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ xv8300000))))) (Succ (Succ (Succ Zero))) (primGEqNatS (Succ xv8300000) Zero))",fontsize=16,color="black",shape="box"];881 -> 898[label="",style="solid", color="black", weight=3]; 72.57/40.27 882[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ (Succ xv8400000)))) (primGEqNatS Zero (Succ xv8400000)))",fontsize=16,color="black",shape="box"];882 -> 899[label="",style="solid", color="black", weight=3]; 72.57/40.27 883[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ Zero))) (primGEqNatS Zero Zero))",fontsize=16,color="black",shape="box"];883 -> 900[label="",style="solid", color="black", weight=3]; 72.57/40.27 884[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ xv830000))) (Succ (Succ Zero))) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];884 -> 901[label="",style="solid", color="black", weight=3]; 72.57/40.27 976[label="xv81",fontsize=16,color="green",shape="box"];977[label="Succ (Succ (Succ Zero))",fontsize=16,color="green",shape="box"];886[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ Zero)) (Succ (Succ Zero))) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];886 -> 903[label="",style="solid", color="black", weight=3]; 72.57/40.27 887[label="Succ (Succ Zero)",fontsize=16,color="green",shape="box"];888[label="xv83000",fontsize=16,color="green",shape="box"];891[label="Succ (Succ Zero)",fontsize=16,color="green",shape="box"];892[label="xv81",fontsize=16,color="green",shape="box"];897[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ xv8300000))))) (Succ (Succ (Succ (Succ xv8400000)))) (primGEqNatS xv8300000 xv8400000))",fontsize=16,color="burlywood",shape="box"];1526[label="xv8300000/Succ xv83000000",fontsize=10,color="white",style="solid",shape="box"];897 -> 1526[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1526 -> 906[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1527[label="xv8300000/Zero",fontsize=10,color="white",style="solid",shape="box"];897 -> 1527[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1527 -> 907[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 898[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ xv8300000))))) (Succ (Succ (Succ Zero))) MyTrue)",fontsize=16,color="black",shape="box"];898 -> 908[label="",style="solid", color="black", weight=3]; 72.57/40.27 899[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ (Succ xv8400000)))) MyFalse)",fontsize=16,color="black",shape="box"];899 -> 909[label="",style="solid", color="black", weight=3]; 72.57/40.27 900[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ Zero))) MyTrue)",fontsize=16,color="black",shape="box"];900 -> 910[label="",style="solid", color="black", weight=3]; 72.57/40.27 901[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ xv830000)) (Succ Zero)) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];901 -> 911[label="",style="solid", color="black", weight=3]; 72.57/40.27 903[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ Zero) (Succ Zero)) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];903 -> 914[label="",style="solid", color="black", weight=3]; 72.57/40.27 906[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ xv83000000)))))) (Succ (Succ (Succ (Succ xv8400000)))) (primGEqNatS (Succ xv83000000) xv8400000))",fontsize=16,color="burlywood",shape="box"];1528[label="xv8400000/Succ xv84000000",fontsize=10,color="white",style="solid",shape="box"];906 -> 1528[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1528 -> 917[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1529[label="xv8400000/Zero",fontsize=10,color="white",style="solid",shape="box"];906 -> 1529[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1529 -> 918[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 907[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ xv8400000)))) (primGEqNatS Zero xv8400000))",fontsize=16,color="burlywood",shape="box"];1530[label="xv8400000/Succ xv84000000",fontsize=10,color="white",style="solid",shape="box"];907 -> 1530[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1530 -> 919[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1531[label="xv8400000/Zero",fontsize=10,color="white",style="solid",shape="box"];907 -> 1531[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1531 -> 920[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 908[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ (Succ (Succ xv8300000))))) (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];908 -> 921[label="",style="solid", color="black", weight=3]; 72.57/40.27 909 -> 969[label="",style="dashed", color="red", weight=0]; 72.57/40.27 909[label="primPlusNat (Succ xv81) (Succ (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="magenta"];909 -> 978[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 909 -> 979[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 910[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];910 -> 923[label="",style="solid", color="black", weight=3]; 72.57/40.27 911[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ xv830000) Zero) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];911 -> 924[label="",style="solid", color="black", weight=3]; 72.57/40.27 914[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS Zero Zero) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];914 -> 927[label="",style="solid", color="black", weight=3]; 72.57/40.27 917[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ xv83000000)))))) (Succ (Succ (Succ (Succ (Succ xv84000000))))) (primGEqNatS (Succ xv83000000) (Succ xv84000000)))",fontsize=16,color="black",shape="box"];917 -> 930[label="",style="solid", color="black", weight=3]; 72.57/40.27 918[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ xv83000000)))))) (Succ (Succ (Succ (Succ Zero)))) (primGEqNatS (Succ xv83000000) Zero))",fontsize=16,color="black",shape="box"];918 -> 931[label="",style="solid", color="black", weight=3]; 72.57/40.27 919[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ (Succ xv84000000))))) (primGEqNatS Zero (Succ xv84000000)))",fontsize=16,color="black",shape="box"];919 -> 932[label="",style="solid", color="black", weight=3]; 72.57/40.27 920[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ Zero)))) (primGEqNatS Zero Zero))",fontsize=16,color="black",shape="box"];920 -> 933[label="",style="solid", color="black", weight=3]; 72.57/40.27 921[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ (Succ xv8300000)))) (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];921 -> 934[label="",style="solid", color="black", weight=3]; 72.57/40.27 978[label="xv81",fontsize=16,color="green",shape="box"];979[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];923[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ Zero))) (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];923 -> 936[label="",style="solid", color="black", weight=3]; 72.57/40.27 924 -> 619[label="",style="dashed", color="red", weight=0]; 72.57/40.27 924[label="primPlusNat (Succ xv81) (primModNatS (Succ xv830000) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="magenta"];924 -> 937[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 924 -> 938[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 927 -> 405[label="",style="dashed", color="red", weight=0]; 72.57/40.27 927[label="primPlusNat (Succ xv81) (primModNatS Zero (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="magenta"];927 -> 940[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 927 -> 941[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 930[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ xv83000000)))))) (Succ (Succ (Succ (Succ (Succ xv84000000))))) (primGEqNatS xv83000000 xv84000000))",fontsize=16,color="burlywood",shape="box"];1532[label="xv83000000/Succ xv830000000",fontsize=10,color="white",style="solid",shape="box"];930 -> 1532[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1532 -> 946[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1533[label="xv83000000/Zero",fontsize=10,color="white",style="solid",shape="box"];930 -> 1533[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1533 -> 947[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 931 -> 950[label="",style="dashed", color="red", weight=0]; 72.57/40.27 931[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ xv83000000)))))) (Succ (Succ (Succ (Succ Zero)))) MyTrue)",fontsize=16,color="magenta"];931 -> 951[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 931 -> 952[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 932[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ (Succ xv84000000))))) MyFalse)",fontsize=16,color="black",shape="box"];932 -> 949[label="",style="solid", color="black", weight=3]; 72.57/40.27 933 -> 950[label="",style="dashed", color="red", weight=0]; 72.57/40.27 933[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ Zero)))) MyTrue)",fontsize=16,color="magenta"];933 -> 953[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 933 -> 954[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 934[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ xv8300000))) (Succ (Succ Zero))) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];934 -> 959[label="",style="solid", color="black", weight=3]; 72.57/40.27 936[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ Zero)) (Succ (Succ Zero))) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];936 -> 962[label="",style="solid", color="black", weight=3]; 72.57/40.27 937[label="Succ (Succ (Succ Zero))",fontsize=16,color="green",shape="box"];938[label="xv830000",fontsize=16,color="green",shape="box"];940[label="Succ (Succ (Succ Zero))",fontsize=16,color="green",shape="box"];941[label="xv81",fontsize=16,color="green",shape="box"];946[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv830000000))))))) (Succ (Succ (Succ (Succ (Succ xv84000000))))) (primGEqNatS (Succ xv830000000) xv84000000))",fontsize=16,color="burlywood",shape="box"];1534[label="xv84000000/Succ xv840000000",fontsize=10,color="white",style="solid",shape="box"];946 -> 1534[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1534 -> 964[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1535[label="xv84000000/Zero",fontsize=10,color="white",style="solid",shape="box"];946 -> 1535[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1535 -> 965[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 947[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) (Succ (Succ (Succ (Succ (Succ xv84000000))))) (primGEqNatS Zero xv84000000))",fontsize=16,color="burlywood",shape="box"];1536[label="xv84000000/Succ xv840000000",fontsize=10,color="white",style="solid",shape="box"];947 -> 1536[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1536 -> 966[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1537[label="xv84000000/Zero",fontsize=10,color="white",style="solid",shape="box"];947 -> 1537[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1537 -> 967[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 951[label="Succ (Succ (Succ (Succ (Succ xv83000000))))",fontsize=16,color="green",shape="box"];952[label="xv81",fontsize=16,color="green",shape="box"];950[label="primPlusNat (Succ xv107) (primModNatS0 (Succ xv108) (Succ (Succ (Succ (Succ Zero)))) MyTrue)",fontsize=16,color="black",shape="triangle"];950 -> 968[label="",style="solid", color="black", weight=3]; 72.57/40.27 949 -> 969[label="",style="dashed", color="red", weight=0]; 72.57/40.27 949[label="primPlusNat (Succ xv81) (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="magenta"];949 -> 980[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 949 -> 981[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 953[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];954[label="xv81",fontsize=16,color="green",shape="box"];959[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ xv8300000)) (Succ Zero)) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];959 -> 989[label="",style="solid", color="black", weight=3]; 72.57/40.27 962[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ Zero) (Succ Zero)) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];962 -> 990[label="",style="solid", color="black", weight=3]; 72.57/40.27 964[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv830000000))))))) (Succ (Succ (Succ (Succ (Succ (Succ xv840000000)))))) (primGEqNatS (Succ xv830000000) (Succ xv840000000)))",fontsize=16,color="black",shape="box"];964 -> 991[label="",style="solid", color="black", weight=3]; 72.57/40.27 965[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv830000000))))))) (Succ (Succ (Succ (Succ (Succ Zero))))) (primGEqNatS (Succ xv830000000) Zero))",fontsize=16,color="black",shape="box"];965 -> 992[label="",style="solid", color="black", weight=3]; 72.57/40.27 966[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) (Succ (Succ (Succ (Succ (Succ (Succ xv840000000)))))) (primGEqNatS Zero (Succ xv840000000)))",fontsize=16,color="black",shape="box"];966 -> 993[label="",style="solid", color="black", weight=3]; 72.57/40.27 967[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) (Succ (Succ (Succ (Succ (Succ Zero))))) (primGEqNatS Zero Zero))",fontsize=16,color="black",shape="box"];967 -> 994[label="",style="solid", color="black", weight=3]; 72.57/40.27 968[label="primPlusNat (Succ xv107) (primModNatS (primMinusNatS (Succ xv108) (Succ (Succ (Succ (Succ (Succ Zero)))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))",fontsize=16,color="black",shape="box"];968 -> 995[label="",style="solid", color="black", weight=3]; 72.57/40.27 980[label="xv81",fontsize=16,color="green",shape="box"];981[label="Succ (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="green",shape="box"];989[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ xv8300000) Zero) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];989 -> 1001[label="",style="solid", color="black", weight=3]; 72.57/40.27 990[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS Zero Zero) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];990 -> 1002[label="",style="solid", color="black", weight=3]; 72.57/40.27 991[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv830000000))))))) (Succ (Succ (Succ (Succ (Succ (Succ xv840000000)))))) (primGEqNatS xv830000000 xv840000000))",fontsize=16,color="burlywood",shape="box"];1538[label="xv830000000/Succ xv8300000000",fontsize=10,color="white",style="solid",shape="box"];991 -> 1538[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1538 -> 1003[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1539[label="xv830000000/Zero",fontsize=10,color="white",style="solid",shape="box"];991 -> 1539[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1539 -> 1004[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 992 -> 1007[label="",style="dashed", color="red", weight=0]; 72.57/40.27 992[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv830000000))))))) (Succ (Succ (Succ (Succ (Succ Zero))))) MyTrue)",fontsize=16,color="magenta"];992 -> 1008[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 992 -> 1009[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 993[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) (Succ (Succ (Succ (Succ (Succ (Succ xv840000000)))))) MyFalse)",fontsize=16,color="black",shape="box"];993 -> 1006[label="",style="solid", color="black", weight=3]; 72.57/40.27 994 -> 1007[label="",style="dashed", color="red", weight=0]; 72.57/40.27 994[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) (Succ (Succ (Succ (Succ (Succ Zero))))) MyTrue)",fontsize=16,color="magenta"];994 -> 1010[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 994 -> 1011[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 995 -> 1000[label="",style="dashed", color="red", weight=0]; 72.57/40.27 995[label="primPlusNat (Succ xv107) (primModNatS (primMinusNatS xv108 (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))",fontsize=16,color="magenta"];995 -> 1018[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 995 -> 1019[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1001 -> 1000[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1001[label="primPlusNat (Succ xv81) (primModNatS (Succ xv8300000) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="magenta"];1001 -> 1020[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1001 -> 1021[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1002 -> 1000[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1002[label="primPlusNat (Succ xv81) (primModNatS Zero (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="magenta"];1002 -> 1022[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1002 -> 1023[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1003[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000)))))))) (Succ (Succ (Succ (Succ (Succ (Succ xv840000000)))))) (primGEqNatS (Succ xv8300000000) xv840000000))",fontsize=16,color="burlywood",shape="box"];1540[label="xv840000000/Succ xv8400000000",fontsize=10,color="white",style="solid",shape="box"];1003 -> 1540[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1540 -> 1024[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1541[label="xv840000000/Zero",fontsize=10,color="white",style="solid",shape="box"];1003 -> 1541[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1541 -> 1025[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1004[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ (Succ (Succ (Succ (Succ (Succ xv840000000)))))) (primGEqNatS Zero xv840000000))",fontsize=16,color="burlywood",shape="box"];1542[label="xv840000000/Succ xv8400000000",fontsize=10,color="white",style="solid",shape="box"];1004 -> 1542[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1542 -> 1026[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1543[label="xv840000000/Zero",fontsize=10,color="white",style="solid",shape="box"];1004 -> 1543[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1543 -> 1027[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1008[label="Succ (Succ (Succ (Succ (Succ (Succ xv830000000)))))",fontsize=16,color="green",shape="box"];1009[label="xv81",fontsize=16,color="green",shape="box"];1007 -> 1000[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1007[label="primPlusNat (Succ xv113) (primModNatS0 (Succ xv114) (Succ (Succ (Succ (Succ (Succ Zero))))) MyTrue)",fontsize=16,color="magenta"];1007 -> 1028[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1007 -> 1029[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1006 -> 1000[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1006[label="primPlusNat (Succ xv81) (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))",fontsize=16,color="magenta"];1006 -> 1030[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1006 -> 1031[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1010[label="Succ (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="green",shape="box"];1011[label="xv81",fontsize=16,color="green",shape="box"];1018[label="Succ xv107",fontsize=16,color="green",shape="box"];1019 -> 1397[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1019[label="primModNatS (primMinusNatS xv108 (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="magenta"];1019 -> 1398[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1019 -> 1399[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1019 -> 1400[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1020[label="Succ xv81",fontsize=16,color="green",shape="box"];1021 -> 1044[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1021[label="primModNatS (Succ xv8300000) (Succ (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="magenta"];1021 -> 1045[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1021 -> 1046[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1022[label="Succ xv81",fontsize=16,color="green",shape="box"];1023 -> 1091[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1023[label="primModNatS Zero (Succ (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="magenta"];1023 -> 1092[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1024[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000)))))))) (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8400000000))))))) (primGEqNatS (Succ xv8300000000) (Succ xv8400000000)))",fontsize=16,color="black",shape="box"];1024 -> 1056[label="",style="solid", color="black", weight=3]; 72.57/40.27 1025[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000)))))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) (primGEqNatS (Succ xv8300000000) Zero))",fontsize=16,color="black",shape="box"];1025 -> 1057[label="",style="solid", color="black", weight=3]; 72.57/40.27 1026[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8400000000))))))) (primGEqNatS Zero (Succ xv8400000000)))",fontsize=16,color="black",shape="box"];1026 -> 1058[label="",style="solid", color="black", weight=3]; 72.57/40.27 1027[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) (primGEqNatS Zero Zero))",fontsize=16,color="black",shape="box"];1027 -> 1059[label="",style="solid", color="black", weight=3]; 72.57/40.27 1028[label="Succ xv113",fontsize=16,color="green",shape="box"];1029 -> 1200[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1029[label="primModNatS0 (Succ xv114) (Succ (Succ (Succ (Succ (Succ Zero))))) MyTrue",fontsize=16,color="magenta"];1029 -> 1201[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1029 -> 1202[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1030[label="Succ xv81",fontsize=16,color="green",shape="box"];1031[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="green",shape="box"];1398[label="Succ (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="green",shape="box"];1399[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];1400[label="xv108",fontsize=16,color="green",shape="box"];1397[label="primModNatS (primMinusNatS xv155 xv156) (Succ xv157)",fontsize=16,color="burlywood",shape="triangle"];1544[label="xv155/Succ xv1550",fontsize=10,color="white",style="solid",shape="box"];1397 -> 1544[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1544 -> 1440[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1545[label="xv155/Zero",fontsize=10,color="white",style="solid",shape="box"];1397 -> 1545[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1545 -> 1441[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1045[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];1046[label="xv8300000",fontsize=16,color="green",shape="box"];1044[label="primModNatS (Succ xv116) (Succ xv117)",fontsize=16,color="burlywood",shape="triangle"];1546[label="xv117/Succ xv1170",fontsize=10,color="white",style="solid",shape="box"];1044 -> 1546[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1546 -> 1063[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1547[label="xv117/Zero",fontsize=10,color="white",style="solid",shape="box"];1044 -> 1547[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1547 -> 1064[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1092[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];1091[label="primModNatS Zero (Succ xv122)",fontsize=16,color="black",shape="triangle"];1091 -> 1098[label="",style="solid", color="black", weight=3]; 72.57/40.27 1056 -> 1000[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1056[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000)))))))) (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8400000000))))))) (primGEqNatS xv8300000000 xv8400000000))",fontsize=16,color="magenta"];1056 -> 1070[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1056 -> 1071[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1057 -> 1000[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1057[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000)))))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) MyTrue)",fontsize=16,color="magenta"];1057 -> 1072[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1057 -> 1073[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1058 -> 1000[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1058[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8400000000))))))) MyFalse)",fontsize=16,color="magenta"];1058 -> 1074[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1058 -> 1075[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1059 -> 1000[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1059[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) MyTrue)",fontsize=16,color="magenta"];1059 -> 1076[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1059 -> 1077[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1201[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];1202[label="xv114",fontsize=16,color="green",shape="box"];1200[label="primModNatS0 (Succ xv139) (Succ xv140) MyTrue",fontsize=16,color="black",shape="triangle"];1200 -> 1219[label="",style="solid", color="black", weight=3]; 72.57/40.27 1440[label="primModNatS (primMinusNatS (Succ xv1550) xv156) (Succ xv157)",fontsize=16,color="burlywood",shape="box"];1548[label="xv156/Succ xv1560",fontsize=10,color="white",style="solid",shape="box"];1440 -> 1548[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1548 -> 1442[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1549[label="xv156/Zero",fontsize=10,color="white",style="solid",shape="box"];1440 -> 1549[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1549 -> 1443[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1441[label="primModNatS (primMinusNatS Zero xv156) (Succ xv157)",fontsize=16,color="burlywood",shape="box"];1550[label="xv156/Succ xv1560",fontsize=10,color="white",style="solid",shape="box"];1441 -> 1550[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1550 -> 1444[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1551[label="xv156/Zero",fontsize=10,color="white",style="solid",shape="box"];1441 -> 1551[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1551 -> 1445[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1063[label="primModNatS (Succ xv116) (Succ (Succ xv1170))",fontsize=16,color="black",shape="box"];1063 -> 1099[label="",style="solid", color="black", weight=3]; 72.57/40.27 1064[label="primModNatS (Succ xv116) (Succ Zero)",fontsize=16,color="black",shape="box"];1064 -> 1100[label="",style="solid", color="black", weight=3]; 72.57/40.27 1098[label="Zero",fontsize=16,color="green",shape="box"];1070[label="Succ xv81",fontsize=16,color="green",shape="box"];1071 -> 1302[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1071[label="primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000)))))))) (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8400000000))))))) (primGEqNatS xv8300000000 xv8400000000)",fontsize=16,color="magenta"];1071 -> 1303[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1071 -> 1304[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1071 -> 1305[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1071 -> 1306[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1072[label="Succ xv81",fontsize=16,color="green",shape="box"];1073 -> 1200[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1073[label="primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000)))))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) MyTrue",fontsize=16,color="magenta"];1073 -> 1203[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1073 -> 1204[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1074[label="Succ xv81",fontsize=16,color="green",shape="box"];1075 -> 1110[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1075[label="primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8400000000))))))) MyFalse",fontsize=16,color="magenta"];1075 -> 1111[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1076[label="Succ xv81",fontsize=16,color="green",shape="box"];1077 -> 1200[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1077[label="primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) MyTrue",fontsize=16,color="magenta"];1077 -> 1205[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1077 -> 1206[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1219 -> 1397[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1219[label="primModNatS (primMinusNatS (Succ xv139) (Succ (Succ xv140))) (Succ (Succ (Succ xv140)))",fontsize=16,color="magenta"];1219 -> 1404[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1219 -> 1405[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1219 -> 1406[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1442[label="primModNatS (primMinusNatS (Succ xv1550) (Succ xv1560)) (Succ xv157)",fontsize=16,color="black",shape="box"];1442 -> 1446[label="",style="solid", color="black", weight=3]; 72.57/40.27 1443[label="primModNatS (primMinusNatS (Succ xv1550) Zero) (Succ xv157)",fontsize=16,color="black",shape="box"];1443 -> 1447[label="",style="solid", color="black", weight=3]; 72.57/40.27 1444[label="primModNatS (primMinusNatS Zero (Succ xv1560)) (Succ xv157)",fontsize=16,color="black",shape="box"];1444 -> 1448[label="",style="solid", color="black", weight=3]; 72.57/40.27 1445[label="primModNatS (primMinusNatS Zero Zero) (Succ xv157)",fontsize=16,color="black",shape="box"];1445 -> 1449[label="",style="solid", color="black", weight=3]; 72.57/40.27 1099[label="primModNatS0 xv116 xv1170 (primGEqNatS xv116 (Succ xv1170))",fontsize=16,color="burlywood",shape="box"];1552[label="xv116/Succ xv1160",fontsize=10,color="white",style="solid",shape="box"];1099 -> 1552[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1552 -> 1121[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1553[label="xv116/Zero",fontsize=10,color="white",style="solid",shape="box"];1099 -> 1553[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1553 -> 1122[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1100[label="Zero",fontsize=16,color="green",shape="box"];1303[label="xv8300000000",fontsize=16,color="green",shape="box"];1304[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000))))))",fontsize=16,color="green",shape="box"];1305[label="Succ (Succ (Succ (Succ (Succ (Succ xv8400000000)))))",fontsize=16,color="green",shape="box"];1306[label="xv8400000000",fontsize=16,color="green",shape="box"];1302[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS xv152 xv153)",fontsize=16,color="burlywood",shape="triangle"];1554[label="xv152/Succ xv1520",fontsize=10,color="white",style="solid",shape="box"];1302 -> 1554[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1554 -> 1331[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1555[label="xv152/Zero",fontsize=10,color="white",style="solid",shape="box"];1302 -> 1555[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1555 -> 1332[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1203[label="Succ (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="green",shape="box"];1204[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000))))))",fontsize=16,color="green",shape="box"];1111[label="Succ (Succ (Succ (Succ (Succ (Succ xv8400000000)))))",fontsize=16,color="green",shape="box"];1110[label="primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ xv126) MyFalse",fontsize=16,color="black",shape="triangle"];1110 -> 1128[label="",style="solid", color="black", weight=3]; 72.57/40.27 1205[label="Succ (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="green",shape="box"];1206[label="Succ (Succ (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="green",shape="box"];1404[label="Succ (Succ xv140)",fontsize=16,color="green",shape="box"];1405[label="Succ (Succ xv140)",fontsize=16,color="green",shape="box"];1406[label="Succ xv139",fontsize=16,color="green",shape="box"];1446 -> 1397[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1446[label="primModNatS (primMinusNatS xv1550 xv1560) (Succ xv157)",fontsize=16,color="magenta"];1446 -> 1450[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1446 -> 1451[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1447 -> 1044[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1447[label="primModNatS (Succ xv1550) (Succ xv157)",fontsize=16,color="magenta"];1447 -> 1452[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1447 -> 1453[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1448 -> 1091[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1448[label="primModNatS Zero (Succ xv157)",fontsize=16,color="magenta"];1448 -> 1454[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1449 -> 1091[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1449[label="primModNatS Zero (Succ xv157)",fontsize=16,color="magenta"];1449 -> 1455[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1121[label="primModNatS0 (Succ xv1160) xv1170 (primGEqNatS (Succ xv1160) (Succ xv1170))",fontsize=16,color="black",shape="box"];1121 -> 1138[label="",style="solid", color="black", weight=3]; 72.57/40.27 1122[label="primModNatS0 Zero xv1170 (primGEqNatS Zero (Succ xv1170))",fontsize=16,color="black",shape="box"];1122 -> 1139[label="",style="solid", color="black", weight=3]; 72.57/40.27 1331[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS (Succ xv1520) xv153)",fontsize=16,color="burlywood",shape="box"];1556[label="xv153/Succ xv1530",fontsize=10,color="white",style="solid",shape="box"];1331 -> 1556[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1556 -> 1343[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1557[label="xv153/Zero",fontsize=10,color="white",style="solid",shape="box"];1331 -> 1557[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1557 -> 1344[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1332[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS Zero xv153)",fontsize=16,color="burlywood",shape="box"];1558[label="xv153/Succ xv1530",fontsize=10,color="white",style="solid",shape="box"];1332 -> 1558[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1558 -> 1345[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1559[label="xv153/Zero",fontsize=10,color="white",style="solid",shape="box"];1332 -> 1559[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1559 -> 1346[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1128[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))",fontsize=16,color="green",shape="box"];1450[label="xv1560",fontsize=16,color="green",shape="box"];1451[label="xv1550",fontsize=16,color="green",shape="box"];1452[label="xv157",fontsize=16,color="green",shape="box"];1453[label="xv1550",fontsize=16,color="green",shape="box"];1454[label="xv157",fontsize=16,color="green",shape="box"];1455[label="xv157",fontsize=16,color="green",shape="box"];1138[label="primModNatS0 (Succ xv1160) xv1170 (primGEqNatS xv1160 xv1170)",fontsize=16,color="burlywood",shape="box"];1560[label="xv1160/Succ xv11600",fontsize=10,color="white",style="solid",shape="box"];1138 -> 1560[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1560 -> 1153[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1561[label="xv1160/Zero",fontsize=10,color="white",style="solid",shape="box"];1138 -> 1561[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1561 -> 1154[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1139[label="primModNatS0 Zero xv1170 MyFalse",fontsize=16,color="black",shape="box"];1139 -> 1155[label="",style="solid", color="black", weight=3]; 72.57/40.27 1343[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS (Succ xv1520) (Succ xv1530))",fontsize=16,color="black",shape="box"];1343 -> 1354[label="",style="solid", color="black", weight=3]; 72.57/40.27 1344[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS (Succ xv1520) Zero)",fontsize=16,color="black",shape="box"];1344 -> 1355[label="",style="solid", color="black", weight=3]; 72.57/40.27 1345[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS Zero (Succ xv1530))",fontsize=16,color="black",shape="box"];1345 -> 1356[label="",style="solid", color="black", weight=3]; 72.57/40.27 1346[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];1346 -> 1357[label="",style="solid", color="black", weight=3]; 72.57/40.27 1153[label="primModNatS0 (Succ (Succ xv11600)) xv1170 (primGEqNatS (Succ xv11600) xv1170)",fontsize=16,color="burlywood",shape="box"];1562[label="xv1170/Succ xv11700",fontsize=10,color="white",style="solid",shape="box"];1153 -> 1562[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1562 -> 1194[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1563[label="xv1170/Zero",fontsize=10,color="white",style="solid",shape="box"];1153 -> 1563[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1563 -> 1195[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1154[label="primModNatS0 (Succ Zero) xv1170 (primGEqNatS Zero xv1170)",fontsize=16,color="burlywood",shape="box"];1564[label="xv1170/Succ xv11700",fontsize=10,color="white",style="solid",shape="box"];1154 -> 1564[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1564 -> 1196[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1565[label="xv1170/Zero",fontsize=10,color="white",style="solid",shape="box"];1154 -> 1565[label="",style="solid", color="burlywood", weight=9]; 72.57/40.27 1565 -> 1197[label="",style="solid", color="burlywood", weight=3]; 72.57/40.27 1155[label="Succ Zero",fontsize=16,color="green",shape="box"];1354 -> 1302[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1354[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS xv1520 xv1530)",fontsize=16,color="magenta"];1354 -> 1362[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1354 -> 1363[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1355 -> 1200[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1355[label="primModNatS0 (Succ xv150) (Succ xv151) MyTrue",fontsize=16,color="magenta"];1355 -> 1364[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1355 -> 1365[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1356[label="primModNatS0 (Succ xv150) (Succ xv151) MyFalse",fontsize=16,color="black",shape="box"];1356 -> 1366[label="",style="solid", color="black", weight=3]; 72.57/40.27 1357 -> 1200[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1357[label="primModNatS0 (Succ xv150) (Succ xv151) MyTrue",fontsize=16,color="magenta"];1357 -> 1367[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1357 -> 1368[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1194[label="primModNatS0 (Succ (Succ xv11600)) (Succ xv11700) (primGEqNatS (Succ xv11600) (Succ xv11700))",fontsize=16,color="black",shape="box"];1194 -> 1223[label="",style="solid", color="black", weight=3]; 72.57/40.27 1195[label="primModNatS0 (Succ (Succ xv11600)) Zero (primGEqNatS (Succ xv11600) Zero)",fontsize=16,color="black",shape="box"];1195 -> 1224[label="",style="solid", color="black", weight=3]; 72.57/40.27 1196[label="primModNatS0 (Succ Zero) (Succ xv11700) (primGEqNatS Zero (Succ xv11700))",fontsize=16,color="black",shape="box"];1196 -> 1225[label="",style="solid", color="black", weight=3]; 72.57/40.27 1197[label="primModNatS0 (Succ Zero) Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];1197 -> 1226[label="",style="solid", color="black", weight=3]; 72.57/40.27 1362[label="xv1520",fontsize=16,color="green",shape="box"];1363[label="xv1530",fontsize=16,color="green",shape="box"];1364[label="xv151",fontsize=16,color="green",shape="box"];1365[label="xv150",fontsize=16,color="green",shape="box"];1366[label="Succ (Succ xv150)",fontsize=16,color="green",shape="box"];1367[label="xv151",fontsize=16,color="green",shape="box"];1368[label="xv150",fontsize=16,color="green",shape="box"];1223 -> 1302[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1223[label="primModNatS0 (Succ (Succ xv11600)) (Succ xv11700) (primGEqNatS xv11600 xv11700)",fontsize=16,color="magenta"];1223 -> 1315[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1223 -> 1316[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1223 -> 1317[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1223 -> 1318[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1224[label="primModNatS0 (Succ (Succ xv11600)) Zero MyTrue",fontsize=16,color="black",shape="box"];1224 -> 1280[label="",style="solid", color="black", weight=3]; 72.57/40.27 1225[label="primModNatS0 (Succ Zero) (Succ xv11700) MyFalse",fontsize=16,color="black",shape="box"];1225 -> 1281[label="",style="solid", color="black", weight=3]; 72.57/40.27 1226[label="primModNatS0 (Succ Zero) Zero MyTrue",fontsize=16,color="black",shape="box"];1226 -> 1282[label="",style="solid", color="black", weight=3]; 72.57/40.27 1315[label="xv11600",fontsize=16,color="green",shape="box"];1316[label="Succ xv11600",fontsize=16,color="green",shape="box"];1317[label="xv11700",fontsize=16,color="green",shape="box"];1318[label="xv11700",fontsize=16,color="green",shape="box"];1280 -> 1397[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1280[label="primModNatS (primMinusNatS (Succ (Succ xv11600)) (Succ Zero)) (Succ (Succ Zero))",fontsize=16,color="magenta"];1280 -> 1428[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1280 -> 1429[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1280 -> 1430[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1281[label="Succ (Succ Zero)",fontsize=16,color="green",shape="box"];1282 -> 1397[label="",style="dashed", color="red", weight=0]; 72.57/40.27 1282[label="primModNatS (primMinusNatS (Succ Zero) (Succ Zero)) (Succ (Succ Zero))",fontsize=16,color="magenta"];1282 -> 1431[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1282 -> 1432[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1282 -> 1433[label="",style="dashed", color="magenta", weight=3]; 72.57/40.27 1428[label="Succ Zero",fontsize=16,color="green",shape="box"];1429[label="Succ Zero",fontsize=16,color="green",shape="box"];1430[label="Succ (Succ xv11600)",fontsize=16,color="green",shape="box"];1431[label="Succ Zero",fontsize=16,color="green",shape="box"];1432[label="Succ Zero",fontsize=16,color="green",shape="box"];1433[label="Succ Zero",fontsize=16,color="green",shape="box"];} 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (6) 72.57/40.27 Complex Obligation (AND) 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (7) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_primModNatS0(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS00(xv150, xv151) 72.57/40.27 new_primModNatS1(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS0(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.27 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS0(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS0(xv150, xv151, xv1520, xv1530) 72.57/40.27 new_primModNatS(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS(xv1550, xv1560, xv157) 72.57/40.27 new_primModNatS(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS1(xv1550, xv157) 72.57/40.27 new_primModNatS1(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS00(xv139, xv140) -> new_primModNatS(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.27 new_primModNatS0(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS00(xv150, xv151) 72.57/40.27 72.57/40.27 R is empty. 72.57/40.27 Q is empty. 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (8) QDPOrderProof (EQUIVALENT) 72.57/40.27 We use the reduction pair processor [LPAR04,JAR06]. 72.57/40.27 72.57/40.27 72.57/40.27 The following pairs can be oriented strictly and are deleted. 72.57/40.27 72.57/40.27 new_primModNatS1(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS0(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.27 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS(xv1550, xv1560, xv157) 72.57/40.27 new_primModNatS1(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 The remaining pairs can at least be oriented weakly. 72.57/40.27 Used ordering: Polynomial interpretation [POLO]: 72.57/40.27 72.57/40.27 POL(Main.Succ(x_1)) = 1 + x_1 72.57/40.27 POL(Main.Zero) = 0 72.57/40.27 POL(new_primModNatS(x_1, x_2, x_3)) = x_1 72.57/40.27 POL(new_primModNatS0(x_1, x_2, x_3, x_4)) = 1 + x_1 72.57/40.27 POL(new_primModNatS00(x_1, x_2)) = 1 + x_1 72.57/40.27 POL(new_primModNatS1(x_1, x_2)) = 1 + x_1 72.57/40.27 72.57/40.27 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 72.57/40.27 none 72.57/40.27 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (9) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_primModNatS0(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS00(xv150, xv151) 72.57/40.27 new_primModNatS0(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS0(xv150, xv151, xv1520, xv1530) 72.57/40.27 new_primModNatS(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS1(xv1550, xv157) 72.57/40.27 new_primModNatS00(xv139, xv140) -> new_primModNatS(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.27 new_primModNatS0(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS00(xv150, xv151) 72.57/40.27 72.57/40.27 R is empty. 72.57/40.27 Q is empty. 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (10) DependencyGraphProof (EQUIVALENT) 72.57/40.27 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 4 less nodes. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (11) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_primModNatS0(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS0(xv150, xv151, xv1520, xv1530) 72.57/40.27 72.57/40.27 R is empty. 72.57/40.27 Q is empty. 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (12) QDPSizeChangeProof (EQUIVALENT) 72.57/40.27 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. 72.57/40.27 72.57/40.27 From the DPs we obtained the following set of size-change graphs: 72.57/40.27 *new_primModNatS0(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS0(xv150, xv151, xv1520, xv1530) 72.57/40.27 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 72.57/40.27 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (13) 72.57/40.27 YES 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (14) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_primPlusNat0(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat0(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primPlusNat0(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat0(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat0(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat0(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 72.57/40.27 R is empty. 72.57/40.27 Q is empty. 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (15) DependencyGraphProof (EQUIVALENT) 72.57/40.27 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (16) 72.57/40.27 Complex Obligation (AND) 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (17) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_primPlusNat0(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat0(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 72.57/40.27 R is empty. 72.57/40.27 Q is empty. 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (18) QDPSizeChangeProof (EQUIVALENT) 72.57/40.27 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. 72.57/40.27 72.57/40.27 From the DPs we obtained the following set of size-change graphs: 72.57/40.27 *new_primPlusNat0(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat0(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3 72.57/40.27 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (19) 72.57/40.27 YES 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (20) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_primPlusNat0(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat0(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.27 72.57/40.27 R is empty. 72.57/40.27 Q is empty. 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (21) QDPSizeChangeProof (EQUIVALENT) 72.57/40.27 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. 72.57/40.27 72.57/40.27 From the DPs we obtained the following set of size-change graphs: 72.57/40.27 *new_primPlusNat0(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat0(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.27 The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3 72.57/40.27 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (22) 72.57/40.27 YES 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (23) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_primPlusNat0(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat0(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 72.57/40.27 R is empty. 72.57/40.27 Q is empty. 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (24) QDPSizeChangeProof (EQUIVALENT) 72.57/40.27 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. 72.57/40.27 72.57/40.27 From the DPs we obtained the following set of size-change graphs: 72.57/40.27 *new_primPlusNat0(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat0(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3 72.57/40.27 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (25) 72.57/40.27 YES 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (26) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_primDivNatS(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS(xv1460, xv1470, xv148) 72.57/40.27 new_primDivNatS1(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS0(xv720, xv730, xv720, xv730) 72.57/40.27 new_primDivNatS0(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS0(xv102, xv103, xv1040, xv1050) 72.57/40.27 new_primDivNatS1(Main.Zero, Main.Zero) -> new_primDivNatS(Main.Zero, Main.Zero, Main.Zero) 72.57/40.27 new_primDivNatS00(xv102, xv103) -> new_primDivNatS(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103)) 72.57/40.27 new_primDivNatS(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS1(xv1460, xv148) 72.57/40.27 new_primDivNatS1(Main.Succ(xv720), Main.Zero) -> new_primDivNatS(Main.Succ(xv720), Main.Zero, Main.Zero) 72.57/40.27 new_primDivNatS0(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103)) 72.57/40.27 new_primDivNatS0(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS00(xv102, xv103) 72.57/40.27 72.57/40.27 R is empty. 72.57/40.27 Q is empty. 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (27) DependencyGraphProof (EQUIVALENT) 72.57/40.27 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (28) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_primDivNatS(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS1(xv1460, xv148) 72.57/40.27 new_primDivNatS1(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS0(xv720, xv730, xv720, xv730) 72.57/40.27 new_primDivNatS0(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS0(xv102, xv103, xv1040, xv1050) 72.57/40.27 new_primDivNatS0(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103)) 72.57/40.27 new_primDivNatS(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS(xv1460, xv1470, xv148) 72.57/40.27 new_primDivNatS0(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS00(xv102, xv103) 72.57/40.27 new_primDivNatS00(xv102, xv103) -> new_primDivNatS(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103)) 72.57/40.27 new_primDivNatS1(Main.Succ(xv720), Main.Zero) -> new_primDivNatS(Main.Succ(xv720), Main.Zero, Main.Zero) 72.57/40.27 72.57/40.27 R is empty. 72.57/40.27 Q is empty. 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (29) QDPOrderProof (EQUIVALENT) 72.57/40.27 We use the reduction pair processor [LPAR04,JAR06]. 72.57/40.27 72.57/40.27 72.57/40.27 The following pairs can be oriented strictly and are deleted. 72.57/40.27 72.57/40.27 new_primDivNatS(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS1(xv1460, xv148) 72.57/40.27 new_primDivNatS(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS(xv1460, xv1470, xv148) 72.57/40.27 The remaining pairs can at least be oriented weakly. 72.57/40.27 Used ordering: Polynomial interpretation [POLO]: 72.57/40.27 72.57/40.27 POL(Main.Succ(x_1)) = 1 + x_1 72.57/40.27 POL(Main.Zero) = 0 72.57/40.27 POL(new_primDivNatS(x_1, x_2, x_3)) = x_1 72.57/40.27 POL(new_primDivNatS0(x_1, x_2, x_3, x_4)) = 1 + x_1 72.57/40.27 POL(new_primDivNatS00(x_1, x_2)) = 1 + x_1 72.57/40.27 POL(new_primDivNatS1(x_1, x_2)) = x_1 72.57/40.27 72.57/40.27 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 72.57/40.27 none 72.57/40.27 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (30) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_primDivNatS1(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS0(xv720, xv730, xv720, xv730) 72.57/40.27 new_primDivNatS0(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS0(xv102, xv103, xv1040, xv1050) 72.57/40.27 new_primDivNatS0(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103)) 72.57/40.27 new_primDivNatS0(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS00(xv102, xv103) 72.57/40.27 new_primDivNatS00(xv102, xv103) -> new_primDivNatS(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103)) 72.57/40.27 new_primDivNatS1(Main.Succ(xv720), Main.Zero) -> new_primDivNatS(Main.Succ(xv720), Main.Zero, Main.Zero) 72.57/40.27 72.57/40.27 R is empty. 72.57/40.27 Q is empty. 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (31) DependencyGraphProof (EQUIVALENT) 72.57/40.27 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 5 less nodes. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (32) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_primDivNatS0(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS0(xv102, xv103, xv1040, xv1050) 72.57/40.27 72.57/40.27 R is empty. 72.57/40.27 Q is empty. 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (33) QDPSizeChangeProof (EQUIVALENT) 72.57/40.27 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. 72.57/40.27 72.57/40.27 From the DPs we obtained the following set of size-change graphs: 72.57/40.27 *new_primDivNatS0(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS0(xv102, xv103, xv1040, xv1050) 72.57/40.27 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 72.57/40.27 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (34) 72.57/40.27 YES 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (35) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_primPlusNat(Main.Succ(xv1100), Main.Succ(xv1110)) -> new_primPlusNat(xv1100, xv1110) 72.57/40.27 72.57/40.27 R is empty. 72.57/40.27 Q is empty. 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (36) QDPSizeChangeProof (EQUIVALENT) 72.57/40.27 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. 72.57/40.27 72.57/40.27 From the DPs we obtained the following set of size-change graphs: 72.57/40.27 *new_primPlusNat(Main.Succ(xv1100), Main.Succ(xv1110)) -> new_primPlusNat(xv1100, xv1110) 72.57/40.27 The graph contains the following edges 1 > 1, 2 > 2 72.57/40.27 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (37) 72.57/40.27 YES 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (38) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.27 new_showInt1ShowInt0(xv12, Main.Succ(xv130), Main.Succ(xv140)) -> new_showInt1ShowInt00(xv12, Main.Succ(xv130), xv140, xv130, xv140) 72.57/40.27 new_showInt1ShowInt0(xv12, Main.Zero, Main.Zero) -> new_showInt(new_showInt1N'0(xv12, Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'0(xv12)) 72.57/40.27 new_showInt1ShowInt0(xv12, Main.Succ(xv130), Main.Zero) -> new_showInt(new_showInt1N'0(xv12, Main.Succ(xv130), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'(xv12, xv130)) 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'1(xv75, xv76)) 72.57/40.27 new_showInt1ShowInt02(xv12, xv130) -> new_showInt(new_showInt1N'0(xv12, Main.Succ(xv130), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'(xv12, xv130)) 72.57/40.27 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'1(xv75, xv76)) 72.57/40.27 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.27 72.57/40.27 The TRS R consists of the following rules: 72.57/40.27 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.27 new_showInt1R'1(xv56, xv57) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char)), xv56) 72.57/40.27 new_showInt1R'(xv12, xv130) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv12, Main.Succ(xv130), app(ty_List, ty_Main.Char)), xv12) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.27 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.27 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.27 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.27 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.27 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.27 new_showInt1R'0(xv12) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv12, Main.Zero, app(ty_List, ty_Main.Char)), xv12) 72.57/40.27 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.27 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.27 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.27 new_primModNatS2(xv122) -> Main.Zero 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.27 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.27 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.27 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.27 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.27 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.27 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_showInt1N'0(xv71, xv72, xv73, bb) -> new_primQuotInt(xv72, xv73) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.27 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.27 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.27 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.27 72.57/40.27 The set Q consists of the following terms: 72.57/40.27 72.57/40.27 new_primModNatS4(x0, Main.Zero) 72.57/40.27 new_showInt1R'0(x0) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.27 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.27 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.27 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.27 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.27 new_showInt1R'(x0, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.27 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.27 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.27 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.27 new_primPlusNat4(x0, x1) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat1(x0, x1) 72.57/40.27 new_primPlusNat7(x0) 72.57/40.27 new_primModNatS2(x0) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.27 new_primPlusNat5(x0, x1) 72.57/40.27 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.27 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.27 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.27 new_primModNatS02(x0) 72.57/40.27 new_primPlusNat6(x0, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.27 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.27 new_primModNatS01(x0, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.27 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.27 new_showInt1R'1(x0, x1) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.27 new_primQuotInt(x0, x1) 72.57/40.27 new_primDivNatS01(x0, x1) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.27 new_primDivNatS4(x0) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.27 new_toEnumChar(x0, x1, x2, x3) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_showInt1N'0(x0, x1, x2, x3) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.27 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (39) DependencyGraphProof (EQUIVALENT) 72.57/40.27 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 3 less nodes. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (40) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'1(xv75, xv76)) 72.57/40.27 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.27 new_showInt1ShowInt0(xv12, Main.Succ(xv130), Main.Succ(xv140)) -> new_showInt1ShowInt00(xv12, Main.Succ(xv130), xv140, xv130, xv140) 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.27 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'1(xv75, xv76)) 72.57/40.27 72.57/40.27 The TRS R consists of the following rules: 72.57/40.27 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.27 new_showInt1R'1(xv56, xv57) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char)), xv56) 72.57/40.27 new_showInt1R'(xv12, xv130) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv12, Main.Succ(xv130), app(ty_List, ty_Main.Char)), xv12) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.27 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.27 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.27 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.27 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.27 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.27 new_showInt1R'0(xv12) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv12, Main.Zero, app(ty_List, ty_Main.Char)), xv12) 72.57/40.27 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.27 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.27 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.27 new_primModNatS2(xv122) -> Main.Zero 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.27 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.27 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.27 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.27 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.27 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.27 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_showInt1N'0(xv71, xv72, xv73, bb) -> new_primQuotInt(xv72, xv73) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.27 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.27 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.27 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.27 72.57/40.27 The set Q consists of the following terms: 72.57/40.27 72.57/40.27 new_primModNatS4(x0, Main.Zero) 72.57/40.27 new_showInt1R'0(x0) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.27 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.27 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.27 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.27 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.27 new_showInt1R'(x0, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.27 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.27 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.27 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.27 new_primPlusNat4(x0, x1) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat1(x0, x1) 72.57/40.27 new_primPlusNat7(x0) 72.57/40.27 new_primModNatS2(x0) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.27 new_primPlusNat5(x0, x1) 72.57/40.27 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.27 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.27 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.27 new_primModNatS02(x0) 72.57/40.27 new_primPlusNat6(x0, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.27 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.27 new_primModNatS01(x0, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.27 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.27 new_showInt1R'1(x0, x1) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.27 new_primQuotInt(x0, x1) 72.57/40.27 new_primDivNatS01(x0, x1) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.27 new_primDivNatS4(x0) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.27 new_toEnumChar(x0, x1, x2, x3) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_showInt1N'0(x0, x1, x2, x3) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.27 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (41) TransformationProof (EQUIVALENT) 72.57/40.27 By instantiating [LPAR04] the rule new_showInt1ShowInt0(xv12, Main.Succ(xv130), Main.Succ(xv140)) -> new_showInt1ShowInt00(xv12, Main.Succ(xv130), xv140, xv130, xv140) we obtained the following new rules [LPAR04]: 72.57/40.27 72.57/40.27 (new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))),new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.27 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (42) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'1(xv75, xv76)) 72.57/40.27 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.27 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'1(xv75, xv76)) 72.57/40.27 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.27 72.57/40.27 The TRS R consists of the following rules: 72.57/40.27 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.27 new_showInt1R'1(xv56, xv57) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char)), xv56) 72.57/40.27 new_showInt1R'(xv12, xv130) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv12, Main.Succ(xv130), app(ty_List, ty_Main.Char)), xv12) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.27 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.27 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.27 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.27 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.27 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.27 new_showInt1R'0(xv12) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv12, Main.Zero, app(ty_List, ty_Main.Char)), xv12) 72.57/40.27 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.27 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.27 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.27 new_primModNatS2(xv122) -> Main.Zero 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.27 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.27 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.27 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.27 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.27 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.27 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_showInt1N'0(xv71, xv72, xv73, bb) -> new_primQuotInt(xv72, xv73) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.27 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.27 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.27 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.27 72.57/40.27 The set Q consists of the following terms: 72.57/40.27 72.57/40.27 new_primModNatS4(x0, Main.Zero) 72.57/40.27 new_showInt1R'0(x0) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.27 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.27 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.27 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.27 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.27 new_showInt1R'(x0, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.27 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.27 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.27 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.27 new_primPlusNat4(x0, x1) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat1(x0, x1) 72.57/40.27 new_primPlusNat7(x0) 72.57/40.27 new_primModNatS2(x0) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.27 new_primPlusNat5(x0, x1) 72.57/40.27 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.27 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.27 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.27 new_primModNatS02(x0) 72.57/40.27 new_primPlusNat6(x0, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.27 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.27 new_primModNatS01(x0, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.27 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.27 new_showInt1R'1(x0, x1) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.27 new_primQuotInt(x0, x1) 72.57/40.27 new_primDivNatS01(x0, x1) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.27 new_primDivNatS4(x0) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.27 new_toEnumChar(x0, x1, x2, x3) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_showInt1N'0(x0, x1, x2, x3) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.27 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (43) UsableRulesProof (EQUIVALENT) 72.57/40.27 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (44) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'1(xv75, xv76)) 72.57/40.27 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.27 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'1(xv75, xv76)) 72.57/40.27 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.27 72.57/40.27 The TRS R consists of the following rules: 72.57/40.27 72.57/40.27 new_showInt1N'0(xv71, xv72, xv73, bb) -> new_primQuotInt(xv72, xv73) 72.57/40.27 new_showInt1R'1(xv56, xv57) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char)), xv56) 72.57/40.27 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.27 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.27 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.27 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.27 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.27 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.27 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.27 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.27 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.27 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.27 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.27 new_primModNatS2(xv122) -> Main.Zero 72.57/40.27 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.27 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.27 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.27 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.27 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.27 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.27 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.27 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.27 72.57/40.27 The set Q consists of the following terms: 72.57/40.27 72.57/40.27 new_primModNatS4(x0, Main.Zero) 72.57/40.27 new_showInt1R'0(x0) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.27 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.27 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.27 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.27 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.27 new_showInt1R'(x0, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.27 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.27 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.27 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.27 new_primPlusNat4(x0, x1) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat1(x0, x1) 72.57/40.27 new_primPlusNat7(x0) 72.57/40.27 new_primModNatS2(x0) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.27 new_primPlusNat5(x0, x1) 72.57/40.27 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.27 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.27 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.27 new_primModNatS02(x0) 72.57/40.27 new_primPlusNat6(x0, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.27 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.27 new_primModNatS01(x0, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.27 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.27 new_showInt1R'1(x0, x1) 72.57/40.27 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.27 new_primQuotInt(x0, x1) 72.57/40.27 new_primDivNatS01(x0, x1) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.27 new_primDivNatS4(x0) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.27 new_toEnumChar(x0, x1, x2, x3) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_showInt1N'0(x0, x1, x2, x3) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.27 72.57/40.27 We have to consider all minimal (P,Q,R)-chains. 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (45) QReductionProof (EQUIVALENT) 72.57/40.27 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 72.57/40.27 72.57/40.27 new_showInt1R'0(x0) 72.57/40.27 new_showInt1R'(x0, x1) 72.57/40.27 72.57/40.27 72.57/40.27 ---------------------------------------- 72.57/40.27 72.57/40.27 (46) 72.57/40.27 Obligation: 72.57/40.27 Q DP problem: 72.57/40.27 The TRS P consists of the following rules: 72.57/40.27 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'1(xv75, xv76)) 72.57/40.27 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.27 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.27 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'1(xv75, xv76)) 72.57/40.27 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.27 72.57/40.27 The TRS R consists of the following rules: 72.57/40.27 72.57/40.27 new_showInt1N'0(xv71, xv72, xv73, bb) -> new_primQuotInt(xv72, xv73) 72.57/40.27 new_showInt1R'1(xv56, xv57) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char)), xv56) 72.57/40.27 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.27 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.27 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.27 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.27 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.27 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.27 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.27 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.27 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.27 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.27 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.27 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.27 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.27 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.27 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.27 new_primModNatS2(xv122) -> Main.Zero 72.57/40.27 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.27 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.27 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.27 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.27 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.27 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.27 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.27 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.27 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.27 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.27 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.27 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.27 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.27 72.57/40.27 The set Q consists of the following terms: 72.57/40.27 72.57/40.27 new_primModNatS4(x0, Main.Zero) 72.57/40.27 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.27 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.27 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.27 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.27 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.27 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.27 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.27 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.27 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.27 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.27 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.28 new_primPlusNat4(x0, x1) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat1(x0, x1) 72.57/40.28 new_primPlusNat7(x0) 72.57/40.28 new_primModNatS2(x0) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat5(x0, x1) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS02(x0) 72.57/40.28 new_primPlusNat6(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.28 new_primModNatS01(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.28 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.28 new_showInt1R'1(x0, x1) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primQuotInt(x0, x1) 72.57/40.28 new_primDivNatS01(x0, x1) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 new_primDivNatS4(x0) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.28 new_toEnumChar(x0, x1, x2, x3) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_showInt1N'0(x0, x1, x2, x3) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 72.57/40.28 We have to consider all minimal (P,Q,R)-chains. 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (47) TransformationProof (EQUIVALENT) 72.57/40.28 By rewriting [LPAR04] the rule new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'1(xv75, xv76)) at position [0] we obtained the following new rules [LPAR04]: 72.57/40.28 72.57/40.28 (new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1R'1(xv75, xv76)),new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1R'1(xv75, xv76))) 72.57/40.28 72.57/40.28 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (48) 72.57/40.28 Obligation: 72.57/40.28 Q DP problem: 72.57/40.28 The TRS P consists of the following rules: 72.57/40.28 72.57/40.28 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.28 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'1(xv75, xv76)) 72.57/40.28 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1R'1(xv75, xv76)) 72.57/40.28 72.57/40.28 The TRS R consists of the following rules: 72.57/40.28 72.57/40.28 new_showInt1N'0(xv71, xv72, xv73, bb) -> new_primQuotInt(xv72, xv73) 72.57/40.28 new_showInt1R'1(xv56, xv57) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char)), xv56) 72.57/40.28 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.28 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.28 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.28 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.28 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.28 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.28 new_primModNatS2(xv122) -> Main.Zero 72.57/40.28 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.28 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.28 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.28 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.28 72.57/40.28 The set Q consists of the following terms: 72.57/40.28 72.57/40.28 new_primModNatS4(x0, Main.Zero) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.28 new_primPlusNat4(x0, x1) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat1(x0, x1) 72.57/40.28 new_primPlusNat7(x0) 72.57/40.28 new_primModNatS2(x0) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat5(x0, x1) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS02(x0) 72.57/40.28 new_primPlusNat6(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.28 new_primModNatS01(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.28 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.28 new_showInt1R'1(x0, x1) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primQuotInt(x0, x1) 72.57/40.28 new_primDivNatS01(x0, x1) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 new_primDivNatS4(x0) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.28 new_toEnumChar(x0, x1, x2, x3) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_showInt1N'0(x0, x1, x2, x3) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 72.57/40.28 We have to consider all minimal (P,Q,R)-chains. 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (49) TransformationProof (EQUIVALENT) 72.57/40.28 By rewriting [LPAR04] the rule new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char)), new_showInt1R'1(xv75, xv76)) at position [0] we obtained the following new rules [LPAR04]: 72.57/40.28 72.57/40.28 (new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1R'1(xv75, xv76)),new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1R'1(xv75, xv76))) 72.57/40.28 72.57/40.28 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (50) 72.57/40.28 Obligation: 72.57/40.28 Q DP problem: 72.57/40.28 The TRS P consists of the following rules: 72.57/40.28 72.57/40.28 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.28 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1R'1(xv75, xv76)) 72.57/40.28 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1R'1(xv75, xv76)) 72.57/40.28 72.57/40.28 The TRS R consists of the following rules: 72.57/40.28 72.57/40.28 new_showInt1N'0(xv71, xv72, xv73, bb) -> new_primQuotInt(xv72, xv73) 72.57/40.28 new_showInt1R'1(xv56, xv57) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char)), xv56) 72.57/40.28 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.28 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.28 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.28 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.28 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.28 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.28 new_primModNatS2(xv122) -> Main.Zero 72.57/40.28 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.28 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.28 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.28 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.28 72.57/40.28 The set Q consists of the following terms: 72.57/40.28 72.57/40.28 new_primModNatS4(x0, Main.Zero) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.28 new_primPlusNat4(x0, x1) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat1(x0, x1) 72.57/40.28 new_primPlusNat7(x0) 72.57/40.28 new_primModNatS2(x0) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat5(x0, x1) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS02(x0) 72.57/40.28 new_primPlusNat6(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.28 new_primModNatS01(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.28 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.28 new_showInt1R'1(x0, x1) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primQuotInt(x0, x1) 72.57/40.28 new_primDivNatS01(x0, x1) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 new_primDivNatS4(x0) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.28 new_toEnumChar(x0, x1, x2, x3) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_showInt1N'0(x0, x1, x2, x3) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 72.57/40.28 We have to consider all minimal (P,Q,R)-chains. 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (51) UsableRulesProof (EQUIVALENT) 72.57/40.28 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (52) 72.57/40.28 Obligation: 72.57/40.28 Q DP problem: 72.57/40.28 The TRS P consists of the following rules: 72.57/40.28 72.57/40.28 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.28 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1R'1(xv75, xv76)) 72.57/40.28 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1R'1(xv75, xv76)) 72.57/40.28 72.57/40.28 The TRS R consists of the following rules: 72.57/40.28 72.57/40.28 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.28 new_showInt1R'1(xv56, xv57) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char)), xv56) 72.57/40.28 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.28 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.28 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.28 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.28 new_primModNatS2(xv122) -> Main.Zero 72.57/40.28 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.28 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.28 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.28 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.28 72.57/40.28 The set Q consists of the following terms: 72.57/40.28 72.57/40.28 new_primModNatS4(x0, Main.Zero) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.28 new_primPlusNat4(x0, x1) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat1(x0, x1) 72.57/40.28 new_primPlusNat7(x0) 72.57/40.28 new_primModNatS2(x0) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat5(x0, x1) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS02(x0) 72.57/40.28 new_primPlusNat6(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.28 new_primModNatS01(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.28 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.28 new_showInt1R'1(x0, x1) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primQuotInt(x0, x1) 72.57/40.28 new_primDivNatS01(x0, x1) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 new_primDivNatS4(x0) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.28 new_toEnumChar(x0, x1, x2, x3) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_showInt1N'0(x0, x1, x2, x3) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 72.57/40.28 We have to consider all minimal (P,Q,R)-chains. 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (53) QReductionProof (EQUIVALENT) 72.57/40.28 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 72.57/40.28 72.57/40.28 new_showInt1N'0(x0, x1, x2, x3) 72.57/40.28 72.57/40.28 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (54) 72.57/40.28 Obligation: 72.57/40.28 Q DP problem: 72.57/40.28 The TRS P consists of the following rules: 72.57/40.28 72.57/40.28 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.28 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1R'1(xv75, xv76)) 72.57/40.28 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1R'1(xv75, xv76)) 72.57/40.28 72.57/40.28 The TRS R consists of the following rules: 72.57/40.28 72.57/40.28 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.28 new_showInt1R'1(xv56, xv57) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char)), xv56) 72.57/40.28 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.28 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.28 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.28 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.28 new_primModNatS2(xv122) -> Main.Zero 72.57/40.28 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.28 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.28 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.28 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.28 72.57/40.28 The set Q consists of the following terms: 72.57/40.28 72.57/40.28 new_primModNatS4(x0, Main.Zero) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.28 new_primPlusNat4(x0, x1) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat1(x0, x1) 72.57/40.28 new_primPlusNat7(x0) 72.57/40.28 new_primModNatS2(x0) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat5(x0, x1) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS02(x0) 72.57/40.28 new_primPlusNat6(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.28 new_primModNatS01(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.28 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.28 new_showInt1R'1(x0, x1) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primQuotInt(x0, x1) 72.57/40.28 new_primDivNatS01(x0, x1) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 new_primDivNatS4(x0) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.28 new_toEnumChar(x0, x1, x2, x3) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 72.57/40.28 We have to consider all minimal (P,Q,R)-chains. 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (55) TransformationProof (EQUIVALENT) 72.57/40.28 By rewriting [LPAR04] the rule new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1R'1(xv75, xv76)) at position [0] we obtained the following new rules [LPAR04]: 72.57/40.28 72.57/40.28 (new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), new_showInt1R'1(xv75, xv76)),new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), new_showInt1R'1(xv75, xv76))) 72.57/40.28 72.57/40.28 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (56) 72.57/40.28 Obligation: 72.57/40.28 Q DP problem: 72.57/40.28 The TRS P consists of the following rules: 72.57/40.28 72.57/40.28 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.28 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.28 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1R'1(xv75, xv76)) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), new_showInt1R'1(xv75, xv76)) 72.57/40.28 72.57/40.28 The TRS R consists of the following rules: 72.57/40.28 72.57/40.28 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.28 new_showInt1R'1(xv56, xv57) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char)), xv56) 72.57/40.28 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.28 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.28 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.28 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.28 new_primModNatS2(xv122) -> Main.Zero 72.57/40.28 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.28 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.28 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.28 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.28 72.57/40.28 The set Q consists of the following terms: 72.57/40.28 72.57/40.28 new_primModNatS4(x0, Main.Zero) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.28 new_primPlusNat4(x0, x1) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat1(x0, x1) 72.57/40.28 new_primPlusNat7(x0) 72.57/40.28 new_primModNatS2(x0) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat5(x0, x1) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS02(x0) 72.57/40.28 new_primPlusNat6(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.28 new_primModNatS01(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.28 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.28 new_showInt1R'1(x0, x1) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primQuotInt(x0, x1) 72.57/40.28 new_primDivNatS01(x0, x1) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 new_primDivNatS4(x0) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.28 new_toEnumChar(x0, x1, x2, x3) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 72.57/40.28 We have to consider all minimal (P,Q,R)-chains. 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (57) TransformationProof (EQUIVALENT) 72.57/40.28 By rewriting [LPAR04] the rule new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1R'1(xv75, xv76)) at position [0] we obtained the following new rules [LPAR04]: 72.57/40.28 72.57/40.28 (new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), new_showInt1R'1(xv75, xv76)),new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), new_showInt1R'1(xv75, xv76))) 72.57/40.28 72.57/40.28 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (58) 72.57/40.28 Obligation: 72.57/40.28 Q DP problem: 72.57/40.28 The TRS P consists of the following rules: 72.57/40.28 72.57/40.28 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.28 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), new_showInt1R'1(xv75, xv76)) 72.57/40.28 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), new_showInt1R'1(xv75, xv76)) 72.57/40.28 72.57/40.28 The TRS R consists of the following rules: 72.57/40.28 72.57/40.28 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.28 new_showInt1R'1(xv56, xv57) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char)), xv56) 72.57/40.28 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.28 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.28 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.28 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.28 new_primModNatS2(xv122) -> Main.Zero 72.57/40.28 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.28 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.28 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.28 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.28 72.57/40.28 The set Q consists of the following terms: 72.57/40.28 72.57/40.28 new_primModNatS4(x0, Main.Zero) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.28 new_primPlusNat4(x0, x1) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat1(x0, x1) 72.57/40.28 new_primPlusNat7(x0) 72.57/40.28 new_primModNatS2(x0) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat5(x0, x1) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS02(x0) 72.57/40.28 new_primPlusNat6(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.28 new_primModNatS01(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.28 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.28 new_showInt1R'1(x0, x1) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primQuotInt(x0, x1) 72.57/40.28 new_primDivNatS01(x0, x1) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 new_primDivNatS4(x0) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.28 new_toEnumChar(x0, x1, x2, x3) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 72.57/40.28 We have to consider all minimal (P,Q,R)-chains. 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (59) TransformationProof (EQUIVALENT) 72.57/40.28 By rewriting [LPAR04] the rule new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), new_showInt1R'1(xv75, xv76)) at position [1] we obtained the following new rules [LPAR04]: 72.57/40.28 72.57/40.28 (new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, app(ty_List, ty_Main.Char)), xv75)),new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, app(ty_List, ty_Main.Char)), xv75))) 72.57/40.28 72.57/40.28 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (60) 72.57/40.28 Obligation: 72.57/40.28 Q DP problem: 72.57/40.28 The TRS P consists of the following rules: 72.57/40.28 72.57/40.28 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.28 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.28 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), new_showInt1R'1(xv75, xv76)) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, app(ty_List, ty_Main.Char)), xv75)) 72.57/40.28 72.57/40.28 The TRS R consists of the following rules: 72.57/40.28 72.57/40.28 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.28 new_showInt1R'1(xv56, xv57) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char)), xv56) 72.57/40.28 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.28 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.28 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.28 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.28 new_primModNatS2(xv122) -> Main.Zero 72.57/40.28 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.28 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.28 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.28 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.28 72.57/40.28 The set Q consists of the following terms: 72.57/40.28 72.57/40.28 new_primModNatS4(x0, Main.Zero) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.28 new_primPlusNat4(x0, x1) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat1(x0, x1) 72.57/40.28 new_primPlusNat7(x0) 72.57/40.28 new_primModNatS2(x0) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat5(x0, x1) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS02(x0) 72.57/40.28 new_primPlusNat6(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.28 new_primModNatS01(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.28 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.28 new_showInt1R'1(x0, x1) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primQuotInt(x0, x1) 72.57/40.28 new_primDivNatS01(x0, x1) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 new_primDivNatS4(x0) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.28 new_toEnumChar(x0, x1, x2, x3) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 72.57/40.28 We have to consider all minimal (P,Q,R)-chains. 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (61) TransformationProof (EQUIVALENT) 72.57/40.28 By rewriting [LPAR04] the rule new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), new_showInt1R'1(xv75, xv76)) at position [1] we obtained the following new rules [LPAR04]: 72.57/40.28 72.57/40.28 (new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, app(ty_List, ty_Main.Char)), xv75)),new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, app(ty_List, ty_Main.Char)), xv75))) 72.57/40.28 72.57/40.28 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (62) 72.57/40.28 Obligation: 72.57/40.28 Q DP problem: 72.57/40.28 The TRS P consists of the following rules: 72.57/40.28 72.57/40.28 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.28 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, app(ty_List, ty_Main.Char)), xv75)) 72.57/40.28 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, app(ty_List, ty_Main.Char)), xv75)) 72.57/40.28 72.57/40.28 The TRS R consists of the following rules: 72.57/40.28 72.57/40.28 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.28 new_showInt1R'1(xv56, xv57) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char)), xv56) 72.57/40.28 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.28 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.28 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.28 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.28 new_primModNatS2(xv122) -> Main.Zero 72.57/40.28 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.28 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.28 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.28 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.28 72.57/40.28 The set Q consists of the following terms: 72.57/40.28 72.57/40.28 new_primModNatS4(x0, Main.Zero) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.28 new_primPlusNat4(x0, x1) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat1(x0, x1) 72.57/40.28 new_primPlusNat7(x0) 72.57/40.28 new_primModNatS2(x0) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat5(x0, x1) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS02(x0) 72.57/40.28 new_primPlusNat6(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.28 new_primModNatS01(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.28 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.28 new_showInt1R'1(x0, x1) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primQuotInt(x0, x1) 72.57/40.28 new_primDivNatS01(x0, x1) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 new_primDivNatS4(x0) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.28 new_toEnumChar(x0, x1, x2, x3) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 72.57/40.28 We have to consider all minimal (P,Q,R)-chains. 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (63) UsableRulesProof (EQUIVALENT) 72.57/40.28 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (64) 72.57/40.28 Obligation: 72.57/40.28 Q DP problem: 72.57/40.28 The TRS P consists of the following rules: 72.57/40.28 72.57/40.28 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.28 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, app(ty_List, ty_Main.Char)), xv75)) 72.57/40.28 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, app(ty_List, ty_Main.Char)), xv75)) 72.57/40.28 72.57/40.28 The TRS R consists of the following rules: 72.57/40.28 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.28 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.28 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.28 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.28 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.28 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.28 new_primModNatS2(xv122) -> Main.Zero 72.57/40.28 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.28 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.28 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.28 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.28 72.57/40.28 The set Q consists of the following terms: 72.57/40.28 72.57/40.28 new_primModNatS4(x0, Main.Zero) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.28 new_primPlusNat4(x0, x1) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat1(x0, x1) 72.57/40.28 new_primPlusNat7(x0) 72.57/40.28 new_primModNatS2(x0) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat5(x0, x1) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS02(x0) 72.57/40.28 new_primPlusNat6(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.28 new_primModNatS01(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.28 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.28 new_showInt1R'1(x0, x1) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primQuotInt(x0, x1) 72.57/40.28 new_primDivNatS01(x0, x1) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 new_primDivNatS4(x0) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.28 new_toEnumChar(x0, x1, x2, x3) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 72.57/40.28 We have to consider all minimal (P,Q,R)-chains. 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (65) QReductionProof (EQUIVALENT) 72.57/40.28 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 72.57/40.28 72.57/40.28 new_showInt1R'1(x0, x1) 72.57/40.28 72.57/40.28 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (66) 72.57/40.28 Obligation: 72.57/40.28 Q DP problem: 72.57/40.28 The TRS P consists of the following rules: 72.57/40.28 72.57/40.28 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.28 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, app(ty_List, ty_Main.Char)), xv75)) 72.57/40.28 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, app(ty_List, ty_Main.Char)), xv75)) 72.57/40.28 72.57/40.28 The TRS R consists of the following rules: 72.57/40.28 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.28 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.28 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.28 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.28 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.28 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.28 new_primModNatS2(xv122) -> Main.Zero 72.57/40.28 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.28 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.28 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.28 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.28 72.57/40.28 The set Q consists of the following terms: 72.57/40.28 72.57/40.28 new_primModNatS4(x0, Main.Zero) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.28 new_primPlusNat4(x0, x1) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat1(x0, x1) 72.57/40.28 new_primPlusNat7(x0) 72.57/40.28 new_primModNatS2(x0) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat5(x0, x1) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS02(x0) 72.57/40.28 new_primPlusNat6(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.28 new_primModNatS01(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.28 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primQuotInt(x0, x1) 72.57/40.28 new_primDivNatS01(x0, x1) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 new_primDivNatS4(x0) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.28 new_toEnumChar(x0, x1, x2, x3) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 72.57/40.28 We have to consider all minimal (P,Q,R)-chains. 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (67) TransformationProof (EQUIVALENT) 72.57/40.28 By rewriting [LPAR04] the rule new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, app(ty_List, ty_Main.Char)), xv75)) at position [1,0] we obtained the following new rules [LPAR04]: 72.57/40.28 72.57/40.28 (new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)),new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75))) 72.57/40.28 72.57/40.28 72.57/40.28 ---------------------------------------- 72.57/40.28 72.57/40.28 (68) 72.57/40.28 Obligation: 72.57/40.28 Q DP problem: 72.57/40.28 The TRS P consists of the following rules: 72.57/40.28 72.57/40.28 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.28 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.28 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, app(ty_List, ty_Main.Char)), xv75)) 72.57/40.28 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.28 72.57/40.28 The TRS R consists of the following rules: 72.57/40.28 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.28 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.28 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.28 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.28 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.28 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.28 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.28 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.28 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.28 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.28 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.28 new_primModNatS2(xv122) -> Main.Zero 72.57/40.28 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.28 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.28 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.28 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.28 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.28 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.28 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.28 72.57/40.28 The set Q consists of the following terms: 72.57/40.28 72.57/40.28 new_primModNatS4(x0, Main.Zero) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.28 new_primPlusNat4(x0, x1) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.28 new_primPlusNat1(x0, x1) 72.57/40.28 new_primPlusNat7(x0) 72.57/40.28 new_primModNatS2(x0) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.28 new_primPlusNat5(x0, x1) 72.57/40.28 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.28 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.28 new_primModNatS02(x0) 72.57/40.28 new_primPlusNat6(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.28 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.28 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.28 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.28 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.28 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.28 new_primModNatS01(x0, x1) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.28 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.28 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.28 new_primQuotInt(x0, x1) 72.57/40.28 new_primDivNatS01(x0, x1) 72.57/40.28 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 new_primDivNatS4(x0) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.28 new_toEnumChar(x0, x1, x2, x3) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.28 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.28 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.28 72.57/40.28 We have to consider all minimal (P,Q,R)-chains. 72.57/40.28 ---------------------------------------- 72.57/40.29 72.57/40.29 (69) TransformationProof (EQUIVALENT) 72.57/40.29 By rewriting [LPAR04] the rule new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, app(ty_List, ty_Main.Char)), xv75)) at position [1,0] we obtained the following new rules [LPAR04]: 72.57/40.29 72.57/40.29 (new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)),new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75))) 72.57/40.29 72.57/40.29 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (70) 72.57/40.29 Obligation: 72.57/40.29 Q DP problem: 72.57/40.29 The TRS P consists of the following rules: 72.57/40.29 72.57/40.29 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.29 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 72.57/40.29 The TRS R consists of the following rules: 72.57/40.29 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.29 new_toEnumChar(xv67, xv68, xv69, ba) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba)) 72.57/40.29 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.29 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.29 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.29 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.29 new_primModNatS2(xv122) -> Main.Zero 72.57/40.29 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.29 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.29 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.29 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.29 72.57/40.29 The set Q consists of the following terms: 72.57/40.29 72.57/40.29 new_primModNatS4(x0, Main.Zero) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.29 new_primPlusNat4(x0, x1) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat1(x0, x1) 72.57/40.29 new_primPlusNat7(x0) 72.57/40.29 new_primModNatS2(x0) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat5(x0, x1) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS02(x0) 72.57/40.29 new_primPlusNat6(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.29 new_primModNatS01(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.29 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primQuotInt(x0, x1) 72.57/40.29 new_primDivNatS01(x0, x1) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 new_primDivNatS4(x0) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.29 new_toEnumChar(x0, x1, x2, x3) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 72.57/40.29 We have to consider all minimal (P,Q,R)-chains. 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (71) UsableRulesProof (EQUIVALENT) 72.57/40.29 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (72) 72.57/40.29 Obligation: 72.57/40.29 Q DP problem: 72.57/40.29 The TRS P consists of the following rules: 72.57/40.29 72.57/40.29 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.29 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 72.57/40.29 The TRS R consists of the following rules: 72.57/40.29 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.29 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.29 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.29 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.29 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.29 new_primModNatS2(xv122) -> Main.Zero 72.57/40.29 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.29 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.29 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.29 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.29 72.57/40.29 The set Q consists of the following terms: 72.57/40.29 72.57/40.29 new_primModNatS4(x0, Main.Zero) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.29 new_primPlusNat4(x0, x1) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat1(x0, x1) 72.57/40.29 new_primPlusNat7(x0) 72.57/40.29 new_primModNatS2(x0) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat5(x0, x1) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS02(x0) 72.57/40.29 new_primPlusNat6(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.29 new_primModNatS01(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.29 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primQuotInt(x0, x1) 72.57/40.29 new_primDivNatS01(x0, x1) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 new_primDivNatS4(x0) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.29 new_toEnumChar(x0, x1, x2, x3) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 72.57/40.29 We have to consider all minimal (P,Q,R)-chains. 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (73) QReductionProof (EQUIVALENT) 72.57/40.29 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 72.57/40.29 72.57/40.29 new_toEnumChar(x0, x1, x2, x3) 72.57/40.29 72.57/40.29 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (74) 72.57/40.29 Obligation: 72.57/40.29 Q DP problem: 72.57/40.29 The TRS P consists of the following rules: 72.57/40.29 72.57/40.29 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.29 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 72.57/40.29 The TRS R consists of the following rules: 72.57/40.29 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.29 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.29 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.29 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.29 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.29 new_primModNatS2(xv122) -> Main.Zero 72.57/40.29 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.29 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.29 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.29 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.29 72.57/40.29 The set Q consists of the following terms: 72.57/40.29 72.57/40.29 new_primModNatS4(x0, Main.Zero) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.29 new_primPlusNat4(x0, x1) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat1(x0, x1) 72.57/40.29 new_primPlusNat7(x0) 72.57/40.29 new_primModNatS2(x0) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat5(x0, x1) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS02(x0) 72.57/40.29 new_primPlusNat6(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.29 new_primModNatS01(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.29 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primQuotInt(x0, x1) 72.57/40.29 new_primDivNatS01(x0, x1) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 new_primDivNatS4(x0) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 72.57/40.29 We have to consider all minimal (P,Q,R)-chains. 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (75) TransformationProof (EQUIVALENT) 72.57/40.29 By rewriting [LPAR04] the rule new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) at position [1,0,0] we obtained the following new rules [LPAR04]: 72.57/40.29 72.57/40.29 (new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)),new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75))) 72.57/40.29 72.57/40.29 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (76) 72.57/40.29 Obligation: 72.57/40.29 Q DP problem: 72.57/40.29 The TRS P consists of the following rules: 72.57/40.29 72.57/40.29 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.29 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.29 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 72.57/40.29 The TRS R consists of the following rules: 72.57/40.29 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.29 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.29 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.29 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.29 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.29 new_primModNatS2(xv122) -> Main.Zero 72.57/40.29 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.29 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.29 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.29 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.29 72.57/40.29 The set Q consists of the following terms: 72.57/40.29 72.57/40.29 new_primModNatS4(x0, Main.Zero) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.29 new_primPlusNat4(x0, x1) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat1(x0, x1) 72.57/40.29 new_primPlusNat7(x0) 72.57/40.29 new_primModNatS2(x0) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat5(x0, x1) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS02(x0) 72.57/40.29 new_primPlusNat6(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.29 new_primModNatS01(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.29 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primQuotInt(x0, x1) 72.57/40.29 new_primDivNatS01(x0, x1) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 new_primDivNatS4(x0) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 72.57/40.29 We have to consider all minimal (P,Q,R)-chains. 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (77) TransformationProof (EQUIVALENT) 72.57/40.29 By rewriting [LPAR04] the rule new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) at position [1,0,0] we obtained the following new rules [LPAR04]: 72.57/40.29 72.57/40.29 (new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)),new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75))) 72.57/40.29 72.57/40.29 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (78) 72.57/40.29 Obligation: 72.57/40.29 Q DP problem: 72.57/40.29 The TRS P consists of the following rules: 72.57/40.29 72.57/40.29 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.29 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 72.57/40.29 The TRS R consists of the following rules: 72.57/40.29 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.29 new_primPlusInt(xv81, xv82, xv83, xv84, h) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84), xv84, h) 72.57/40.29 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.29 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.29 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.29 new_primModNatS2(xv122) -> Main.Zero 72.57/40.29 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.29 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.29 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.29 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.29 72.57/40.29 The set Q consists of the following terms: 72.57/40.29 72.57/40.29 new_primModNatS4(x0, Main.Zero) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.29 new_primPlusNat4(x0, x1) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat1(x0, x1) 72.57/40.29 new_primPlusNat7(x0) 72.57/40.29 new_primModNatS2(x0) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat5(x0, x1) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS02(x0) 72.57/40.29 new_primPlusNat6(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.29 new_primModNatS01(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.29 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primQuotInt(x0, x1) 72.57/40.29 new_primDivNatS01(x0, x1) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 new_primDivNatS4(x0) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 72.57/40.29 We have to consider all minimal (P,Q,R)-chains. 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (79) UsableRulesProof (EQUIVALENT) 72.57/40.29 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (80) 72.57/40.29 Obligation: 72.57/40.29 Q DP problem: 72.57/40.29 The TRS P consists of the following rules: 72.57/40.29 72.57/40.29 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.29 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 72.57/40.29 The TRS R consists of the following rules: 72.57/40.29 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.29 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.29 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.29 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.29 new_primModNatS2(xv122) -> Main.Zero 72.57/40.29 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.29 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.29 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.29 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.29 72.57/40.29 The set Q consists of the following terms: 72.57/40.29 72.57/40.29 new_primModNatS4(x0, Main.Zero) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.29 new_primPlusNat4(x0, x1) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat1(x0, x1) 72.57/40.29 new_primPlusNat7(x0) 72.57/40.29 new_primModNatS2(x0) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat5(x0, x1) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS02(x0) 72.57/40.29 new_primPlusNat6(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.29 new_primModNatS01(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.29 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primQuotInt(x0, x1) 72.57/40.29 new_primDivNatS01(x0, x1) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 new_primDivNatS4(x0) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 72.57/40.29 We have to consider all minimal (P,Q,R)-chains. 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (81) QReductionProof (EQUIVALENT) 72.57/40.29 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 72.57/40.29 72.57/40.29 new_primPlusInt(x0, x1, x2, x3, x4) 72.57/40.29 72.57/40.29 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (82) 72.57/40.29 Obligation: 72.57/40.29 Q DP problem: 72.57/40.29 The TRS P consists of the following rules: 72.57/40.29 72.57/40.29 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.29 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 72.57/40.29 The TRS R consists of the following rules: 72.57/40.29 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.29 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.29 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.29 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.29 new_primModNatS2(xv122) -> Main.Zero 72.57/40.29 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.29 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.29 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.29 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.29 72.57/40.29 The set Q consists of the following terms: 72.57/40.29 72.57/40.29 new_primModNatS4(x0, Main.Zero) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.29 new_primPlusNat4(x0, x1) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat1(x0, x1) 72.57/40.29 new_primPlusNat7(x0) 72.57/40.29 new_primModNatS2(x0) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat5(x0, x1) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS02(x0) 72.57/40.29 new_primPlusNat6(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS01(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.29 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primQuotInt(x0, x1) 72.57/40.29 new_primDivNatS01(x0, x1) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 new_primDivNatS4(x0) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 72.57/40.29 We have to consider all minimal (P,Q,R)-chains. 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (83) TransformationProof (EQUIVALENT) 72.57/40.29 By rewriting [LPAR04] the rule new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) at position [1,0,0] we obtained the following new rules [LPAR04]: 72.57/40.29 72.57/40.29 (new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)),new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75))) 72.57/40.29 72.57/40.29 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (84) 72.57/40.29 Obligation: 72.57/40.29 Q DP problem: 72.57/40.29 The TRS P consists of the following rules: 72.57/40.29 72.57/40.29 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.29 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.29 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.29 72.57/40.29 The TRS R consists of the following rules: 72.57/40.29 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.29 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.29 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.29 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.29 new_primModNatS2(xv122) -> Main.Zero 72.57/40.29 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.29 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.29 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.29 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.29 72.57/40.29 The set Q consists of the following terms: 72.57/40.29 72.57/40.29 new_primModNatS4(x0, Main.Zero) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.29 new_primPlusNat4(x0, x1) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat1(x0, x1) 72.57/40.29 new_primPlusNat7(x0) 72.57/40.29 new_primModNatS2(x0) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat5(x0, x1) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS02(x0) 72.57/40.29 new_primPlusNat6(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS01(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.29 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primQuotInt(x0, x1) 72.57/40.29 new_primDivNatS01(x0, x1) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 new_primDivNatS4(x0) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 72.57/40.29 We have to consider all minimal (P,Q,R)-chains. 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (85) TransformationProof (EQUIVALENT) 72.57/40.29 By rewriting [LPAR04] the rule new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(new_primPlusInt0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv75, xv76, new_primQuotInt(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char))), xv75)) at position [1,0,0] we obtained the following new rules [LPAR04]: 72.57/40.29 72.57/40.29 (new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)),new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75))) 72.57/40.29 72.57/40.29 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (86) 72.57/40.29 Obligation: 72.57/40.29 Q DP problem: 72.57/40.29 The TRS P consists of the following rules: 72.57/40.29 72.57/40.29 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.29 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.29 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.29 72.57/40.29 The TRS R consists of the following rules: 72.57/40.29 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.29 new_primQuotInt(xv72, xv73) -> Main.Pos(new_primDivNatS3(xv72, xv73)) 72.57/40.29 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, xv83, Main.Zero) -> new_primPlusNat7(xv81) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero)) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.29 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.29 new_primModNatS2(xv122) -> Main.Zero 72.57/40.29 new_primPlusNat6(xv36, xv38) -> new_primPlusNat7(xv36) 72.57/40.29 new_primPlusNat7(xv36) -> Main.Succ(xv36) 72.57/40.29 new_primPlusNat1(xv113, xv114) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat4(xv107, xv108) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.29 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.29 72.57/40.29 The set Q consists of the following terms: 72.57/40.29 72.57/40.29 new_primModNatS4(x0, Main.Zero) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.29 new_primPlusNat4(x0, x1) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat1(x0, x1) 72.57/40.29 new_primPlusNat7(x0) 72.57/40.29 new_primModNatS2(x0) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat5(x0, x1) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS02(x0) 72.57/40.29 new_primPlusNat6(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS01(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.29 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primQuotInt(x0, x1) 72.57/40.29 new_primDivNatS01(x0, x1) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 new_primDivNatS4(x0) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 72.57/40.29 We have to consider all minimal (P,Q,R)-chains. 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (87) UsableRulesProof (EQUIVALENT) 72.57/40.29 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (88) 72.57/40.29 Obligation: 72.57/40.29 Q DP problem: 72.57/40.29 The TRS P consists of the following rules: 72.57/40.29 72.57/40.29 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.29 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.29 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.29 72.57/40.29 The TRS R consists of the following rules: 72.57/40.29 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.29 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.29 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.29 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.29 new_primModNatS2(xv122) -> Main.Zero 72.57/40.29 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.29 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.29 72.57/40.29 The set Q consists of the following terms: 72.57/40.29 72.57/40.29 new_primModNatS4(x0, Main.Zero) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.29 new_primPlusNat4(x0, x1) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat1(x0, x1) 72.57/40.29 new_primPlusNat7(x0) 72.57/40.29 new_primModNatS2(x0) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat5(x0, x1) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS02(x0) 72.57/40.29 new_primPlusNat6(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS01(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.29 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primQuotInt(x0, x1) 72.57/40.29 new_primDivNatS01(x0, x1) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 new_primDivNatS4(x0) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 72.57/40.29 We have to consider all minimal (P,Q,R)-chains. 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (89) QReductionProof (EQUIVALENT) 72.57/40.29 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 72.57/40.29 72.57/40.29 new_primPlusNat4(x0, x1) 72.57/40.29 new_primPlusNat1(x0, x1) 72.57/40.29 new_primPlusNat7(x0) 72.57/40.29 new_primPlusNat6(x0, x1) 72.57/40.29 new_primPlusInt0(x0, x1, x2, x3, x4, x5) 72.57/40.29 new_primQuotInt(x0, x1) 72.57/40.29 72.57/40.29 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (90) 72.57/40.29 Obligation: 72.57/40.29 Q DP problem: 72.57/40.29 The TRS P consists of the following rules: 72.57/40.29 72.57/40.29 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.29 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.29 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.29 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.29 72.57/40.29 The TRS R consists of the following rules: 72.57/40.29 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.29 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.29 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.29 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.29 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.29 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.29 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.29 new_primModNatS2(xv122) -> Main.Zero 72.57/40.29 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.29 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.29 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.29 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.29 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.29 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.29 72.57/40.29 The set Q consists of the following terms: 72.57/40.29 72.57/40.29 new_primModNatS4(x0, Main.Zero) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.29 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.29 new_primModNatS2(x0) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.29 new_primPlusNat5(x0, x1) 72.57/40.29 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.29 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.29 new_primModNatS02(x0) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.29 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.29 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.29 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.29 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.29 new_primModNatS01(x0, x1) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.29 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.29 new_primDivNatS01(x0, x1) 72.57/40.29 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 new_primDivNatS4(x0) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.29 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.29 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.29 72.57/40.29 We have to consider all minimal (P,Q,R)-chains. 72.57/40.29 ---------------------------------------- 72.57/40.29 72.57/40.29 (91) InductionCalculusProof (EQUIVALENT) 72.57/40.29 Note that final constraints are written in bold face. 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 For Pair new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) the following chains were created: 72.57/40.29 *We consider the chain new_showInt(Main.Pos(Main.Succ(x6)), x7) -> new_showInt1ShowInt0(x7, x6, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1ShowInt0(x8, Main.Succ(x9), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(x8, Main.Succ(x9), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x9, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) which results in the following constraint: 72.57/40.29 72.57/40.29 (1) (new_showInt1ShowInt0(x7, x6, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))=new_showInt1ShowInt0(x8, Main.Succ(x9), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) ==> new_showInt(Main.Pos(Main.Succ(x6)), x7)_>=_new_showInt1ShowInt0(x7, x6, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.57/40.29 72.57/40.29 (2) (new_showInt(Main.Pos(Main.Succ(Main.Succ(x9))), x7)_>=_new_showInt1ShowInt0(x7, Main.Succ(x9), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 For Pair new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) the following chains were created: 72.57/40.29 *We consider the chain new_showInt1ShowInt00(x19, x20, x21, Main.Succ(x22), Main.Succ(x23)) -> new_showInt1ShowInt00(x19, x20, x21, x22, x23), new_showInt1ShowInt00(x24, x25, x26, Main.Succ(x27), Main.Succ(x28)) -> new_showInt1ShowInt00(x24, x25, x26, x27, x28) which results in the following constraint: 72.57/40.29 72.57/40.29 (1) (new_showInt1ShowInt00(x19, x20, x21, x22, x23)=new_showInt1ShowInt00(x24, x25, x26, Main.Succ(x27), Main.Succ(x28)) ==> new_showInt1ShowInt00(x19, x20, x21, Main.Succ(x22), Main.Succ(x23))_>=_new_showInt1ShowInt00(x19, x20, x21, x22, x23)) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.57/40.29 72.57/40.29 (2) (new_showInt1ShowInt00(x19, x20, x21, Main.Succ(Main.Succ(x27)), Main.Succ(Main.Succ(x28)))_>=_new_showInt1ShowInt00(x19, x20, x21, Main.Succ(x27), Main.Succ(x28))) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 *We consider the chain new_showInt1ShowInt00(x29, x30, x31, Main.Succ(x32), Main.Succ(x33)) -> new_showInt1ShowInt00(x29, x30, x31, x32, x33), new_showInt1ShowInt00(x34, x35, x36, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(x34, x35, x36) which results in the following constraint: 72.57/40.29 72.57/40.29 (1) (new_showInt1ShowInt00(x29, x30, x31, x32, x33)=new_showInt1ShowInt00(x34, x35, x36, Main.Zero, Main.Zero) ==> new_showInt1ShowInt00(x29, x30, x31, Main.Succ(x32), Main.Succ(x33))_>=_new_showInt1ShowInt00(x29, x30, x31, x32, x33)) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.57/40.29 72.57/40.29 (2) (new_showInt1ShowInt00(x29, x30, x31, Main.Succ(Main.Zero), Main.Succ(Main.Zero))_>=_new_showInt1ShowInt00(x29, x30, x31, Main.Zero, Main.Zero)) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 *We consider the chain new_showInt1ShowInt00(x42, x43, x44, Main.Succ(x45), Main.Succ(x46)) -> new_showInt1ShowInt00(x42, x43, x44, x45, x46), new_showInt1ShowInt00(x47, x48, x49, Main.Succ(x50), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(x48, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), x48, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x47)) which results in the following constraint: 72.57/40.29 72.57/40.29 (1) (new_showInt1ShowInt00(x42, x43, x44, x45, x46)=new_showInt1ShowInt00(x47, x48, x49, Main.Succ(x50), Main.Zero) ==> new_showInt1ShowInt00(x42, x43, x44, Main.Succ(x45), Main.Succ(x46))_>=_new_showInt1ShowInt00(x42, x43, x44, x45, x46)) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.57/40.29 72.57/40.29 (2) (new_showInt1ShowInt00(x42, x43, x44, Main.Succ(Main.Succ(x50)), Main.Succ(Main.Zero))_>=_new_showInt1ShowInt00(x42, x43, x44, Main.Succ(x50), Main.Zero)) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 For Pair new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) the following chains were created: 72.57/40.29 *We consider the chain new_showInt1ShowInt00(x71, x72, x73, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(x71, x72, x73), new_showInt1ShowInt01(x74, x75, x76) -> new_showInt(Main.Pos(new_primDivNatS3(x75, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), x75, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x74)) which results in the following constraint: 72.57/40.29 72.57/40.29 (1) (new_showInt1ShowInt01(x71, x72, x73)=new_showInt1ShowInt01(x74, x75, x76) ==> new_showInt1ShowInt00(x71, x72, x73, Main.Zero, Main.Zero)_>=_new_showInt1ShowInt01(x71, x72, x73)) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 72.57/40.29 72.57/40.29 (2) (new_showInt1ShowInt00(x71, x72, x73, Main.Zero, Main.Zero)_>=_new_showInt1ShowInt01(x71, x72, x73)) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 For Pair new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) the following chains were created: 72.57/40.29 *We consider the chain new_showInt1ShowInt0(x79, Main.Succ(x80), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(x79, Main.Succ(x80), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x80, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), new_showInt1ShowInt00(x81, x82, x83, Main.Succ(x84), Main.Succ(x85)) -> new_showInt1ShowInt00(x81, x82, x83, x84, x85) which results in the following constraint: 72.57/40.29 72.57/40.29 (1) (new_showInt1ShowInt00(x79, Main.Succ(x80), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x80, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))=new_showInt1ShowInt00(x81, x82, x83, Main.Succ(x84), Main.Succ(x85)) ==> new_showInt1ShowInt0(x79, Main.Succ(x80), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_new_showInt1ShowInt00(x79, Main.Succ(x80), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x80, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.57/40.29 72.57/40.29 (2) (new_showInt1ShowInt0(x79, Main.Succ(Main.Succ(x84)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_new_showInt1ShowInt00(x79, Main.Succ(Main.Succ(x84)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x84), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 For Pair new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) the following chains were created: 72.57/40.29 *We consider the chain new_showInt1ShowInt00(x94, x95, x96, Main.Succ(x97), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(x95, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), x95, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x94)), new_showInt(Main.Pos(Main.Succ(x98)), x99) -> new_showInt1ShowInt0(x99, x98, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) which results in the following constraint: 72.57/40.29 72.57/40.29 (1) (new_showInt(Main.Pos(new_primDivNatS3(x95, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), x95, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x94))=new_showInt(Main.Pos(Main.Succ(x98)), x99) ==> new_showInt1ShowInt00(x94, x95, x96, Main.Succ(x97), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS3(x95, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), x95, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x94))) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 72.57/40.29 72.57/40.29 (2) (Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))=x140 & new_primDivNatS3(x95, x140)=Main.Succ(x98) ==> new_showInt1ShowInt00(x94, x95, x96, Main.Succ(x97), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS3(x95, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), x95, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x94))) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS3(x95, x140)=Main.Succ(x98) which results in the following new constraints: 72.57/40.29 72.57/40.29 (3) (new_primDivNatS02(x142, x141, x142, x141)=Main.Succ(x98) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))=Main.Succ(x141) ==> new_showInt1ShowInt00(x94, Main.Succ(x142), x96, Main.Succ(x97), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(x142), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x142), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x94))) 72.57/40.29 72.57/40.29 (4) (Main.Succ(new_primDivNatS2(Main.Succ(x144), Main.Zero, Main.Zero))=Main.Succ(x98) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))=Main.Zero ==> new_showInt1ShowInt00(x94, Main.Succ(x144), x96, Main.Succ(x97), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(x144), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x144), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x94))) 72.57/40.29 72.57/40.29 (5) (Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero))=Main.Succ(x98) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))=Main.Zero ==> new_showInt1ShowInt00(x94, Main.Zero, x96, Main.Succ(x97), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x94))) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 We simplified constraint (3) using rules (I), (II), (VII) which results in the following new constraint: 72.57/40.29 72.57/40.29 (6) (x142=x145 & x141=x146 & new_primDivNatS02(x142, x141, x145, x146)=Main.Succ(x98) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x141 ==> new_showInt1ShowInt00(x94, Main.Succ(x142), x96, Main.Succ(x97), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(x142), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x142), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x94))) 72.57/40.29 72.57/40.29 72.57/40.29 72.57/40.29 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS02(x142, x141, x145, x146)=Main.Succ(x98) which results in the following new constraints: 72.57/40.30 72.57/40.30 (7) (new_primDivNatS02(x150, x149, x148, x147)=Main.Succ(x98) & x150=Main.Succ(x148) & x149=Main.Succ(x147) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x149 & (\/x151,x152,x153,x154:new_primDivNatS02(x150, x149, x148, x147)=Main.Succ(x151) & x150=x148 & x149=x147 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x149 ==> new_showInt1ShowInt00(x152, Main.Succ(x150), x153, Main.Succ(x154), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(x150), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x150), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x152))) ==> new_showInt1ShowInt00(x94, Main.Succ(x150), x96, Main.Succ(x97), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(x150), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x150), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x94))) 72.57/40.30 72.57/40.30 (8) (new_primDivNatS01(x157, x156)=Main.Succ(x98) & x157=Main.Succ(x155) & x156=Main.Zero & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x156 ==> new_showInt1ShowInt00(x94, Main.Succ(x157), x96, Main.Succ(x97), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(x157), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x157), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x94))) 72.57/40.30 72.57/40.30 (9) (new_primDivNatS01(x162, x161)=Main.Succ(x98) & x162=Main.Zero & x161=Main.Zero & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x161 ==> new_showInt1ShowInt00(x94, Main.Succ(x162), x96, Main.Succ(x97), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(x162), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x162), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x94))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (7) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 72.57/40.30 72.57/40.30 (10) (new_showInt1ShowInt00(x94, Main.Succ(Main.Succ(x148)), x96, Main.Succ(x97), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(Main.Succ(x148)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x148)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x94))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We solved constraint (8) using rules (I), (II), (III).We solved constraint (9) using rules (I), (II), (III). 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 For Pair new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) the following chains were created: 72.57/40.30 *We consider the chain new_showInt1ShowInt01(x120, x121, x122) -> new_showInt(Main.Pos(new_primDivNatS3(x121, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), x121, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x120)), new_showInt(Main.Pos(Main.Succ(x123)), x124) -> new_showInt1ShowInt0(x124, x123, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) which results in the following constraint: 72.57/40.30 72.57/40.30 (1) (new_showInt(Main.Pos(new_primDivNatS3(x121, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), x121, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x120))=new_showInt(Main.Pos(Main.Succ(x123)), x124) ==> new_showInt1ShowInt01(x120, x121, x122)_>=_new_showInt(Main.Pos(new_primDivNatS3(x121, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), x121, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x120))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 72.57/40.30 72.57/40.30 (2) (Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))=x165 & new_primDivNatS3(x121, x165)=Main.Succ(x123) ==> new_showInt1ShowInt01(x120, x121, x122)_>=_new_showInt(Main.Pos(new_primDivNatS3(x121, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), x121, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x120))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS3(x121, x165)=Main.Succ(x123) which results in the following new constraints: 72.57/40.30 72.57/40.30 (3) (new_primDivNatS02(x167, x166, x167, x166)=Main.Succ(x123) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))=Main.Succ(x166) ==> new_showInt1ShowInt01(x120, Main.Succ(x167), x122)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(x167), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x167), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x120))) 72.57/40.30 72.57/40.30 (4) (Main.Succ(new_primDivNatS2(Main.Succ(x169), Main.Zero, Main.Zero))=Main.Succ(x123) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))=Main.Zero ==> new_showInt1ShowInt01(x120, Main.Succ(x169), x122)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(x169), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x169), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x120))) 72.57/40.30 72.57/40.30 (5) (Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero))=Main.Succ(x123) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))=Main.Zero ==> new_showInt1ShowInt01(x120, Main.Zero, x122)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x120))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (3) using rules (I), (II), (VII) which results in the following new constraint: 72.57/40.30 72.57/40.30 (6) (x167=x170 & x166=x171 & new_primDivNatS02(x167, x166, x170, x171)=Main.Succ(x123) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x166 ==> new_showInt1ShowInt01(x120, Main.Succ(x167), x122)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(x167), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x167), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x120))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS02(x167, x166, x170, x171)=Main.Succ(x123) which results in the following new constraints: 72.57/40.30 72.57/40.30 (7) (new_primDivNatS02(x175, x174, x173, x172)=Main.Succ(x123) & x175=Main.Succ(x173) & x174=Main.Succ(x172) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x174 & (\/x176,x177,x178:new_primDivNatS02(x175, x174, x173, x172)=Main.Succ(x176) & x175=x173 & x174=x172 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x174 ==> new_showInt1ShowInt01(x177, Main.Succ(x175), x178)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(x175), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x175), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x177))) ==> new_showInt1ShowInt01(x120, Main.Succ(x175), x122)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(x175), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x175), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x120))) 72.57/40.30 72.57/40.30 (8) (new_primDivNatS01(x181, x180)=Main.Succ(x123) & x181=Main.Succ(x179) & x180=Main.Zero & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x180 ==> new_showInt1ShowInt01(x120, Main.Succ(x181), x122)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(x181), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x181), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x120))) 72.57/40.30 72.57/40.30 (9) (new_primDivNatS01(x186, x185)=Main.Succ(x123) & x186=Main.Zero & x185=Main.Zero & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x185 ==> new_showInt1ShowInt01(x120, Main.Succ(x186), x122)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(x186), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x186), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x120))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (7) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 72.57/40.30 72.57/40.30 (10) (new_showInt1ShowInt01(x120, Main.Succ(Main.Succ(x173)), x122)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(Main.Succ(x173)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x173)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x120))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We solved constraint (8) using rules (I), (II), (III).We solved constraint (9) using rules (I), (II), (III). 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 To summarize, we get the following constraints P__>=_ for the following pairs. 72.57/40.30 72.57/40.30 *new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 72.57/40.30 *(new_showInt(Main.Pos(Main.Succ(Main.Succ(x9))), x7)_>=_new_showInt1ShowInt0(x7, Main.Succ(x9), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 *new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.30 72.57/40.30 *(new_showInt1ShowInt00(x19, x20, x21, Main.Succ(Main.Succ(x27)), Main.Succ(Main.Succ(x28)))_>=_new_showInt1ShowInt00(x19, x20, x21, Main.Succ(x27), Main.Succ(x28))) 72.57/40.30 72.57/40.30 72.57/40.30 *(new_showInt1ShowInt00(x29, x30, x31, Main.Succ(Main.Zero), Main.Succ(Main.Zero))_>=_new_showInt1ShowInt00(x29, x30, x31, Main.Zero, Main.Zero)) 72.57/40.30 72.57/40.30 72.57/40.30 *(new_showInt1ShowInt00(x42, x43, x44, Main.Succ(Main.Succ(x50)), Main.Succ(Main.Zero))_>=_new_showInt1ShowInt00(x42, x43, x44, Main.Succ(x50), Main.Zero)) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 *new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.30 72.57/40.30 *(new_showInt1ShowInt00(x71, x72, x73, Main.Zero, Main.Zero)_>=_new_showInt1ShowInt01(x71, x72, x73)) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 *new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.30 72.57/40.30 *(new_showInt1ShowInt0(x79, Main.Succ(Main.Succ(x84)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_new_showInt1ShowInt00(x79, Main.Succ(Main.Succ(x84)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x84), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 *new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 72.57/40.30 *(new_showInt1ShowInt00(x94, Main.Succ(Main.Succ(x148)), x96, Main.Succ(x97), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(Main.Succ(x148)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x148)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x94))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 *new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 72.57/40.30 *(new_showInt1ShowInt01(x120, Main.Succ(Main.Succ(x173)), x122)_>=_new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(Main.Succ(x173)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x173)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x120))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 The constraints for P_> respective P_bound are constructed from P__>=_ where we just replace every occurence of "t _>=_ s" in P__>=_ by "t > s" respective "t _>=_ c". Here c stands for the fresh constant used for P_bound. 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (92) 72.57/40.30 Obligation: 72.57/40.30 Q DP problem: 72.57/40.30 The TRS P consists of the following rules: 72.57/40.30 72.57/40.30 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.57/40.30 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.30 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.30 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 72.57/40.30 The TRS R consists of the following rules: 72.57/40.30 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.30 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.30 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.30 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.30 new_primModNatS2(xv122) -> Main.Zero 72.57/40.30 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.30 72.57/40.30 The set Q consists of the following terms: 72.57/40.30 72.57/40.30 new_primModNatS4(x0, Main.Zero) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS2(x0) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat5(x0, x1) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS02(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS01(x0, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primDivNatS01(x0, x1) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_primDivNatS4(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 72.57/40.30 We have to consider all minimal (P,Q,R)-chains. 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (93) QDPPairToRuleProof (EQUIVALENT) 72.57/40.30 The dependency pair new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) was transformed to the following new rules: 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.30 72.57/40.30 the following new pairs maintain the fan-in: 72.57/40.30 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 72.57/40.30 the following new pairs maintain the fan-out: 72.57/40.30 H(xv75, xv76, xv77, cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) 72.57/40.30 H(xv75, xv76, xv77, cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero)) -> new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) 72.57/40.30 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (94) 72.57/40.30 Complex Obligation (AND) 72.57/40.30 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (95) 72.57/40.30 Obligation: 72.57/40.30 Q DP problem: 72.57/40.30 The TRS P consists of the following rules: 72.57/40.30 72.57/40.30 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.30 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> new_showInt1ShowInt00(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.30 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 H(xv75, xv76, xv77, cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) 72.57/40.30 H(xv75, xv76, xv77, cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero)) -> new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) 72.57/40.30 72.57/40.30 The TRS R consists of the following rules: 72.57/40.30 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.30 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.30 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.30 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.30 new_primModNatS2(xv122) -> Main.Zero 72.57/40.30 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.30 72.57/40.30 The set Q consists of the following terms: 72.57/40.30 72.57/40.30 new_primModNatS4(x0, Main.Zero) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS2(x0) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat5(x0, x1) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS02(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS01(x0, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primDivNatS01(x0, x1) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_primDivNatS4(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.57/40.30 72.57/40.30 We have to consider all minimal (P,Q,R)-chains. 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (96) DependencyGraphProof (EQUIVALENT) 72.57/40.30 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (97) 72.57/40.30 Obligation: 72.57/40.30 Q DP problem: 72.57/40.30 The TRS P consists of the following rules: 72.57/40.30 72.57/40.30 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 H(xv75, xv76, xv77, cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) 72.57/40.30 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.30 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 H(xv75, xv76, xv77, cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero)) -> new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) 72.57/40.30 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 72.57/40.30 The TRS R consists of the following rules: 72.57/40.30 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.30 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.30 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.30 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.30 new_primModNatS2(xv122) -> Main.Zero 72.57/40.30 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.30 72.57/40.30 The set Q consists of the following terms: 72.57/40.30 72.57/40.30 new_primModNatS4(x0, Main.Zero) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS2(x0) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat5(x0, x1) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS02(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS01(x0, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primDivNatS01(x0, x1) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_primDivNatS4(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.57/40.30 72.57/40.30 We have to consider all minimal (P,Q,R)-chains. 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (98) TransformationProof (EQUIVALENT) 72.57/40.30 By instantiating [LPAR04] the rule H(xv75, xv76, xv77, cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) we obtained the following new rules [LPAR04]: 72.57/40.30 72.57/40.30 (H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero),H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)) 72.57/40.30 72.57/40.30 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (99) 72.57/40.30 Obligation: 72.57/40.30 Q DP problem: 72.57/40.30 The TRS P consists of the following rules: 72.57/40.30 72.57/40.30 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) 72.57/40.30 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 H(xv75, xv76, xv77, cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero)) -> new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) 72.57/40.30 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.57/40.30 72.57/40.30 The TRS R consists of the following rules: 72.57/40.30 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.30 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.30 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.30 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.30 new_primModNatS2(xv122) -> Main.Zero 72.57/40.30 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.30 72.57/40.30 The set Q consists of the following terms: 72.57/40.30 72.57/40.30 new_primModNatS4(x0, Main.Zero) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS2(x0) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat5(x0, x1) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS02(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS01(x0, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primDivNatS01(x0, x1) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_primDivNatS4(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.57/40.30 72.57/40.30 We have to consider all minimal (P,Q,R)-chains. 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (100) TransformationProof (EQUIVALENT) 72.57/40.30 By instantiating [LPAR04] the rule new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero) -> new_showInt1ShowInt01(xv75, xv76, xv77) we obtained the following new rules [LPAR04]: 72.57/40.30 72.57/40.30 (new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))),new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (101) 72.57/40.30 Obligation: 72.57/40.30 Q DP problem: 72.57/40.30 The TRS P consists of the following rules: 72.57/40.30 72.57/40.30 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 H(xv75, xv76, xv77, cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero)) -> new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) 72.57/40.30 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.57/40.30 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.30 72.57/40.30 The TRS R consists of the following rules: 72.57/40.30 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.30 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.30 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.30 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.30 new_primModNatS2(xv122) -> Main.Zero 72.57/40.30 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.30 72.57/40.30 The set Q consists of the following terms: 72.57/40.30 72.57/40.30 new_primModNatS4(x0, Main.Zero) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS2(x0) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat5(x0, x1) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS02(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS01(x0, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primDivNatS01(x0, x1) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_primDivNatS4(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.57/40.30 72.57/40.30 We have to consider all minimal (P,Q,R)-chains. 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (102) TransformationProof (EQUIVALENT) 72.57/40.30 By instantiating [LPAR04] the rule new_showInt1ShowInt01(xv75, xv76, xv77) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) we obtained the following new rules [LPAR04]: 72.57/40.30 72.57/40.30 (new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)),new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0))) 72.57/40.30 72.57/40.30 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (103) 72.57/40.30 Obligation: 72.57/40.30 Q DP problem: 72.57/40.30 The TRS P consists of the following rules: 72.57/40.30 72.57/40.30 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 H(xv75, xv76, xv77, cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero)) -> new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) 72.57/40.30 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.57/40.30 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.30 new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.30 72.57/40.30 The TRS R consists of the following rules: 72.57/40.30 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.30 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.30 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.30 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.30 new_primModNatS2(xv122) -> Main.Zero 72.57/40.30 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.30 72.57/40.30 The set Q consists of the following terms: 72.57/40.30 72.57/40.30 new_primModNatS4(x0, Main.Zero) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS2(x0) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat5(x0, x1) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS02(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS01(x0, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primDivNatS01(x0, x1) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_primDivNatS4(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.57/40.30 72.57/40.30 We have to consider all minimal (P,Q,R)-chains. 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (104) TransformationProof (EQUIVALENT) 72.57/40.30 By rewriting [LPAR04] the rule new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) at position [0,0] we obtained the following new rules [LPAR04]: 72.57/40.30 72.57/40.30 (new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)),new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0))) 72.57/40.30 72.57/40.30 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (105) 72.57/40.30 Obligation: 72.57/40.30 Q DP problem: 72.57/40.30 The TRS P consists of the following rules: 72.57/40.30 72.57/40.30 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 H(xv75, xv76, xv77, cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero)) -> new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) 72.57/40.30 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.57/40.30 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.30 new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.30 72.57/40.30 The TRS R consists of the following rules: 72.57/40.30 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.30 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.30 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.30 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.30 new_primModNatS2(xv122) -> Main.Zero 72.57/40.30 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.30 72.57/40.30 The set Q consists of the following terms: 72.57/40.30 72.57/40.30 new_primModNatS4(x0, Main.Zero) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS2(x0) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat5(x0, x1) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS02(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS01(x0, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primDivNatS01(x0, x1) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_primDivNatS4(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.57/40.30 72.57/40.30 We have to consider all minimal (P,Q,R)-chains. 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (106) TransformationProof (EQUIVALENT) 72.57/40.30 By instantiating [LPAR04] the rule H(xv75, xv76, xv77, cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero)) -> new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) we obtained the following new rules [LPAR04]: 72.57/40.30 72.57/40.30 (H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero),H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero)) 72.57/40.30 72.57/40.30 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (107) 72.57/40.30 Obligation: 72.57/40.30 Q DP problem: 72.57/40.30 The TRS P consists of the following rules: 72.57/40.30 72.57/40.30 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) 72.57/40.30 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.57/40.30 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.30 new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.30 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.57/40.30 72.57/40.30 The TRS R consists of the following rules: 72.57/40.30 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.30 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.30 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.30 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.30 new_primModNatS2(xv122) -> Main.Zero 72.57/40.30 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.30 72.57/40.30 The set Q consists of the following terms: 72.57/40.30 72.57/40.30 new_primModNatS4(x0, Main.Zero) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS2(x0) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat5(x0, x1) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS02(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS01(x0, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primDivNatS01(x0, x1) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_primDivNatS4(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.57/40.30 72.57/40.30 We have to consider all minimal (P,Q,R)-chains. 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (108) TransformationProof (EQUIVALENT) 72.57/40.30 By instantiating [LPAR04] the rule new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), xv75)) we obtained the following new rules [LPAR04]: 72.57/40.30 72.57/40.30 (new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)),new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0))) 72.57/40.30 72.57/40.30 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (109) 72.57/40.30 Obligation: 72.57/40.30 Q DP problem: 72.57/40.30 The TRS P consists of the following rules: 72.57/40.30 72.57/40.30 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.57/40.30 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.30 new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.30 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.57/40.30 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.30 72.57/40.30 The TRS R consists of the following rules: 72.57/40.30 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.30 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840)) -> new_primPlusNat5(xv81, Main.Zero) 72.57/40.30 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.30 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.30 new_primModNatS2(xv122) -> Main.Zero 72.57/40.30 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.30 72.57/40.30 The set Q consists of the following terms: 72.57/40.30 72.57/40.30 new_primModNatS4(x0, Main.Zero) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS2(x0) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat5(x0, x1) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS02(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS01(x0, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primDivNatS01(x0, x1) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_primDivNatS4(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.57/40.30 72.57/40.30 We have to consider all minimal (P,Q,R)-chains. 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (110) UsableRulesProof (EQUIVALENT) 72.57/40.30 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (111) 72.57/40.30 Obligation: 72.57/40.30 Q DP problem: 72.57/40.30 The TRS P consists of the following rules: 72.57/40.30 72.57/40.30 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.57/40.30 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.30 new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.30 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.57/40.30 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.30 72.57/40.30 The TRS R consists of the following rules: 72.57/40.30 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.30 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.30 new_primModNatS2(xv122) -> Main.Zero 72.57/40.30 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.30 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.30 72.57/40.30 The set Q consists of the following terms: 72.57/40.30 72.57/40.30 new_primModNatS4(x0, Main.Zero) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS2(x0) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat5(x0, x1) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS02(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS01(x0, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primDivNatS01(x0, x1) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_primDivNatS4(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.57/40.30 72.57/40.30 We have to consider all minimal (P,Q,R)-chains. 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (112) TransformationProof (EQUIVALENT) 72.57/40.30 By rewriting [LPAR04] the rule new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS3(Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) at position [0,0] we obtained the following new rules [LPAR04]: 72.57/40.30 72.57/40.30 (new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)),new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0))) 72.57/40.30 72.57/40.30 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (113) 72.57/40.30 Obligation: 72.57/40.30 Q DP problem: 72.57/40.30 The TRS P consists of the following rules: 72.57/40.30 72.57/40.30 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.57/40.30 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.30 new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.30 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.57/40.30 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.30 72.57/40.30 The TRS R consists of the following rules: 72.57/40.30 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.30 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.30 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.30 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.30 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.30 new_primModNatS2(xv122) -> Main.Zero 72.57/40.30 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.30 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.30 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.30 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.30 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.30 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.30 72.57/40.30 The set Q consists of the following terms: 72.57/40.30 72.57/40.30 new_primModNatS4(x0, Main.Zero) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.30 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.30 new_primModNatS2(x0) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.30 new_primPlusNat5(x0, x1) 72.57/40.30 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.30 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.30 new_primModNatS02(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.30 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.30 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.30 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.30 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.30 new_primModNatS01(x0, x1) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.30 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.30 new_primDivNatS01(x0, x1) 72.57/40.30 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_primDivNatS4(x0) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.30 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.30 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 anew_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.30 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.30 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.57/40.30 72.57/40.30 We have to consider all minimal (P,Q,R)-chains. 72.57/40.30 ---------------------------------------- 72.57/40.30 72.57/40.30 (114) InductionCalculusProof (EQUIVALENT) 72.57/40.30 Note that final constraints are written in bold face. 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 For Pair new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) the following chains were created: 72.57/40.30 *We consider the chain new_showInt1ShowInt0(x4, Main.Succ(x5), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(x4, Main.Succ(x5), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x5, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), H(x6, Main.Succ(x7), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(x6, Main.Succ(x7), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) which results in the following constraint: 72.57/40.30 72.57/40.30 (1) (H(x4, Main.Succ(x5), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x5, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))=H(x6, Main.Succ(x7), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) ==> new_showInt1ShowInt0(x4, Main.Succ(x5), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x4, Main.Succ(x5), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x5, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 72.57/40.30 72.57/40.30 (2) (Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x130 & anew_new_showInt1ShowInt00(x5, x130)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) ==> new_showInt1ShowInt0(x4, Main.Succ(x5), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x4, Main.Succ(x5), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x5, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on anew_new_showInt1ShowInt00(x5, x130)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) which results in the following new constraint: 72.57/40.30 72.57/40.30 (3) (new_new_showInt1ShowInt00(x132, x131)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=Main.Succ(x131) ==> new_showInt1ShowInt0(x4, Main.Succ(Main.Succ(x132)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x4, Main.Succ(Main.Succ(x132)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(x132), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (3) using rules (I), (II) which results in the following new constraint: 72.57/40.30 72.57/40.30 (4) (new_new_showInt1ShowInt00(x132, x131)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=x131 ==> new_showInt1ShowInt0(x4, Main.Succ(Main.Succ(x132)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x4, Main.Succ(Main.Succ(x132)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(x132), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_new_showInt1ShowInt00(x132, x131)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) which results in the following new constraints: 72.57/40.30 72.57/40.30 (5) (new_new_showInt1ShowInt00(x134, x133)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=Main.Succ(x133) & (\/x135:new_new_showInt1ShowInt00(x134, x133)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=x133 ==> new_showInt1ShowInt0(x135, Main.Succ(Main.Succ(x134)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x135, Main.Succ(Main.Succ(x134)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(x134), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) ==> new_showInt1ShowInt0(x4, Main.Succ(Main.Succ(Main.Succ(x134))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x4, Main.Succ(Main.Succ(Main.Succ(x134))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(Main.Succ(x134)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 (6) (cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=Main.Zero ==> new_showInt1ShowInt0(x4, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x4, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 (7) (cons_new_showInt1ShowInt00(Main.Succ(x136), Main.Zero)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=Main.Zero ==> new_showInt1ShowInt0(x4, Main.Succ(Main.Succ(Main.Succ(x136))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x4, Main.Succ(Main.Succ(Main.Succ(x136))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(Main.Succ(x136)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (5) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.57/40.30 72.57/40.30 (8) (new_showInt1ShowInt0(x4, Main.Succ(Main.Succ(Main.Succ(x134))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x4, Main.Succ(Main.Succ(Main.Succ(x134))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(Main.Succ(x134)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We solved constraint (6) using rules (I), (II).We solved constraint (7) using rules (I), (II). 72.57/40.30 *We consider the chain new_showInt1ShowInt0(x12, Main.Succ(x13), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(x12, Main.Succ(x13), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x13, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), H(x14, Main.Succ(x15), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero)) -> new_showInt1ShowInt00(x14, Main.Succ(x15), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x16), Main.Zero) which results in the following constraint: 72.57/40.30 72.57/40.30 (1) (H(x12, Main.Succ(x13), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x13, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))=H(x14, Main.Succ(x15), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero)) ==> new_showInt1ShowInt0(x12, Main.Succ(x13), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(x13), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x13, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 72.57/40.30 72.57/40.30 (2) (Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x137 & anew_new_showInt1ShowInt00(x13, x137)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) ==> new_showInt1ShowInt0(x12, Main.Succ(x13), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(x13), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x13, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on anew_new_showInt1ShowInt00(x13, x137)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) which results in the following new constraint: 72.57/40.30 72.57/40.30 (3) (new_new_showInt1ShowInt00(x139, x138)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=Main.Succ(x138) ==> new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(x139)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(x139)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(x139), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (3) using rules (I), (II) which results in the following new constraint: 72.57/40.30 72.57/40.30 (4) (new_new_showInt1ShowInt00(x139, x138)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=x138 ==> new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(x139)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(x139)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(x139), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_new_showInt1ShowInt00(x139, x138)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) which results in the following new constraints: 72.57/40.30 72.57/40.30 (5) (new_new_showInt1ShowInt00(x141, x140)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=Main.Succ(x140) & (\/x142,x143:new_new_showInt1ShowInt00(x141, x140)=cons_new_showInt1ShowInt00(Main.Succ(x142), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=x140 ==> new_showInt1ShowInt0(x143, Main.Succ(Main.Succ(x141)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x143, Main.Succ(Main.Succ(x141)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(x141), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) ==> new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(x141))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(x141))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(Main.Succ(x141)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 (6) (cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=Main.Zero ==> new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 (7) (cons_new_showInt1ShowInt00(Main.Succ(x144), Main.Zero)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=Main.Zero ==> new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(x144))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(x144))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(Main.Succ(x144)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (5) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.57/40.30 72.57/40.30 (8) (new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(x141))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(x141))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(Main.Succ(x141)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We solved constraint (6) using rules (I), (II).We solved constraint (7) using rules (I), (II). 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 For Pair new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) the following chains were created: 72.57/40.30 *We consider the chain new_showInt(Main.Pos(Main.Succ(x19)), x20) -> new_showInt1ShowInt0(x20, x19, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1ShowInt0(x21, Main.Succ(x22), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(x21, Main.Succ(x22), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x22, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) which results in the following constraint: 72.57/40.30 72.57/40.30 (1) (new_showInt1ShowInt0(x20, x19, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))=new_showInt1ShowInt0(x21, Main.Succ(x22), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) ==> new_showInt(Main.Pos(Main.Succ(x19)), x20)_>=_new_showInt1ShowInt0(x20, x19, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.57/40.30 72.57/40.30 (2) (new_showInt(Main.Pos(Main.Succ(Main.Succ(x22))), x20)_>=_new_showInt1ShowInt0(x20, Main.Succ(x22), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 For Pair H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) the following chains were created: 72.57/40.30 *We consider the chain H(x41, Main.Succ(x42), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(x41, Main.Succ(x42), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero), new_showInt1ShowInt00(x43, Main.Succ(x44), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(x43, Main.Succ(x44), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) which results in the following constraint: 72.57/40.30 72.57/40.30 (1) (new_showInt1ShowInt00(x41, Main.Succ(x42), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)=new_showInt1ShowInt00(x43, Main.Succ(x44), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) ==> H(x41, Main.Succ(x42), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero))_>=_new_showInt1ShowInt00(x41, Main.Succ(x42), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 72.57/40.30 72.57/40.30 (2) (H(x41, Main.Succ(x42), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero))_>=_new_showInt1ShowInt00(x41, Main.Succ(x42), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 For Pair new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) the following chains were created: 72.57/40.30 *We consider the chain new_showInt1ShowInt00(x59, Main.Succ(x60), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(x59, Main.Succ(x60), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), new_showInt1ShowInt01(x61, Main.Succ(x62), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(x62, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x62, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x62), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x61)) which results in the following constraint: 72.57/40.30 72.57/40.30 (1) (new_showInt1ShowInt01(x59, Main.Succ(x60), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))=new_showInt1ShowInt01(x61, Main.Succ(x62), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) ==> new_showInt1ShowInt00(x59, Main.Succ(x60), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)_>=_new_showInt1ShowInt01(x59, Main.Succ(x60), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 72.57/40.30 72.57/40.30 (2) (new_showInt1ShowInt00(x59, Main.Succ(x60), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)_>=_new_showInt1ShowInt01(x59, Main.Succ(x60), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 For Pair new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) the following chains were created: 72.57/40.30 *We consider the chain new_showInt1ShowInt01(x69, Main.Succ(x70), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(x70, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x70, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x70), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x69)), new_showInt(Main.Pos(Main.Succ(x71)), x72) -> new_showInt1ShowInt0(x72, x71, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) which results in the following constraint: 72.57/40.30 72.57/40.30 (1) (new_showInt(Main.Pos(new_primDivNatS02(x70, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x70, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x70), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x69))=new_showInt(Main.Pos(Main.Succ(x71)), x72) ==> new_showInt1ShowInt01(x69, Main.Succ(x70), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(x70, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x70, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x70), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x69))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 72.57/40.30 72.57/40.30 (2) (Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x145 & x70=x146 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x147 & new_primDivNatS02(x70, x145, x146, x147)=Main.Succ(x71) ==> new_showInt1ShowInt01(x69, Main.Succ(x70), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(x70, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x70, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x70), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x69))) 72.57/40.30 72.57/40.30 72.57/40.30 72.57/40.30 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS02(x70, x145, x146, x147)=Main.Succ(x71) which results in the following new constraints: 72.57/40.30 72.57/40.30 (3) (new_primDivNatS02(x151, x150, x149, x148)=Main.Succ(x71) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x150 & x151=Main.Succ(x149) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=Main.Succ(x148) & (\/x152,x153:new_primDivNatS02(x151, x150, x149, x148)=Main.Succ(x152) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x150 & x151=x149 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x148 ==> new_showInt1ShowInt01(x153, Main.Succ(x151), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(x151, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x151, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x151), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x153))) ==> new_showInt1ShowInt01(x69, Main.Succ(x151), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(x151, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x151, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x151), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x69))) 72.57/40.31 72.57/40.31 (4) (new_primDivNatS01(x156, x155)=Main.Succ(x71) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x155 & x156=Main.Succ(x154) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=Main.Zero ==> new_showInt1ShowInt01(x69, Main.Succ(x156), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(x156, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x156, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x156), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x69))) 72.57/40.31 72.57/40.31 (5) (new_primDivNatS01(x161, x160)=Main.Succ(x71) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x160 & x161=Main.Zero & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=Main.Zero ==> new_showInt1ShowInt01(x69, Main.Succ(x161), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(x161, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x161, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x161), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x69))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 We simplified constraint (3) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 72.57/40.31 72.57/40.31 (6) (Main.Succ(x149)=x162 & new_primDivNatS02(x162, x150, x149, x148)=Main.Succ(x71) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x150 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=x148 ==> new_showInt1ShowInt01(x69, Main.Succ(Main.Succ(x149)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x149), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x149), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x149)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x69))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS02(x162, x150, x149, x148)=Main.Succ(x71) which results in the following new constraints: 72.57/40.31 72.57/40.31 (7) (new_primDivNatS02(x166, x165, x164, x163)=Main.Succ(x71) & Main.Succ(Main.Succ(x164))=x166 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x165 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=Main.Succ(x163) & (\/x167,x168:new_primDivNatS02(x166, x165, x164, x163)=Main.Succ(x167) & Main.Succ(x164)=x166 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x165 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=x163 ==> new_showInt1ShowInt01(x168, Main.Succ(Main.Succ(x164)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x164), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x164), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x164)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x168))) ==> new_showInt1ShowInt01(x69, Main.Succ(Main.Succ(Main.Succ(x164))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x164)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x164)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x164))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x69))) 72.57/40.31 72.57/40.31 (8) (new_primDivNatS01(x171, x170)=Main.Succ(x71) & Main.Succ(Main.Succ(x169))=x171 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x170 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=Main.Zero ==> new_showInt1ShowInt01(x69, Main.Succ(Main.Succ(Main.Succ(x169))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x169)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x169)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x169))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x69))) 72.57/40.31 72.57/40.31 (9) (new_primDivNatS01(x176, x175)=Main.Succ(x71) & Main.Succ(Main.Zero)=x176 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x175 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=Main.Zero ==> new_showInt1ShowInt01(x69, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x69))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 We simplified constraint (7) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.57/40.31 72.57/40.31 (10) (new_showInt1ShowInt01(x69, Main.Succ(Main.Succ(Main.Succ(x164))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x164)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x164)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x164))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x69))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 We solved constraint (8) using rules (I), (II).We solved constraint (9) using rules (I), (II). 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 For Pair H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) the following chains were created: 72.57/40.31 *We consider the chain H(x101, Main.Succ(x102), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x103), Main.Zero)) -> new_showInt1ShowInt00(x101, Main.Succ(x102), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x103), Main.Zero), new_showInt1ShowInt00(x104, Main.Succ(x105), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x106), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(x105, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x105, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x105), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x104)) which results in the following constraint: 72.57/40.31 72.57/40.31 (1) (new_showInt1ShowInt00(x101, Main.Succ(x102), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x103), Main.Zero)=new_showInt1ShowInt00(x104, Main.Succ(x105), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x106), Main.Zero) ==> H(x101, Main.Succ(x102), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x103), Main.Zero))_>=_new_showInt1ShowInt00(x101, Main.Succ(x102), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x103), Main.Zero)) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 72.57/40.31 72.57/40.31 (2) (H(x101, Main.Succ(x102), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x103), Main.Zero))_>=_new_showInt1ShowInt00(x101, Main.Succ(x102), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x103), Main.Zero)) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 For Pair new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) the following chains were created: 72.57/40.31 *We consider the chain new_showInt1ShowInt00(x110, Main.Succ(x111), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x112), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(x111, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x111, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x111), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x110)), new_showInt(Main.Pos(Main.Succ(x113)), x114) -> new_showInt1ShowInt0(x114, x113, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) which results in the following constraint: 72.57/40.31 72.57/40.31 (1) (new_showInt(Main.Pos(new_primDivNatS02(x111, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x111, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x111), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x110))=new_showInt(Main.Pos(Main.Succ(x113)), x114) ==> new_showInt1ShowInt00(x110, Main.Succ(x111), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x112), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(x111, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x111, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x111), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x110))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 72.57/40.31 72.57/40.31 (2) (Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x177 & x111=x178 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x179 & new_primDivNatS02(x111, x177, x178, x179)=Main.Succ(x113) ==> new_showInt1ShowInt00(x110, Main.Succ(x111), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x112), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(x111, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x111, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x111), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x110))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS02(x111, x177, x178, x179)=Main.Succ(x113) which results in the following new constraints: 72.57/40.31 72.57/40.31 (3) (new_primDivNatS02(x183, x182, x181, x180)=Main.Succ(x113) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x182 & x183=Main.Succ(x181) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=Main.Succ(x180) & (\/x184,x185,x186:new_primDivNatS02(x183, x182, x181, x180)=Main.Succ(x184) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x182 & x183=x181 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x180 ==> new_showInt1ShowInt00(x185, Main.Succ(x183), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x186), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(x183, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x183, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x183), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x185))) ==> new_showInt1ShowInt00(x110, Main.Succ(x183), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x112), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(x183, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x183, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x183), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x110))) 72.57/40.31 72.57/40.31 (4) (new_primDivNatS01(x189, x188)=Main.Succ(x113) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x188 & x189=Main.Succ(x187) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=Main.Zero ==> new_showInt1ShowInt00(x110, Main.Succ(x189), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x112), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(x189, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x189, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x189), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x110))) 72.57/40.31 72.57/40.31 (5) (new_primDivNatS01(x194, x193)=Main.Succ(x113) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x193 & x194=Main.Zero & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=Main.Zero ==> new_showInt1ShowInt00(x110, Main.Succ(x194), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x112), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(x194, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x194, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(x194), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x110))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 We simplified constraint (3) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 72.57/40.31 72.57/40.31 (6) (Main.Succ(x181)=x195 & new_primDivNatS02(x195, x182, x181, x180)=Main.Succ(x113) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x182 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=x180 ==> new_showInt1ShowInt00(x110, Main.Succ(Main.Succ(x181)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x112), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x181), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x181), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x181)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x110))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS02(x195, x182, x181, x180)=Main.Succ(x113) which results in the following new constraints: 72.57/40.31 72.57/40.31 (7) (new_primDivNatS02(x199, x198, x197, x196)=Main.Succ(x113) & Main.Succ(Main.Succ(x197))=x199 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x198 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=Main.Succ(x196) & (\/x200,x201,x202:new_primDivNatS02(x199, x198, x197, x196)=Main.Succ(x200) & Main.Succ(x197)=x199 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x198 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=x196 ==> new_showInt1ShowInt00(x201, Main.Succ(Main.Succ(x197)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x202), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x197), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x197), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x197)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x201))) ==> new_showInt1ShowInt00(x110, Main.Succ(Main.Succ(Main.Succ(x197))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x112), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x197)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x197)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x197))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x110))) 72.57/40.31 72.57/40.31 (8) (new_primDivNatS01(x205, x204)=Main.Succ(x113) & Main.Succ(Main.Succ(x203))=x205 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x204 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=Main.Zero ==> new_showInt1ShowInt00(x110, Main.Succ(Main.Succ(Main.Succ(x203))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x112), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x203)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x203)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x203))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x110))) 72.57/40.31 72.57/40.31 (9) (new_primDivNatS01(x210, x209)=Main.Succ(x113) & Main.Succ(Main.Zero)=x210 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x209 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))=Main.Zero ==> new_showInt1ShowInt00(x110, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x112), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x110))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 We simplified constraint (7) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.57/40.31 72.57/40.31 (10) (new_showInt1ShowInt00(x110, Main.Succ(Main.Succ(Main.Succ(x197))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x112), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x197)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x197)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x197))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x110))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 We solved constraint (8) using rules (I), (II).We solved constraint (9) using rules (I), (II). 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 To summarize, we get the following constraints P__>=_ for the following pairs. 72.57/40.31 72.57/40.31 *new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.31 72.57/40.31 *(new_showInt1ShowInt0(x4, Main.Succ(Main.Succ(Main.Succ(x134))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x4, Main.Succ(Main.Succ(Main.Succ(x134))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(Main.Succ(x134)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.31 72.57/40.31 72.57/40.31 *(new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(x141))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(x141))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(Main.Succ(Main.Succ(x141)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 *new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.31 72.57/40.31 *(new_showInt(Main.Pos(Main.Succ(Main.Succ(x22))), x20)_>=_new_showInt1ShowInt0(x20, Main.Succ(x22), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 *H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.57/40.31 72.57/40.31 *(H(x41, Main.Succ(x42), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero))_>=_new_showInt1ShowInt00(x41, Main.Succ(x42), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 *new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.31 72.57/40.31 *(new_showInt1ShowInt00(x59, Main.Succ(x60), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)_>=_new_showInt1ShowInt01(x59, Main.Succ(x60), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 *new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.31 72.57/40.31 *(new_showInt1ShowInt01(x69, Main.Succ(Main.Succ(Main.Succ(x164))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x164)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x164)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x164))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x69))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 *H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.57/40.31 72.57/40.31 *(H(x101, Main.Succ(x102), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x103), Main.Zero))_>=_new_showInt1ShowInt00(x101, Main.Succ(x102), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x103), Main.Zero)) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 *new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.31 72.57/40.31 *(new_showInt1ShowInt00(x110, Main.Succ(Main.Succ(Main.Succ(x197))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x112), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x197)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x197)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x197))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x110))) 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 72.57/40.31 The constraints for P_> respective P_bound are constructed from P__>=_ where we just replace every occurence of "t _>=_ s" in P__>=_ by "t > s" respective "t _>=_ c". Here c stands for the fresh constant used for P_bound. 72.57/40.31 ---------------------------------------- 72.57/40.31 72.57/40.31 (115) 72.57/40.31 Obligation: 72.57/40.31 Q DP problem: 72.57/40.31 The TRS P consists of the following rules: 72.57/40.31 72.57/40.31 new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.31 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.57/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.31 new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.57/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.31 72.57/40.31 The TRS R consists of the following rules: 72.57/40.31 72.57/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.31 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.31 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.31 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.31 new_primModNatS2(xv122) -> Main.Zero 72.57/40.31 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.31 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.31 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.31 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.31 anew_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.31 72.57/40.31 The set Q consists of the following terms: 72.57/40.31 72.57/40.31 new_primModNatS4(x0, Main.Zero) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.31 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.31 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.31 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.31 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.31 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.31 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.31 new_primModNatS2(x0) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.31 new_primPlusNat5(x0, x1) 72.57/40.31 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.31 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.31 new_primModNatS02(x0) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.31 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.31 new_primModNatS01(x0, x1) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.31 new_primDivNatS01(x0, x1) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.31 new_primDivNatS4(x0) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 anew_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.57/40.31 72.57/40.31 We have to consider all minimal (P,Q,R)-chains. 72.57/40.31 ---------------------------------------- 72.57/40.31 72.57/40.31 (116) TransformationProof (EQUIVALENT) 72.57/40.31 By narrowing [LPAR04] the rule new_showInt1ShowInt0(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(z1, Main.Succ(x1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), anew_new_showInt1ShowInt00(x1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) at position [3] we obtained the following new rules [LPAR04]: 72.57/40.31 72.57/40.31 (new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))),new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.31 72.57/40.31 72.57/40.31 ---------------------------------------- 72.57/40.31 72.57/40.31 (117) 72.57/40.31 Obligation: 72.57/40.31 Q DP problem: 72.57/40.31 The TRS P consists of the following rules: 72.57/40.31 72.57/40.31 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.57/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.31 new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.57/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.31 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.31 72.57/40.31 The TRS R consists of the following rules: 72.57/40.31 72.57/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.31 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.31 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.31 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.31 new_primModNatS2(xv122) -> Main.Zero 72.57/40.31 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.31 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.31 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.31 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.31 anew_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.31 72.57/40.31 The set Q consists of the following terms: 72.57/40.31 72.57/40.31 new_primModNatS4(x0, Main.Zero) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.31 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.31 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.31 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.31 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.31 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.31 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.31 new_primModNatS2(x0) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.31 new_primPlusNat5(x0, x1) 72.57/40.31 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.31 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.31 new_primModNatS02(x0) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.31 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.31 new_primModNatS01(x0, x1) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.31 new_primDivNatS01(x0, x1) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.31 new_primDivNatS4(x0) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 anew_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.57/40.31 72.57/40.31 We have to consider all minimal (P,Q,R)-chains. 72.57/40.31 ---------------------------------------- 72.57/40.31 72.57/40.31 (118) UsableRulesProof (EQUIVALENT) 72.57/40.31 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 72.57/40.31 ---------------------------------------- 72.57/40.31 72.57/40.31 (119) 72.57/40.31 Obligation: 72.57/40.31 Q DP problem: 72.57/40.31 The TRS P consists of the following rules: 72.57/40.31 72.57/40.31 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.57/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.31 new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.57/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.31 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.31 72.57/40.31 The TRS R consists of the following rules: 72.57/40.31 72.57/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.31 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.31 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.31 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.31 new_primModNatS2(xv122) -> Main.Zero 72.57/40.31 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.31 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.31 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.31 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.31 72.57/40.31 The set Q consists of the following terms: 72.57/40.31 72.57/40.31 new_primModNatS4(x0, Main.Zero) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.31 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.31 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.31 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.31 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.31 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.31 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.31 new_primModNatS2(x0) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.31 new_primPlusNat5(x0, x1) 72.57/40.31 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.31 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.31 new_primModNatS02(x0) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.31 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.31 new_primModNatS01(x0, x1) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.31 new_primDivNatS01(x0, x1) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.31 new_primDivNatS4(x0) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.57/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 anew_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.57/40.31 72.57/40.31 We have to consider all minimal (P,Q,R)-chains. 72.57/40.31 ---------------------------------------- 72.57/40.31 72.57/40.31 (120) QReductionProof (EQUIVALENT) 72.57/40.31 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 72.57/40.31 72.57/40.31 anew_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 72.57/40.31 72.57/40.31 ---------------------------------------- 72.57/40.31 72.57/40.31 (121) 72.57/40.31 Obligation: 72.57/40.31 Q DP problem: 72.57/40.31 The TRS P consists of the following rules: 72.57/40.31 72.57/40.31 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.57/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.57/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.31 new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.57/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.57/40.31 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.57/40.31 72.57/40.31 The TRS R consists of the following rules: 72.57/40.31 72.57/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.57/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.57/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.31 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.57/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.57/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.57/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.57/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.57/40.31 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.57/40.31 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.57/40.31 new_primModNatS2(xv122) -> Main.Zero 72.57/40.31 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.57/40.31 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.57/40.31 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.57/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.57/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.57/40.31 new_primDivNatS4(xv148) -> Main.Zero 72.57/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.57/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.57/40.31 72.57/40.31 The set Q consists of the following terms: 72.57/40.31 72.57/40.31 new_primModNatS4(x0, Main.Zero) 72.57/40.31 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.57/40.31 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.57/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.31 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.57/40.31 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.31 new_primPlusNat3(x0, x1, Main.Zero) 72.57/40.31 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.57/40.31 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.57/40.31 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.57/40.31 new_primModNatS2(x0) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.57/40.31 new_primPlusNat5(x0, x1) 72.57/40.31 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.57/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.57/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.57/40.31 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Zero) 72.57/40.31 new_primModNatS02(x0) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.57/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.57/40.31 new_primDivNatS3(Main.Zero, Main.Zero) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.57/40.31 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.57/40.31 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.57/40.31 new_primModNatS01(x0, x1) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.57/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.57/40.31 new_primDivNatS01(x0, x1) 72.57/40.31 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.57/40.31 new_primDivNatS4(x0) 72.57/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.31 72.82/40.31 We have to consider all minimal (P,Q,R)-chains. 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (122) TransformationProof (EQUIVALENT) 72.82/40.31 By narrowing [LPAR04] the rule new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) at position [0,0] we obtained the following new rules [LPAR04]: 72.82/40.31 72.82/40.31 (new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.31 (new_showInt1ShowInt01(y0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt01(y0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.31 72.82/40.31 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (123) 72.82/40.31 Obligation: 72.82/40.31 Q DP problem: 72.82/40.31 The TRS P consists of the following rules: 72.82/40.31 72.82/40.31 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.82/40.31 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.31 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.31 new_showInt1ShowInt01(y0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.31 72.82/40.31 The TRS R consists of the following rules: 72.82/40.31 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.31 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.31 new_primModNatS2(xv122) -> Main.Zero 72.82/40.31 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.31 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.31 72.82/40.31 The set Q consists of the following terms: 72.82/40.31 72.82/40.31 new_primModNatS4(x0, Main.Zero) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS2(x0) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat5(x0, x1) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS02(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS01(x0, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primDivNatS01(x0, x1) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_primDivNatS4(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.31 72.82/40.31 We have to consider all minimal (P,Q,R)-chains. 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (124) DependencyGraphProof (EQUIVALENT) 72.82/40.31 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (125) 72.82/40.31 Obligation: 72.82/40.31 Q DP problem: 72.82/40.31 The TRS P consists of the following rules: 72.82/40.31 72.82/40.31 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.31 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.31 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.82/40.31 72.82/40.31 The TRS R consists of the following rules: 72.82/40.31 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.31 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.31 new_primModNatS2(xv122) -> Main.Zero 72.82/40.31 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.31 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.31 72.82/40.31 The set Q consists of the following terms: 72.82/40.31 72.82/40.31 new_primModNatS4(x0, Main.Zero) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS2(x0) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat5(x0, x1) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS02(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS01(x0, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primDivNatS01(x0, x1) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_primDivNatS4(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.31 72.82/40.31 We have to consider all minimal (P,Q,R)-chains. 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (126) TransformationProof (EQUIVALENT) 72.82/40.31 By narrowing [LPAR04] the rule new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) at position [3] we obtained the following new rules [LPAR04]: 72.82/40.31 72.82/40.31 (new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))),new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.31 72.82/40.31 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (127) 72.82/40.31 Obligation: 72.82/40.31 Q DP problem: 72.82/40.31 The TRS P consists of the following rules: 72.82/40.31 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.31 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.31 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.82/40.31 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 72.82/40.31 The TRS R consists of the following rules: 72.82/40.31 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.31 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.31 new_primModNatS2(xv122) -> Main.Zero 72.82/40.31 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.31 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.31 72.82/40.31 The set Q consists of the following terms: 72.82/40.31 72.82/40.31 new_primModNatS4(x0, Main.Zero) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS2(x0) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat5(x0, x1) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS02(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS01(x0, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primDivNatS01(x0, x1) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_primDivNatS4(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.31 72.82/40.31 We have to consider all minimal (P,Q,R)-chains. 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (128) TransformationProof (EQUIVALENT) 72.82/40.31 By narrowing [LPAR04] the rule new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) at position [0,0] we obtained the following new rules [LPAR04]: 72.82/40.31 72.82/40.31 (new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.31 (new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.31 72.82/40.31 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (129) 72.82/40.31 Obligation: 72.82/40.31 Q DP problem: 72.82/40.31 The TRS P consists of the following rules: 72.82/40.31 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.31 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.82/40.31 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.31 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.31 72.82/40.31 The TRS R consists of the following rules: 72.82/40.31 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.31 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.31 new_primModNatS2(xv122) -> Main.Zero 72.82/40.31 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.31 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.31 72.82/40.31 The set Q consists of the following terms: 72.82/40.31 72.82/40.31 new_primModNatS4(x0, Main.Zero) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS2(x0) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat5(x0, x1) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS02(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS01(x0, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primDivNatS01(x0, x1) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_primDivNatS4(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.31 72.82/40.31 We have to consider all minimal (P,Q,R)-chains. 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (130) DependencyGraphProof (EQUIVALENT) 72.82/40.31 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (131) 72.82/40.31 Obligation: 72.82/40.31 Q DP problem: 72.82/40.31 The TRS P consists of the following rules: 72.82/40.31 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.31 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.31 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.31 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.82/40.31 72.82/40.31 The TRS R consists of the following rules: 72.82/40.31 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.31 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.31 new_primModNatS2(xv122) -> Main.Zero 72.82/40.31 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.31 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.31 72.82/40.31 The set Q consists of the following terms: 72.82/40.31 72.82/40.31 new_primModNatS4(x0, Main.Zero) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS2(x0) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat5(x0, x1) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS02(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS01(x0, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primDivNatS01(x0, x1) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_primDivNatS4(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.31 72.82/40.31 We have to consider all minimal (P,Q,R)-chains. 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (132) TransformationProof (EQUIVALENT) 72.82/40.31 By narrowing [LPAR04] the rule new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) at position [0,0] we obtained the following new rules [LPAR04]: 72.82/40.31 72.82/40.31 (new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.31 (new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.31 72.82/40.31 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (133) 72.82/40.31 Obligation: 72.82/40.31 Q DP problem: 72.82/40.31 The TRS P consists of the following rules: 72.82/40.31 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.31 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.31 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.82/40.31 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.31 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.31 72.82/40.31 The TRS R consists of the following rules: 72.82/40.31 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.31 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.31 new_primModNatS2(xv122) -> Main.Zero 72.82/40.31 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.31 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.31 72.82/40.31 The set Q consists of the following terms: 72.82/40.31 72.82/40.31 new_primModNatS4(x0, Main.Zero) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS2(x0) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat5(x0, x1) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS02(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS01(x0, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primDivNatS01(x0, x1) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_primDivNatS4(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.31 72.82/40.31 We have to consider all minimal (P,Q,R)-chains. 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (134) DependencyGraphProof (EQUIVALENT) 72.82/40.31 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (135) 72.82/40.31 Obligation: 72.82/40.31 Q DP problem: 72.82/40.31 The TRS P consists of the following rules: 72.82/40.31 72.82/40.31 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.31 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.31 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.82/40.31 72.82/40.31 The TRS R consists of the following rules: 72.82/40.31 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.31 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.31 new_primModNatS2(xv122) -> Main.Zero 72.82/40.31 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.31 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.31 72.82/40.31 The set Q consists of the following terms: 72.82/40.31 72.82/40.31 new_primModNatS4(x0, Main.Zero) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS2(x0) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat5(x0, x1) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS02(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS01(x0, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primDivNatS01(x0, x1) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_primDivNatS4(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.31 72.82/40.31 We have to consider all minimal (P,Q,R)-chains. 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (136) TransformationProof (EQUIVALENT) 72.82/40.31 By narrowing [LPAR04] the rule new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) at position [0,0] we obtained the following new rules [LPAR04]: 72.82/40.31 72.82/40.31 (new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.31 (new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.31 72.82/40.31 72.82/40.31 ---------------------------------------- 72.82/40.31 72.82/40.31 (137) 72.82/40.31 Obligation: 72.82/40.31 Q DP problem: 72.82/40.31 The TRS P consists of the following rules: 72.82/40.31 72.82/40.31 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.31 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.31 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.31 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.82/40.31 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.31 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.31 72.82/40.31 The TRS R consists of the following rules: 72.82/40.31 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.31 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.31 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.31 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.31 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.31 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.31 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.31 new_primModNatS2(xv122) -> Main.Zero 72.82/40.31 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.31 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.31 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.31 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.31 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.31 72.82/40.31 The set Q consists of the following terms: 72.82/40.31 72.82/40.31 new_primModNatS4(x0, Main.Zero) 72.82/40.31 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.31 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.31 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.31 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.31 new_primModNatS2(x0) 72.82/40.31 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.31 new_primPlusNat5(x0, x1) 72.82/40.31 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.31 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.31 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.31 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.31 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.31 new_primModNatS02(x0) 72.82/40.31 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS01(x0, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primDivNatS01(x0, x1) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_primDivNatS4(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.32 72.82/40.32 We have to consider all minimal (P,Q,R)-chains. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (138) DependencyGraphProof (EQUIVALENT) 72.82/40.32 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (139) 72.82/40.32 Obligation: 72.82/40.32 Q DP problem: 72.82/40.32 The TRS P consists of the following rules: 72.82/40.32 72.82/40.32 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.32 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.82/40.32 72.82/40.32 The TRS R consists of the following rules: 72.82/40.32 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.32 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.32 new_primModNatS2(xv122) -> Main.Zero 72.82/40.32 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.32 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.32 72.82/40.32 The set Q consists of the following terms: 72.82/40.32 72.82/40.32 new_primModNatS4(x0, Main.Zero) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS2(x0) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat5(x0, x1) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS02(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS01(x0, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primDivNatS01(x0, x1) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_primDivNatS4(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.32 72.82/40.32 We have to consider all minimal (P,Q,R)-chains. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (140) TransformationProof (EQUIVALENT) 72.82/40.32 By narrowing [LPAR04] the rule new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) at position [3] we obtained the following new rules [LPAR04]: 72.82/40.32 72.82/40.32 (new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))),new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 72.82/40.32 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (141) 72.82/40.32 Obligation: 72.82/40.32 Q DP problem: 72.82/40.32 The TRS P consists of the following rules: 72.82/40.32 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.32 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) 72.82/40.32 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 72.82/40.32 The TRS R consists of the following rules: 72.82/40.32 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.32 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.32 new_primModNatS2(xv122) -> Main.Zero 72.82/40.32 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.32 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.32 72.82/40.32 The set Q consists of the following terms: 72.82/40.32 72.82/40.32 new_primModNatS4(x0, Main.Zero) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS2(x0) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat5(x0, x1) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS02(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS01(x0, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primDivNatS01(x0, x1) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_primDivNatS4(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.32 72.82/40.32 We have to consider all minimal (P,Q,R)-chains. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (142) TransformationProof (EQUIVALENT) 72.82/40.32 By narrowing [LPAR04] the rule new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(z2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), z0)) at position [0,0] we obtained the following new rules [LPAR04]: 72.82/40.32 72.82/40.32 (new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.32 (new_showInt1ShowInt00(y0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt00(y0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.32 72.82/40.32 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (143) 72.82/40.32 Obligation: 72.82/40.32 Q DP problem: 72.82/40.32 The TRS P consists of the following rules: 72.82/40.32 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.32 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.32 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 72.82/40.32 The TRS R consists of the following rules: 72.82/40.32 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.32 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.32 new_primModNatS2(xv122) -> Main.Zero 72.82/40.32 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.32 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.32 72.82/40.32 The set Q consists of the following terms: 72.82/40.32 72.82/40.32 new_primModNatS4(x0, Main.Zero) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS2(x0) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat5(x0, x1) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS02(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS01(x0, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primDivNatS01(x0, x1) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_primDivNatS4(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.32 72.82/40.32 We have to consider all minimal (P,Q,R)-chains. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (144) DependencyGraphProof (EQUIVALENT) 72.82/40.32 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (145) 72.82/40.32 Obligation: 72.82/40.32 Q DP problem: 72.82/40.32 The TRS P consists of the following rules: 72.82/40.32 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.32 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.32 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 72.82/40.32 The TRS R consists of the following rules: 72.82/40.32 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400))) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.32 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.32 new_primModNatS2(xv122) -> Main.Zero 72.82/40.32 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.32 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.32 72.82/40.32 The set Q consists of the following terms: 72.82/40.32 72.82/40.32 new_primModNatS4(x0, Main.Zero) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS2(x0) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat5(x0, x1) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS02(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS01(x0, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primDivNatS01(x0, x1) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_primDivNatS4(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.32 72.82/40.32 We have to consider all minimal (P,Q,R)-chains. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (146) UsableRulesProof (EQUIVALENT) 72.82/40.32 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (147) 72.82/40.32 Obligation: 72.82/40.32 Q DP problem: 72.82/40.32 The TRS P consists of the following rules: 72.82/40.32 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.32 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.32 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 72.82/40.32 The TRS R consists of the following rules: 72.82/40.32 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.32 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.32 new_primModNatS2(xv122) -> Main.Zero 72.82/40.32 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.32 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.32 72.82/40.32 The set Q consists of the following terms: 72.82/40.32 72.82/40.32 new_primModNatS4(x0, Main.Zero) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS2(x0) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat5(x0, x1) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS02(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS01(x0, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primDivNatS01(x0, x1) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_primDivNatS4(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.32 72.82/40.32 We have to consider all minimal (P,Q,R)-chains. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (148) TransformationProof (EQUIVALENT) 72.82/40.32 By narrowing [LPAR04] the rule new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) at position [3] we obtained the following new rules [LPAR04]: 72.82/40.32 72.82/40.32 (new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 72.82/40.32 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (149) 72.82/40.32 Obligation: 72.82/40.32 Q DP problem: 72.82/40.32 The TRS P consists of the following rules: 72.82/40.32 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.32 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 72.82/40.32 The TRS R consists of the following rules: 72.82/40.32 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.32 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.32 new_primModNatS2(xv122) -> Main.Zero 72.82/40.32 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.32 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.32 72.82/40.32 The set Q consists of the following terms: 72.82/40.32 72.82/40.32 new_primModNatS4(x0, Main.Zero) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS2(x0) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat5(x0, x1) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS02(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS01(x0, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primDivNatS01(x0, x1) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_primDivNatS4(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.32 72.82/40.32 We have to consider all minimal (P,Q,R)-chains. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (150) TransformationProof (EQUIVALENT) 72.82/40.32 By narrowing [LPAR04] the rule new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) at position [0,0] we obtained the following new rules [LPAR04]: 72.82/40.32 72.82/40.32 (new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.32 (new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.32 72.82/40.32 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (151) 72.82/40.32 Obligation: 72.82/40.32 Q DP problem: 72.82/40.32 The TRS P consists of the following rules: 72.82/40.32 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.32 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.32 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 72.82/40.32 The TRS R consists of the following rules: 72.82/40.32 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.32 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.32 new_primModNatS2(xv122) -> Main.Zero 72.82/40.32 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.32 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.32 72.82/40.32 The set Q consists of the following terms: 72.82/40.32 72.82/40.32 new_primModNatS4(x0, Main.Zero) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS2(x0) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat5(x0, x1) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS02(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS01(x0, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primDivNatS01(x0, x1) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_primDivNatS4(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.32 72.82/40.32 We have to consider all minimal (P,Q,R)-chains. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (152) DependencyGraphProof (EQUIVALENT) 72.82/40.32 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (153) 72.82/40.32 Obligation: 72.82/40.32 Q DP problem: 72.82/40.32 The TRS P consists of the following rules: 72.82/40.32 72.82/40.32 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.32 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 72.82/40.32 The TRS R consists of the following rules: 72.82/40.32 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000)))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.32 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.32 new_primModNatS2(xv122) -> Main.Zero 72.82/40.32 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.32 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.32 72.82/40.32 The set Q consists of the following terms: 72.82/40.32 72.82/40.32 new_primModNatS4(x0, Main.Zero) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS2(x0) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat5(x0, x1) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS02(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS01(x0, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primDivNatS01(x0, x1) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_primDivNatS4(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.32 72.82/40.32 We have to consider all minimal (P,Q,R)-chains. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (154) UsableRulesProof (EQUIVALENT) 72.82/40.32 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (155) 72.82/40.32 Obligation: 72.82/40.32 Q DP problem: 72.82/40.32 The TRS P consists of the following rules: 72.82/40.32 72.82/40.32 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.32 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 72.82/40.32 The TRS R consists of the following rules: 72.82/40.32 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.32 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.32 new_primModNatS2(xv122) -> Main.Zero 72.82/40.32 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.32 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.32 72.82/40.32 The set Q consists of the following terms: 72.82/40.32 72.82/40.32 new_primModNatS4(x0, Main.Zero) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS2(x0) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat5(x0, x1) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS02(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS01(x0, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primDivNatS01(x0, x1) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_primDivNatS4(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.32 72.82/40.32 We have to consider all minimal (P,Q,R)-chains. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (156) TransformationProof (EQUIVALENT) 72.82/40.32 By narrowing [LPAR04] the rule new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) at position [0,0] we obtained the following new rules [LPAR04]: 72.82/40.32 72.82/40.32 (new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.32 (new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.32 72.82/40.32 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (157) 72.82/40.32 Obligation: 72.82/40.32 Q DP problem: 72.82/40.32 The TRS P consists of the following rules: 72.82/40.32 72.82/40.32 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.32 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 72.82/40.32 The TRS R consists of the following rules: 72.82/40.32 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.32 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.32 new_primModNatS2(xv122) -> Main.Zero 72.82/40.32 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.32 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.32 72.82/40.32 The set Q consists of the following terms: 72.82/40.32 72.82/40.32 new_primModNatS4(x0, Main.Zero) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS2(x0) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat5(x0, x1) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS02(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS01(x0, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primDivNatS01(x0, x1) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_primDivNatS4(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.32 72.82/40.32 We have to consider all minimal (P,Q,R)-chains. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (158) DependencyGraphProof (EQUIVALENT) 72.82/40.32 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (159) 72.82/40.32 Obligation: 72.82/40.32 Q DP problem: 72.82/40.32 The TRS P consists of the following rules: 72.82/40.32 72.82/40.32 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.32 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.32 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 72.82/40.32 The TRS R consists of the following rules: 72.82/40.32 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.32 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.32 new_primModNatS2(xv122) -> Main.Zero 72.82/40.32 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.32 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.32 72.82/40.32 The set Q consists of the following terms: 72.82/40.32 72.82/40.32 new_primModNatS4(x0, Main.Zero) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS2(x0) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat5(x0, x1) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS02(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS01(x0, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primDivNatS01(x0, x1) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_primDivNatS4(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.32 72.82/40.32 We have to consider all minimal (P,Q,R)-chains. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (160) UsableRulesProof (EQUIVALENT) 72.82/40.32 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (161) 72.82/40.32 Obligation: 72.82/40.32 Q DP problem: 72.82/40.32 The TRS P consists of the following rules: 72.82/40.32 72.82/40.32 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.32 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.32 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 72.82/40.32 The TRS R consists of the following rules: 72.82/40.32 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.32 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.32 new_primModNatS2(xv122) -> Main.Zero 72.82/40.32 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.32 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.32 72.82/40.32 The set Q consists of the following terms: 72.82/40.32 72.82/40.32 new_primModNatS4(x0, Main.Zero) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS2(x0) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat5(x0, x1) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS02(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS01(x0, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primDivNatS01(x0, x1) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_primDivNatS4(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.32 72.82/40.32 We have to consider all minimal (P,Q,R)-chains. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (162) TransformationProof (EQUIVALENT) 72.82/40.32 By narrowing [LPAR04] the rule new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) at position [0,0] we obtained the following new rules [LPAR04]: 72.82/40.32 72.82/40.32 (new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.32 (new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)),new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0))) 72.82/40.32 72.82/40.32 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (163) 72.82/40.32 Obligation: 72.82/40.32 Q DP problem: 72.82/40.32 The TRS P consists of the following rules: 72.82/40.32 72.82/40.32 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.32 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.32 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(Main.Zero), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 72.82/40.32 The TRS R consists of the following rules: 72.82/40.32 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.32 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.32 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.32 new_primModNatS2(xv122) -> Main.Zero 72.82/40.32 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.32 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.32 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.32 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.32 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.32 72.82/40.32 The set Q consists of the following terms: 72.82/40.32 72.82/40.32 new_primModNatS4(x0, Main.Zero) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS2(x0) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.32 new_primPlusNat5(x0, x1) 72.82/40.32 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.32 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.32 new_primModNatS02(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.32 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.32 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.32 new_primModNatS01(x0, x1) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.32 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.32 new_primDivNatS01(x0, x1) 72.82/40.32 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_primDivNatS4(x0) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.32 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.32 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.32 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.32 72.82/40.32 We have to consider all minimal (P,Q,R)-chains. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (164) DependencyGraphProof (EQUIVALENT) 72.82/40.32 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 72.82/40.32 ---------------------------------------- 72.82/40.32 72.82/40.32 (165) 72.82/40.32 Obligation: 72.82/40.32 Q DP problem: 72.82/40.32 The TRS P consists of the following rules: 72.82/40.32 72.82/40.32 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.32 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.32 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.32 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.32 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.32 72.82/40.32 The TRS R consists of the following rules: 72.82/40.32 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.32 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000)))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.32 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.32 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.32 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.32 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.33 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.33 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.33 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.33 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.33 new_primModNatS2(xv122) -> Main.Zero 72.82/40.33 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.33 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.33 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.33 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.33 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.33 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.33 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.33 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.33 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.33 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.33 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.33 72.82/40.33 The set Q consists of the following terms: 72.82/40.33 72.82/40.33 new_primModNatS4(x0, Main.Zero) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.33 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.33 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.33 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.33 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.33 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.33 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.33 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.33 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.33 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.33 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.33 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.33 new_primModNatS2(x0) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.33 new_primPlusNat5(x0, x1) 72.82/40.33 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.33 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.33 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.33 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.33 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.33 new_primModNatS02(x0) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.33 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.33 new_primModNatS01(x0, x1) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.33 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.33 new_primDivNatS01(x0, x1) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.33 new_primDivNatS4(x0) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.33 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.33 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.33 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.33 72.82/40.33 We have to consider all minimal (P,Q,R)-chains. 72.82/40.33 ---------------------------------------- 72.82/40.33 72.82/40.33 (166) UsableRulesProof (EQUIVALENT) 72.82/40.33 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 72.82/40.33 ---------------------------------------- 72.82/40.33 72.82/40.33 (167) 72.82/40.33 Obligation: 72.82/40.33 Q DP problem: 72.82/40.33 The TRS P consists of the following rules: 72.82/40.33 72.82/40.33 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.33 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.33 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.33 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.33 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.33 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.33 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.33 72.82/40.33 The TRS R consists of the following rules: 72.82/40.33 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.33 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.33 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.33 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.33 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.33 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.33 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.33 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.33 new_primModNatS2(xv122) -> Main.Zero 72.82/40.33 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.33 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.33 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.33 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.33 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.33 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.33 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.33 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.33 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.33 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.33 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.33 72.82/40.33 The set Q consists of the following terms: 72.82/40.33 72.82/40.33 new_primModNatS4(x0, Main.Zero) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.33 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.33 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.33 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.33 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.33 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.33 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.33 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.33 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.33 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.33 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.33 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.33 new_primModNatS2(x0) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.33 new_primPlusNat5(x0, x1) 72.82/40.33 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.33 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.33 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.33 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.33 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.33 new_primModNatS02(x0) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.33 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.33 new_primModNatS01(x0, x1) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.33 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.33 new_primDivNatS01(x0, x1) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.33 new_primDivNatS4(x0) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.33 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.33 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.33 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.33 72.82/40.33 We have to consider all minimal (P,Q,R)-chains. 72.82/40.33 ---------------------------------------- 72.82/40.33 72.82/40.33 (168) InductionCalculusProof (EQUIVALENT) 72.82/40.33 Note that final constraints are written in bold face. 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 For Pair new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) the following chains were created: 72.82/40.33 *We consider the chain new_showInt1ShowInt0(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x3, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), H(x4, Main.Succ(x5), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(x4, Main.Succ(x5), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) which results in the following constraint: 72.82/40.33 72.82/40.33 (1) (H(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x3, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))=H(x4, Main.Succ(x5), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) ==> new_showInt1ShowInt0(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x3, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 72.82/40.33 72.82/40.33 (2) (Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x130 & new_new_showInt1ShowInt00(x3, x130)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) ==> new_showInt1ShowInt0(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x3, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_new_showInt1ShowInt00(x3, x130)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) which results in the following new constraints: 72.82/40.33 72.82/40.33 (3) (new_new_showInt1ShowInt00(x132, x131)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=Main.Succ(x131) & (\/x133:new_new_showInt1ShowInt00(x132, x131)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x131 ==> new_showInt1ShowInt0(x133, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x132))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x133, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x132))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x132, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) ==> new_showInt1ShowInt0(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x132)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x132)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(x132), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 (4) (cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=Main.Zero ==> new_showInt1ShowInt0(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 (5) (cons_new_showInt1ShowInt00(Main.Succ(x134), Main.Zero)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=Main.Zero ==> new_showInt1ShowInt0(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x134)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x134)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(x134), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: 72.82/40.33 72.82/40.33 (6) (new_new_showInt1ShowInt00(x132, x131)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x131 ==> new_showInt1ShowInt0(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x132)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x132)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(x132), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_new_showInt1ShowInt00(x132, x131)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) which results in the following new constraints: 72.82/40.33 72.82/40.33 (7) (new_new_showInt1ShowInt00(x136, x135)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=Main.Succ(x135) & (\/x137:new_new_showInt1ShowInt00(x136, x135)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x135 ==> new_showInt1ShowInt0(x137, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x136)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x137, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x136)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(x136), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) ==> new_showInt1ShowInt0(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x136))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x136))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(Main.Succ(x136)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 (8) (cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=Main.Zero ==> new_showInt1ShowInt0(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 (9) (cons_new_showInt1ShowInt00(Main.Succ(x138), Main.Zero)=cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=Main.Zero ==> new_showInt1ShowInt0(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x138))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x138))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(Main.Succ(x138)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (7) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.82/40.33 72.82/40.33 (10) (new_showInt1ShowInt0(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x136))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x136))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(Main.Succ(x136)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We solved constraint (8) using rules (I), (II).We solved constraint (9) using rules (I), (II). 72.82/40.33 *We consider the chain new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x13))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x13))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x13, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), H(x14, Main.Succ(x15), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero)) -> new_showInt1ShowInt00(x14, Main.Succ(x15), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x16), Main.Zero) which results in the following constraint: 72.82/40.33 72.82/40.33 (1) (H(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x13))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x13, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))=H(x14, Main.Succ(x15), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero)) ==> new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x13))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x13))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x13, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 72.82/40.33 72.82/40.33 (2) (Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x139 & new_new_showInt1ShowInt00(x13, x139)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) ==> new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x13))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x13))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x13, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_new_showInt1ShowInt00(x13, x139)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) which results in the following new constraints: 72.82/40.33 72.82/40.33 (3) (new_new_showInt1ShowInt00(x141, x140)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=Main.Succ(x140) & (\/x142,x143:new_new_showInt1ShowInt00(x141, x140)=cons_new_showInt1ShowInt00(Main.Succ(x142), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x140 ==> new_showInt1ShowInt0(x143, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x141))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x143, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x141))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x141, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) ==> new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x141)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x141)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(x141), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 (4) (cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=Main.Zero ==> new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 (5) (cons_new_showInt1ShowInt00(Main.Succ(x144), Main.Zero)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=Main.Zero ==> new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x144)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x144)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(x144), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: 72.82/40.33 72.82/40.33 (6) (new_new_showInt1ShowInt00(x141, x140)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x140 ==> new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x141)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x141)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(x141), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_new_showInt1ShowInt00(x141, x140)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) which results in the following new constraints: 72.82/40.33 72.82/40.33 (7) (new_new_showInt1ShowInt00(x146, x145)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=Main.Succ(x145) & (\/x147,x148:new_new_showInt1ShowInt00(x146, x145)=cons_new_showInt1ShowInt00(Main.Succ(x147), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x145 ==> new_showInt1ShowInt0(x148, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x146)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x148, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x146)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(x146), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) ==> new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x146))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x146))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(Main.Succ(x146)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 (8) (cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=Main.Zero ==> new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 (9) (cons_new_showInt1ShowInt00(Main.Succ(x149), Main.Zero)=cons_new_showInt1ShowInt00(Main.Succ(x16), Main.Zero) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=Main.Zero ==> new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x149))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x149))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(Main.Succ(x149)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (7) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.82/40.33 72.82/40.33 (10) (new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x146))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x146))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(Main.Succ(x146)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We solved constraint (8) using rules (I), (II).We solved constraint (9) using rules (I), (II). 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 For Pair H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) the following chains were created: 72.82/40.33 *We consider the chain H(x23, Main.Succ(x24), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(x23, Main.Succ(x24), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero), new_showInt1ShowInt00(x25, Main.Succ(x26), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(x25, Main.Succ(x26), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) which results in the following constraint: 72.82/40.33 72.82/40.33 (1) (new_showInt1ShowInt00(x23, Main.Succ(x24), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)=new_showInt1ShowInt00(x25, Main.Succ(x26), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) ==> H(x23, Main.Succ(x24), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero))_>=_new_showInt1ShowInt00(x23, Main.Succ(x24), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 72.82/40.33 72.82/40.33 (2) (H(x23, Main.Succ(x24), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero))_>=_new_showInt1ShowInt00(x23, Main.Succ(x24), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 For Pair new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) the following chains were created: 72.82/40.33 *We consider the chain new_showInt1ShowInt00(x41, Main.Succ(x42), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(x41, Main.Succ(x42), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), new_showInt1ShowInt01(x43, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x44, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x43)) which results in the following constraint: 72.82/40.33 72.82/40.33 (1) (new_showInt1ShowInt01(x41, Main.Succ(x42), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))=new_showInt1ShowInt01(x43, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) ==> new_showInt1ShowInt00(x41, Main.Succ(x42), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)_>=_new_showInt1ShowInt01(x41, Main.Succ(x42), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.82/40.33 72.82/40.33 (2) (new_showInt1ShowInt00(x41, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)_>=_new_showInt1ShowInt01(x41, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 For Pair new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) the following chains were created: 72.82/40.33 *We consider the chain new_showInt1ShowInt01(x59, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x60, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x59)), new_showInt(Main.Pos(Main.Succ(x61)), x62) -> new_showInt1ShowInt0(x62, x61, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) which results in the following constraint: 72.82/40.33 72.82/40.33 (1) (new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x60, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x59))=new_showInt(Main.Pos(Main.Succ(x61)), x62) ==> new_showInt1ShowInt01(x59, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x60, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x59))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 72.82/40.33 72.82/40.33 (2) (Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60))))=x150 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x151 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x152 & new_primDivNatS02(x150, x151, x60, x152)=Main.Succ(x61) ==> new_showInt1ShowInt01(x59, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x60, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x59))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS02(x150, x151, x60, x152)=Main.Succ(x61) which results in the following new constraints: 72.82/40.33 72.82/40.33 (3) (new_primDivNatS02(x156, x155, x154, x153)=Main.Succ(x61) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x154)))))=x156 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x155 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=Main.Succ(x153) & (\/x157,x158:new_primDivNatS02(x156, x155, x154, x153)=Main.Succ(x157) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x154))))=x156 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x155 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x153 ==> new_showInt1ShowInt01(x158, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x154))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x154)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x154, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x154))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x158))) ==> new_showInt1ShowInt01(x59, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x154)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x154))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x154), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x154)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x59))) 72.82/40.33 72.82/40.33 (4) (new_primDivNatS01(x164, x163)=Main.Succ(x61) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x162)))))=x164 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x163 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=Main.Zero ==> new_showInt1ShowInt01(x59, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x162)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x162))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x162), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x162)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x59))) 72.82/40.33 72.82/40.33 (5) (new_primDivNatS01(x166, x165)=Main.Succ(x61) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x166 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x165 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=Main.Zero ==> new_showInt1ShowInt01(x59, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x59))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: 72.82/40.33 72.82/40.33 (6) (new_primDivNatS02(x156, x155, x154, x153)=Main.Succ(x61) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x154)))))=x156 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x155 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x153 ==> new_showInt1ShowInt01(x59, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x154)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x154))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x154), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x154)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x59))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS02(x156, x155, x154, x153)=Main.Succ(x61) which results in the following new constraints: 72.82/40.33 72.82/40.33 (7) (new_primDivNatS02(x170, x169, x168, x167)=Main.Succ(x61) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x168))))))=x170 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x169 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=Main.Succ(x167) & (\/x171,x172:new_primDivNatS02(x170, x169, x168, x167)=Main.Succ(x171) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x168)))))=x170 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x169 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x167 ==> new_showInt1ShowInt01(x172, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x168)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x168))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x168), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x168)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x172))) ==> new_showInt1ShowInt01(x59, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x168))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x168)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x168)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x168))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x59))) 72.82/40.33 72.82/40.33 (8) (new_primDivNatS01(x178, x177)=Main.Succ(x61) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x176))))))=x178 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x177 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=Main.Zero ==> new_showInt1ShowInt01(x59, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x176))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x176)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x176)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x176))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x59))) 72.82/40.33 72.82/40.33 (9) (new_primDivNatS01(x180, x179)=Main.Succ(x61) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))=x180 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x179 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=Main.Zero ==> new_showInt1ShowInt01(x59, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x59))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (7) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.82/40.33 72.82/40.33 (10) (new_showInt1ShowInt01(x59, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x168))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x168)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x168)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x168))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x59))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We solved constraint (8) using rules (I), (II).We solved constraint (9) using rules (I), (II). 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 For Pair new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) the following chains were created: 72.82/40.33 *We consider the chain new_showInt(Main.Pos(Main.Succ(x67)), x68) -> new_showInt1ShowInt0(x68, x67, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_showInt1ShowInt0(x69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x70))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(x69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x70))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x70, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) which results in the following constraint: 72.82/40.33 72.82/40.33 (1) (new_showInt1ShowInt0(x68, x67, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))=new_showInt1ShowInt0(x69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x70))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) ==> new_showInt(Main.Pos(Main.Succ(x67)), x68)_>=_new_showInt1ShowInt0(x68, x67, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.82/40.33 72.82/40.33 (2) (new_showInt(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x70))))))), x68)_>=_new_showInt1ShowInt0(x68, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x70))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 For Pair H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) the following chains were created: 72.82/40.33 *We consider the chain H(x101, Main.Succ(x102), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x103), Main.Zero)) -> new_showInt1ShowInt00(x101, Main.Succ(x102), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x103), Main.Zero), new_showInt1ShowInt00(x104, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x105))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x106), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x105)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x105, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x105))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x104)) which results in the following constraint: 72.82/40.33 72.82/40.33 (1) (new_showInt1ShowInt00(x101, Main.Succ(x102), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x103), Main.Zero)=new_showInt1ShowInt00(x104, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x105))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x106), Main.Zero) ==> H(x101, Main.Succ(x102), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x103), Main.Zero))_>=_new_showInt1ShowInt00(x101, Main.Succ(x102), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x103), Main.Zero)) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.82/40.33 72.82/40.33 (2) (H(x101, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x105))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x103), Main.Zero))_>=_new_showInt1ShowInt00(x101, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x105))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x103), Main.Zero)) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 For Pair new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) the following chains were created: 72.82/40.33 *We consider the chain new_showInt1ShowInt00(x119, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x120))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x121), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x120)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x120, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x120))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x119)), new_showInt(Main.Pos(Main.Succ(x122)), x123) -> new_showInt1ShowInt0(x123, x122, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) which results in the following constraint: 72.82/40.33 72.82/40.33 (1) (new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x120)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x120, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x120))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x119))=new_showInt(Main.Pos(Main.Succ(x122)), x123) ==> new_showInt1ShowInt00(x119, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x120))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x121), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x120)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x120, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x120))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x119))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 72.82/40.33 72.82/40.33 (2) (Main.Succ(Main.Succ(Main.Succ(Main.Succ(x120))))=x181 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x182 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x183 & new_primDivNatS02(x181, x182, x120, x183)=Main.Succ(x122) ==> new_showInt1ShowInt00(x119, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x120))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x121), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x120)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x120, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x120))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x119))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS02(x181, x182, x120, x183)=Main.Succ(x122) which results in the following new constraints: 72.82/40.33 72.82/40.33 (3) (new_primDivNatS02(x187, x186, x185, x184)=Main.Succ(x122) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x185)))))=x187 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x186 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=Main.Succ(x184) & (\/x188,x189,x190:new_primDivNatS02(x187, x186, x185, x184)=Main.Succ(x188) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x185))))=x187 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x186 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x184 ==> new_showInt1ShowInt00(x189, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x185))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x190), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x185)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x185, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x185))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x189))) ==> new_showInt1ShowInt00(x119, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x185)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x121), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x185))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x185), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x185)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x119))) 72.82/40.33 72.82/40.33 (4) (new_primDivNatS01(x196, x195)=Main.Succ(x122) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x194)))))=x196 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x195 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=Main.Zero ==> new_showInt1ShowInt00(x119, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x194)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x121), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x194))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x194), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x194)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x119))) 72.82/40.33 72.82/40.33 (5) (new_primDivNatS01(x198, x197)=Main.Succ(x122) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x198 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x197 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=Main.Zero ==> new_showInt1ShowInt00(x119, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x121), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x119))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: 72.82/40.33 72.82/40.33 (6) (new_primDivNatS02(x187, x186, x185, x184)=Main.Succ(x122) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x185)))))=x187 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x186 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x184 ==> new_showInt1ShowInt00(x119, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x185)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x121), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x185))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x185), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x185)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x119))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS02(x187, x186, x185, x184)=Main.Succ(x122) which results in the following new constraints: 72.82/40.33 72.82/40.33 (7) (new_primDivNatS02(x202, x201, x200, x199)=Main.Succ(x122) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x200))))))=x202 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x201 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=Main.Succ(x199) & (\/x203,x204,x205:new_primDivNatS02(x202, x201, x200, x199)=Main.Succ(x203) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x200)))))=x202 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x201 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x199 ==> new_showInt1ShowInt00(x204, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x200)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x205), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x200))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x200), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x200)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x204))) ==> new_showInt1ShowInt00(x119, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x200))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x121), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x200)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x200)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x200))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x119))) 72.82/40.33 72.82/40.33 (8) (new_primDivNatS01(x211, x210)=Main.Succ(x122) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x209))))))=x211 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x210 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=Main.Zero ==> new_showInt1ShowInt00(x119, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x209))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x121), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x209)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x209)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x209))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x119))) 72.82/40.33 72.82/40.33 (9) (new_primDivNatS01(x213, x212)=Main.Succ(x122) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))=x213 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))=x212 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=Main.Zero ==> new_showInt1ShowInt00(x119, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x121), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x119))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We simplified constraint (7) using rules (I), (II), (III), (IV) which results in the following new constraint: 72.82/40.33 72.82/40.33 (10) (new_showInt1ShowInt00(x119, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x200))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x121), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x200)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x200)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x200))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x119))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 We solved constraint (8) using rules (I), (II).We solved constraint (9) using rules (I), (II). 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 To summarize, we get the following constraints P__>=_ for the following pairs. 72.82/40.33 72.82/40.33 *new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.33 72.82/40.33 *(new_showInt1ShowInt0(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x136))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x136))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(Main.Succ(x136)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 72.82/40.33 *(new_showInt1ShowInt0(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x146))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x12, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x146))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(Main.Succ(Main.Succ(x146)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 *H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.33 72.82/40.33 *(H(x23, Main.Succ(x24), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero))_>=_new_showInt1ShowInt00(x23, Main.Succ(x24), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 *new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.33 72.82/40.33 *(new_showInt1ShowInt00(x41, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero)_>=_new_showInt1ShowInt01(x41, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 *new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.33 72.82/40.33 *(new_showInt1ShowInt01(x59, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x168))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x168)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x168)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x168))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x59))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 *new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.33 72.82/40.33 *(new_showInt(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x70))))))), x68)_>=_new_showInt1ShowInt0(x68, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x70))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 *H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.33 72.82/40.33 *(H(x101, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x105))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x103), Main.Zero))_>=_new_showInt1ShowInt00(x101, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x105))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x103), Main.Zero)) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 *new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.33 72.82/40.33 *(new_showInt1ShowInt00(x119, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x200))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x121), Main.Zero)_>=_new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x200)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(Main.Succ(x200)), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x200))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), x119))) 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 72.82/40.33 The constraints for P_> respective P_bound are constructed from P__>=_ where we just replace every occurence of "t _>=_ s" in P__>=_ by "t > s" respective "t _>=_ c". Here c stands for the fresh constant used for P_bound. 72.82/40.33 ---------------------------------------- 72.82/40.33 72.82/40.33 (169) 72.82/40.33 Obligation: 72.82/40.33 Q DP problem: 72.82/40.33 The TRS P consists of the following rules: 72.82/40.33 72.82/40.33 new_showInt1ShowInt0(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_new_showInt1ShowInt00(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.33 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Zero, Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) 72.82/40.33 new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Zero, Main.Zero) -> new_showInt1ShowInt01(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) 72.82/40.33 new_showInt1ShowInt01(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.33 new_showInt(Main.Pos(Main.Succ(xv300)), xv4) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) 72.82/40.33 H(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_showInt1ShowInt00(Main.Succ(x3), Main.Zero)) -> new_showInt1ShowInt00(z0, Main.Succ(z1), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(x3), Main.Zero) 72.82/40.33 new_showInt1ShowInt00(y0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), Main.Succ(y2), Main.Zero) -> new_showInt(Main.Pos(new_primDivNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Cons(Main.Char(Main.Pos(new_primPlusNat3(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))), y0)) 72.82/40.33 72.82/40.33 The TRS R consists of the following rules: 72.82/40.33 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050)) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050)) -> Main.Zero 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000))))))) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000)))))))) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000))))))))) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000)) 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530)) -> Main.Succ(Main.Succ(xv150)) 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.33 new_primModNatS01(xv139, xv140) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140))) 72.82/40.33 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157) -> new_primModNatS3(xv1550, xv1560, xv157) 72.82/40.33 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157) -> new_primModNatS4(xv1550, xv157) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700))) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700) 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero) -> new_primModNatS01(xv150, xv151) 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530)) -> new_primModNatS03(xv150, xv151, xv1520, xv1530) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero)) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.33 new_primPlusNat2(Main.Succ(xv1100), Main.Zero) -> Main.Succ(xv1100) 72.82/40.33 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110)) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110))) 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Zero) -> Main.Zero 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Succ(xv1110)) -> Main.Succ(xv1110) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157) -> new_primModNatS2(xv157) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Zero, xv157) -> new_primModNatS2(xv157) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700))) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.33 new_primModNatS4(Main.Zero, Main.Succ(xv1170)) -> Main.Succ(Main.Zero) 72.82/40.33 new_primModNatS4(xv116, Main.Zero) -> Main.Zero 72.82/40.33 new_primModNatS2(xv122) -> Main.Zero 72.82/40.33 new_primPlusNat5(xv110, xv111) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111))) 72.82/40.33 new_primModNatS02(xv126) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero) -> new_primDivNatS01(xv102, xv103) 72.82/40.33 new_primDivNatS01(xv102, xv103) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103))) 72.82/40.33 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148) -> new_primDivNatS2(xv1460, xv1470, xv148) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Zero, xv148) -> new_primDivNatS4(xv148) 72.82/40.33 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148) -> new_primDivNatS3(xv1460, xv148) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148) -> new_primDivNatS4(xv148) 72.82/40.33 new_primDivNatS4(xv148) -> Main.Zero 72.82/40.33 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730)) -> new_primDivNatS02(xv720, xv730, xv720, xv730) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Succ(xv730)) -> Main.Zero 72.82/40.33 new_primDivNatS3(Main.Succ(xv720), Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero)) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Zero) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero)) 72.82/40.33 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Succ(xv790)) -> new_new_showInt1ShowInt00(xv780, xv790) 72.82/40.33 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) -> cons_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.33 new_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) -> cons_new_showInt1ShowInt00(Main.Succ(xv780), Main.Zero) 72.82/40.33 72.82/40.33 The set Q consists of the following terms: 72.82/40.33 72.82/40.33 new_primModNatS4(x0, Main.Zero) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Zero, x0) 72.82/40.33 new_primPlusNat3(x0, Main.Zero, Main.Succ(x1)) 72.82/40.33 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.33 new_primModNatS03(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.33 new_primPlusNat2(Main.Succ(x0), Main.Zero) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.33 new_primModNatS3(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.33 new_primPlusNat3(x0, x1, Main.Zero) 72.82/40.33 new_primDivNatS2(Main.Succ(x0), Main.Zero, x1) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 new_primDivNatS3(Main.Succ(x0), Main.Succ(x1)) 72.82/40.33 new_primModNatS4(Main.Zero, Main.Succ(x0)) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Succ(x1))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Succ(x0)) 72.82/40.33 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Zero)) 72.82/40.33 new_primPlusNat2(Main.Succ(x0), Main.Succ(x1)) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))))) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)) 72.82/40.33 new_primDivNatS02(x0, x1, Main.Zero, Main.Succ(x2)) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(x1)), Main.Succ(Main.Zero)) 72.82/40.33 new_primModNatS2(x0) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Zero, x0) 72.82/40.33 new_primPlusNat5(x0, x1) 72.82/40.33 new_primDivNatS3(Main.Succ(x0), Main.Zero) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.33 new_primModNatS03(x0, x1, Main.Zero, Main.Zero) 72.82/40.33 new_primModNatS03(x0, x1, Main.Succ(x2), Main.Zero) 72.82/40.33 new_primDivNatS2(Main.Succ(x0), Main.Succ(x1), x2) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.33 new_primDivNatS02(x0, x1, Main.Succ(x2), Main.Succ(x3)) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(x1)))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Zero) 72.82/40.33 new_primModNatS02(x0) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(x0))) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Zero) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 72.82/40.33 new_primModNatS3(Main.Succ(x0), Main.Zero, x1) 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Succ(x0)) 72.82/40.33 new_primModNatS01(x0, x1) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))) 72.82/40.33 new_primDivNatS02(x0, x1, Main.Zero, Main.Zero) 72.82/40.33 new_primDivNatS01(x0, x1) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Succ(x0), x1) 72.82/40.33 new_primDivNatS4(x0) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Zero), Main.Succ(Main.Succ(x1))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(x1))), Main.Succ(Main.Succ(Main.Zero))) 72.82/40.33 new_primPlusNat3(x0, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Succ(x0), x1) 72.82/40.33 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Succ(x1)) 72.82/40.33 new_new_showInt1ShowInt00(Main.Zero, Main.Zero) 72.82/40.33 new_new_showInt1ShowInt00(Main.Succ(x0), Main.Zero) 72.82/40.33 72.82/40.33 We have to consider all minimal (P,Q,R)-chains. 72.82/40.33 ---------------------------------------- 72.82/40.33 72.82/40.33 (170) 72.82/40.33 Obligation: 72.82/40.33 Q DP problem: 72.82/40.33 The TRS P consists of the following rules: 72.82/40.33 72.82/40.33 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.82/40.33 72.82/40.33 R is empty. 72.82/40.33 Q is empty. 72.82/40.33 We have to consider all minimal (P,Q,R)-chains. 72.82/40.33 ---------------------------------------- 72.82/40.33 72.82/40.33 (171) QDPSizeChangeProof (EQUIVALENT) 72.82/40.33 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. 72.82/40.33 72.82/40.33 From the DPs we obtained the following set of size-change graphs: 72.82/40.33 *new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790)) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790) 72.82/40.33 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 > 4, 5 > 5 72.82/40.33 72.82/40.33 72.82/40.33 ---------------------------------------- 72.82/40.33 72.82/40.33 (172) 72.82/40.33 YES 72.82/40.33 72.82/40.33 ---------------------------------------- 72.82/40.33 72.82/40.33 (173) Narrow (COMPLETE) 72.82/40.33 Haskell To QDPs 72.82/40.33 72.82/40.33 digraph dp_graph { 72.82/40.33 node [outthreshold=100, inthreshold=100];1[label="showInt",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 72.82/40.33 3[label="showInt xv3",fontsize=16,color="grey",shape="box"];3 -> 4[label="",style="dashed", color="grey", weight=3]; 72.82/40.33 4[label="showInt xv3 xv4",fontsize=16,color="black",shape="triangle"];4 -> 5[label="",style="solid", color="black", weight=3]; 72.82/40.33 5[label="showInt3 xv3 xv4",fontsize=16,color="black",shape="box"];5 -> 6[label="",style="solid", color="black", weight=3]; 72.82/40.33 6[label="showInt2 xv3 xv4 (ltMyInt xv3 (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];6 -> 7[label="",style="solid", color="black", weight=3]; 72.82/40.33 7[label="showInt2 xv3 xv4 (esEsOrdering (compareMyInt xv3 (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];7 -> 8[label="",style="solid", color="black", weight=3]; 72.82/40.33 8[label="showInt2 xv3 xv4 (esEsOrdering (primCmpInt xv3 (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="burlywood",shape="box"];1456[label="xv3/Pos xv30",fontsize=10,color="white",style="solid",shape="box"];8 -> 1456[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1456 -> 9[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1457[label="xv3/Neg xv30",fontsize=10,color="white",style="solid",shape="box"];8 -> 1457[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1457 -> 10[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 9[label="showInt2 (Pos xv30) xv4 (esEsOrdering (primCmpInt (Pos xv30) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="burlywood",shape="box"];1458[label="xv30/Succ xv300",fontsize=10,color="white",style="solid",shape="box"];9 -> 1458[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1458 -> 11[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1459[label="xv30/Zero",fontsize=10,color="white",style="solid",shape="box"];9 -> 1459[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1459 -> 12[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 10[label="showInt2 (Neg xv30) xv4 (esEsOrdering (primCmpInt (Neg xv30) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="burlywood",shape="box"];1460[label="xv30/Succ xv300",fontsize=10,color="white",style="solid",shape="box"];10 -> 1460[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1460 -> 13[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1461[label="xv30/Zero",fontsize=10,color="white",style="solid",shape="box"];10 -> 1461[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1461 -> 14[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 11[label="showInt2 (Pos (Succ xv300)) xv4 (esEsOrdering (primCmpInt (Pos (Succ xv300)) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];11 -> 15[label="",style="solid", color="black", weight=3]; 72.82/40.33 12[label="showInt2 (Pos Zero) xv4 (esEsOrdering (primCmpInt (Pos Zero) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];12 -> 16[label="",style="solid", color="black", weight=3]; 72.82/40.33 13[label="showInt2 (Neg (Succ xv300)) xv4 (esEsOrdering (primCmpInt (Neg (Succ xv300)) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];13 -> 17[label="",style="solid", color="black", weight=3]; 72.82/40.33 14[label="showInt2 (Neg Zero) xv4 (esEsOrdering (primCmpInt (Neg Zero) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];14 -> 18[label="",style="solid", color="black", weight=3]; 72.82/40.33 15[label="showInt2 (Pos (Succ xv300)) xv4 (esEsOrdering (primCmpInt (Pos (Succ xv300)) (Pos Zero)) LT)",fontsize=16,color="black",shape="box"];15 -> 19[label="",style="solid", color="black", weight=3]; 72.82/40.33 16[label="showInt2 (Pos Zero) xv4 (esEsOrdering (primCmpInt (Pos Zero) (Pos Zero)) LT)",fontsize=16,color="black",shape="box"];16 -> 20[label="",style="solid", color="black", weight=3]; 72.82/40.33 17[label="showInt2 (Neg (Succ xv300)) xv4 (esEsOrdering (primCmpInt (Neg (Succ xv300)) (Pos Zero)) LT)",fontsize=16,color="black",shape="box"];17 -> 21[label="",style="solid", color="black", weight=3]; 72.82/40.33 18[label="showInt2 (Neg Zero) xv4 (esEsOrdering (primCmpInt (Neg Zero) (Pos Zero)) LT)",fontsize=16,color="black",shape="box"];18 -> 22[label="",style="solid", color="black", weight=3]; 72.82/40.33 19[label="showInt2 (Pos (Succ xv300)) xv4 (esEsOrdering (primCmpNat (Succ xv300) Zero) LT)",fontsize=16,color="black",shape="box"];19 -> 23[label="",style="solid", color="black", weight=3]; 72.82/40.33 20[label="showInt2 (Pos Zero) xv4 (esEsOrdering EQ LT)",fontsize=16,color="black",shape="box"];20 -> 24[label="",style="solid", color="black", weight=3]; 72.82/40.33 21[label="showInt2 (Neg (Succ xv300)) xv4 (esEsOrdering LT LT)",fontsize=16,color="black",shape="box"];21 -> 25[label="",style="solid", color="black", weight=3]; 72.82/40.33 22[label="showInt2 (Neg Zero) xv4 (esEsOrdering EQ LT)",fontsize=16,color="black",shape="box"];22 -> 26[label="",style="solid", color="black", weight=3]; 72.82/40.33 23[label="showInt2 (Pos (Succ xv300)) xv4 (esEsOrdering GT LT)",fontsize=16,color="black",shape="box"];23 -> 27[label="",style="solid", color="black", weight=3]; 72.82/40.33 24[label="showInt2 (Pos Zero) xv4 MyFalse",fontsize=16,color="black",shape="box"];24 -> 28[label="",style="solid", color="black", weight=3]; 72.82/40.33 25[label="showInt2 (Neg (Succ xv300)) xv4 MyTrue",fontsize=16,color="black",shape="box"];25 -> 29[label="",style="solid", color="black", weight=3]; 72.82/40.33 26[label="showInt2 (Neg Zero) xv4 MyFalse",fontsize=16,color="black",shape="box"];26 -> 30[label="",style="solid", color="black", weight=3]; 72.82/40.33 27[label="showInt2 (Pos (Succ xv300)) xv4 MyFalse",fontsize=16,color="black",shape="box"];27 -> 31[label="",style="solid", color="black", weight=3]; 72.82/40.33 28[label="showInt1 (Pos Zero) xv4 otherwise",fontsize=16,color="black",shape="box"];28 -> 32[label="",style="solid", color="black", weight=3]; 72.82/40.33 29[label="error",fontsize=16,color="black",shape="box"];29 -> 33[label="",style="solid", color="black", weight=3]; 72.82/40.33 30[label="showInt1 (Neg Zero) xv4 otherwise",fontsize=16,color="black",shape="box"];30 -> 34[label="",style="solid", color="black", weight=3]; 72.82/40.33 31[label="showInt1 (Pos (Succ xv300)) xv4 otherwise",fontsize=16,color="black",shape="box"];31 -> 35[label="",style="solid", color="black", weight=3]; 72.82/40.33 32[label="showInt1 (Pos Zero) xv4 MyTrue",fontsize=16,color="black",shape="box"];32 -> 36[label="",style="solid", color="black", weight=3]; 72.82/40.33 33[label="stop MyTrue",fontsize=16,color="black",shape="box"];33 -> 37[label="",style="solid", color="black", weight=3]; 72.82/40.33 34[label="showInt1 (Neg Zero) xv4 MyTrue",fontsize=16,color="black",shape="box"];34 -> 38[label="",style="solid", color="black", weight=3]; 72.82/40.33 35[label="showInt1 (Pos (Succ xv300)) xv4 MyTrue",fontsize=16,color="black",shape="box"];35 -> 39[label="",style="solid", color="black", weight=3]; 72.82/40.33 36[label="showInt1ShowInt0 xv4 (Pos Zero) (esEsMyInt (showInt1N' xv4 (Pos Zero)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];36 -> 40[label="",style="solid", color="black", weight=3]; 72.82/40.33 37[label="error []",fontsize=16,color="red",shape="box"];38[label="showInt1ShowInt0 xv4 (Neg Zero) (esEsMyInt (showInt1N' xv4 (Neg Zero)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];38 -> 41[label="",style="solid", color="black", weight=3]; 72.82/40.33 39[label="showInt1ShowInt0 xv4 (Pos (Succ xv300)) (esEsMyInt (showInt1N' xv4 (Pos (Succ xv300))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];39 -> 42[label="",style="solid", color="black", weight=3]; 72.82/40.33 40[label="showInt1ShowInt0 xv4 (Pos Zero) (primEqInt (showInt1N' xv4 (Pos Zero)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];40 -> 43[label="",style="solid", color="black", weight=3]; 72.82/40.33 41[label="showInt1ShowInt0 xv4 (Neg Zero) (primEqInt (showInt1N' xv4 (Neg Zero)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];41 -> 44[label="",style="solid", color="black", weight=3]; 72.82/40.33 42[label="showInt1ShowInt0 xv4 (Pos (Succ xv300)) (primEqInt (showInt1N' xv4 (Pos (Succ xv300))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];42 -> 45[label="",style="solid", color="black", weight=3]; 72.82/40.33 43[label="showInt1ShowInt0 xv4 (Pos Zero) (primEqInt (showInt1N'0 xv4 (Pos Zero) (showInt1Vu76 xv4 (Pos Zero))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];43 -> 46[label="",style="solid", color="black", weight=3]; 72.82/40.33 44[label="showInt1ShowInt0 xv4 (Neg Zero) (primEqInt (showInt1N'0 xv4 (Neg Zero) (showInt1Vu76 xv4 (Neg Zero))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];44 -> 47[label="",style="solid", color="black", weight=3]; 72.82/40.33 45[label="showInt1ShowInt0 xv4 (Pos (Succ xv300)) (primEqInt (showInt1N'0 xv4 (Pos (Succ xv300)) (showInt1Vu76 xv4 (Pos (Succ xv300)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];45 -> 48[label="",style="solid", color="black", weight=3]; 72.82/40.33 46 -> 49[label="",style="dashed", color="red", weight=0]; 72.82/40.33 46[label="showInt1ShowInt0 xv4 (Pos Zero) (primEqInt (showInt1N'0 xv4 (Pos Zero) (quotRemMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];46 -> 50[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 46 -> 51[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 47 -> 52[label="",style="dashed", color="red", weight=0]; 72.82/40.33 47[label="showInt1ShowInt0 xv4 (Neg Zero) (primEqInt (showInt1N'0 xv4 (Neg Zero) (quotRemMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];47 -> 53[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 47 -> 54[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 48 -> 55[label="",style="dashed", color="red", weight=0]; 72.82/40.33 48[label="showInt1ShowInt0 xv4 (Pos (Succ xv300)) (primEqInt (showInt1N'0 xv4 (Pos (Succ xv300)) (quotRemMyInt (Pos (Succ xv300)) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];48 -> 56[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 48 -> 57[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 48 -> 58[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 50[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];51[label="xv4",fontsize=16,color="green",shape="box"];49[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (showInt1N'0 xv6 (Pos Zero) (quotRemMyInt (Pos Zero) (fromIntMyInt (Pos (Succ xv7))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="triangle"];49 -> 59[label="",style="solid", color="black", weight=3]; 72.82/40.33 53[label="xv4",fontsize=16,color="green",shape="box"];54[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];52[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (showInt1N'0 xv9 (Neg Zero) (quotRemMyInt (Neg Zero) (fromIntMyInt (Pos (Succ xv10))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="triangle"];52 -> 60[label="",style="solid", color="black", weight=3]; 72.82/40.33 56[label="xv4",fontsize=16,color="green",shape="box"];57[label="xv300",fontsize=16,color="green",shape="box"];58[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];55[label="showInt1ShowInt0 xv12 (Pos (Succ xv13)) (primEqInt (showInt1N'0 xv12 (Pos (Succ xv13)) (quotRemMyInt (Pos (Succ xv13)) (fromIntMyInt (Pos (Succ xv14))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="triangle"];55 -> 61[label="",style="solid", color="black", weight=3]; 72.82/40.33 59[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (showInt1N'0 xv6 (Pos Zero) (primQrmInt (Pos Zero) (fromIntMyInt (Pos (Succ xv7))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];59 -> 62[label="",style="solid", color="black", weight=3]; 72.82/40.33 60[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (showInt1N'0 xv9 (Neg Zero) (primQrmInt (Neg Zero) (fromIntMyInt (Pos (Succ xv10))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];60 -> 63[label="",style="solid", color="black", weight=3]; 72.82/40.33 61[label="showInt1ShowInt0 xv12 (Pos (Succ xv13)) (primEqInt (showInt1N'0 xv12 (Pos (Succ xv13)) (primQrmInt (Pos (Succ xv13)) (fromIntMyInt (Pos (Succ xv14))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];61 -> 64[label="",style="solid", color="black", weight=3]; 72.82/40.33 62[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (showInt1N'0 xv6 (Pos Zero) (Tup2 (primQuotInt (Pos Zero) (fromIntMyInt (Pos (Succ xv7)))) (primRemInt (Pos Zero) (fromIntMyInt (Pos (Succ xv7)))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];62 -> 65[label="",style="solid", color="black", weight=3]; 72.82/40.33 63[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (showInt1N'0 xv9 (Neg Zero) (Tup2 (primQuotInt (Neg Zero) (fromIntMyInt (Pos (Succ xv10)))) (primRemInt (Neg Zero) (fromIntMyInt (Pos (Succ xv10)))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];63 -> 66[label="",style="solid", color="black", weight=3]; 72.82/40.33 64[label="showInt1ShowInt0 xv12 (Pos (Succ xv13)) (primEqInt (showInt1N'0 xv12 (Pos (Succ xv13)) (Tup2 (primQuotInt (Pos (Succ xv13)) (fromIntMyInt (Pos (Succ xv14)))) (primRemInt (Pos (Succ xv13)) (fromIntMyInt (Pos (Succ xv14)))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];64 -> 67[label="",style="solid", color="black", weight=3]; 72.82/40.33 65[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (primQuotInt (Pos Zero) (fromIntMyInt (Pos (Succ xv7)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];65 -> 68[label="",style="solid", color="black", weight=3]; 72.82/40.33 66[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (primQuotInt (Neg Zero) (fromIntMyInt (Pos (Succ xv10)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];66 -> 69[label="",style="solid", color="black", weight=3]; 72.82/40.33 67[label="showInt1ShowInt0 xv12 (Pos (Succ xv13)) (primEqInt (primQuotInt (Pos (Succ xv13)) (fromIntMyInt (Pos (Succ xv14)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];67 -> 70[label="",style="solid", color="black", weight=3]; 72.82/40.33 68[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (primQuotInt (Pos Zero) (Pos (Succ xv7))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];68 -> 71[label="",style="solid", color="black", weight=3]; 72.82/40.33 69[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (primQuotInt (Neg Zero) (Pos (Succ xv10))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];69 -> 72[label="",style="solid", color="black", weight=3]; 72.82/40.33 70[label="showInt1ShowInt0 xv12 (Pos (Succ xv13)) (primEqInt (primQuotInt (Pos (Succ xv13)) (Pos (Succ xv14))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];70 -> 73[label="",style="solid", color="black", weight=3]; 72.82/40.33 71[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (Pos (primDivNatS Zero (Succ xv7))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];71 -> 74[label="",style="solid", color="black", weight=3]; 72.82/40.33 72[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (Neg (primDivNatS Zero (Succ xv10))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];72 -> 75[label="",style="solid", color="black", weight=3]; 72.82/40.33 73[label="showInt1ShowInt0 xv12 (Pos (Succ xv13)) (primEqInt (Pos (primDivNatS (Succ xv13) (Succ xv14))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];73 -> 76[label="",style="solid", color="black", weight=3]; 72.82/40.33 74[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];74 -> 77[label="",style="solid", color="black", weight=3]; 72.82/40.33 75[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];75 -> 78[label="",style="solid", color="black", weight=3]; 72.82/40.33 76[label="showInt1ShowInt0 xv12 (Pos (Succ xv13)) (primEqInt (Pos (primDivNatS0 xv13 xv14 (primGEqNatS xv13 xv14))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];1462[label="xv13/Succ xv130",fontsize=10,color="white",style="solid",shape="box"];76 -> 1462[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1462 -> 79[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1463[label="xv13/Zero",fontsize=10,color="white",style="solid",shape="box"];76 -> 1463[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1463 -> 80[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 77[label="showInt1ShowInt0 xv6 (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];77 -> 81[label="",style="solid", color="black", weight=3]; 72.82/40.33 78[label="showInt1ShowInt0 xv9 (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];78 -> 82[label="",style="solid", color="black", weight=3]; 72.82/40.33 79[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) (primEqInt (Pos (primDivNatS0 (Succ xv130) xv14 (primGEqNatS (Succ xv130) xv14))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];1464[label="xv14/Succ xv140",fontsize=10,color="white",style="solid",shape="box"];79 -> 1464[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1464 -> 83[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1465[label="xv14/Zero",fontsize=10,color="white",style="solid",shape="box"];79 -> 1465[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1465 -> 84[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 80[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos (primDivNatS0 Zero xv14 (primGEqNatS Zero xv14))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];1466[label="xv14/Succ xv140",fontsize=10,color="white",style="solid",shape="box"];80 -> 1466[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1466 -> 85[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1467[label="xv14/Zero",fontsize=10,color="white",style="solid",shape="box"];80 -> 1467[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1467 -> 86[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 81[label="showInt1ShowInt0 xv6 (Pos Zero) MyTrue",fontsize=16,color="black",shape="box"];81 -> 87[label="",style="solid", color="black", weight=3]; 72.82/40.33 82[label="showInt1ShowInt0 xv9 (Neg Zero) MyTrue",fontsize=16,color="black",shape="box"];82 -> 88[label="",style="solid", color="black", weight=3]; 72.82/40.33 83[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) (primEqInt (Pos (primDivNatS0 (Succ xv130) (Succ xv140) (primGEqNatS (Succ xv130) (Succ xv140)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];83 -> 89[label="",style="solid", color="black", weight=3]; 72.82/40.33 84[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) (primEqInt (Pos (primDivNatS0 (Succ xv130) Zero (primGEqNatS (Succ xv130) Zero))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];84 -> 90[label="",style="solid", color="black", weight=3]; 72.82/40.33 85[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos (primDivNatS0 Zero (Succ xv140) (primGEqNatS Zero (Succ xv140)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];85 -> 91[label="",style="solid", color="black", weight=3]; 72.82/40.33 86[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos (primDivNatS0 Zero Zero (primGEqNatS Zero Zero))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];86 -> 92[label="",style="solid", color="black", weight=3]; 72.82/40.33 87[label="showInt1R' xv6 (Pos Zero)",fontsize=16,color="black",shape="box"];87 -> 93[label="",style="solid", color="black", weight=3]; 72.82/40.33 88[label="showInt1R' xv9 (Neg Zero)",fontsize=16,color="black",shape="box"];88 -> 94[label="",style="solid", color="black", weight=3]; 72.82/40.33 89 -> 482[label="",style="dashed", color="red", weight=0]; 72.82/40.33 89[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) (primEqInt (Pos (primDivNatS0 (Succ xv130) (Succ xv140) (primGEqNatS xv130 xv140))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];89 -> 483[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 89 -> 484[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 89 -> 485[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 89 -> 486[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 89 -> 487[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 90[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) (primEqInt (Pos (primDivNatS0 (Succ xv130) Zero MyTrue)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];90 -> 97[label="",style="solid", color="black", weight=3]; 72.82/40.33 91[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos (primDivNatS0 Zero (Succ xv140) MyFalse)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];91 -> 98[label="",style="solid", color="black", weight=3]; 72.82/40.33 92[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos (primDivNatS0 Zero Zero MyTrue)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];92 -> 99[label="",style="solid", color="black", weight=3]; 72.82/40.33 93[label="Cons (toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv6 (Pos Zero))))) xv6",fontsize=16,color="green",shape="box"];93 -> 100[label="",style="dashed", color="green", weight=3]; 72.82/40.33 94[label="Cons (toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv9 (Neg Zero))))) xv9",fontsize=16,color="green",shape="box"];94 -> 101[label="",style="dashed", color="green", weight=3]; 72.82/40.33 483[label="Succ xv130",fontsize=16,color="green",shape="box"];484[label="xv140",fontsize=16,color="green",shape="box"];485[label="xv140",fontsize=16,color="green",shape="box"];486[label="xv130",fontsize=16,color="green",shape="box"];487[label="xv12",fontsize=16,color="green",shape="box"];482[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS xv78 xv79))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="triangle"];1468[label="xv78/Succ xv780",fontsize=10,color="white",style="solid",shape="box"];482 -> 1468[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1468 -> 533[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1469[label="xv78/Zero",fontsize=10,color="white",style="solid",shape="box"];482 -> 1469[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1469 -> 534[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 97[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) (primEqInt (Pos (Succ (primDivNatS (primMinusNatS (Succ xv130) Zero) (Succ Zero)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];97 -> 106[label="",style="solid", color="black", weight=3]; 72.82/40.33 98[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];98 -> 107[label="",style="solid", color="black", weight=3]; 72.82/40.33 99[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos (Succ (primDivNatS (primMinusNatS Zero Zero) (Succ Zero)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];99 -> 108[label="",style="solid", color="black", weight=3]; 72.82/40.33 100 -> 109[label="",style="dashed", color="red", weight=0]; 72.82/40.33 100[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv6 (Pos Zero))))",fontsize=16,color="magenta"];100 -> 110[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 100 -> 111[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 101 -> 112[label="",style="dashed", color="red", weight=0]; 72.82/40.33 101[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv9 (Neg Zero))))",fontsize=16,color="magenta"];101 -> 113[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 101 -> 114[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 533[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS (Succ xv780) xv79))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];1470[label="xv79/Succ xv790",fontsize=10,color="white",style="solid",shape="box"];533 -> 1470[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1470 -> 537[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1471[label="xv79/Zero",fontsize=10,color="white",style="solid",shape="box"];533 -> 1471[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1471 -> 538[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 534[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS Zero xv79))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];1472[label="xv79/Succ xv790",fontsize=10,color="white",style="solid",shape="box"];534 -> 1472[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1472 -> 539[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1473[label="xv79/Zero",fontsize=10,color="white",style="solid",shape="box"];534 -> 1473[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1473 -> 540[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 106[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) (primEqInt (Pos (Succ (primDivNatS (primMinusNatS (Succ xv130) Zero) (Succ Zero)))) (Pos Zero))",fontsize=16,color="black",shape="box"];106 -> 119[label="",style="solid", color="black", weight=3]; 72.82/40.33 107[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];107 -> 120[label="",style="solid", color="black", weight=3]; 72.82/40.33 108[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) (primEqInt (Pos (Succ (primDivNatS (primMinusNatS Zero Zero) (Succ Zero)))) (Pos Zero))",fontsize=16,color="black",shape="box"];108 -> 121[label="",style="solid", color="black", weight=3]; 72.82/40.33 110[label="xv6",fontsize=16,color="green",shape="box"];111[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];109[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ xv16)))) (fromIntMyInt (showInt1D xv17 (Pos Zero))))",fontsize=16,color="black",shape="triangle"];109 -> 122[label="",style="solid", color="black", weight=3]; 72.82/40.33 113[label="xv9",fontsize=16,color="green",shape="box"];114[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];112[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ xv19)))) (fromIntMyInt (showInt1D xv20 (Neg Zero))))",fontsize=16,color="black",shape="triangle"];112 -> 123[label="",style="solid", color="black", weight=3]; 72.82/40.33 537[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS (Succ xv780) (Succ xv790)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];537 -> 547[label="",style="solid", color="black", weight=3]; 72.82/40.33 538[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS (Succ xv780) Zero))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];538 -> 548[label="",style="solid", color="black", weight=3]; 72.82/40.33 539[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS Zero (Succ xv790)))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];539 -> 549[label="",style="solid", color="black", weight=3]; 72.82/40.33 540[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS Zero Zero))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];540 -> 550[label="",style="solid", color="black", weight=3]; 72.82/40.33 119[label="showInt1ShowInt0 xv12 (Pos (Succ (Succ xv130))) MyFalse",fontsize=16,color="black",shape="triangle"];119 -> 129[label="",style="solid", color="black", weight=3]; 72.82/40.33 120 -> 313[label="",style="dashed", color="red", weight=0]; 72.82/40.33 120[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) MyTrue",fontsize=16,color="magenta"];120 -> 314[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 120 -> 315[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 121[label="showInt1ShowInt0 xv12 (Pos (Succ Zero)) MyFalse",fontsize=16,color="black",shape="box"];121 -> 131[label="",style="solid", color="black", weight=3]; 72.82/40.33 122[label="primIntToChar (psMyInt (fromEnumChar (Char (Pos (Succ xv16)))) (fromIntMyInt (showInt1D xv17 (Pos Zero))))",fontsize=16,color="black",shape="box"];122 -> 132[label="",style="solid", color="black", weight=3]; 72.82/40.33 123[label="primIntToChar (psMyInt (fromEnumChar (Char (Pos (Succ xv19)))) (fromIntMyInt (showInt1D xv20 (Neg Zero))))",fontsize=16,color="black",shape="box"];123 -> 133[label="",style="solid", color="black", weight=3]; 72.82/40.33 547 -> 482[label="",style="dashed", color="red", weight=0]; 72.82/40.33 547[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) (primGEqNatS xv780 xv790))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];547 -> 554[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 547 -> 555[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 548[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) MyTrue)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="triangle"];548 -> 556[label="",style="solid", color="black", weight=3]; 72.82/40.33 549[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) MyFalse)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];549 -> 557[label="",style="solid", color="black", weight=3]; 72.82/40.33 550 -> 548[label="",style="dashed", color="red", weight=0]; 72.82/40.33 550[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (primDivNatS0 xv76 (Succ xv77) MyTrue)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];129 -> 4[label="",style="dashed", color="red", weight=0]; 72.82/40.33 129[label="showInt (showInt1N' xv12 (Pos (Succ (Succ xv130)))) (showInt1R' xv12 (Pos (Succ (Succ xv130))))",fontsize=16,color="magenta"];129 -> 141[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 129 -> 142[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 314[label="Zero",fontsize=16,color="green",shape="box"];315[label="xv12",fontsize=16,color="green",shape="box"];313[label="showInt1ShowInt0 xv56 (Pos (Succ xv57)) MyTrue",fontsize=16,color="black",shape="triangle"];313 -> 324[label="",style="solid", color="black", weight=3]; 72.82/40.33 131 -> 4[label="",style="dashed", color="red", weight=0]; 72.82/40.33 131[label="showInt (showInt1N' xv12 (Pos (Succ Zero))) (showInt1R' xv12 (Pos (Succ Zero)))",fontsize=16,color="magenta"];131 -> 144[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 131 -> 145[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 132[label="Char (psMyInt (fromEnumChar (Char (Pos (Succ xv16)))) (fromIntMyInt (showInt1D xv17 (Pos Zero))))",fontsize=16,color="green",shape="box"];132 -> 146[label="",style="dashed", color="green", weight=3]; 72.82/40.33 133[label="Char (psMyInt (fromEnumChar (Char (Pos (Succ xv19)))) (fromIntMyInt (showInt1D xv20 (Neg Zero))))",fontsize=16,color="green",shape="box"];133 -> 147[label="",style="dashed", color="green", weight=3]; 72.82/40.33 554[label="xv790",fontsize=16,color="green",shape="box"];555[label="xv780",fontsize=16,color="green",shape="box"];556[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (Succ (primDivNatS (primMinusNatS xv76 (Succ xv77)) (Succ (Succ xv77))))) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];556 -> 563[label="",style="solid", color="black", weight=3]; 72.82/40.33 557[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];557 -> 564[label="",style="solid", color="black", weight=3]; 72.82/40.33 141[label="showInt1N' xv12 (Pos (Succ (Succ xv130)))",fontsize=16,color="black",shape="box"];141 -> 155[label="",style="solid", color="black", weight=3]; 72.82/40.33 142[label="showInt1R' xv12 (Pos (Succ (Succ xv130)))",fontsize=16,color="black",shape="triangle"];142 -> 156[label="",style="solid", color="black", weight=3]; 72.82/40.33 324[label="showInt1R' xv56 (Pos (Succ xv57))",fontsize=16,color="black",shape="triangle"];324 -> 341[label="",style="solid", color="black", weight=3]; 72.82/40.33 144[label="showInt1N' xv12 (Pos (Succ Zero))",fontsize=16,color="black",shape="box"];144 -> 158[label="",style="solid", color="black", weight=3]; 72.82/40.33 145 -> 130[label="",style="dashed", color="red", weight=0]; 72.82/40.33 145[label="showInt1R' xv12 (Pos (Succ Zero))",fontsize=16,color="magenta"];146[label="psMyInt (fromEnumChar (Char (Pos (Succ xv16)))) (fromIntMyInt (showInt1D xv17 (Pos Zero)))",fontsize=16,color="black",shape="box"];146 -> 159[label="",style="solid", color="black", weight=3]; 72.82/40.33 147[label="psMyInt (fromEnumChar (Char (Pos (Succ xv19)))) (fromIntMyInt (showInt1D xv20 (Neg Zero)))",fontsize=16,color="black",shape="box"];147 -> 160[label="",style="solid", color="black", weight=3]; 72.82/40.33 563[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos (Succ (primDivNatS (primMinusNatS xv76 (Succ xv77)) (Succ (Succ xv77))))) (Pos Zero))",fontsize=16,color="black",shape="box"];563 -> 571[label="",style="solid", color="black", weight=3]; 72.82/40.33 564[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];564 -> 572[label="",style="solid", color="black", weight=3]; 72.82/40.33 155[label="showInt1N'0 xv12 (Pos (Succ (Succ xv130))) (showInt1Vu76 xv12 (Pos (Succ (Succ xv130))))",fontsize=16,color="black",shape="box"];155 -> 169[label="",style="solid", color="black", weight=3]; 72.82/40.33 156[label="Cons (toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv12 (Pos (Succ (Succ xv130))))))) xv12",fontsize=16,color="green",shape="box"];156 -> 170[label="",style="dashed", color="green", weight=3]; 72.82/40.33 341[label="Cons (toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv56 (Pos (Succ xv57)))))) xv56",fontsize=16,color="green",shape="box"];341 -> 357[label="",style="dashed", color="green", weight=3]; 72.82/40.33 158[label="showInt1N'0 xv12 (Pos (Succ Zero)) (showInt1Vu76 xv12 (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];158 -> 174[label="",style="solid", color="black", weight=3]; 72.82/40.33 130[label="showInt1R' xv12 (Pos (Succ Zero))",fontsize=16,color="black",shape="triangle"];130 -> 143[label="",style="solid", color="black", weight=3]; 72.82/40.33 159[label="primPlusInt (fromEnumChar (Char (Pos (Succ xv16)))) (fromIntMyInt (showInt1D xv17 (Pos Zero)))",fontsize=16,color="black",shape="box"];159 -> 175[label="",style="solid", color="black", weight=3]; 72.82/40.33 160[label="primPlusInt (fromEnumChar (Char (Pos (Succ xv19)))) (fromIntMyInt (showInt1D xv20 (Neg Zero)))",fontsize=16,color="black",shape="box"];160 -> 176[label="",style="solid", color="black", weight=3]; 72.82/40.33 571[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) MyFalse",fontsize=16,color="black",shape="box"];571 -> 581[label="",style="solid", color="black", weight=3]; 72.82/40.33 572 -> 313[label="",style="dashed", color="red", weight=0]; 72.82/40.33 572[label="showInt1ShowInt0 xv75 (Pos (Succ xv76)) MyTrue",fontsize=16,color="magenta"];572 -> 582[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 572 -> 583[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 169 -> 432[label="",style="dashed", color="red", weight=0]; 72.82/40.33 169[label="showInt1N'0 xv12 (Pos (Succ (Succ xv130))) (quotRemMyInt (Pos (Succ (Succ xv130))) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))",fontsize=16,color="magenta"];169 -> 433[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 169 -> 434[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 169 -> 435[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 170 -> 368[label="",style="dashed", color="red", weight=0]; 72.82/40.33 170[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv12 (Pos (Succ (Succ xv130))))))",fontsize=16,color="magenta"];170 -> 369[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 170 -> 370[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 170 -> 371[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 357 -> 368[label="",style="dashed", color="red", weight=0]; 72.82/40.33 357[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv56 (Pos (Succ xv57)))))",fontsize=16,color="magenta"];357 -> 372[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 357 -> 373[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 357 -> 374[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 174 -> 432[label="",style="dashed", color="red", weight=0]; 72.82/40.33 174[label="showInt1N'0 xv12 (Pos (Succ Zero)) (quotRemMyInt (Pos (Succ Zero)) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))",fontsize=16,color="magenta"];174 -> 436[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 174 -> 437[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 174 -> 438[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 143[label="Cons (toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv12 (Pos (Succ Zero)))))) xv12",fontsize=16,color="green",shape="box"];143 -> 157[label="",style="dashed", color="green", weight=3]; 72.82/40.33 175[label="primPlusInt (primCharToInt (Char (Pos (Succ xv16)))) (fromIntMyInt (showInt1D xv17 (Pos Zero)))",fontsize=16,color="black",shape="box"];175 -> 197[label="",style="solid", color="black", weight=3]; 72.82/40.33 176[label="primPlusInt (primCharToInt (Char (Pos (Succ xv19)))) (fromIntMyInt (showInt1D xv20 (Neg Zero)))",fontsize=16,color="black",shape="box"];176 -> 198[label="",style="solid", color="black", weight=3]; 72.82/40.33 581 -> 4[label="",style="dashed", color="red", weight=0]; 72.82/40.33 581[label="showInt (showInt1N' xv75 (Pos (Succ xv76))) (showInt1R' xv75 (Pos (Succ xv76)))",fontsize=16,color="magenta"];581 -> 591[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 581 -> 592[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 582[label="xv76",fontsize=16,color="green",shape="box"];583[label="xv75",fontsize=16,color="green",shape="box"];433[label="xv12",fontsize=16,color="green",shape="box"];434[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];435[label="Succ xv130",fontsize=16,color="green",shape="box"];432[label="showInt1N'0 xv71 (Pos (Succ xv72)) (quotRemMyInt (Pos (Succ xv72)) (fromIntMyInt (Pos (Succ xv73))))",fontsize=16,color="black",shape="triangle"];432 -> 448[label="",style="solid", color="black", weight=3]; 72.82/40.33 369[label="Succ xv130",fontsize=16,color="green",shape="box"];370[label="xv12",fontsize=16,color="green",shape="box"];371[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];368[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ xv67)))) (fromIntMyInt (showInt1D xv68 (Pos (Succ xv69)))))",fontsize=16,color="black",shape="triangle"];368 -> 384[label="",style="solid", color="black", weight=3]; 72.82/40.33 372[label="xv57",fontsize=16,color="green",shape="box"];373[label="xv56",fontsize=16,color="green",shape="box"];374[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];436[label="xv12",fontsize=16,color="green",shape="box"];437[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];438[label="Zero",fontsize=16,color="green",shape="box"];157 -> 368[label="",style="dashed", color="red", weight=0]; 72.82/40.33 157[label="toEnumChar (psMyInt (fromEnumChar (Char (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))) (fromIntMyInt (showInt1D xv12 (Pos (Succ Zero)))))",fontsize=16,color="magenta"];157 -> 378[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 157 -> 379[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 157 -> 380[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 197[label="primPlusInt (Pos (Succ xv16)) (fromIntMyInt (showInt1D xv17 (Pos Zero)))",fontsize=16,color="black",shape="box"];197 -> 210[label="",style="solid", color="black", weight=3]; 72.82/40.33 198[label="primPlusInt (Pos (Succ xv19)) (fromIntMyInt (showInt1D xv20 (Neg Zero)))",fontsize=16,color="black",shape="box"];198 -> 211[label="",style="solid", color="black", weight=3]; 72.82/40.33 591[label="showInt1N' xv75 (Pos (Succ xv76))",fontsize=16,color="black",shape="box"];591 -> 600[label="",style="solid", color="black", weight=3]; 72.82/40.33 592 -> 324[label="",style="dashed", color="red", weight=0]; 72.82/40.33 592[label="showInt1R' xv75 (Pos (Succ xv76))",fontsize=16,color="magenta"];592 -> 601[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 592 -> 602[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 448[label="showInt1N'0 xv71 (Pos (Succ xv72)) (primQrmInt (Pos (Succ xv72)) (fromIntMyInt (Pos (Succ xv73))))",fontsize=16,color="black",shape="box"];448 -> 456[label="",style="solid", color="black", weight=3]; 72.82/40.33 384[label="primIntToChar (psMyInt (fromEnumChar (Char (Pos (Succ xv67)))) (fromIntMyInt (showInt1D xv68 (Pos (Succ xv69)))))",fontsize=16,color="black",shape="box"];384 -> 403[label="",style="solid", color="black", weight=3]; 72.82/40.33 378[label="Zero",fontsize=16,color="green",shape="box"];379[label="xv12",fontsize=16,color="green",shape="box"];380[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];210[label="primPlusInt (Pos (Succ xv16)) (showInt1D xv17 (Pos Zero))",fontsize=16,color="black",shape="box"];210 -> 224[label="",style="solid", color="black", weight=3]; 72.82/40.33 211[label="primPlusInt (Pos (Succ xv19)) (showInt1D xv20 (Neg Zero))",fontsize=16,color="black",shape="box"];211 -> 225[label="",style="solid", color="black", weight=3]; 72.82/40.33 600[label="showInt1N'0 xv75 (Pos (Succ xv76)) (showInt1Vu76 xv75 (Pos (Succ xv76)))",fontsize=16,color="black",shape="box"];600 -> 612[label="",style="solid", color="black", weight=3]; 72.82/40.33 601[label="xv76",fontsize=16,color="green",shape="box"];602[label="xv75",fontsize=16,color="green",shape="box"];456[label="showInt1N'0 xv71 (Pos (Succ xv72)) (Tup2 (primQuotInt (Pos (Succ xv72)) (fromIntMyInt (Pos (Succ xv73)))) (primRemInt (Pos (Succ xv72)) (fromIntMyInt (Pos (Succ xv73)))))",fontsize=16,color="black",shape="box"];456 -> 466[label="",style="solid", color="black", weight=3]; 72.82/40.33 403[label="Char (psMyInt (fromEnumChar (Char (Pos (Succ xv67)))) (fromIntMyInt (showInt1D xv68 (Pos (Succ xv69)))))",fontsize=16,color="green",shape="box"];403 -> 423[label="",style="dashed", color="green", weight=3]; 72.82/40.33 224[label="primPlusInt (Pos (Succ xv16)) (showInt1D0 xv17 (Pos Zero) (showInt1Vu76 xv17 (Pos Zero)))",fontsize=16,color="black",shape="box"];224 -> 238[label="",style="solid", color="black", weight=3]; 72.82/40.33 225[label="primPlusInt (Pos (Succ xv19)) (showInt1D0 xv20 (Neg Zero) (showInt1Vu76 xv20 (Neg Zero)))",fontsize=16,color="black",shape="box"];225 -> 239[label="",style="solid", color="black", weight=3]; 72.82/40.33 612 -> 432[label="",style="dashed", color="red", weight=0]; 72.82/40.33 612[label="showInt1N'0 xv75 (Pos (Succ xv76)) (quotRemMyInt (Pos (Succ xv76)) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))",fontsize=16,color="magenta"];612 -> 620[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 612 -> 621[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 612 -> 622[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 466[label="primQuotInt (Pos (Succ xv72)) (fromIntMyInt (Pos (Succ xv73)))",fontsize=16,color="black",shape="triangle"];466 -> 473[label="",style="solid", color="black", weight=3]; 72.82/40.33 423[label="psMyInt (fromEnumChar (Char (Pos (Succ xv67)))) (fromIntMyInt (showInt1D xv68 (Pos (Succ xv69))))",fontsize=16,color="black",shape="box"];423 -> 449[label="",style="solid", color="black", weight=3]; 72.82/40.33 238 -> 251[label="",style="dashed", color="red", weight=0]; 72.82/40.33 238[label="primPlusInt (Pos (Succ xv16)) (showInt1D0 xv17 (Pos Zero) (quotRemMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))",fontsize=16,color="magenta"];238 -> 252[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 238 -> 253[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 238 -> 254[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 239 -> 255[label="",style="dashed", color="red", weight=0]; 72.82/40.33 239[label="primPlusInt (Pos (Succ xv19)) (showInt1D0 xv20 (Neg Zero) (quotRemMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))",fontsize=16,color="magenta"];239 -> 256[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 239 -> 257[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 239 -> 258[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 620[label="xv75",fontsize=16,color="green",shape="box"];621[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];622[label="xv76",fontsize=16,color="green",shape="box"];473[label="primQuotInt (Pos (Succ xv72)) (Pos (Succ xv73))",fontsize=16,color="black",shape="box"];473 -> 480[label="",style="solid", color="black", weight=3]; 72.82/40.33 449[label="primPlusInt (fromEnumChar (Char (Pos (Succ xv67)))) (fromIntMyInt (showInt1D xv68 (Pos (Succ xv69))))",fontsize=16,color="black",shape="box"];449 -> 457[label="",style="solid", color="black", weight=3]; 72.82/40.33 252[label="xv17",fontsize=16,color="green",shape="box"];253[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];254[label="xv16",fontsize=16,color="green",shape="box"];251[label="primPlusInt (Pos (Succ xv36)) (showInt1D0 xv37 (Pos Zero) (quotRemMyInt (Pos Zero) (fromIntMyInt (Pos (Succ xv38)))))",fontsize=16,color="black",shape="triangle"];251 -> 274[label="",style="solid", color="black", weight=3]; 72.82/40.33 256[label="xv20",fontsize=16,color="green",shape="box"];257[label="xv19",fontsize=16,color="green",shape="box"];258[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];255[label="primPlusInt (Pos (Succ xv40)) (showInt1D0 xv41 (Neg Zero) (quotRemMyInt (Neg Zero) (fromIntMyInt (Pos (Succ xv42)))))",fontsize=16,color="black",shape="triangle"];255 -> 275[label="",style="solid", color="black", weight=3]; 72.82/40.33 480[label="Pos (primDivNatS (Succ xv72) (Succ xv73))",fontsize=16,color="green",shape="box"];480 -> 535[label="",style="dashed", color="green", weight=3]; 72.82/40.33 457[label="primPlusInt (primCharToInt (Char (Pos (Succ xv67)))) (fromIntMyInt (showInt1D xv68 (Pos (Succ xv69))))",fontsize=16,color="black",shape="box"];457 -> 467[label="",style="solid", color="black", weight=3]; 72.82/40.33 274[label="primPlusInt (Pos (Succ xv36)) (showInt1D0 xv37 (Pos Zero) (primQrmInt (Pos Zero) (fromIntMyInt (Pos (Succ xv38)))))",fontsize=16,color="black",shape="box"];274 -> 287[label="",style="solid", color="black", weight=3]; 72.82/40.33 275[label="primPlusInt (Pos (Succ xv40)) (showInt1D0 xv41 (Neg Zero) (primQrmInt (Neg Zero) (fromIntMyInt (Pos (Succ xv42)))))",fontsize=16,color="black",shape="box"];275 -> 288[label="",style="solid", color="black", weight=3]; 72.82/40.33 535[label="primDivNatS (Succ xv72) (Succ xv73)",fontsize=16,color="black",shape="triangle"];535 -> 541[label="",style="solid", color="black", weight=3]; 72.82/40.33 467[label="primPlusInt (Pos (Succ xv67)) (fromIntMyInt (showInt1D xv68 (Pos (Succ xv69))))",fontsize=16,color="black",shape="box"];467 -> 474[label="",style="solid", color="black", weight=3]; 72.82/40.33 287[label="primPlusInt (Pos (Succ xv36)) (showInt1D0 xv37 (Pos Zero) (Tup2 (primQuotInt (Pos Zero) (fromIntMyInt (Pos (Succ xv38)))) (primRemInt (Pos Zero) (fromIntMyInt (Pos (Succ xv38))))))",fontsize=16,color="black",shape="box"];287 -> 299[label="",style="solid", color="black", weight=3]; 72.82/40.33 288[label="primPlusInt (Pos (Succ xv40)) (showInt1D0 xv41 (Neg Zero) (Tup2 (primQuotInt (Neg Zero) (fromIntMyInt (Pos (Succ xv42)))) (primRemInt (Neg Zero) (fromIntMyInt (Pos (Succ xv42))))))",fontsize=16,color="black",shape="box"];288 -> 300[label="",style="solid", color="black", weight=3]; 72.82/40.33 541[label="primDivNatS0 xv72 xv73 (primGEqNatS xv72 xv73)",fontsize=16,color="burlywood",shape="box"];1474[label="xv72/Succ xv720",fontsize=10,color="white",style="solid",shape="box"];541 -> 1474[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1474 -> 551[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1475[label="xv72/Zero",fontsize=10,color="white",style="solid",shape="box"];541 -> 1475[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1475 -> 552[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 474[label="primPlusInt (Pos (Succ xv67)) (showInt1D xv68 (Pos (Succ xv69)))",fontsize=16,color="black",shape="box"];474 -> 481[label="",style="solid", color="black", weight=3]; 72.82/40.33 299[label="primPlusInt (Pos (Succ xv36)) (primRemInt (Pos Zero) (fromIntMyInt (Pos (Succ xv38))))",fontsize=16,color="black",shape="box"];299 -> 330[label="",style="solid", color="black", weight=3]; 72.82/40.33 300[label="primPlusInt (Pos (Succ xv40)) (primRemInt (Neg Zero) (fromIntMyInt (Pos (Succ xv42))))",fontsize=16,color="black",shape="box"];300 -> 331[label="",style="solid", color="black", weight=3]; 72.82/40.33 551[label="primDivNatS0 (Succ xv720) xv73 (primGEqNatS (Succ xv720) xv73)",fontsize=16,color="burlywood",shape="box"];1476[label="xv73/Succ xv730",fontsize=10,color="white",style="solid",shape="box"];551 -> 1476[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1476 -> 558[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1477[label="xv73/Zero",fontsize=10,color="white",style="solid",shape="box"];551 -> 1477[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1477 -> 559[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 552[label="primDivNatS0 Zero xv73 (primGEqNatS Zero xv73)",fontsize=16,color="burlywood",shape="box"];1478[label="xv73/Succ xv730",fontsize=10,color="white",style="solid",shape="box"];552 -> 1478[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1478 -> 560[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1479[label="xv73/Zero",fontsize=10,color="white",style="solid",shape="box"];552 -> 1479[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1479 -> 561[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 481[label="primPlusInt (Pos (Succ xv67)) (showInt1D0 xv68 (Pos (Succ xv69)) (showInt1Vu76 xv68 (Pos (Succ xv69))))",fontsize=16,color="black",shape="box"];481 -> 536[label="",style="solid", color="black", weight=3]; 72.82/40.33 330[label="primPlusInt (Pos (Succ xv36)) (primRemInt (Pos Zero) (Pos (Succ xv38)))",fontsize=16,color="black",shape="box"];330 -> 348[label="",style="solid", color="black", weight=3]; 72.82/40.33 331[label="primPlusInt (Pos (Succ xv40)) (primRemInt (Neg Zero) (Pos (Succ xv42)))",fontsize=16,color="black",shape="box"];331 -> 349[label="",style="solid", color="black", weight=3]; 72.82/40.33 558[label="primDivNatS0 (Succ xv720) (Succ xv730) (primGEqNatS (Succ xv720) (Succ xv730))",fontsize=16,color="black",shape="box"];558 -> 565[label="",style="solid", color="black", weight=3]; 72.82/40.33 559[label="primDivNatS0 (Succ xv720) Zero (primGEqNatS (Succ xv720) Zero)",fontsize=16,color="black",shape="box"];559 -> 566[label="",style="solid", color="black", weight=3]; 72.82/40.33 560[label="primDivNatS0 Zero (Succ xv730) (primGEqNatS Zero (Succ xv730))",fontsize=16,color="black",shape="box"];560 -> 567[label="",style="solid", color="black", weight=3]; 72.82/40.33 561[label="primDivNatS0 Zero Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];561 -> 568[label="",style="solid", color="black", weight=3]; 72.82/40.33 536 -> 542[label="",style="dashed", color="red", weight=0]; 72.82/40.33 536[label="primPlusInt (Pos (Succ xv67)) (showInt1D0 xv68 (Pos (Succ xv69)) (quotRemMyInt (Pos (Succ xv69)) (fromIntMyInt (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))",fontsize=16,color="magenta"];536 -> 543[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 536 -> 544[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 536 -> 545[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 536 -> 546[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 348[label="primPlusInt (Pos (Succ xv36)) (Pos (primModNatS Zero (Succ xv38)))",fontsize=16,color="black",shape="box"];348 -> 387[label="",style="solid", color="black", weight=3]; 72.82/40.33 349[label="primPlusInt (Pos (Succ xv40)) (Neg (primModNatS Zero (Succ xv42)))",fontsize=16,color="black",shape="box"];349 -> 388[label="",style="solid", color="black", weight=3]; 72.82/40.33 565 -> 819[label="",style="dashed", color="red", weight=0]; 72.82/40.33 565[label="primDivNatS0 (Succ xv720) (Succ xv730) (primGEqNatS xv720 xv730)",fontsize=16,color="magenta"];565 -> 820[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 565 -> 821[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 565 -> 822[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 565 -> 823[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 566[label="primDivNatS0 (Succ xv720) Zero MyTrue",fontsize=16,color="black",shape="box"];566 -> 575[label="",style="solid", color="black", weight=3]; 72.82/40.33 567[label="primDivNatS0 Zero (Succ xv730) MyFalse",fontsize=16,color="black",shape="box"];567 -> 576[label="",style="solid", color="black", weight=3]; 72.82/40.33 568[label="primDivNatS0 Zero Zero MyTrue",fontsize=16,color="black",shape="box"];568 -> 577[label="",style="solid", color="black", weight=3]; 72.82/40.33 543[label="xv67",fontsize=16,color="green",shape="box"];544[label="xv68",fontsize=16,color="green",shape="box"];545[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];546[label="xv69",fontsize=16,color="green",shape="box"];542[label="primPlusInt (Pos (Succ xv81)) (showInt1D0 xv82 (Pos (Succ xv83)) (quotRemMyInt (Pos (Succ xv83)) (fromIntMyInt (Pos (Succ xv84)))))",fontsize=16,color="black",shape="triangle"];542 -> 553[label="",style="solid", color="black", weight=3]; 72.82/40.33 387[label="Pos (primPlusNat (Succ xv36) (primModNatS Zero (Succ xv38)))",fontsize=16,color="green",shape="box"];387 -> 405[label="",style="dashed", color="green", weight=3]; 72.82/40.33 388[label="primMinusNat (Succ xv40) (primModNatS Zero (Succ xv42))",fontsize=16,color="black",shape="box"];388 -> 406[label="",style="solid", color="black", weight=3]; 72.82/40.33 820[label="xv730",fontsize=16,color="green",shape="box"];821[label="xv720",fontsize=16,color="green",shape="box"];822[label="xv720",fontsize=16,color="green",shape="box"];823[label="xv730",fontsize=16,color="green",shape="box"];819[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS xv104 xv105)",fontsize=16,color="burlywood",shape="triangle"];1480[label="xv104/Succ xv1040",fontsize=10,color="white",style="solid",shape="box"];819 -> 1480[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1480 -> 852[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1481[label="xv104/Zero",fontsize=10,color="white",style="solid",shape="box"];819 -> 1481[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1481 -> 853[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 575[label="Succ (primDivNatS (primMinusNatS (Succ xv720) Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];575 -> 588[label="",style="dashed", color="green", weight=3]; 72.82/40.33 576[label="Zero",fontsize=16,color="green",shape="box"];577[label="Succ (primDivNatS (primMinusNatS Zero Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];577 -> 589[label="",style="dashed", color="green", weight=3]; 72.82/40.33 553[label="primPlusInt (Pos (Succ xv81)) (showInt1D0 xv82 (Pos (Succ xv83)) (primQrmInt (Pos (Succ xv83)) (fromIntMyInt (Pos (Succ xv84)))))",fontsize=16,color="black",shape="box"];553 -> 562[label="",style="solid", color="black", weight=3]; 72.82/40.33 405[label="primPlusNat (Succ xv36) (primModNatS Zero (Succ xv38))",fontsize=16,color="black",shape="triangle"];405 -> 425[label="",style="solid", color="black", weight=3]; 72.82/40.33 406[label="primMinusNat (Succ xv40) Zero",fontsize=16,color="black",shape="box"];406 -> 426[label="",style="solid", color="black", weight=3]; 72.82/40.33 852[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS (Succ xv1040) xv105)",fontsize=16,color="burlywood",shape="box"];1482[label="xv105/Succ xv1050",fontsize=10,color="white",style="solid",shape="box"];852 -> 1482[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1482 -> 862[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1483[label="xv105/Zero",fontsize=10,color="white",style="solid",shape="box"];852 -> 1483[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1483 -> 863[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 853[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS Zero xv105)",fontsize=16,color="burlywood",shape="box"];1484[label="xv105/Succ xv1050",fontsize=10,color="white",style="solid",shape="box"];853 -> 1484[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1484 -> 864[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1485[label="xv105/Zero",fontsize=10,color="white",style="solid",shape="box"];853 -> 1485[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1485 -> 865[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 588 -> 1242[label="",style="dashed", color="red", weight=0]; 72.82/40.33 588[label="primDivNatS (primMinusNatS (Succ xv720) Zero) (Succ Zero)",fontsize=16,color="magenta"];588 -> 1243[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 588 -> 1244[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 588 -> 1245[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 589 -> 1242[label="",style="dashed", color="red", weight=0]; 72.82/40.33 589[label="primDivNatS (primMinusNatS Zero Zero) (Succ Zero)",fontsize=16,color="magenta"];589 -> 1246[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 589 -> 1247[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 589 -> 1248[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 562 -> 569[label="",style="dashed", color="red", weight=0]; 72.82/40.33 562[label="primPlusInt (Pos (Succ xv81)) (showInt1D0 xv82 (Pos (Succ xv83)) (Tup2 (primQuotInt (Pos (Succ xv83)) (fromIntMyInt (Pos (Succ xv84)))) (primRemInt (Pos (Succ xv83)) (fromIntMyInt (Pos (Succ xv84))))))",fontsize=16,color="magenta"];562 -> 570[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 425[label="primPlusNat (Succ xv36) Zero",fontsize=16,color="black",shape="triangle"];425 -> 450[label="",style="solid", color="black", weight=3]; 72.82/40.33 426[label="Pos (Succ xv40)",fontsize=16,color="green",shape="box"];862[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS (Succ xv1040) (Succ xv1050))",fontsize=16,color="black",shape="box"];862 -> 876[label="",style="solid", color="black", weight=3]; 72.82/40.33 863[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS (Succ xv1040) Zero)",fontsize=16,color="black",shape="box"];863 -> 877[label="",style="solid", color="black", weight=3]; 72.82/40.33 864[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS Zero (Succ xv1050))",fontsize=16,color="black",shape="box"];864 -> 878[label="",style="solid", color="black", weight=3]; 72.82/40.33 865[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];865 -> 879[label="",style="solid", color="black", weight=3]; 72.82/40.33 1243[label="Zero",fontsize=16,color="green",shape="box"];1244[label="Zero",fontsize=16,color="green",shape="box"];1245[label="Succ xv720",fontsize=16,color="green",shape="box"];1242[label="primDivNatS (primMinusNatS xv146 xv147) (Succ xv148)",fontsize=16,color="burlywood",shape="triangle"];1486[label="xv146/Succ xv1460",fontsize=10,color="white",style="solid",shape="box"];1242 -> 1486[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1486 -> 1276[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1487[label="xv146/Zero",fontsize=10,color="white",style="solid",shape="box"];1242 -> 1487[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1487 -> 1277[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1246[label="Zero",fontsize=16,color="green",shape="box"];1247[label="Zero",fontsize=16,color="green",shape="box"];1248[label="Zero",fontsize=16,color="green",shape="box"];570 -> 466[label="",style="dashed", color="red", weight=0]; 72.82/40.33 570[label="primQuotInt (Pos (Succ xv83)) (fromIntMyInt (Pos (Succ xv84)))",fontsize=16,color="magenta"];570 -> 578[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 570 -> 579[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 569[label="primPlusInt (Pos (Succ xv81)) (showInt1D0 xv82 (Pos (Succ xv83)) (Tup2 xv85 (primRemInt (Pos (Succ xv83)) (fromIntMyInt (Pos (Succ xv84))))))",fontsize=16,color="black",shape="triangle"];569 -> 580[label="",style="solid", color="black", weight=3]; 72.82/40.33 450[label="Succ xv36",fontsize=16,color="green",shape="box"];876 -> 819[label="",style="dashed", color="red", weight=0]; 72.82/40.33 876[label="primDivNatS0 (Succ xv102) (Succ xv103) (primGEqNatS xv1040 xv1050)",fontsize=16,color="magenta"];876 -> 893[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 876 -> 894[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 877[label="primDivNatS0 (Succ xv102) (Succ xv103) MyTrue",fontsize=16,color="black",shape="triangle"];877 -> 895[label="",style="solid", color="black", weight=3]; 72.82/40.33 878[label="primDivNatS0 (Succ xv102) (Succ xv103) MyFalse",fontsize=16,color="black",shape="box"];878 -> 896[label="",style="solid", color="black", weight=3]; 72.82/40.33 879 -> 877[label="",style="dashed", color="red", weight=0]; 72.82/40.33 879[label="primDivNatS0 (Succ xv102) (Succ xv103) MyTrue",fontsize=16,color="magenta"];1276[label="primDivNatS (primMinusNatS (Succ xv1460) xv147) (Succ xv148)",fontsize=16,color="burlywood",shape="box"];1488[label="xv147/Succ xv1470",fontsize=10,color="white",style="solid",shape="box"];1276 -> 1488[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1488 -> 1292[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1489[label="xv147/Zero",fontsize=10,color="white",style="solid",shape="box"];1276 -> 1489[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1489 -> 1293[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1277[label="primDivNatS (primMinusNatS Zero xv147) (Succ xv148)",fontsize=16,color="burlywood",shape="box"];1490[label="xv147/Succ xv1470",fontsize=10,color="white",style="solid",shape="box"];1277 -> 1490[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1490 -> 1294[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1491[label="xv147/Zero",fontsize=10,color="white",style="solid",shape="box"];1277 -> 1491[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1491 -> 1295[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 578[label="xv84",fontsize=16,color="green",shape="box"];579[label="xv83",fontsize=16,color="green",shape="box"];580[label="primPlusInt (Pos (Succ xv81)) (primRemInt (Pos (Succ xv83)) (fromIntMyInt (Pos (Succ xv84))))",fontsize=16,color="black",shape="box"];580 -> 590[label="",style="solid", color="black", weight=3]; 72.82/40.33 893[label="xv1040",fontsize=16,color="green",shape="box"];894[label="xv1050",fontsize=16,color="green",shape="box"];895[label="Succ (primDivNatS (primMinusNatS (Succ xv102) (Succ xv103)) (Succ (Succ xv103)))",fontsize=16,color="green",shape="box"];895 -> 905[label="",style="dashed", color="green", weight=3]; 72.82/40.33 896[label="Zero",fontsize=16,color="green",shape="box"];1292[label="primDivNatS (primMinusNatS (Succ xv1460) (Succ xv1470)) (Succ xv148)",fontsize=16,color="black",shape="box"];1292 -> 1327[label="",style="solid", color="black", weight=3]; 72.82/40.33 1293[label="primDivNatS (primMinusNatS (Succ xv1460) Zero) (Succ xv148)",fontsize=16,color="black",shape="box"];1293 -> 1328[label="",style="solid", color="black", weight=3]; 72.82/40.33 1294[label="primDivNatS (primMinusNatS Zero (Succ xv1470)) (Succ xv148)",fontsize=16,color="black",shape="box"];1294 -> 1329[label="",style="solid", color="black", weight=3]; 72.82/40.33 1295[label="primDivNatS (primMinusNatS Zero Zero) (Succ xv148)",fontsize=16,color="black",shape="box"];1295 -> 1330[label="",style="solid", color="black", weight=3]; 72.82/40.33 590[label="primPlusInt (Pos (Succ xv81)) (primRemInt (Pos (Succ xv83)) (Pos (Succ xv84)))",fontsize=16,color="black",shape="box"];590 -> 599[label="",style="solid", color="black", weight=3]; 72.82/40.33 905 -> 1242[label="",style="dashed", color="red", weight=0]; 72.82/40.33 905[label="primDivNatS (primMinusNatS (Succ xv102) (Succ xv103)) (Succ (Succ xv103))",fontsize=16,color="magenta"];905 -> 1249[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 905 -> 1250[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 905 -> 1251[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1327 -> 1242[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1327[label="primDivNatS (primMinusNatS xv1460 xv1470) (Succ xv148)",fontsize=16,color="magenta"];1327 -> 1338[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1327 -> 1339[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1328 -> 535[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1328[label="primDivNatS (Succ xv1460) (Succ xv148)",fontsize=16,color="magenta"];1328 -> 1340[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1328 -> 1341[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1329[label="primDivNatS Zero (Succ xv148)",fontsize=16,color="black",shape="triangle"];1329 -> 1342[label="",style="solid", color="black", weight=3]; 72.82/40.33 1330 -> 1329[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1330[label="primDivNatS Zero (Succ xv148)",fontsize=16,color="magenta"];599[label="primPlusInt (Pos (Succ xv81)) (Pos (primModNatS (Succ xv83) (Succ xv84)))",fontsize=16,color="black",shape="box"];599 -> 611[label="",style="solid", color="black", weight=3]; 72.82/40.33 1249[label="Succ xv103",fontsize=16,color="green",shape="box"];1250[label="Succ xv103",fontsize=16,color="green",shape="box"];1251[label="Succ xv102",fontsize=16,color="green",shape="box"];1338[label="xv1470",fontsize=16,color="green",shape="box"];1339[label="xv1460",fontsize=16,color="green",shape="box"];1340[label="xv148",fontsize=16,color="green",shape="box"];1341[label="xv1460",fontsize=16,color="green",shape="box"];1342[label="Zero",fontsize=16,color="green",shape="box"];611[label="Pos (primPlusNat (Succ xv81) (primModNatS (Succ xv83) (Succ xv84)))",fontsize=16,color="green",shape="box"];611 -> 619[label="",style="dashed", color="green", weight=3]; 72.82/40.33 619[label="primPlusNat (Succ xv81) (primModNatS (Succ xv83) (Succ xv84))",fontsize=16,color="burlywood",shape="triangle"];1492[label="xv84/Succ xv840",fontsize=10,color="white",style="solid",shape="box"];619 -> 1492[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1492 -> 629[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1493[label="xv84/Zero",fontsize=10,color="white",style="solid",shape="box"];619 -> 1493[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1493 -> 630[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 629[label="primPlusNat (Succ xv81) (primModNatS (Succ xv83) (Succ (Succ xv840)))",fontsize=16,color="black",shape="box"];629 -> 638[label="",style="solid", color="black", weight=3]; 72.82/40.33 630[label="primPlusNat (Succ xv81) (primModNatS (Succ xv83) (Succ Zero))",fontsize=16,color="black",shape="box"];630 -> 639[label="",style="solid", color="black", weight=3]; 72.82/40.33 638[label="primPlusNat (Succ xv81) (primModNatS0 xv83 xv840 (primGEqNatS xv83 (Succ xv840)))",fontsize=16,color="burlywood",shape="box"];1494[label="xv83/Succ xv830",fontsize=10,color="white",style="solid",shape="box"];638 -> 1494[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1494 -> 649[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1495[label="xv83/Zero",fontsize=10,color="white",style="solid",shape="box"];638 -> 1495[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1495 -> 650[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 639 -> 425[label="",style="dashed", color="red", weight=0]; 72.82/40.33 639[label="primPlusNat (Succ xv81) Zero",fontsize=16,color="magenta"];639 -> 651[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 649[label="primPlusNat (Succ xv81) (primModNatS0 (Succ xv830) xv840 (primGEqNatS (Succ xv830) (Succ xv840)))",fontsize=16,color="black",shape="box"];649 -> 658[label="",style="solid", color="black", weight=3]; 72.82/40.33 650[label="primPlusNat (Succ xv81) (primModNatS0 Zero xv840 (primGEqNatS Zero (Succ xv840)))",fontsize=16,color="black",shape="box"];650 -> 659[label="",style="solid", color="black", weight=3]; 72.82/40.33 651[label="xv81",fontsize=16,color="green",shape="box"];658[label="primPlusNat (Succ xv81) (primModNatS0 (Succ xv830) xv840 (primGEqNatS xv830 xv840))",fontsize=16,color="burlywood",shape="box"];1496[label="xv830/Succ xv8300",fontsize=10,color="white",style="solid",shape="box"];658 -> 1496[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1496 -> 667[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1497[label="xv830/Zero",fontsize=10,color="white",style="solid",shape="box"];658 -> 1497[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1497 -> 668[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 659[label="primPlusNat (Succ xv81) (primModNatS0 Zero xv840 MyFalse)",fontsize=16,color="black",shape="box"];659 -> 669[label="",style="solid", color="black", weight=3]; 72.82/40.33 667[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ xv8300)) xv840 (primGEqNatS (Succ xv8300) xv840))",fontsize=16,color="burlywood",shape="box"];1498[label="xv840/Succ xv8400",fontsize=10,color="white",style="solid",shape="box"];667 -> 1498[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1498 -> 678[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1499[label="xv840/Zero",fontsize=10,color="white",style="solid",shape="box"];667 -> 1499[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1499 -> 679[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 668[label="primPlusNat (Succ xv81) (primModNatS0 (Succ Zero) xv840 (primGEqNatS Zero xv840))",fontsize=16,color="burlywood",shape="box"];1500[label="xv840/Succ xv8400",fontsize=10,color="white",style="solid",shape="box"];668 -> 1500[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1500 -> 680[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1501[label="xv840/Zero",fontsize=10,color="white",style="solid",shape="box"];668 -> 1501[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1501 -> 681[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 669 -> 969[label="",style="dashed", color="red", weight=0]; 72.82/40.33 669[label="primPlusNat (Succ xv81) (Succ Zero)",fontsize=16,color="magenta"];669 -> 970[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 669 -> 971[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 678[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ xv8300)) (Succ xv8400) (primGEqNatS (Succ xv8300) (Succ xv8400)))",fontsize=16,color="black",shape="box"];678 -> 692[label="",style="solid", color="black", weight=3]; 72.82/40.33 679[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ xv8300)) Zero (primGEqNatS (Succ xv8300) Zero))",fontsize=16,color="black",shape="box"];679 -> 693[label="",style="solid", color="black", weight=3]; 72.82/40.33 680[label="primPlusNat (Succ xv81) (primModNatS0 (Succ Zero) (Succ xv8400) (primGEqNatS Zero (Succ xv8400)))",fontsize=16,color="black",shape="box"];680 -> 694[label="",style="solid", color="black", weight=3]; 72.82/40.33 681[label="primPlusNat (Succ xv81) (primModNatS0 (Succ Zero) Zero (primGEqNatS Zero Zero))",fontsize=16,color="black",shape="box"];681 -> 695[label="",style="solid", color="black", weight=3]; 72.82/40.33 970[label="xv81",fontsize=16,color="green",shape="box"];971[label="Zero",fontsize=16,color="green",shape="box"];969[label="primPlusNat (Succ xv110) (Succ xv111)",fontsize=16,color="black",shape="triangle"];969 -> 988[label="",style="solid", color="black", weight=3]; 72.82/40.33 692[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ xv8300)) (Succ xv8400) (primGEqNatS xv8300 xv8400))",fontsize=16,color="burlywood",shape="box"];1502[label="xv8300/Succ xv83000",fontsize=10,color="white",style="solid",shape="box"];692 -> 1502[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1502 -> 704[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1503[label="xv8300/Zero",fontsize=10,color="white",style="solid",shape="box"];692 -> 1503[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1503 -> 705[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 693[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ xv8300)) Zero MyTrue)",fontsize=16,color="black",shape="box"];693 -> 706[label="",style="solid", color="black", weight=3]; 72.82/40.33 694[label="primPlusNat (Succ xv81) (primModNatS0 (Succ Zero) (Succ xv8400) MyFalse)",fontsize=16,color="black",shape="box"];694 -> 707[label="",style="solid", color="black", weight=3]; 72.82/40.33 695[label="primPlusNat (Succ xv81) (primModNatS0 (Succ Zero) Zero MyTrue)",fontsize=16,color="black",shape="box"];695 -> 708[label="",style="solid", color="black", weight=3]; 72.82/40.33 988[label="Succ (Succ (primPlusNat xv110 xv111))",fontsize=16,color="green",shape="box"];988 -> 1000[label="",style="dashed", color="green", weight=3]; 72.82/40.33 704[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ xv83000))) (Succ xv8400) (primGEqNatS (Succ xv83000) xv8400))",fontsize=16,color="burlywood",shape="box"];1504[label="xv8400/Succ xv84000",fontsize=10,color="white",style="solid",shape="box"];704 -> 1504[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1504 -> 719[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1505[label="xv8400/Zero",fontsize=10,color="white",style="solid",shape="box"];704 -> 1505[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1505 -> 720[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 705[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ Zero)) (Succ xv8400) (primGEqNatS Zero xv8400))",fontsize=16,color="burlywood",shape="box"];1506[label="xv8400/Succ xv84000",fontsize=10,color="white",style="solid",shape="box"];705 -> 1506[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1506 -> 721[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1507[label="xv8400/Zero",fontsize=10,color="white",style="solid",shape="box"];705 -> 1507[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1507 -> 722[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 706[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ xv8300)) (Succ Zero)) (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];706 -> 723[label="",style="solid", color="black", weight=3]; 72.82/40.33 707 -> 969[label="",style="dashed", color="red", weight=0]; 72.82/40.33 707[label="primPlusNat (Succ xv81) (Succ (Succ Zero))",fontsize=16,color="magenta"];707 -> 972[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 707 -> 973[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 708[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ Zero) (Succ Zero)) (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];708 -> 725[label="",style="solid", color="black", weight=3]; 72.82/40.33 1000[label="primPlusNat xv110 xv111",fontsize=16,color="burlywood",shape="triangle"];1508[label="xv110/Succ xv1100",fontsize=10,color="white",style="solid",shape="box"];1000 -> 1508[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1508 -> 1016[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1509[label="xv110/Zero",fontsize=10,color="white",style="solid",shape="box"];1000 -> 1509[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1509 -> 1017[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 719[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ xv83000))) (Succ (Succ xv84000)) (primGEqNatS (Succ xv83000) (Succ xv84000)))",fontsize=16,color="black",shape="box"];719 -> 736[label="",style="solid", color="black", weight=3]; 72.82/40.33 720[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ xv83000))) (Succ Zero) (primGEqNatS (Succ xv83000) Zero))",fontsize=16,color="black",shape="box"];720 -> 737[label="",style="solid", color="black", weight=3]; 72.82/40.33 721[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ Zero)) (Succ (Succ xv84000)) (primGEqNatS Zero (Succ xv84000)))",fontsize=16,color="black",shape="box"];721 -> 738[label="",style="solid", color="black", weight=3]; 72.82/40.33 722[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ Zero)) (Succ Zero) (primGEqNatS Zero Zero))",fontsize=16,color="black",shape="box"];722 -> 739[label="",style="solid", color="black", weight=3]; 72.82/40.33 723[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ xv8300) Zero) (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];723 -> 740[label="",style="solid", color="black", weight=3]; 72.82/40.33 972[label="xv81",fontsize=16,color="green",shape="box"];973[label="Succ Zero",fontsize=16,color="green",shape="box"];725[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS Zero Zero) (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];725 -> 742[label="",style="solid", color="black", weight=3]; 72.82/40.33 1016[label="primPlusNat (Succ xv1100) xv111",fontsize=16,color="burlywood",shape="box"];1510[label="xv111/Succ xv1110",fontsize=10,color="white",style="solid",shape="box"];1016 -> 1510[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1510 -> 1038[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1511[label="xv111/Zero",fontsize=10,color="white",style="solid",shape="box"];1016 -> 1511[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1511 -> 1039[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1017[label="primPlusNat Zero xv111",fontsize=16,color="burlywood",shape="box"];1512[label="xv111/Succ xv1110",fontsize=10,color="white",style="solid",shape="box"];1017 -> 1512[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1512 -> 1040[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1513[label="xv111/Zero",fontsize=10,color="white",style="solid",shape="box"];1017 -> 1513[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1513 -> 1041[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 736[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ xv83000))) (Succ (Succ xv84000)) (primGEqNatS xv83000 xv84000))",fontsize=16,color="burlywood",shape="box"];1514[label="xv83000/Succ xv830000",fontsize=10,color="white",style="solid",shape="box"];736 -> 1514[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1514 -> 793[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1515[label="xv83000/Zero",fontsize=10,color="white",style="solid",shape="box"];736 -> 1515[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1515 -> 794[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 737[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ xv83000))) (Succ Zero) MyTrue)",fontsize=16,color="black",shape="box"];737 -> 795[label="",style="solid", color="black", weight=3]; 72.82/40.33 738[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ Zero)) (Succ (Succ xv84000)) MyFalse)",fontsize=16,color="black",shape="box"];738 -> 796[label="",style="solid", color="black", weight=3]; 72.82/40.33 739[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ Zero)) (Succ Zero) MyTrue)",fontsize=16,color="black",shape="box"];739 -> 797[label="",style="solid", color="black", weight=3]; 72.82/40.33 740 -> 619[label="",style="dashed", color="red", weight=0]; 72.82/40.33 740[label="primPlusNat (Succ xv81) (primModNatS (Succ xv8300) (Succ (Succ Zero)))",fontsize=16,color="magenta"];740 -> 798[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 740 -> 799[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 742 -> 405[label="",style="dashed", color="red", weight=0]; 72.82/40.33 742[label="primPlusNat (Succ xv81) (primModNatS Zero (Succ (Succ Zero)))",fontsize=16,color="magenta"];742 -> 802[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 742 -> 803[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1038[label="primPlusNat (Succ xv1100) (Succ xv1110)",fontsize=16,color="black",shape="box"];1038 -> 1051[label="",style="solid", color="black", weight=3]; 72.82/40.33 1039[label="primPlusNat (Succ xv1100) Zero",fontsize=16,color="black",shape="box"];1039 -> 1052[label="",style="solid", color="black", weight=3]; 72.82/40.33 1040[label="primPlusNat Zero (Succ xv1110)",fontsize=16,color="black",shape="box"];1040 -> 1053[label="",style="solid", color="black", weight=3]; 72.82/40.33 1041[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];1041 -> 1054[label="",style="solid", color="black", weight=3]; 72.82/40.33 793[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ xv830000)))) (Succ (Succ xv84000)) (primGEqNatS (Succ xv830000) xv84000))",fontsize=16,color="burlywood",shape="box"];1516[label="xv84000/Succ xv840000",fontsize=10,color="white",style="solid",shape="box"];793 -> 1516[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1516 -> 809[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1517[label="xv84000/Zero",fontsize=10,color="white",style="solid",shape="box"];793 -> 1517[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1517 -> 810[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 794[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ Zero))) (Succ (Succ xv84000)) (primGEqNatS Zero xv84000))",fontsize=16,color="burlywood",shape="box"];1518[label="xv84000/Succ xv840000",fontsize=10,color="white",style="solid",shape="box"];794 -> 1518[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1518 -> 811[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1519[label="xv84000/Zero",fontsize=10,color="white",style="solid",shape="box"];794 -> 1519[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1519 -> 812[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 795[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ xv83000))) (Succ (Succ Zero))) (Succ (Succ (Succ Zero))))",fontsize=16,color="black",shape="box"];795 -> 813[label="",style="solid", color="black", weight=3]; 72.82/40.33 796 -> 969[label="",style="dashed", color="red", weight=0]; 72.82/40.33 796[label="primPlusNat (Succ xv81) (Succ (Succ (Succ Zero)))",fontsize=16,color="magenta"];796 -> 974[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 796 -> 975[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 797[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ Zero)) (Succ (Succ Zero))) (Succ (Succ (Succ Zero))))",fontsize=16,color="black",shape="box"];797 -> 815[label="",style="solid", color="black", weight=3]; 72.82/40.33 798[label="Succ Zero",fontsize=16,color="green",shape="box"];799[label="xv8300",fontsize=16,color="green",shape="box"];802[label="Succ Zero",fontsize=16,color="green",shape="box"];803[label="xv81",fontsize=16,color="green",shape="box"];1051[label="Succ (Succ (primPlusNat xv1100 xv1110))",fontsize=16,color="green",shape="box"];1051 -> 1069[label="",style="dashed", color="green", weight=3]; 72.82/40.33 1052[label="Succ xv1100",fontsize=16,color="green",shape="box"];1053[label="Succ xv1110",fontsize=16,color="green",shape="box"];1054[label="Zero",fontsize=16,color="green",shape="box"];809[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ xv830000)))) (Succ (Succ (Succ xv840000))) (primGEqNatS (Succ xv830000) (Succ xv840000)))",fontsize=16,color="black",shape="box"];809 -> 854[label="",style="solid", color="black", weight=3]; 72.82/40.33 810[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ xv830000)))) (Succ (Succ Zero)) (primGEqNatS (Succ xv830000) Zero))",fontsize=16,color="black",shape="box"];810 -> 855[label="",style="solid", color="black", weight=3]; 72.82/40.33 811[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ Zero))) (Succ (Succ (Succ xv840000))) (primGEqNatS Zero (Succ xv840000)))",fontsize=16,color="black",shape="box"];811 -> 856[label="",style="solid", color="black", weight=3]; 72.82/40.33 812[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ Zero))) (Succ (Succ Zero)) (primGEqNatS Zero Zero))",fontsize=16,color="black",shape="box"];812 -> 857[label="",style="solid", color="black", weight=3]; 72.82/40.33 813[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ xv83000)) (Succ Zero)) (Succ (Succ (Succ Zero))))",fontsize=16,color="black",shape="box"];813 -> 858[label="",style="solid", color="black", weight=3]; 72.82/40.33 974[label="xv81",fontsize=16,color="green",shape="box"];975[label="Succ (Succ Zero)",fontsize=16,color="green",shape="box"];815[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ Zero) (Succ Zero)) (Succ (Succ (Succ Zero))))",fontsize=16,color="black",shape="box"];815 -> 860[label="",style="solid", color="black", weight=3]; 72.82/40.33 1069 -> 1000[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1069[label="primPlusNat xv1100 xv1110",fontsize=16,color="magenta"];1069 -> 1087[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1069 -> 1088[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 854[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ xv830000)))) (Succ (Succ (Succ xv840000))) (primGEqNatS xv830000 xv840000))",fontsize=16,color="burlywood",shape="box"];1520[label="xv830000/Succ xv8300000",fontsize=10,color="white",style="solid",shape="box"];854 -> 1520[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1520 -> 866[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1521[label="xv830000/Zero",fontsize=10,color="white",style="solid",shape="box"];854 -> 1521[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1521 -> 867[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 855[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ xv830000)))) (Succ (Succ Zero)) MyTrue)",fontsize=16,color="black",shape="box"];855 -> 868[label="",style="solid", color="black", weight=3]; 72.82/40.33 856[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ Zero))) (Succ (Succ (Succ xv840000))) MyFalse)",fontsize=16,color="black",shape="box"];856 -> 869[label="",style="solid", color="black", weight=3]; 72.82/40.33 857[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ Zero))) (Succ (Succ Zero)) MyTrue)",fontsize=16,color="black",shape="box"];857 -> 870[label="",style="solid", color="black", weight=3]; 72.82/40.33 858[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ xv83000) Zero) (Succ (Succ (Succ Zero))))",fontsize=16,color="black",shape="box"];858 -> 871[label="",style="solid", color="black", weight=3]; 72.82/40.33 860[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS Zero Zero) (Succ (Succ (Succ Zero))))",fontsize=16,color="black",shape="box"];860 -> 874[label="",style="solid", color="black", weight=3]; 72.82/40.33 1087[label="xv1100",fontsize=16,color="green",shape="box"];1088[label="xv1110",fontsize=16,color="green",shape="box"];866[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ xv8300000))))) (Succ (Succ (Succ xv840000))) (primGEqNatS (Succ xv8300000) xv840000))",fontsize=16,color="burlywood",shape="box"];1522[label="xv840000/Succ xv8400000",fontsize=10,color="white",style="solid",shape="box"];866 -> 1522[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1522 -> 880[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1523[label="xv840000/Zero",fontsize=10,color="white",style="solid",shape="box"];866 -> 1523[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1523 -> 881[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 867[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ xv840000))) (primGEqNatS Zero xv840000))",fontsize=16,color="burlywood",shape="box"];1524[label="xv840000/Succ xv8400000",fontsize=10,color="white",style="solid",shape="box"];867 -> 1524[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1524 -> 882[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1525[label="xv840000/Zero",fontsize=10,color="white",style="solid",shape="box"];867 -> 1525[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1525 -> 883[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 868[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ (Succ xv830000)))) (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];868 -> 884[label="",style="solid", color="black", weight=3]; 72.82/40.33 869 -> 969[label="",style="dashed", color="red", weight=0]; 72.82/40.33 869[label="primPlusNat (Succ xv81) (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="magenta"];869 -> 976[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 869 -> 977[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 870[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ Zero))) (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];870 -> 886[label="",style="solid", color="black", weight=3]; 72.82/40.33 871 -> 619[label="",style="dashed", color="red", weight=0]; 72.82/40.33 871[label="primPlusNat (Succ xv81) (primModNatS (Succ xv83000) (Succ (Succ (Succ Zero))))",fontsize=16,color="magenta"];871 -> 887[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 871 -> 888[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 874 -> 405[label="",style="dashed", color="red", weight=0]; 72.82/40.33 874[label="primPlusNat (Succ xv81) (primModNatS Zero (Succ (Succ (Succ Zero))))",fontsize=16,color="magenta"];874 -> 891[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 874 -> 892[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 880[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ xv8300000))))) (Succ (Succ (Succ (Succ xv8400000)))) (primGEqNatS (Succ xv8300000) (Succ xv8400000)))",fontsize=16,color="black",shape="box"];880 -> 897[label="",style="solid", color="black", weight=3]; 72.82/40.33 881[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ xv8300000))))) (Succ (Succ (Succ Zero))) (primGEqNatS (Succ xv8300000) Zero))",fontsize=16,color="black",shape="box"];881 -> 898[label="",style="solid", color="black", weight=3]; 72.82/40.33 882[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ (Succ xv8400000)))) (primGEqNatS Zero (Succ xv8400000)))",fontsize=16,color="black",shape="box"];882 -> 899[label="",style="solid", color="black", weight=3]; 72.82/40.33 883[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ Zero))) (primGEqNatS Zero Zero))",fontsize=16,color="black",shape="box"];883 -> 900[label="",style="solid", color="black", weight=3]; 72.82/40.33 884[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ xv830000))) (Succ (Succ Zero))) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];884 -> 901[label="",style="solid", color="black", weight=3]; 72.82/40.33 976[label="xv81",fontsize=16,color="green",shape="box"];977[label="Succ (Succ (Succ Zero))",fontsize=16,color="green",shape="box"];886[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ Zero)) (Succ (Succ Zero))) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];886 -> 903[label="",style="solid", color="black", weight=3]; 72.82/40.33 887[label="Succ (Succ Zero)",fontsize=16,color="green",shape="box"];888[label="xv83000",fontsize=16,color="green",shape="box"];891[label="Succ (Succ Zero)",fontsize=16,color="green",shape="box"];892[label="xv81",fontsize=16,color="green",shape="box"];897[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ xv8300000))))) (Succ (Succ (Succ (Succ xv8400000)))) (primGEqNatS xv8300000 xv8400000))",fontsize=16,color="burlywood",shape="box"];1526[label="xv8300000/Succ xv83000000",fontsize=10,color="white",style="solid",shape="box"];897 -> 1526[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1526 -> 906[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1527[label="xv8300000/Zero",fontsize=10,color="white",style="solid",shape="box"];897 -> 1527[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1527 -> 907[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 898[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ xv8300000))))) (Succ (Succ (Succ Zero))) MyTrue)",fontsize=16,color="black",shape="box"];898 -> 908[label="",style="solid", color="black", weight=3]; 72.82/40.33 899[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ (Succ xv8400000)))) MyFalse)",fontsize=16,color="black",shape="box"];899 -> 909[label="",style="solid", color="black", weight=3]; 72.82/40.33 900[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ Zero))) MyTrue)",fontsize=16,color="black",shape="box"];900 -> 910[label="",style="solid", color="black", weight=3]; 72.82/40.33 901[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ xv830000)) (Succ Zero)) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];901 -> 911[label="",style="solid", color="black", weight=3]; 72.82/40.33 903[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ Zero) (Succ Zero)) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];903 -> 914[label="",style="solid", color="black", weight=3]; 72.82/40.33 906[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ xv83000000)))))) (Succ (Succ (Succ (Succ xv8400000)))) (primGEqNatS (Succ xv83000000) xv8400000))",fontsize=16,color="burlywood",shape="box"];1528[label="xv8400000/Succ xv84000000",fontsize=10,color="white",style="solid",shape="box"];906 -> 1528[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1528 -> 917[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1529[label="xv8400000/Zero",fontsize=10,color="white",style="solid",shape="box"];906 -> 1529[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1529 -> 918[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 907[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ xv8400000)))) (primGEqNatS Zero xv8400000))",fontsize=16,color="burlywood",shape="box"];1530[label="xv8400000/Succ xv84000000",fontsize=10,color="white",style="solid",shape="box"];907 -> 1530[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1530 -> 919[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1531[label="xv8400000/Zero",fontsize=10,color="white",style="solid",shape="box"];907 -> 1531[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1531 -> 920[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 908[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ (Succ (Succ xv8300000))))) (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];908 -> 921[label="",style="solid", color="black", weight=3]; 72.82/40.33 909 -> 969[label="",style="dashed", color="red", weight=0]; 72.82/40.33 909[label="primPlusNat (Succ xv81) (Succ (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="magenta"];909 -> 978[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 909 -> 979[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 910[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];910 -> 923[label="",style="solid", color="black", weight=3]; 72.82/40.33 911[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ xv830000) Zero) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];911 -> 924[label="",style="solid", color="black", weight=3]; 72.82/40.33 914[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS Zero Zero) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];914 -> 927[label="",style="solid", color="black", weight=3]; 72.82/40.33 917[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ xv83000000)))))) (Succ (Succ (Succ (Succ (Succ xv84000000))))) (primGEqNatS (Succ xv83000000) (Succ xv84000000)))",fontsize=16,color="black",shape="box"];917 -> 930[label="",style="solid", color="black", weight=3]; 72.82/40.33 918[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ xv83000000)))))) (Succ (Succ (Succ (Succ Zero)))) (primGEqNatS (Succ xv83000000) Zero))",fontsize=16,color="black",shape="box"];918 -> 931[label="",style="solid", color="black", weight=3]; 72.82/40.33 919[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ (Succ xv84000000))))) (primGEqNatS Zero (Succ xv84000000)))",fontsize=16,color="black",shape="box"];919 -> 932[label="",style="solid", color="black", weight=3]; 72.82/40.33 920[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ Zero)))) (primGEqNatS Zero Zero))",fontsize=16,color="black",shape="box"];920 -> 933[label="",style="solid", color="black", weight=3]; 72.82/40.33 921[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ (Succ xv8300000)))) (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];921 -> 934[label="",style="solid", color="black", weight=3]; 72.82/40.33 978[label="xv81",fontsize=16,color="green",shape="box"];979[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];923[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ Zero))) (Succ (Succ (Succ Zero)))) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];923 -> 936[label="",style="solid", color="black", weight=3]; 72.82/40.33 924 -> 619[label="",style="dashed", color="red", weight=0]; 72.82/40.33 924[label="primPlusNat (Succ xv81) (primModNatS (Succ xv830000) (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="magenta"];924 -> 937[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 924 -> 938[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 927 -> 405[label="",style="dashed", color="red", weight=0]; 72.82/40.33 927[label="primPlusNat (Succ xv81) (primModNatS Zero (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="magenta"];927 -> 940[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 927 -> 941[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 930[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ xv83000000)))))) (Succ (Succ (Succ (Succ (Succ xv84000000))))) (primGEqNatS xv83000000 xv84000000))",fontsize=16,color="burlywood",shape="box"];1532[label="xv83000000/Succ xv830000000",fontsize=10,color="white",style="solid",shape="box"];930 -> 1532[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1532 -> 946[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1533[label="xv83000000/Zero",fontsize=10,color="white",style="solid",shape="box"];930 -> 1533[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1533 -> 947[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 931 -> 950[label="",style="dashed", color="red", weight=0]; 72.82/40.33 931[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ xv83000000)))))) (Succ (Succ (Succ (Succ Zero)))) MyTrue)",fontsize=16,color="magenta"];931 -> 951[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 931 -> 952[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 932[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ (Succ xv84000000))))) MyFalse)",fontsize=16,color="black",shape="box"];932 -> 949[label="",style="solid", color="black", weight=3]; 72.82/40.33 933 -> 950[label="",style="dashed", color="red", weight=0]; 72.82/40.33 933[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ Zero)))) MyTrue)",fontsize=16,color="magenta"];933 -> 953[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 933 -> 954[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 934[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ (Succ xv8300000))) (Succ (Succ Zero))) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];934 -> 959[label="",style="solid", color="black", weight=3]; 72.82/40.33 936[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ Zero)) (Succ (Succ Zero))) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];936 -> 962[label="",style="solid", color="black", weight=3]; 72.82/40.33 937[label="Succ (Succ (Succ Zero))",fontsize=16,color="green",shape="box"];938[label="xv830000",fontsize=16,color="green",shape="box"];940[label="Succ (Succ (Succ Zero))",fontsize=16,color="green",shape="box"];941[label="xv81",fontsize=16,color="green",shape="box"];946[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv830000000))))))) (Succ (Succ (Succ (Succ (Succ xv84000000))))) (primGEqNatS (Succ xv830000000) xv84000000))",fontsize=16,color="burlywood",shape="box"];1534[label="xv84000000/Succ xv840000000",fontsize=10,color="white",style="solid",shape="box"];946 -> 1534[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1534 -> 964[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1535[label="xv84000000/Zero",fontsize=10,color="white",style="solid",shape="box"];946 -> 1535[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1535 -> 965[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 947[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) (Succ (Succ (Succ (Succ (Succ xv84000000))))) (primGEqNatS Zero xv84000000))",fontsize=16,color="burlywood",shape="box"];1536[label="xv84000000/Succ xv840000000",fontsize=10,color="white",style="solid",shape="box"];947 -> 1536[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1536 -> 966[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1537[label="xv84000000/Zero",fontsize=10,color="white",style="solid",shape="box"];947 -> 1537[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1537 -> 967[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 951[label="Succ (Succ (Succ (Succ (Succ xv83000000))))",fontsize=16,color="green",shape="box"];952[label="xv81",fontsize=16,color="green",shape="box"];950[label="primPlusNat (Succ xv107) (primModNatS0 (Succ xv108) (Succ (Succ (Succ (Succ Zero)))) MyTrue)",fontsize=16,color="black",shape="triangle"];950 -> 968[label="",style="solid", color="black", weight=3]; 72.82/40.33 949 -> 969[label="",style="dashed", color="red", weight=0]; 72.82/40.33 949[label="primPlusNat (Succ xv81) (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="magenta"];949 -> 980[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 949 -> 981[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 953[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];954[label="xv81",fontsize=16,color="green",shape="box"];959[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ (Succ xv8300000)) (Succ Zero)) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];959 -> 989[label="",style="solid", color="black", weight=3]; 72.82/40.33 962[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ Zero) (Succ Zero)) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];962 -> 990[label="",style="solid", color="black", weight=3]; 72.82/40.33 964[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv830000000))))))) (Succ (Succ (Succ (Succ (Succ (Succ xv840000000)))))) (primGEqNatS (Succ xv830000000) (Succ xv840000000)))",fontsize=16,color="black",shape="box"];964 -> 991[label="",style="solid", color="black", weight=3]; 72.82/40.33 965[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv830000000))))))) (Succ (Succ (Succ (Succ (Succ Zero))))) (primGEqNatS (Succ xv830000000) Zero))",fontsize=16,color="black",shape="box"];965 -> 992[label="",style="solid", color="black", weight=3]; 72.82/40.33 966[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) (Succ (Succ (Succ (Succ (Succ (Succ xv840000000)))))) (primGEqNatS Zero (Succ xv840000000)))",fontsize=16,color="black",shape="box"];966 -> 993[label="",style="solid", color="black", weight=3]; 72.82/40.33 967[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) (Succ (Succ (Succ (Succ (Succ Zero))))) (primGEqNatS Zero Zero))",fontsize=16,color="black",shape="box"];967 -> 994[label="",style="solid", color="black", weight=3]; 72.82/40.33 968[label="primPlusNat (Succ xv107) (primModNatS (primMinusNatS (Succ xv108) (Succ (Succ (Succ (Succ (Succ Zero)))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))",fontsize=16,color="black",shape="box"];968 -> 995[label="",style="solid", color="black", weight=3]; 72.82/40.33 980[label="xv81",fontsize=16,color="green",shape="box"];981[label="Succ (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="green",shape="box"];989[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS (Succ xv8300000) Zero) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];989 -> 1001[label="",style="solid", color="black", weight=3]; 72.82/40.33 990[label="primPlusNat (Succ xv81) (primModNatS (primMinusNatS Zero Zero) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];990 -> 1002[label="",style="solid", color="black", weight=3]; 72.82/40.33 991[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv830000000))))))) (Succ (Succ (Succ (Succ (Succ (Succ xv840000000)))))) (primGEqNatS xv830000000 xv840000000))",fontsize=16,color="burlywood",shape="box"];1538[label="xv830000000/Succ xv8300000000",fontsize=10,color="white",style="solid",shape="box"];991 -> 1538[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1538 -> 1003[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1539[label="xv830000000/Zero",fontsize=10,color="white",style="solid",shape="box"];991 -> 1539[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1539 -> 1004[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 992 -> 1007[label="",style="dashed", color="red", weight=0]; 72.82/40.33 992[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv830000000))))))) (Succ (Succ (Succ (Succ (Succ Zero))))) MyTrue)",fontsize=16,color="magenta"];992 -> 1008[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 992 -> 1009[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 993[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) (Succ (Succ (Succ (Succ (Succ (Succ xv840000000)))))) MyFalse)",fontsize=16,color="black",shape="box"];993 -> 1006[label="",style="solid", color="black", weight=3]; 72.82/40.33 994 -> 1007[label="",style="dashed", color="red", weight=0]; 72.82/40.33 994[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) (Succ (Succ (Succ (Succ (Succ Zero))))) MyTrue)",fontsize=16,color="magenta"];994 -> 1010[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 994 -> 1011[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 995 -> 1000[label="",style="dashed", color="red", weight=0]; 72.82/40.33 995[label="primPlusNat (Succ xv107) (primModNatS (primMinusNatS xv108 (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))",fontsize=16,color="magenta"];995 -> 1018[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 995 -> 1019[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1001 -> 1000[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1001[label="primPlusNat (Succ xv81) (primModNatS (Succ xv8300000) (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="magenta"];1001 -> 1020[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1001 -> 1021[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1002 -> 1000[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1002[label="primPlusNat (Succ xv81) (primModNatS Zero (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="magenta"];1002 -> 1022[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1002 -> 1023[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1003[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000)))))))) (Succ (Succ (Succ (Succ (Succ (Succ xv840000000)))))) (primGEqNatS (Succ xv8300000000) xv840000000))",fontsize=16,color="burlywood",shape="box"];1540[label="xv840000000/Succ xv8400000000",fontsize=10,color="white",style="solid",shape="box"];1003 -> 1540[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1540 -> 1024[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1541[label="xv840000000/Zero",fontsize=10,color="white",style="solid",shape="box"];1003 -> 1541[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1541 -> 1025[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1004[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ (Succ (Succ (Succ (Succ (Succ xv840000000)))))) (primGEqNatS Zero xv840000000))",fontsize=16,color="burlywood",shape="box"];1542[label="xv840000000/Succ xv8400000000",fontsize=10,color="white",style="solid",shape="box"];1004 -> 1542[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1542 -> 1026[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1543[label="xv840000000/Zero",fontsize=10,color="white",style="solid",shape="box"];1004 -> 1543[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1543 -> 1027[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1008[label="Succ (Succ (Succ (Succ (Succ (Succ xv830000000)))))",fontsize=16,color="green",shape="box"];1009[label="xv81",fontsize=16,color="green",shape="box"];1007 -> 1000[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1007[label="primPlusNat (Succ xv113) (primModNatS0 (Succ xv114) (Succ (Succ (Succ (Succ (Succ Zero))))) MyTrue)",fontsize=16,color="magenta"];1007 -> 1028[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1007 -> 1029[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1006 -> 1000[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1006[label="primPlusNat (Succ xv81) (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))",fontsize=16,color="magenta"];1006 -> 1030[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1006 -> 1031[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1010[label="Succ (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="green",shape="box"];1011[label="xv81",fontsize=16,color="green",shape="box"];1018[label="Succ xv107",fontsize=16,color="green",shape="box"];1019 -> 1397[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1019[label="primModNatS (primMinusNatS xv108 (Succ (Succ (Succ (Succ Zero))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="magenta"];1019 -> 1398[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1019 -> 1399[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1019 -> 1400[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1020[label="Succ xv81",fontsize=16,color="green",shape="box"];1021 -> 1044[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1021[label="primModNatS (Succ xv8300000) (Succ (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="magenta"];1021 -> 1045[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1021 -> 1046[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1022[label="Succ xv81",fontsize=16,color="green",shape="box"];1023 -> 1091[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1023[label="primModNatS Zero (Succ (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="magenta"];1023 -> 1092[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1024[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000)))))))) (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8400000000))))))) (primGEqNatS (Succ xv8300000000) (Succ xv8400000000)))",fontsize=16,color="black",shape="box"];1024 -> 1056[label="",style="solid", color="black", weight=3]; 72.82/40.33 1025[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000)))))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) (primGEqNatS (Succ xv8300000000) Zero))",fontsize=16,color="black",shape="box"];1025 -> 1057[label="",style="solid", color="black", weight=3]; 72.82/40.33 1026[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8400000000))))))) (primGEqNatS Zero (Succ xv8400000000)))",fontsize=16,color="black",shape="box"];1026 -> 1058[label="",style="solid", color="black", weight=3]; 72.82/40.33 1027[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) (primGEqNatS Zero Zero))",fontsize=16,color="black",shape="box"];1027 -> 1059[label="",style="solid", color="black", weight=3]; 72.82/40.33 1028[label="Succ xv113",fontsize=16,color="green",shape="box"];1029 -> 1200[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1029[label="primModNatS0 (Succ xv114) (Succ (Succ (Succ (Succ (Succ Zero))))) MyTrue",fontsize=16,color="magenta"];1029 -> 1201[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1029 -> 1202[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1030[label="Succ xv81",fontsize=16,color="green",shape="box"];1031[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="green",shape="box"];1398[label="Succ (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="green",shape="box"];1399[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];1400[label="xv108",fontsize=16,color="green",shape="box"];1397[label="primModNatS (primMinusNatS xv155 xv156) (Succ xv157)",fontsize=16,color="burlywood",shape="triangle"];1544[label="xv155/Succ xv1550",fontsize=10,color="white",style="solid",shape="box"];1397 -> 1544[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1544 -> 1440[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1545[label="xv155/Zero",fontsize=10,color="white",style="solid",shape="box"];1397 -> 1545[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1545 -> 1441[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1045[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];1046[label="xv8300000",fontsize=16,color="green",shape="box"];1044[label="primModNatS (Succ xv116) (Succ xv117)",fontsize=16,color="burlywood",shape="triangle"];1546[label="xv117/Succ xv1170",fontsize=10,color="white",style="solid",shape="box"];1044 -> 1546[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1546 -> 1063[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1547[label="xv117/Zero",fontsize=10,color="white",style="solid",shape="box"];1044 -> 1547[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1547 -> 1064[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1092[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];1091[label="primModNatS Zero (Succ xv122)",fontsize=16,color="black",shape="triangle"];1091 -> 1098[label="",style="solid", color="black", weight=3]; 72.82/40.33 1056 -> 1000[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1056[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000)))))))) (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8400000000))))))) (primGEqNatS xv8300000000 xv8400000000))",fontsize=16,color="magenta"];1056 -> 1070[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1056 -> 1071[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1057 -> 1000[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1057[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000)))))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) MyTrue)",fontsize=16,color="magenta"];1057 -> 1072[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1057 -> 1073[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1058 -> 1000[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1058[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8400000000))))))) MyFalse)",fontsize=16,color="magenta"];1058 -> 1074[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1058 -> 1075[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1059 -> 1000[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1059[label="primPlusNat (Succ xv81) (primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) MyTrue)",fontsize=16,color="magenta"];1059 -> 1076[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1059 -> 1077[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1201[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];1202[label="xv114",fontsize=16,color="green",shape="box"];1200[label="primModNatS0 (Succ xv139) (Succ xv140) MyTrue",fontsize=16,color="black",shape="triangle"];1200 -> 1219[label="",style="solid", color="black", weight=3]; 72.82/40.33 1440[label="primModNatS (primMinusNatS (Succ xv1550) xv156) (Succ xv157)",fontsize=16,color="burlywood",shape="box"];1548[label="xv156/Succ xv1560",fontsize=10,color="white",style="solid",shape="box"];1440 -> 1548[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1548 -> 1442[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1549[label="xv156/Zero",fontsize=10,color="white",style="solid",shape="box"];1440 -> 1549[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1549 -> 1443[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1441[label="primModNatS (primMinusNatS Zero xv156) (Succ xv157)",fontsize=16,color="burlywood",shape="box"];1550[label="xv156/Succ xv1560",fontsize=10,color="white",style="solid",shape="box"];1441 -> 1550[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1550 -> 1444[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1551[label="xv156/Zero",fontsize=10,color="white",style="solid",shape="box"];1441 -> 1551[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1551 -> 1445[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1063[label="primModNatS (Succ xv116) (Succ (Succ xv1170))",fontsize=16,color="black",shape="box"];1063 -> 1099[label="",style="solid", color="black", weight=3]; 72.82/40.33 1064[label="primModNatS (Succ xv116) (Succ Zero)",fontsize=16,color="black",shape="box"];1064 -> 1100[label="",style="solid", color="black", weight=3]; 72.82/40.33 1098[label="Zero",fontsize=16,color="green",shape="box"];1070[label="Succ xv81",fontsize=16,color="green",shape="box"];1071 -> 1302[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1071[label="primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000)))))))) (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8400000000))))))) (primGEqNatS xv8300000000 xv8400000000)",fontsize=16,color="magenta"];1071 -> 1303[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1071 -> 1304[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1071 -> 1305[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1071 -> 1306[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1072[label="Succ xv81",fontsize=16,color="green",shape="box"];1073 -> 1200[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1073[label="primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000)))))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) MyTrue",fontsize=16,color="magenta"];1073 -> 1203[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1073 -> 1204[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1074[label="Succ xv81",fontsize=16,color="green",shape="box"];1075 -> 1110[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1075[label="primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8400000000))))))) MyFalse",fontsize=16,color="magenta"];1075 -> 1111[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1076[label="Succ xv81",fontsize=16,color="green",shape="box"];1077 -> 1200[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1077[label="primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))) MyTrue",fontsize=16,color="magenta"];1077 -> 1205[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1077 -> 1206[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1219 -> 1397[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1219[label="primModNatS (primMinusNatS (Succ xv139) (Succ (Succ xv140))) (Succ (Succ (Succ xv140)))",fontsize=16,color="magenta"];1219 -> 1404[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1219 -> 1405[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1219 -> 1406[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1442[label="primModNatS (primMinusNatS (Succ xv1550) (Succ xv1560)) (Succ xv157)",fontsize=16,color="black",shape="box"];1442 -> 1446[label="",style="solid", color="black", weight=3]; 72.82/40.33 1443[label="primModNatS (primMinusNatS (Succ xv1550) Zero) (Succ xv157)",fontsize=16,color="black",shape="box"];1443 -> 1447[label="",style="solid", color="black", weight=3]; 72.82/40.33 1444[label="primModNatS (primMinusNatS Zero (Succ xv1560)) (Succ xv157)",fontsize=16,color="black",shape="box"];1444 -> 1448[label="",style="solid", color="black", weight=3]; 72.82/40.33 1445[label="primModNatS (primMinusNatS Zero Zero) (Succ xv157)",fontsize=16,color="black",shape="box"];1445 -> 1449[label="",style="solid", color="black", weight=3]; 72.82/40.33 1099[label="primModNatS0 xv116 xv1170 (primGEqNatS xv116 (Succ xv1170))",fontsize=16,color="burlywood",shape="box"];1552[label="xv116/Succ xv1160",fontsize=10,color="white",style="solid",shape="box"];1099 -> 1552[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1552 -> 1121[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1553[label="xv116/Zero",fontsize=10,color="white",style="solid",shape="box"];1099 -> 1553[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1553 -> 1122[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1100[label="Zero",fontsize=16,color="green",shape="box"];1303[label="xv8300000000",fontsize=16,color="green",shape="box"];1304[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000))))))",fontsize=16,color="green",shape="box"];1305[label="Succ (Succ (Succ (Succ (Succ (Succ xv8400000000)))))",fontsize=16,color="green",shape="box"];1306[label="xv8400000000",fontsize=16,color="green",shape="box"];1302[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS xv152 xv153)",fontsize=16,color="burlywood",shape="triangle"];1554[label="xv152/Succ xv1520",fontsize=10,color="white",style="solid",shape="box"];1302 -> 1554[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1554 -> 1331[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1555[label="xv152/Zero",fontsize=10,color="white",style="solid",shape="box"];1302 -> 1555[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1555 -> 1332[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1203[label="Succ (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="green",shape="box"];1204[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ xv8300000000))))))",fontsize=16,color="green",shape="box"];1111[label="Succ (Succ (Succ (Succ (Succ (Succ xv8400000000)))))",fontsize=16,color="green",shape="box"];1110[label="primModNatS0 (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) (Succ xv126) MyFalse",fontsize=16,color="black",shape="triangle"];1110 -> 1128[label="",style="solid", color="black", weight=3]; 72.82/40.33 1205[label="Succ (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="green",shape="box"];1206[label="Succ (Succ (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="green",shape="box"];1404[label="Succ (Succ xv140)",fontsize=16,color="green",shape="box"];1405[label="Succ (Succ xv140)",fontsize=16,color="green",shape="box"];1406[label="Succ xv139",fontsize=16,color="green",shape="box"];1446 -> 1397[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1446[label="primModNatS (primMinusNatS xv1550 xv1560) (Succ xv157)",fontsize=16,color="magenta"];1446 -> 1450[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1446 -> 1451[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1447 -> 1044[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1447[label="primModNatS (Succ xv1550) (Succ xv157)",fontsize=16,color="magenta"];1447 -> 1452[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1447 -> 1453[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1448 -> 1091[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1448[label="primModNatS Zero (Succ xv157)",fontsize=16,color="magenta"];1448 -> 1454[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1449 -> 1091[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1449[label="primModNatS Zero (Succ xv157)",fontsize=16,color="magenta"];1449 -> 1455[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1121[label="primModNatS0 (Succ xv1160) xv1170 (primGEqNatS (Succ xv1160) (Succ xv1170))",fontsize=16,color="black",shape="box"];1121 -> 1138[label="",style="solid", color="black", weight=3]; 72.82/40.33 1122[label="primModNatS0 Zero xv1170 (primGEqNatS Zero (Succ xv1170))",fontsize=16,color="black",shape="box"];1122 -> 1139[label="",style="solid", color="black", weight=3]; 72.82/40.33 1331[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS (Succ xv1520) xv153)",fontsize=16,color="burlywood",shape="box"];1556[label="xv153/Succ xv1530",fontsize=10,color="white",style="solid",shape="box"];1331 -> 1556[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1556 -> 1343[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1557[label="xv153/Zero",fontsize=10,color="white",style="solid",shape="box"];1331 -> 1557[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1557 -> 1344[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1332[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS Zero xv153)",fontsize=16,color="burlywood",shape="box"];1558[label="xv153/Succ xv1530",fontsize=10,color="white",style="solid",shape="box"];1332 -> 1558[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1558 -> 1345[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1559[label="xv153/Zero",fontsize=10,color="white",style="solid",shape="box"];1332 -> 1559[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1559 -> 1346[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1128[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))",fontsize=16,color="green",shape="box"];1450[label="xv1560",fontsize=16,color="green",shape="box"];1451[label="xv1550",fontsize=16,color="green",shape="box"];1452[label="xv157",fontsize=16,color="green",shape="box"];1453[label="xv1550",fontsize=16,color="green",shape="box"];1454[label="xv157",fontsize=16,color="green",shape="box"];1455[label="xv157",fontsize=16,color="green",shape="box"];1138[label="primModNatS0 (Succ xv1160) xv1170 (primGEqNatS xv1160 xv1170)",fontsize=16,color="burlywood",shape="box"];1560[label="xv1160/Succ xv11600",fontsize=10,color="white",style="solid",shape="box"];1138 -> 1560[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1560 -> 1153[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1561[label="xv1160/Zero",fontsize=10,color="white",style="solid",shape="box"];1138 -> 1561[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1561 -> 1154[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1139[label="primModNatS0 Zero xv1170 MyFalse",fontsize=16,color="black",shape="box"];1139 -> 1155[label="",style="solid", color="black", weight=3]; 72.82/40.33 1343[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS (Succ xv1520) (Succ xv1530))",fontsize=16,color="black",shape="box"];1343 -> 1354[label="",style="solid", color="black", weight=3]; 72.82/40.33 1344[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS (Succ xv1520) Zero)",fontsize=16,color="black",shape="box"];1344 -> 1355[label="",style="solid", color="black", weight=3]; 72.82/40.33 1345[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS Zero (Succ xv1530))",fontsize=16,color="black",shape="box"];1345 -> 1356[label="",style="solid", color="black", weight=3]; 72.82/40.33 1346[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];1346 -> 1357[label="",style="solid", color="black", weight=3]; 72.82/40.33 1153[label="primModNatS0 (Succ (Succ xv11600)) xv1170 (primGEqNatS (Succ xv11600) xv1170)",fontsize=16,color="burlywood",shape="box"];1562[label="xv1170/Succ xv11700",fontsize=10,color="white",style="solid",shape="box"];1153 -> 1562[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1562 -> 1194[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1563[label="xv1170/Zero",fontsize=10,color="white",style="solid",shape="box"];1153 -> 1563[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1563 -> 1195[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1154[label="primModNatS0 (Succ Zero) xv1170 (primGEqNatS Zero xv1170)",fontsize=16,color="burlywood",shape="box"];1564[label="xv1170/Succ xv11700",fontsize=10,color="white",style="solid",shape="box"];1154 -> 1564[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1564 -> 1196[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1565[label="xv1170/Zero",fontsize=10,color="white",style="solid",shape="box"];1154 -> 1565[label="",style="solid", color="burlywood", weight=9]; 72.82/40.33 1565 -> 1197[label="",style="solid", color="burlywood", weight=3]; 72.82/40.33 1155[label="Succ Zero",fontsize=16,color="green",shape="box"];1354 -> 1302[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1354[label="primModNatS0 (Succ xv150) (Succ xv151) (primGEqNatS xv1520 xv1530)",fontsize=16,color="magenta"];1354 -> 1362[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1354 -> 1363[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1355 -> 1200[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1355[label="primModNatS0 (Succ xv150) (Succ xv151) MyTrue",fontsize=16,color="magenta"];1355 -> 1364[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1355 -> 1365[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1356[label="primModNatS0 (Succ xv150) (Succ xv151) MyFalse",fontsize=16,color="black",shape="box"];1356 -> 1366[label="",style="solid", color="black", weight=3]; 72.82/40.33 1357 -> 1200[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1357[label="primModNatS0 (Succ xv150) (Succ xv151) MyTrue",fontsize=16,color="magenta"];1357 -> 1367[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1357 -> 1368[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1194[label="primModNatS0 (Succ (Succ xv11600)) (Succ xv11700) (primGEqNatS (Succ xv11600) (Succ xv11700))",fontsize=16,color="black",shape="box"];1194 -> 1223[label="",style="solid", color="black", weight=3]; 72.82/40.33 1195[label="primModNatS0 (Succ (Succ xv11600)) Zero (primGEqNatS (Succ xv11600) Zero)",fontsize=16,color="black",shape="box"];1195 -> 1224[label="",style="solid", color="black", weight=3]; 72.82/40.33 1196[label="primModNatS0 (Succ Zero) (Succ xv11700) (primGEqNatS Zero (Succ xv11700))",fontsize=16,color="black",shape="box"];1196 -> 1225[label="",style="solid", color="black", weight=3]; 72.82/40.33 1197[label="primModNatS0 (Succ Zero) Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];1197 -> 1226[label="",style="solid", color="black", weight=3]; 72.82/40.33 1362[label="xv1520",fontsize=16,color="green",shape="box"];1363[label="xv1530",fontsize=16,color="green",shape="box"];1364[label="xv151",fontsize=16,color="green",shape="box"];1365[label="xv150",fontsize=16,color="green",shape="box"];1366[label="Succ (Succ xv150)",fontsize=16,color="green",shape="box"];1367[label="xv151",fontsize=16,color="green",shape="box"];1368[label="xv150",fontsize=16,color="green",shape="box"];1223 -> 1302[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1223[label="primModNatS0 (Succ (Succ xv11600)) (Succ xv11700) (primGEqNatS xv11600 xv11700)",fontsize=16,color="magenta"];1223 -> 1315[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1223 -> 1316[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1223 -> 1317[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1223 -> 1318[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1224[label="primModNatS0 (Succ (Succ xv11600)) Zero MyTrue",fontsize=16,color="black",shape="box"];1224 -> 1280[label="",style="solid", color="black", weight=3]; 72.82/40.33 1225[label="primModNatS0 (Succ Zero) (Succ xv11700) MyFalse",fontsize=16,color="black",shape="box"];1225 -> 1281[label="",style="solid", color="black", weight=3]; 72.82/40.33 1226[label="primModNatS0 (Succ Zero) Zero MyTrue",fontsize=16,color="black",shape="box"];1226 -> 1282[label="",style="solid", color="black", weight=3]; 72.82/40.33 1315[label="xv11600",fontsize=16,color="green",shape="box"];1316[label="Succ xv11600",fontsize=16,color="green",shape="box"];1317[label="xv11700",fontsize=16,color="green",shape="box"];1318[label="xv11700",fontsize=16,color="green",shape="box"];1280 -> 1397[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1280[label="primModNatS (primMinusNatS (Succ (Succ xv11600)) (Succ Zero)) (Succ (Succ Zero))",fontsize=16,color="magenta"];1280 -> 1428[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1280 -> 1429[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1280 -> 1430[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1281[label="Succ (Succ Zero)",fontsize=16,color="green",shape="box"];1282 -> 1397[label="",style="dashed", color="red", weight=0]; 72.82/40.33 1282[label="primModNatS (primMinusNatS (Succ Zero) (Succ Zero)) (Succ (Succ Zero))",fontsize=16,color="magenta"];1282 -> 1431[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1282 -> 1432[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1282 -> 1433[label="",style="dashed", color="magenta", weight=3]; 72.82/40.33 1428[label="Succ Zero",fontsize=16,color="green",shape="box"];1429[label="Succ Zero",fontsize=16,color="green",shape="box"];1430[label="Succ (Succ xv11600)",fontsize=16,color="green",shape="box"];1431[label="Succ Zero",fontsize=16,color="green",shape="box"];1432[label="Succ Zero",fontsize=16,color="green",shape="box"];1433[label="Succ Zero",fontsize=16,color="green",shape="box"];} 72.82/40.33 72.82/40.33 ---------------------------------------- 72.82/40.33 72.82/40.33 (174) 72.82/40.33 Obligation: 72.82/40.33 Q DP problem: 72.82/40.33 The TRS P consists of the following rules: 72.82/40.33 72.82/40.33 new_showInt1ShowInt02(xv12, xv130, []) -> new_showInt(new_showInt1N'0(xv12, Main.Succ(xv130), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char), []), new_showInt1R'(xv12, xv130, []), []) 72.82/40.33 new_showInt1ShowInt0(xv12, Main.Zero, Main.Zero, []) -> new_showInt(new_showInt1N'0(xv12, Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char), []), new_showInt1R'0(xv12, []), []) 72.82/40.33 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero, []) -> new_showInt1ShowInt01(xv75, xv76, xv77, []) 72.82/40.33 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero, []) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char), []), new_showInt1R'1(xv75, xv76, []), []) 72.82/40.33 new_showInt1ShowInt0(xv12, Main.Succ(xv130), Main.Succ(xv140), []) -> new_showInt1ShowInt00(xv12, Main.Succ(xv130), xv140, xv130, xv140, []) 72.82/40.33 new_showInt1ShowInt0(xv12, Main.Succ(xv130), Main.Zero, []) -> new_showInt(new_showInt1N'0(xv12, Main.Succ(xv130), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char), []), new_showInt1R'(xv12, xv130, []), []) 72.82/40.33 new_showInt(Main.Pos(Main.Succ(xv300)), xv4, []) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), []) 72.82/40.33 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790), []) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790, []) 72.82/40.33 new_showInt1ShowInt01(xv75, xv76, xv77, []) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char), []), new_showInt1R'1(xv75, xv76, []), []) 72.82/40.33 72.82/40.33 The TRS R consists of the following rules: 72.82/40.33 72.82/40.33 new_primPlusNat3(xv81, xv83, Main.Zero, []) -> new_primPlusNat7(xv81, []) 72.82/40.33 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h, []) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84, [])) 72.82/40.33 new_primModNatS02(xv126, []) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.33 new_primPlusNat1(xv113, xv114, []) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), []), []) 72.82/40.33 new_showInt1R'0(xv12, []) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv12, Main.Zero, app(ty_List, ty_Main.Char), []), xv12) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Zero, []) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero, [])) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050), []) -> Main.Zero 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530), []) -> new_primModNatS03(xv150, xv151, xv1520, xv1530, []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), []) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), []), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), []) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), []) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), []), []) 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Zero, []) -> Main.Zero 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), []) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), []) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157, []) -> new_primModNatS2(xv157, []) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero, []) -> new_primDivNatS01(xv102, xv103, []) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148, []) -> new_primDivNatS4(xv148, []) 72.82/40.33 new_primDivNatS01(xv102, xv103, []) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103), [])) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000))))))), []) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), []) 72.82/40.33 new_primQuotInt(xv72, xv73, []) -> Main.Pos(new_primDivNatS3(xv72, xv73, [])) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000)))), []) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))), []) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000, []), []) 72.82/40.33 new_showInt1N'0(xv71, xv72, xv73, bb, []) -> new_primQuotInt(xv72, xv73, []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero), []) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero), []) 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero, []) -> new_primModNatS01(xv150, xv151, []) 72.82/40.33 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840), []) -> new_primPlusNat5(xv81, Main.Zero, []) 72.82/40.33 new_primPlusNat5(xv110, xv111, []) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111, []))) 72.82/40.33 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148, []) -> new_primDivNatS2(xv1460, xv1470, xv148, []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), []) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000)))))), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))), []) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), []), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), []) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000)))))), []) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), []) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Zero, xv148, []) -> new_primDivNatS4(xv148, []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400)), []) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero), []) 72.82/40.33 new_primModNatS4(xv116, Main.Zero, []) -> Main.Zero 72.82/40.33 new_primPlusNat7(xv36, []) -> Main.Succ(xv36) 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530), []) -> Main.Succ(Main.Succ(xv150)) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), []) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), []), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero), []) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero), []) 72.82/40.33 new_primModNatS01(xv139, xv140, []) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140)), []) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700)), []) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), []) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), []), []) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero, []) -> new_primDivNatS01(xv102, xv103, []) 72.82/40.33 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148, []) -> new_primDivNatS3(xv1460, xv148, []) 72.82/40.33 new_showInt1R'1(xv56, xv57, []) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char), []), xv56) 72.82/40.33 new_toEnumChar(xv67, xv68, xv69, ba, []) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba, [])) 72.82/40.33 new_primPlusInt(xv81, xv82, xv83, xv84, h, []) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84, []), xv84, h, []) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Succ(xv730), []) -> Main.Zero 72.82/40.33 new_primDivNatS3(Main.Succ(xv720), Main.Zero, []) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero, [])) 72.82/40.33 new_showInt1R'(xv12, xv130, []) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv12, Main.Succ(xv130), app(ty_List, ty_Main.Char), []), xv12) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), []) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero)), []) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero)), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), []) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero)), []) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero)), []) 72.82/40.33 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157, []) -> new_primModNatS4(xv1550, xv157, []) 72.82/40.33 new_primPlusNat6(xv36, xv38, []) -> new_primPlusNat7(xv36, []) 72.82/40.33 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157, []) -> new_primModNatS3(xv1550, xv1560, xv157, []) 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero, []) -> new_primModNatS01(xv150, xv151, []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000))))), []) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), []) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000))))), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000))), []) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero)), []) 72.82/40.33 new_primPlusNat2(Main.Succ(xv1100), Main.Zero, []) -> Main.Succ(xv1100) 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Succ(xv1110), []) -> Main.Succ(xv1110) 72.82/40.33 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110), []) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110, []))) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700)), []) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700, []) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050), []) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050, []) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero), []) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero), []) 72.82/40.33 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730), []) -> new_primDivNatS02(xv720, xv730, xv720, xv730, []) 72.82/40.33 new_primPlusNat4(xv107, xv108, []) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), []), []) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Zero, xv157, []) -> new_primModNatS2(xv157, []) 72.82/40.33 new_primModNatS4(Main.Zero, Main.Succ(xv1170), []) -> Main.Succ(Main.Zero) 72.82/40.33 new_primDivNatS4(xv148, []) -> Main.Zero 72.82/40.33 new_primModNatS2(xv122, []) -> Main.Zero 72.82/40.33 72.82/40.33 Q is empty. 72.82/40.33 We have to consider all (P,Q,R)-chains. 72.82/40.33 ---------------------------------------- 72.82/40.33 72.82/40.33 (175) DependencyGraphProof (EQUIVALENT) 72.82/40.33 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 3 less nodes. 72.82/40.33 ---------------------------------------- 72.82/40.33 72.82/40.33 (176) 72.82/40.33 Obligation: 72.82/40.33 Q DP problem: 72.82/40.33 The TRS P consists of the following rules: 72.82/40.33 72.82/40.33 new_showInt1ShowInt01(xv75, xv76, xv77, []) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char), []), new_showInt1R'1(xv75, xv76, []), []) 72.82/40.33 new_showInt(Main.Pos(Main.Succ(xv300)), xv4, []) -> new_showInt1ShowInt0(xv4, xv300, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), []) 72.82/40.33 new_showInt1ShowInt0(xv12, Main.Succ(xv130), Main.Succ(xv140), []) -> new_showInt1ShowInt00(xv12, Main.Succ(xv130), xv140, xv130, xv140, []) 72.82/40.33 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Zero, Main.Zero, []) -> new_showInt1ShowInt01(xv75, xv76, xv77, []) 72.82/40.33 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Zero, []) -> new_showInt(new_showInt1N'0(xv75, xv76, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), app(ty_List, ty_Main.Char), []), new_showInt1R'1(xv75, xv76, []), []) 72.82/40.33 new_showInt1ShowInt00(xv75, xv76, xv77, Main.Succ(xv780), Main.Succ(xv790), []) -> new_showInt1ShowInt00(xv75, xv76, xv77, xv780, xv790, []) 72.82/40.33 72.82/40.33 The TRS R consists of the following rules: 72.82/40.33 72.82/40.33 new_primPlusNat3(xv81, xv83, Main.Zero, []) -> new_primPlusNat7(xv81, []) 72.82/40.33 new_primPlusInt0(xv81, xv82, xv83, xv85, xv84, h, []) -> Main.Pos(new_primPlusNat3(xv81, xv83, xv84, [])) 72.82/40.33 new_primModNatS02(xv126, []) -> Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) 72.82/40.33 new_primPlusNat1(xv113, xv114, []) -> new_primPlusNat2(Main.Succ(xv113), new_primModNatS01(xv114, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), []), []) 72.82/40.33 new_showInt1R'0(xv12, []) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv12, Main.Zero, app(ty_List, ty_Main.Char), []), xv12) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Zero, []) -> Main.Succ(new_primDivNatS2(Main.Zero, Main.Zero, Main.Zero, [])) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Succ(xv1050), []) -> Main.Zero 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Succ(xv1530), []) -> new_primModNatS03(xv150, xv151, xv1520, xv1530, []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), []) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), []), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), []) -> new_primPlusNat3(xv81, xv830000, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), []) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS2(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), []), []) 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Zero, []) -> Main.Zero 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), []) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), []) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Succ(xv1560), xv157, []) -> new_primModNatS2(xv157, []) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Zero, Main.Zero, []) -> new_primDivNatS01(xv102, xv103, []) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Succ(xv1470), xv148, []) -> new_primDivNatS4(xv148, []) 72.82/40.33 new_primDivNatS01(xv102, xv103, []) -> Main.Succ(new_primDivNatS2(Main.Succ(xv102), Main.Succ(xv103), Main.Succ(xv103), [])) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000000))))))), []) -> new_primPlusNat2(Main.Succ(xv81), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), []) 72.82/40.33 new_primQuotInt(xv72, xv73, []) -> Main.Pos(new_primDivNatS3(xv72, xv73, [])) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv840000)))), []) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000)))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))), []) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS03(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), xv8300000000, xv8400000000, []), []) 72.82/40.33 new_showInt1N'0(xv71, xv72, xv73, bb, []) -> new_primQuotInt(xv72, xv73, []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(xv8300)), Main.Succ(Main.Zero), []) -> new_primPlusNat3(xv81, xv8300, Main.Succ(Main.Zero), []) 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Succ(xv1520), Main.Zero, []) -> new_primModNatS01(xv150, xv151, []) 72.82/40.33 new_primPlusNat3(xv81, Main.Zero, Main.Succ(xv840), []) -> new_primPlusNat5(xv81, Main.Zero, []) 72.82/40.33 new_primPlusNat5(xv110, xv111, []) -> Main.Succ(Main.Succ(new_primPlusNat2(xv110, xv111, []))) 72.82/40.33 new_primDivNatS2(Main.Succ(xv1460), Main.Succ(xv1470), xv148, []) -> new_primDivNatS2(xv1460, xv1470, xv148, []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), []) -> new_primPlusNat1(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv830000000)))))), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))))), []) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000000)))))), []), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), []) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv84000000)))))), []) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), []) 72.82/40.33 new_primDivNatS2(Main.Zero, Main.Zero, xv148, []) -> new_primDivNatS4(xv148, []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv8400)), []) -> new_primPlusNat5(xv81, Main.Succ(Main.Zero), []) 72.82/40.33 new_primModNatS4(xv116, Main.Zero, []) -> Main.Zero 72.82/40.33 new_primPlusNat7(xv36, []) -> Main.Succ(xv36) 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Zero, Main.Succ(xv1530), []) -> Main.Succ(Main.Succ(xv150)) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), []) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), []), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Zero), Main.Succ(Main.Zero), []) -> new_primPlusNat6(xv81, Main.Succ(Main.Zero), []) 72.82/40.33 new_primModNatS01(xv139, xv140, []) -> new_primModNatS3(Main.Succ(xv139), Main.Succ(Main.Succ(xv140)), Main.Succ(Main.Succ(xv140)), []) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Succ(xv11700)), []) -> Main.Succ(Main.Succ(Main.Zero)) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8300000))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), []) -> new_primPlusNat2(Main.Succ(xv81), new_primModNatS4(xv8300000, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), []), []) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Zero, []) -> new_primDivNatS01(xv102, xv103, []) 72.82/40.33 new_primDivNatS2(Main.Succ(xv1460), Main.Zero, xv148, []) -> new_primDivNatS3(xv1460, xv148, []) 72.82/40.33 new_showInt1R'1(xv56, xv57, []) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv56, xv57, app(ty_List, ty_Main.Char), []), xv56) 72.82/40.33 new_toEnumChar(xv67, xv68, xv69, ba, []) -> Main.Char(new_primPlusInt(xv67, xv68, xv69, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), ba, [])) 72.82/40.33 new_primPlusInt(xv81, xv82, xv83, xv84, h, []) -> new_primPlusInt0(xv81, xv82, xv83, new_primQuotInt(xv83, xv84, []), xv84, h, []) 72.82/40.33 new_primDivNatS3(Main.Zero, Main.Succ(xv730), []) -> Main.Zero 72.82/40.33 new_primDivNatS3(Main.Succ(xv720), Main.Zero, []) -> Main.Succ(new_primDivNatS2(Main.Succ(xv720), Main.Zero, Main.Zero, [])) 72.82/40.33 new_showInt1R'(xv12, xv130, []) -> Cons(new_toEnumChar(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))), xv12, Main.Succ(xv130), app(ty_List, ty_Main.Char), []), xv12) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), []) -> new_primModNatS3(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Zero), Main.Succ(Main.Zero), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero)), []) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Zero)), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), []) -> new_primPlusNat6(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(xv83000))), Main.Succ(Main.Succ(Main.Zero)), []) -> new_primPlusNat3(xv81, xv83000, Main.Succ(Main.Succ(Main.Zero)), []) 72.82/40.33 new_primModNatS3(Main.Succ(xv1550), Main.Zero, xv157, []) -> new_primModNatS4(xv1550, xv157, []) 72.82/40.33 new_primPlusNat6(xv36, xv38, []) -> new_primPlusNat7(xv36, []) 72.82/40.33 new_primModNatS3(Main.Succ(xv1550), Main.Succ(xv1560), xv157, []) -> new_primModNatS3(xv1550, xv1560, xv157, []) 72.82/40.33 new_primModNatS03(xv150, xv151, Main.Zero, Main.Zero, []) -> new_primModNatS01(xv150, xv151, []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv8400000))))), []) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000)))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), []) -> new_primPlusNat4(xv81, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(xv83000000))))), []) 72.82/40.33 new_primPlusNat3(xv81, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(xv84000))), []) -> new_primPlusNat5(xv81, Main.Succ(Main.Succ(Main.Zero)), []) 72.82/40.33 new_primPlusNat2(Main.Succ(xv1100), Main.Zero, []) -> Main.Succ(xv1100) 72.82/40.33 new_primPlusNat2(Main.Zero, Main.Succ(xv1110), []) -> Main.Succ(xv1110) 72.82/40.33 new_primPlusNat2(Main.Succ(xv1100), Main.Succ(xv1110), []) -> Main.Succ(Main.Succ(new_primPlusNat2(xv1100, xv1110, []))) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Succ(xv11600)), Main.Succ(Main.Succ(xv11700)), []) -> new_primModNatS03(Main.Succ(xv11600), xv11700, xv11600, xv11700, []) 72.82/40.33 new_primDivNatS02(xv102, xv103, Main.Succ(xv1040), Main.Succ(xv1050), []) -> new_primDivNatS02(xv102, xv103, xv1040, xv1050, []) 72.82/40.33 new_primModNatS4(Main.Succ(Main.Zero), Main.Succ(Main.Zero), []) -> new_primModNatS3(Main.Succ(Main.Zero), Main.Succ(Main.Zero), Main.Succ(Main.Zero), []) 72.82/40.33 new_primDivNatS3(Main.Succ(xv720), Main.Succ(xv730), []) -> new_primDivNatS02(xv720, xv730, xv720, xv730, []) 72.82/40.33 new_primPlusNat4(xv107, xv108, []) -> new_primPlusNat2(Main.Succ(xv107), new_primModNatS3(xv108, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), []), []) 72.82/40.33 new_primModNatS3(Main.Zero, Main.Zero, xv157, []) -> new_primModNatS2(xv157, []) 72.82/40.33 new_primModNatS4(Main.Zero, Main.Succ(xv1170), []) -> Main.Succ(Main.Zero) 72.82/40.33 new_primDivNatS4(xv148, []) -> Main.Zero 72.82/40.33 new_primModNatS2(xv122, []) -> Main.Zero 72.82/40.33 72.82/40.33 Q is empty. 72.82/40.33 We have to consider all (P,Q,R)-chains. 72.82/40.36 EOF