12.23/4.89 YES 14.97/5.55 proof of /export/starexec/sandbox/benchmark/theBenchmark.hs 14.97/5.55 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 14.97/5.55 14.97/5.55 14.97/5.55 H-Termination with start terms of the given HASKELL could be proven: 14.97/5.55 14.97/5.55 (0) HASKELL 14.97/5.55 (1) BR [EQUIVALENT, 0 ms] 14.97/5.55 (2) HASKELL 14.97/5.55 (3) COR [EQUIVALENT, 0 ms] 14.97/5.55 (4) HASKELL 14.97/5.55 (5) Narrow [SOUND, 0 ms] 14.97/5.55 (6) AND 14.97/5.55 (7) QDP 14.97/5.55 (8) QDPSizeChangeProof [EQUIVALENT, 0 ms] 14.97/5.55 (9) YES 14.97/5.55 (10) QDP 14.97/5.55 (11) QDPSizeChangeProof [EQUIVALENT, 0 ms] 14.97/5.55 (12) YES 14.97/5.55 (13) QDP 14.97/5.55 (14) TransformationProof [EQUIVALENT, 0 ms] 14.97/5.55 (15) QDP 14.97/5.55 (16) TransformationProof [EQUIVALENT, 0 ms] 14.97/5.55 (17) QDP 14.97/5.55 (18) QDPSizeChangeProof [EQUIVALENT, 0 ms] 14.97/5.55 (19) YES 14.97/5.55 14.97/5.55 14.97/5.55 ---------------------------------------- 14.97/5.55 14.97/5.55 (0) 14.97/5.55 Obligation: 14.97/5.55 mainModule Main 14.97/5.55 module Main where { 14.97/5.55 import qualified Prelude; 14.97/5.55 data Main.Char = Char MyInt ; 14.97/5.55 14.97/5.55 data List a = Cons a (List a) | Nil ; 14.97/5.55 14.97/5.55 data MyBool = MyTrue | MyFalse ; 14.97/5.55 14.97/5.55 data MyInt = Pos Main.Nat | Neg Main.Nat ; 14.97/5.55 14.97/5.55 data Main.Nat = Succ Main.Nat | Zero ; 14.97/5.55 14.97/5.55 data Ordering = LT | EQ | GT ; 14.97/5.55 14.97/5.55 data Tup2 a b = Tup2 a b ; 14.97/5.55 14.97/5.55 asAs :: MyBool -> MyBool -> MyBool; 14.97/5.55 asAs MyFalse x = MyFalse; 14.97/5.55 asAs MyTrue x = x; 14.97/5.55 14.97/5.55 compareChar :: Main.Char -> Main.Char -> Ordering; 14.97/5.55 compareChar = primCmpChar; 14.97/5.55 14.97/5.55 concat :: List (List a) -> List a; 14.97/5.55 concat = foldr psPs Nil; 14.97/5.55 14.97/5.55 concatMap :: (b -> List a) -> List b -> List a; 14.97/5.55 concatMap f = pt concat (map f); 14.97/5.55 14.97/5.55 esEsOrdering :: Ordering -> Ordering -> MyBool; 14.97/5.55 esEsOrdering LT LT = MyTrue; 14.97/5.55 esEsOrdering LT EQ = MyFalse; 14.97/5.55 esEsOrdering LT GT = MyFalse; 14.97/5.55 esEsOrdering EQ LT = MyFalse; 14.97/5.55 esEsOrdering EQ EQ = MyTrue; 14.97/5.55 esEsOrdering EQ GT = MyFalse; 14.97/5.55 esEsOrdering GT LT = MyFalse; 14.97/5.55 esEsOrdering GT EQ = MyFalse; 14.97/5.55 esEsOrdering GT GT = MyTrue; 14.97/5.55 14.97/5.55 foldr :: (b -> a -> a) -> a -> List b -> a; 14.97/5.55 foldr f z Nil = z; 14.97/5.55 foldr f z (Cons x xs) = f x (foldr f z xs); 14.97/5.55 14.97/5.55 fsEsOrdering :: Ordering -> Ordering -> MyBool; 14.97/5.55 fsEsOrdering x y = not (esEsOrdering x y); 14.97/5.55 14.97/5.55 gtEsChar :: Main.Char -> Main.Char -> MyBool; 14.97/5.55 gtEsChar x y = fsEsOrdering (compareChar x y) LT; 14.97/5.55 14.97/5.55 isDigit :: Main.Char -> MyBool; 14.97/5.55 isDigit c = asAs (gtEsChar c (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))))))))))))))))))))))))))))))))))))))))))))))))))) (ltEsChar c (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.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ Main.Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))); 14.97/5.55 14.97/5.55 lexDigits :: List Main.Char -> List (Tup2 (List Main.Char) (List Main.Char)); 14.97/5.55 lexDigits = nonnull isDigit; 14.97/5.55 14.97/5.55 ltEsChar :: Main.Char -> Main.Char -> MyBool; 14.97/5.55 ltEsChar x y = fsEsOrdering (compareChar x y) GT; 14.97/5.55 14.97/5.55 map :: (b -> a) -> List b -> List a; 14.97/5.55 map f Nil = Nil; 14.97/5.55 map f (Cons x xs) = Cons (f x) (map f xs); 14.97/5.55 14.97/5.55 nonnull :: (Main.Char -> MyBool) -> List Main.Char -> List (Tup2 (List Main.Char) (List Main.Char)); 14.97/5.55 nonnull p s = concatMap nonnull0 (Cons (span p s) Nil); 14.97/5.55 14.97/5.55 nonnull0 vu68 = nonnull00 vu68; 14.97/5.55 14.97/5.55 nonnull00 (Tup2 (Cons vx vy) t) = Cons (Tup2 (Cons vx vy) t) Nil; 14.97/5.55 nonnull00 vz = Nil; 14.97/5.55 14.97/5.55 not :: MyBool -> MyBool; 14.97/5.55 not MyTrue = MyFalse; 14.97/5.55 not MyFalse = MyTrue; 14.97/5.55 14.97/5.55 otherwise :: MyBool; 14.97/5.55 otherwise = MyTrue; 14.97/5.55 14.97/5.55 primCmpChar :: Main.Char -> Main.Char -> Ordering; 14.97/5.55 primCmpChar (Main.Char x) (Main.Char y) = primCmpInt x y; 14.97/5.55 14.97/5.55 primCmpInt :: MyInt -> MyInt -> Ordering; 14.97/5.55 primCmpInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = EQ; 14.97/5.55 primCmpInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = EQ; 14.97/5.55 primCmpInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = EQ; 14.97/5.55 primCmpInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = EQ; 14.97/5.55 primCmpInt (Main.Pos x) (Main.Pos y) = primCmpNat x y; 14.97/5.55 primCmpInt (Main.Pos x) (Main.Neg y) = GT; 14.97/5.55 primCmpInt (Main.Neg x) (Main.Pos y) = LT; 14.97/5.55 primCmpInt (Main.Neg x) (Main.Neg y) = primCmpNat y x; 14.97/5.55 14.97/5.55 primCmpNat :: Main.Nat -> Main.Nat -> Ordering; 14.97/5.55 primCmpNat Main.Zero Main.Zero = EQ; 14.97/5.55 primCmpNat Main.Zero (Main.Succ y) = LT; 14.97/5.55 primCmpNat (Main.Succ x) Main.Zero = GT; 14.97/5.55 primCmpNat (Main.Succ x) (Main.Succ y) = primCmpNat x y; 14.97/5.55 14.97/5.55 psPs :: List a -> List a -> List a; 14.97/5.55 psPs Nil ys = ys; 14.97/5.55 psPs (Cons x xs) ys = Cons x (psPs xs ys); 14.97/5.55 14.97/5.55 pt :: (a -> b) -> (c -> a) -> c -> b; 14.97/5.55 pt f g x = f (g x); 14.97/5.55 14.97/5.55 span :: (a -> MyBool) -> List a -> Tup2 (List a) (List a); 14.97/5.55 span p Nil = span3 p Nil; 14.97/5.55 span p (Cons wu wv) = span2 p (Cons wu wv); 14.97/5.55 14.97/5.55 span2 p (Cons wu wv) = span2Span1 p wv p wu wv (p wu); 14.97/5.55 14.97/5.55 span2Span0 xw xx p wu wv MyTrue = Tup2 Nil (Cons wu wv); 14.97/5.55 14.97/5.55 span2Span1 xw xx p wu wv MyTrue = Tup2 (Cons wu (span2Ys xw xx)) (span2Zs xw xx); 14.97/5.55 span2Span1 xw xx p wu wv MyFalse = span2Span0 xw xx p wu wv otherwise; 14.97/5.55 14.97/5.55 span2Vu43 xw xx = span xw xx; 14.97/5.55 14.97/5.55 span2Ys xw xx = span2Ys0 xw xx (span2Vu43 xw xx); 14.97/5.55 14.97/5.55 span2Ys0 xw xx (Tup2 ys ww) = ys; 14.97/5.55 14.97/5.55 span2Zs xw xx = span2Zs0 xw xx (span2Vu43 xw xx); 14.97/5.55 14.97/5.55 span2Zs0 xw xx (Tup2 wx zs) = zs; 14.97/5.55 14.97/5.55 span3 p Nil = Tup2 Nil Nil; 14.97/5.55 span3 xu xv = span2 xu xv; 14.97/5.55 14.97/5.55 } 14.97/5.55 14.97/5.55 ---------------------------------------- 14.97/5.55 14.97/5.55 (1) BR (EQUIVALENT) 14.97/5.55 Replaced joker patterns by fresh variables and removed binding patterns. 14.97/5.55 ---------------------------------------- 14.97/5.55 14.97/5.55 (2) 14.97/5.55 Obligation: 14.97/5.55 mainModule Main 14.97/5.55 module Main where { 14.97/5.55 import qualified Prelude; 14.97/5.55 data Main.Char = Char MyInt ; 14.97/5.55 14.97/5.55 data List a = Cons a (List a) | Nil ; 14.97/5.55 14.97/5.55 data MyBool = MyTrue | MyFalse ; 14.97/5.55 14.97/5.55 data MyInt = Pos Main.Nat | Neg Main.Nat ; 14.97/5.55 14.97/5.55 data Main.Nat = Succ Main.Nat | Zero ; 14.97/5.55 14.97/5.55 data Ordering = LT | EQ | GT ; 14.97/5.55 14.97/5.55 data Tup2 a b = Tup2 a b ; 14.97/5.55 14.97/5.55 asAs :: MyBool -> MyBool -> MyBool; 14.97/5.55 asAs MyFalse x = MyFalse; 14.97/5.55 asAs MyTrue x = x; 14.97/5.55 14.97/5.55 compareChar :: Main.Char -> Main.Char -> Ordering; 14.97/5.55 compareChar = primCmpChar; 14.97/5.55 14.97/5.55 concat :: List (List a) -> List a; 14.97/5.55 concat = foldr psPs Nil; 14.97/5.55 14.97/5.55 concatMap :: (b -> List a) -> List b -> List a; 14.97/5.55 concatMap f = pt concat (map f); 14.97/5.55 14.97/5.55 esEsOrdering :: Ordering -> Ordering -> MyBool; 14.97/5.55 esEsOrdering LT LT = MyTrue; 14.97/5.55 esEsOrdering LT EQ = MyFalse; 14.97/5.55 esEsOrdering LT GT = MyFalse; 14.97/5.55 esEsOrdering EQ LT = MyFalse; 14.97/5.55 esEsOrdering EQ EQ = MyTrue; 14.97/5.55 esEsOrdering EQ GT = MyFalse; 14.97/5.55 esEsOrdering GT LT = MyFalse; 14.97/5.55 esEsOrdering GT EQ = MyFalse; 14.97/5.55 esEsOrdering GT GT = MyTrue; 14.97/5.55 14.97/5.55 foldr :: (a -> b -> b) -> b -> List a -> b; 14.97/5.55 foldr f z Nil = z; 14.97/5.55 foldr f z (Cons x xs) = f x (foldr f z xs); 14.97/5.55 14.97/5.55 fsEsOrdering :: Ordering -> Ordering -> MyBool; 14.97/5.55 fsEsOrdering x y = not (esEsOrdering x y); 14.97/5.55 14.97/5.55 gtEsChar :: Main.Char -> Main.Char -> MyBool; 14.97/5.55 gtEsChar x y = fsEsOrdering (compareChar x y) LT; 14.97/5.55 14.97/5.55 isDigit :: Main.Char -> MyBool; 14.97/5.55 isDigit c = asAs (gtEsChar c (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))))))))))))))))))))))))))))))))))))))))))))))))))) (ltEsChar c (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.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ Main.Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))); 14.97/5.55 14.97/5.55 lexDigits :: List Main.Char -> List (Tup2 (List Main.Char) (List Main.Char)); 14.97/5.55 lexDigits = nonnull isDigit; 14.97/5.55 14.97/5.55 ltEsChar :: Main.Char -> Main.Char -> MyBool; 14.97/5.55 ltEsChar x y = fsEsOrdering (compareChar x y) GT; 14.97/5.55 14.97/5.55 map :: (a -> b) -> List a -> List b; 14.97/5.55 map f Nil = Nil; 14.97/5.55 map f (Cons x xs) = Cons (f x) (map f xs); 14.97/5.55 14.97/5.55 nonnull :: (Main.Char -> MyBool) -> List Main.Char -> List (Tup2 (List Main.Char) (List Main.Char)); 14.97/5.55 nonnull p s = concatMap nonnull0 (Cons (span p s) Nil); 14.97/5.55 14.97/5.55 nonnull0 vu68 = nonnull00 vu68; 14.97/5.55 14.97/5.55 nonnull00 (Tup2 (Cons vx vy) t) = Cons (Tup2 (Cons vx vy) t) Nil; 14.97/5.55 nonnull00 vz = Nil; 14.97/5.55 14.97/5.55 not :: MyBool -> MyBool; 14.97/5.55 not MyTrue = MyFalse; 14.97/5.55 not MyFalse = MyTrue; 14.97/5.55 14.97/5.55 otherwise :: MyBool; 14.97/5.55 otherwise = MyTrue; 14.97/5.55 14.97/5.55 primCmpChar :: Main.Char -> Main.Char -> Ordering; 14.97/5.55 primCmpChar (Main.Char x) (Main.Char y) = primCmpInt x y; 14.97/5.55 14.97/5.55 primCmpInt :: MyInt -> MyInt -> Ordering; 14.97/5.55 primCmpInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = EQ; 14.97/5.55 primCmpInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = EQ; 14.97/5.55 primCmpInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = EQ; 14.97/5.55 primCmpInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = EQ; 14.97/5.55 primCmpInt (Main.Pos x) (Main.Pos y) = primCmpNat x y; 14.97/5.55 primCmpInt (Main.Pos x) (Main.Neg y) = GT; 14.97/5.55 primCmpInt (Main.Neg x) (Main.Pos y) = LT; 14.97/5.55 primCmpInt (Main.Neg x) (Main.Neg y) = primCmpNat y x; 14.97/5.55 14.97/5.55 primCmpNat :: Main.Nat -> Main.Nat -> Ordering; 14.97/5.55 primCmpNat Main.Zero Main.Zero = EQ; 14.97/5.55 primCmpNat Main.Zero (Main.Succ y) = LT; 14.97/5.55 primCmpNat (Main.Succ x) Main.Zero = GT; 14.97/5.55 primCmpNat (Main.Succ x) (Main.Succ y) = primCmpNat x y; 14.97/5.55 14.97/5.55 psPs :: List a -> List a -> List a; 14.97/5.55 psPs Nil ys = ys; 14.97/5.55 psPs (Cons x xs) ys = Cons x (psPs xs ys); 14.97/5.55 14.97/5.55 pt :: (a -> b) -> (c -> a) -> c -> b; 14.97/5.55 pt f g x = f (g x); 14.97/5.55 14.97/5.55 span :: (a -> MyBool) -> List a -> Tup2 (List a) (List a); 14.97/5.55 span p Nil = span3 p Nil; 14.97/5.55 span p (Cons wu wv) = span2 p (Cons wu wv); 14.97/5.55 14.97/5.55 span2 p (Cons wu wv) = span2Span1 p wv p wu wv (p wu); 14.97/5.55 14.97/5.55 span2Span0 xw xx p wu wv MyTrue = Tup2 Nil (Cons wu wv); 14.97/5.55 14.97/5.55 span2Span1 xw xx p wu wv MyTrue = Tup2 (Cons wu (span2Ys xw xx)) (span2Zs xw xx); 14.97/5.55 span2Span1 xw xx p wu wv MyFalse = span2Span0 xw xx p wu wv otherwise; 14.97/5.55 14.97/5.55 span2Vu43 xw xx = span xw xx; 14.97/5.55 14.97/5.55 span2Ys xw xx = span2Ys0 xw xx (span2Vu43 xw xx); 14.97/5.55 14.97/5.55 span2Ys0 xw xx (Tup2 ys ww) = ys; 14.97/5.55 14.97/5.55 span2Zs xw xx = span2Zs0 xw xx (span2Vu43 xw xx); 14.97/5.55 14.97/5.55 span2Zs0 xw xx (Tup2 wx zs) = zs; 14.97/5.55 14.97/5.55 span3 p Nil = Tup2 Nil Nil; 14.97/5.55 span3 xu xv = span2 xu xv; 14.97/5.55 14.97/5.55 } 14.97/5.55 14.97/5.55 ---------------------------------------- 14.97/5.55 14.97/5.55 (3) COR (EQUIVALENT) 14.97/5.55 Cond Reductions: 14.97/5.55 The following Function with conditions 14.97/5.55 "undefined |Falseundefined; 14.97/5.55 " 14.97/5.55 is transformed to 14.97/5.55 "undefined = undefined1; 14.97/5.55 " 14.97/5.55 "undefined0 True = undefined; 14.97/5.55 " 14.97/5.55 "undefined1 = undefined0 False; 14.97/5.55 " 14.97/5.55 14.97/5.55 ---------------------------------------- 14.97/5.55 14.97/5.55 (4) 14.97/5.55 Obligation: 14.97/5.55 mainModule Main 14.97/5.55 module Main where { 14.97/5.55 import qualified Prelude; 14.97/5.55 data Main.Char = Char MyInt ; 14.97/5.55 14.97/5.55 data List a = Cons a (List a) | Nil ; 14.97/5.55 14.97/5.55 data MyBool = MyTrue | MyFalse ; 14.97/5.55 14.97/5.55 data MyInt = Pos Main.Nat | Neg Main.Nat ; 14.97/5.55 14.97/5.55 data Main.Nat = Succ Main.Nat | Zero ; 14.97/5.55 14.97/5.55 data Ordering = LT | EQ | GT ; 14.97/5.55 14.97/5.55 data Tup2 b a = Tup2 b a ; 14.97/5.55 14.97/5.55 asAs :: MyBool -> MyBool -> MyBool; 14.97/5.55 asAs MyFalse x = MyFalse; 14.97/5.55 asAs MyTrue x = x; 14.97/5.55 14.97/5.55 compareChar :: Main.Char -> Main.Char -> Ordering; 14.97/5.55 compareChar = primCmpChar; 14.97/5.55 14.97/5.55 concat :: List (List a) -> List a; 14.97/5.55 concat = foldr psPs Nil; 14.97/5.55 14.97/5.55 concatMap :: (a -> List b) -> List a -> List b; 14.97/5.55 concatMap f = pt concat (map f); 14.97/5.55 14.97/5.55 esEsOrdering :: Ordering -> Ordering -> MyBool; 14.97/5.55 esEsOrdering LT LT = MyTrue; 14.97/5.55 esEsOrdering LT EQ = MyFalse; 14.97/5.55 esEsOrdering LT GT = MyFalse; 14.97/5.55 esEsOrdering EQ LT = MyFalse; 14.97/5.55 esEsOrdering EQ EQ = MyTrue; 14.97/5.55 esEsOrdering EQ GT = MyFalse; 14.97/5.55 esEsOrdering GT LT = MyFalse; 14.97/5.55 esEsOrdering GT EQ = MyFalse; 14.97/5.55 esEsOrdering GT GT = MyTrue; 14.97/5.55 14.97/5.55 foldr :: (a -> b -> b) -> b -> List a -> b; 14.97/5.55 foldr f z Nil = z; 14.97/5.55 foldr f z (Cons x xs) = f x (foldr f z xs); 14.97/5.55 14.97/5.55 fsEsOrdering :: Ordering -> Ordering -> MyBool; 14.97/5.55 fsEsOrdering x y = not (esEsOrdering x y); 14.97/5.55 14.97/5.55 gtEsChar :: Main.Char -> Main.Char -> MyBool; 14.97/5.55 gtEsChar x y = fsEsOrdering (compareChar x y) LT; 14.97/5.55 14.97/5.55 isDigit :: Main.Char -> MyBool; 14.97/5.55 isDigit c = asAs (gtEsChar c (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))))))))))))))))))))))))))))))))))))))))))))))))))) (ltEsChar c (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.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ (Main.Succ Main.Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))); 14.97/5.55 14.97/5.55 lexDigits :: List Main.Char -> List (Tup2 (List Main.Char) (List Main.Char)); 14.97/5.55 lexDigits = nonnull isDigit; 14.97/5.55 14.97/5.55 ltEsChar :: Main.Char -> Main.Char -> MyBool; 14.97/5.55 ltEsChar x y = fsEsOrdering (compareChar x y) GT; 14.97/5.55 14.97/5.55 map :: (b -> a) -> List b -> List a; 14.97/5.55 map f Nil = Nil; 14.97/5.55 map f (Cons x xs) = Cons (f x) (map f xs); 14.97/5.55 14.97/5.55 nonnull :: (Main.Char -> MyBool) -> List Main.Char -> List (Tup2 (List Main.Char) (List Main.Char)); 14.97/5.55 nonnull p s = concatMap nonnull0 (Cons (span p s) Nil); 14.97/5.55 14.97/5.55 nonnull0 vu68 = nonnull00 vu68; 14.97/5.55 14.97/5.55 nonnull00 (Tup2 (Cons vx vy) t) = Cons (Tup2 (Cons vx vy) t) Nil; 14.97/5.55 nonnull00 vz = Nil; 14.97/5.55 14.97/5.55 not :: MyBool -> MyBool; 14.97/5.55 not MyTrue = MyFalse; 14.97/5.55 not MyFalse = MyTrue; 14.97/5.55 14.97/5.55 otherwise :: MyBool; 14.97/5.55 otherwise = MyTrue; 14.97/5.55 14.97/5.55 primCmpChar :: Main.Char -> Main.Char -> Ordering; 14.97/5.55 primCmpChar (Main.Char x) (Main.Char y) = primCmpInt x y; 14.97/5.55 14.97/5.55 primCmpInt :: MyInt -> MyInt -> Ordering; 14.97/5.55 primCmpInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = EQ; 14.97/5.55 primCmpInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = EQ; 14.97/5.55 primCmpInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = EQ; 14.97/5.55 primCmpInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = EQ; 14.97/5.55 primCmpInt (Main.Pos x) (Main.Pos y) = primCmpNat x y; 14.97/5.55 primCmpInt (Main.Pos x) (Main.Neg y) = GT; 14.97/5.55 primCmpInt (Main.Neg x) (Main.Pos y) = LT; 14.97/5.55 primCmpInt (Main.Neg x) (Main.Neg y) = primCmpNat y x; 14.97/5.55 14.97/5.55 primCmpNat :: Main.Nat -> Main.Nat -> Ordering; 14.97/5.55 primCmpNat Main.Zero Main.Zero = EQ; 14.97/5.55 primCmpNat Main.Zero (Main.Succ y) = LT; 14.97/5.55 primCmpNat (Main.Succ x) Main.Zero = GT; 14.97/5.55 primCmpNat (Main.Succ x) (Main.Succ y) = primCmpNat x y; 14.97/5.55 14.97/5.55 psPs :: List a -> List a -> List a; 14.97/5.55 psPs Nil ys = ys; 14.97/5.55 psPs (Cons x xs) ys = Cons x (psPs xs ys); 14.97/5.55 14.97/5.55 pt :: (b -> a) -> (c -> b) -> c -> a; 14.97/5.55 pt f g x = f (g x); 14.97/5.55 14.97/5.55 span :: (a -> MyBool) -> List a -> Tup2 (List a) (List a); 14.97/5.55 span p Nil = span3 p Nil; 14.97/5.55 span p (Cons wu wv) = span2 p (Cons wu wv); 14.97/5.55 14.97/5.55 span2 p (Cons wu wv) = span2Span1 p wv p wu wv (p wu); 14.97/5.55 14.97/5.55 span2Span0 xw xx p wu wv MyTrue = Tup2 Nil (Cons wu wv); 14.97/5.55 14.97/5.55 span2Span1 xw xx p wu wv MyTrue = Tup2 (Cons wu (span2Ys xw xx)) (span2Zs xw xx); 14.97/5.55 span2Span1 xw xx p wu wv MyFalse = span2Span0 xw xx p wu wv otherwise; 14.97/5.55 14.97/5.55 span2Vu43 xw xx = span xw xx; 14.97/5.55 14.97/5.55 span2Ys xw xx = span2Ys0 xw xx (span2Vu43 xw xx); 14.97/5.55 14.97/5.55 span2Ys0 xw xx (Tup2 ys ww) = ys; 14.97/5.55 14.97/5.55 span2Zs xw xx = span2Zs0 xw xx (span2Vu43 xw xx); 14.97/5.55 14.97/5.55 span2Zs0 xw xx (Tup2 wx zs) = zs; 14.97/5.55 14.97/5.55 span3 p Nil = Tup2 Nil Nil; 14.97/5.55 span3 xu xv = span2 xu xv; 14.97/5.55 14.97/5.55 } 14.97/5.55 14.97/5.55 ---------------------------------------- 14.97/5.55 14.97/5.55 (5) Narrow (SOUND) 14.97/5.55 Haskell To QDPs 14.97/5.55 14.97/5.55 digraph dp_graph { 14.97/5.55 node [outthreshold=100, inthreshold=100];1[label="lexDigits",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 14.97/5.55 3[label="lexDigits wy3",fontsize=16,color="black",shape="triangle"];3 -> 4[label="",style="solid", color="black", weight=3]; 14.97/5.55 4[label="nonnull isDigit wy3",fontsize=16,color="black",shape="box"];4 -> 5[label="",style="solid", color="black", weight=3]; 14.97/5.55 5[label="concatMap nonnull0 (Cons (span isDigit wy3) Nil)",fontsize=16,color="black",shape="box"];5 -> 6[label="",style="solid", color="black", weight=3]; 14.97/5.55 6[label="pt concat (map nonnull0) (Cons (span isDigit wy3) Nil)",fontsize=16,color="black",shape="box"];6 -> 7[label="",style="solid", color="black", weight=3]; 14.97/5.55 7[label="concat (map nonnull0 (Cons (span isDigit wy3) Nil))",fontsize=16,color="black",shape="box"];7 -> 8[label="",style="solid", color="black", weight=3]; 14.97/5.55 8[label="foldr psPs Nil (map nonnull0 (Cons (span isDigit wy3) Nil))",fontsize=16,color="black",shape="box"];8 -> 9[label="",style="solid", color="black", weight=3]; 14.97/5.55 9[label="foldr psPs Nil (Cons (nonnull0 (span isDigit wy3)) (map nonnull0 Nil))",fontsize=16,color="black",shape="box"];9 -> 10[label="",style="solid", color="black", weight=3]; 14.97/5.55 10[label="psPs (nonnull0 (span isDigit wy3)) (foldr psPs Nil (map nonnull0 Nil))",fontsize=16,color="black",shape="box"];10 -> 11[label="",style="solid", color="black", weight=3]; 14.97/5.55 11[label="psPs (nonnull00 (span isDigit wy3)) (foldr psPs Nil (map nonnull0 Nil))",fontsize=16,color="burlywood",shape="box"];1787[label="wy3/Cons wy30 wy31",fontsize=10,color="white",style="solid",shape="box"];11 -> 1787[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1787 -> 12[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1788[label="wy3/Nil",fontsize=10,color="white",style="solid",shape="box"];11 -> 1788[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1788 -> 13[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 12[label="psPs (nonnull00 (span isDigit (Cons wy30 wy31))) (foldr psPs Nil (map nonnull0 Nil))",fontsize=16,color="black",shape="box"];12 -> 14[label="",style="solid", color="black", weight=3]; 14.97/5.55 13[label="psPs (nonnull00 (span isDigit Nil)) (foldr psPs Nil (map nonnull0 Nil))",fontsize=16,color="black",shape="box"];13 -> 15[label="",style="solid", color="black", weight=3]; 14.97/5.55 14[label="psPs (nonnull00 (span2 isDigit (Cons wy30 wy31))) (foldr psPs Nil (map nonnull0 Nil))",fontsize=16,color="black",shape="box"];14 -> 16[label="",style="solid", color="black", weight=3]; 14.97/5.55 15[label="psPs (nonnull00 (span3 isDigit Nil)) (foldr psPs Nil (map nonnull0 Nil))",fontsize=16,color="black",shape="box"];15 -> 17[label="",style="solid", color="black", weight=3]; 14.97/5.55 16[label="psPs (nonnull00 (span2Span1 isDigit wy31 isDigit wy30 wy31 (isDigit wy30))) (foldr psPs Nil (map nonnull0 Nil))",fontsize=16,color="black",shape="box"];16 -> 18[label="",style="solid", color="black", weight=3]; 14.97/5.55 17[label="psPs (nonnull00 (Tup2 Nil Nil)) (foldr psPs Nil (map nonnull0 Nil))",fontsize=16,color="black",shape="box"];17 -> 19[label="",style="solid", color="black", weight=3]; 14.97/5.55 18 -> 25[label="",style="dashed", color="red", weight=0]; 14.97/5.55 18[label="psPs (nonnull00 (span2Span1 isDigit wy31 isDigit wy30 wy31 (asAs (gtEsChar wy30 (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))))))))))))))))))))))))))))))))))))))))))))))))))) (ltEsChar wy30 (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 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (foldr psPs Nil (map nonnull0 Nil))",fontsize=16,color="magenta"];18 -> 26[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 18 -> 27[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 18 -> 28[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 18 -> 29[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 19[label="psPs Nil (foldr psPs Nil (map nonnull0 Nil))",fontsize=16,color="black",shape="box"];19 -> 24[label="",style="solid", color="black", weight=3]; 14.97/5.55 26[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];27[label="wy31",fontsize=16,color="green",shape="box"];28[label="wy30",fontsize=16,color="green",shape="box"];29[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"];25[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit wy10 wy9 (asAs (gtEsChar wy10 (Char (Pos (Succ wy11)))) (ltEsChar wy10 (Char (Pos (Succ wy12))))))) (foldr psPs Nil (map nonnull0 Nil))",fontsize=16,color="black",shape="triangle"];25 -> 34[label="",style="solid", color="black", weight=3]; 14.97/5.55 24[label="foldr psPs Nil (map nonnull0 Nil)",fontsize=16,color="black",shape="triangle"];24 -> 35[label="",style="solid", color="black", weight=3]; 14.97/5.55 34 -> 36[label="",style="dashed", color="red", weight=0]; 14.97/5.55 34[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit wy10 wy9 (asAs (fsEsOrdering (compareChar wy10 (Char (Pos (Succ wy11)))) LT) (ltEsChar wy10 (Char (Pos (Succ wy12))))))) (foldr psPs Nil (map nonnull0 Nil))",fontsize=16,color="magenta"];34 -> 37[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 35[label="foldr psPs Nil Nil",fontsize=16,color="black",shape="box"];35 -> 38[label="",style="solid", color="black", weight=3]; 14.97/5.55 37 -> 24[label="",style="dashed", color="red", weight=0]; 14.97/5.55 37[label="foldr psPs Nil (map nonnull0 Nil)",fontsize=16,color="magenta"];36[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit wy10 wy9 (asAs (fsEsOrdering (compareChar wy10 (Char (Pos (Succ wy11)))) LT) (ltEsChar wy10 (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="triangle"];36 -> 39[label="",style="solid", color="black", weight=3]; 14.97/5.55 38[label="Nil",fontsize=16,color="green",shape="box"];39[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit wy10 wy9 (asAs (not (esEsOrdering (compareChar wy10 (Char (Pos (Succ wy11)))) LT)) (ltEsChar wy10 (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];39 -> 40[label="",style="solid", color="black", weight=3]; 14.97/5.55 40[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit wy10 wy9 (asAs (not (esEsOrdering (primCmpChar wy10 (Char (Pos (Succ wy11)))) LT)) (ltEsChar wy10 (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="burlywood",shape="box"];1789[label="wy10/Char wy100",fontsize=10,color="white",style="solid",shape="box"];40 -> 1789[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1789 -> 41[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 41[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char wy100) wy9 (asAs (not (esEsOrdering (primCmpChar (Char wy100) (Char (Pos (Succ wy11)))) LT)) (ltEsChar (Char wy100) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];41 -> 42[label="",style="solid", color="black", weight=3]; 14.97/5.55 42[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char wy100) wy9 (asAs (not (esEsOrdering (primCmpInt wy100 (Pos (Succ wy11))) LT)) (ltEsChar (Char wy100) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="burlywood",shape="box"];1790[label="wy100/Pos wy1000",fontsize=10,color="white",style="solid",shape="box"];42 -> 1790[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1790 -> 43[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1791[label="wy100/Neg wy1000",fontsize=10,color="white",style="solid",shape="box"];42 -> 1791[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1791 -> 44[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 43[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Pos wy1000)) wy9 (asAs (not (esEsOrdering (primCmpInt (Pos wy1000) (Pos (Succ wy11))) LT)) (ltEsChar (Char (Pos wy1000)) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="burlywood",shape="box"];1792[label="wy1000/Succ wy10000",fontsize=10,color="white",style="solid",shape="box"];43 -> 1792[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1792 -> 45[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1793[label="wy1000/Zero",fontsize=10,color="white",style="solid",shape="box"];43 -> 1793[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1793 -> 46[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 44[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Neg wy1000)) wy9 (asAs (not (esEsOrdering (primCmpInt (Neg wy1000) (Pos (Succ wy11))) LT)) (ltEsChar (Char (Neg wy1000)) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="burlywood",shape="box"];1794[label="wy1000/Succ wy10000",fontsize=10,color="white",style="solid",shape="box"];44 -> 1794[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1794 -> 47[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1795[label="wy1000/Zero",fontsize=10,color="white",style="solid",shape="box"];44 -> 1795[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1795 -> 48[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 45[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Pos (Succ wy10000))) wy9 (asAs (not (esEsOrdering (primCmpInt (Pos (Succ wy10000)) (Pos (Succ wy11))) LT)) (ltEsChar (Char (Pos (Succ wy10000))) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];45 -> 49[label="",style="solid", color="black", weight=3]; 14.97/5.55 46[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Pos Zero)) wy9 (asAs (not (esEsOrdering (primCmpInt (Pos Zero) (Pos (Succ wy11))) LT)) (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];46 -> 50[label="",style="solid", color="black", weight=3]; 14.97/5.55 47[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Neg (Succ wy10000))) wy9 (asAs (not (esEsOrdering (primCmpInt (Neg (Succ wy10000)) (Pos (Succ wy11))) LT)) (ltEsChar (Char (Neg (Succ wy10000))) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];47 -> 51[label="",style="solid", color="black", weight=3]; 14.97/5.55 48[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Neg Zero)) wy9 (asAs (not (esEsOrdering (primCmpInt (Neg Zero) (Pos (Succ wy11))) LT)) (ltEsChar (Char (Neg Zero)) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];48 -> 52[label="",style="solid", color="black", weight=3]; 14.97/5.55 49 -> 358[label="",style="dashed", color="red", weight=0]; 14.97/5.55 49[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Pos (Succ wy10000))) wy9 (asAs (not (esEsOrdering (primCmpNat (Succ wy10000) (Succ wy11)) LT)) (ltEsChar (Char (Pos (Succ wy10000))) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="magenta"];49 -> 359[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 49 -> 360[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 49 -> 361[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 49 -> 362[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 49 -> 363[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 49 -> 364[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 50[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Pos Zero)) wy9 (asAs (not (esEsOrdering (primCmpNat Zero (Succ wy11)) LT)) (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];50 -> 54[label="",style="solid", color="black", weight=3]; 14.97/5.55 51[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Neg (Succ wy10000))) wy9 (asAs (not (esEsOrdering LT LT)) (ltEsChar (Char (Neg (Succ wy10000))) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];51 -> 55[label="",style="solid", color="black", weight=3]; 14.97/5.55 52[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Neg Zero)) wy9 (asAs (not (esEsOrdering LT LT)) (ltEsChar (Char (Neg Zero)) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];52 -> 56[label="",style="solid", color="black", weight=3]; 14.97/5.55 359[label="wy12",fontsize=16,color="green",shape="box"];360[label="wy9",fontsize=16,color="green",shape="box"];361[label="Succ wy10000",fontsize=16,color="green",shape="box"];362[label="Succ wy11",fontsize=16,color="green",shape="box"];363[label="wy13",fontsize=16,color="green",shape="box"];364[label="wy10000",fontsize=16,color="green",shape="box"];358[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs (not (esEsOrdering (primCmpNat wy29 wy30) LT)) (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="burlywood",shape="triangle"];1796[label="wy29/Succ wy290",fontsize=10,color="white",style="solid",shape="box"];358 -> 1796[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1796 -> 419[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1797[label="wy29/Zero",fontsize=10,color="white",style="solid",shape="box"];358 -> 1797[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1797 -> 420[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 54[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Pos Zero)) wy9 (asAs (not (esEsOrdering LT LT)) (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];54 -> 59[label="",style="solid", color="black", weight=3]; 14.97/5.55 55[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Neg (Succ wy10000))) wy9 (asAs (not MyTrue) (ltEsChar (Char (Neg (Succ wy10000))) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];55 -> 60[label="",style="solid", color="black", weight=3]; 14.97/5.55 56[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Neg Zero)) wy9 (asAs (not MyTrue) (ltEsChar (Char (Neg Zero)) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];56 -> 61[label="",style="solid", color="black", weight=3]; 14.97/5.55 419[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs (not (esEsOrdering (primCmpNat (Succ wy290) wy30) LT)) (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="burlywood",shape="box"];1798[label="wy30/Succ wy300",fontsize=10,color="white",style="solid",shape="box"];419 -> 1798[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1798 -> 421[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1799[label="wy30/Zero",fontsize=10,color="white",style="solid",shape="box"];419 -> 1799[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1799 -> 422[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 420[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs (not (esEsOrdering (primCmpNat Zero wy30) LT)) (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="burlywood",shape="box"];1800[label="wy30/Succ wy300",fontsize=10,color="white",style="solid",shape="box"];420 -> 1800[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1800 -> 423[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1801[label="wy30/Zero",fontsize=10,color="white",style="solid",shape="box"];420 -> 1801[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1801 -> 424[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 59[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Pos Zero)) wy9 (asAs (not MyTrue) (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];59 -> 66[label="",style="solid", color="black", weight=3]; 14.97/5.55 60[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Neg (Succ wy10000))) wy9 (asAs MyFalse (ltEsChar (Char (Neg (Succ wy10000))) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];60 -> 67[label="",style="solid", color="black", weight=3]; 14.97/5.55 61[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Neg Zero)) wy9 (asAs MyFalse (ltEsChar (Char (Neg Zero)) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];61 -> 68[label="",style="solid", color="black", weight=3]; 14.97/5.55 421[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs (not (esEsOrdering (primCmpNat (Succ wy290) (Succ wy300)) LT)) (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="black",shape="box"];421 -> 425[label="",style="solid", color="black", weight=3]; 14.97/5.55 422[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs (not (esEsOrdering (primCmpNat (Succ wy290) Zero) LT)) (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="black",shape="box"];422 -> 426[label="",style="solid", color="black", weight=3]; 14.97/5.55 423[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs (not (esEsOrdering (primCmpNat Zero (Succ wy300)) LT)) (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="black",shape="box"];423 -> 427[label="",style="solid", color="black", weight=3]; 14.97/5.55 424[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs (not (esEsOrdering (primCmpNat Zero Zero) LT)) (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="black",shape="box"];424 -> 428[label="",style="solid", color="black", weight=3]; 14.97/5.55 66[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Pos Zero)) wy9 (asAs MyFalse (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy12))))))) wy13",fontsize=16,color="black",shape="box"];66 -> 73[label="",style="solid", color="black", weight=3]; 14.97/5.55 67[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Neg (Succ wy10000))) wy9 MyFalse)) wy13",fontsize=16,color="black",shape="box"];67 -> 74[label="",style="solid", color="black", weight=3]; 14.97/5.55 68[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Neg Zero)) wy9 MyFalse)) wy13",fontsize=16,color="black",shape="box"];68 -> 75[label="",style="solid", color="black", weight=3]; 14.97/5.55 425 -> 358[label="",style="dashed", color="red", weight=0]; 14.97/5.55 425[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs (not (esEsOrdering (primCmpNat wy290 wy300) LT)) (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="magenta"];425 -> 429[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 425 -> 430[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 426[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs (not (esEsOrdering GT LT)) (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="black",shape="box"];426 -> 431[label="",style="solid", color="black", weight=3]; 14.97/5.55 427[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs (not (esEsOrdering LT LT)) (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="black",shape="box"];427 -> 432[label="",style="solid", color="black", weight=3]; 14.97/5.55 428[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs (not (esEsOrdering EQ LT)) (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="black",shape="box"];428 -> 433[label="",style="solid", color="black", weight=3]; 14.97/5.55 73[label="psPs (nonnull00 (span2Span1 isDigit wy9 isDigit (Char (Pos Zero)) wy9 MyFalse)) wy13",fontsize=16,color="black",shape="box"];73 -> 81[label="",style="solid", color="black", weight=3]; 14.97/5.55 74[label="psPs (nonnull00 (span2Span0 isDigit wy9 isDigit (Char (Neg (Succ wy10000))) wy9 otherwise)) wy13",fontsize=16,color="black",shape="box"];74 -> 82[label="",style="solid", color="black", weight=3]; 14.97/5.55 75[label="psPs (nonnull00 (span2Span0 isDigit wy9 isDigit (Char (Neg Zero)) wy9 otherwise)) wy13",fontsize=16,color="black",shape="box"];75 -> 83[label="",style="solid", color="black", weight=3]; 14.97/5.55 429[label="wy290",fontsize=16,color="green",shape="box"];430[label="wy300",fontsize=16,color="green",shape="box"];431[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs (not MyFalse) (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="black",shape="triangle"];431 -> 434[label="",style="solid", color="black", weight=3]; 14.97/5.55 432[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs (not MyTrue) (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="black",shape="box"];432 -> 435[label="",style="solid", color="black", weight=3]; 14.97/5.55 433 -> 431[label="",style="dashed", color="red", weight=0]; 14.97/5.55 433[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs (not MyFalse) (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="magenta"];81[label="psPs (nonnull00 (span2Span0 isDigit wy9 isDigit (Char (Pos Zero)) wy9 otherwise)) wy13",fontsize=16,color="black",shape="box"];81 -> 91[label="",style="solid", color="black", weight=3]; 14.97/5.55 82[label="psPs (nonnull00 (span2Span0 isDigit wy9 isDigit (Char (Neg (Succ wy10000))) wy9 MyTrue)) wy13",fontsize=16,color="black",shape="box"];82 -> 92[label="",style="solid", color="black", weight=3]; 14.97/5.55 83[label="psPs (nonnull00 (span2Span0 isDigit wy9 isDigit (Char (Neg Zero)) wy9 MyTrue)) wy13",fontsize=16,color="black",shape="box"];83 -> 93[label="",style="solid", color="black", weight=3]; 14.97/5.55 434[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs MyTrue (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="black",shape="box"];434 -> 436[label="",style="solid", color="black", weight=3]; 14.97/5.55 435[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (asAs MyFalse (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31))))))) wy32",fontsize=16,color="black",shape="box"];435 -> 437[label="",style="solid", color="black", weight=3]; 14.97/5.55 91[label="psPs (nonnull00 (span2Span0 isDigit wy9 isDigit (Char (Pos Zero)) wy9 MyTrue)) wy13",fontsize=16,color="black",shape="box"];91 -> 101[label="",style="solid", color="black", weight=3]; 14.97/5.55 92[label="psPs (nonnull00 (Tup2 Nil (Cons (Char (Neg (Succ wy10000))) wy9))) wy13",fontsize=16,color="black",shape="box"];92 -> 102[label="",style="solid", color="black", weight=3]; 14.97/5.55 93[label="psPs (nonnull00 (Tup2 Nil (Cons (Char (Neg Zero)) wy9))) wy13",fontsize=16,color="black",shape="box"];93 -> 103[label="",style="solid", color="black", weight=3]; 14.97/5.55 436[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (ltEsChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31)))))) wy32",fontsize=16,color="black",shape="box"];436 -> 438[label="",style="solid", color="black", weight=3]; 14.97/5.55 437[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 MyFalse)) wy32",fontsize=16,color="black",shape="triangle"];437 -> 439[label="",style="solid", color="black", weight=3]; 14.97/5.55 101[label="psPs (nonnull00 (Tup2 Nil (Cons (Char (Pos Zero)) wy9))) wy13",fontsize=16,color="black",shape="box"];101 -> 112[label="",style="solid", color="black", weight=3]; 14.97/5.55 102[label="psPs Nil wy13",fontsize=16,color="black",shape="triangle"];102 -> 113[label="",style="solid", color="black", weight=3]; 14.97/5.55 103 -> 102[label="",style="dashed", color="red", weight=0]; 14.97/5.55 103[label="psPs Nil wy13",fontsize=16,color="magenta"];438[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (fsEsOrdering (compareChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31)))) GT))) wy32",fontsize=16,color="black",shape="box"];438 -> 440[label="",style="solid", color="black", weight=3]; 14.97/5.55 439[label="psPs (nonnull00 (span2Span0 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 otherwise)) wy32",fontsize=16,color="black",shape="box"];439 -> 441[label="",style="solid", color="black", weight=3]; 14.97/5.55 112 -> 102[label="",style="dashed", color="red", weight=0]; 14.97/5.55 112[label="psPs Nil wy13",fontsize=16,color="magenta"];113[label="wy13",fontsize=16,color="green",shape="box"];440[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (not (esEsOrdering (compareChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31)))) GT)))) wy32",fontsize=16,color="black",shape="box"];440 -> 442[label="",style="solid", color="black", weight=3]; 14.97/5.55 441[label="psPs (nonnull00 (span2Span0 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 MyTrue)) wy32",fontsize=16,color="black",shape="box"];441 -> 443[label="",style="solid", color="black", weight=3]; 14.97/5.55 442[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (not (esEsOrdering (primCmpChar (Char (Pos (Succ wy28))) (Char (Pos (Succ wy31)))) GT)))) wy32",fontsize=16,color="black",shape="box"];442 -> 444[label="",style="solid", color="black", weight=3]; 14.97/5.55 443[label="psPs (nonnull00 (Tup2 Nil (Cons (Char (Pos (Succ wy28))) wy27))) wy32",fontsize=16,color="black",shape="box"];443 -> 445[label="",style="solid", color="black", weight=3]; 14.97/5.55 444[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (not (esEsOrdering (primCmpInt (Pos (Succ wy28)) (Pos (Succ wy31))) GT)))) wy32",fontsize=16,color="black",shape="box"];444 -> 446[label="",style="solid", color="black", weight=3]; 14.97/5.55 445 -> 102[label="",style="dashed", color="red", weight=0]; 14.97/5.55 445[label="psPs Nil wy32",fontsize=16,color="magenta"];445 -> 447[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 446 -> 681[label="",style="dashed", color="red", weight=0]; 14.97/5.55 446[label="psPs (nonnull00 (span2Span1 isDigit wy27 isDigit (Char (Pos (Succ wy28))) wy27 (not (esEsOrdering (primCmpNat (Succ wy28) (Succ wy31)) GT)))) wy32",fontsize=16,color="magenta"];446 -> 682[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 446 -> 683[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 446 -> 684[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 446 -> 685[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 446 -> 686[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 447[label="wy32",fontsize=16,color="green",shape="box"];682[label="wy32",fontsize=16,color="green",shape="box"];683[label="wy28",fontsize=16,color="green",shape="box"];684[label="Succ wy31",fontsize=16,color="green",shape="box"];685[label="wy27",fontsize=16,color="green",shape="box"];686[label="Succ wy28",fontsize=16,color="green",shape="box"];681[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 (not (esEsOrdering (primCmpNat wy64 wy65) GT)))) wy66",fontsize=16,color="burlywood",shape="triangle"];1802[label="wy64/Succ wy640",fontsize=10,color="white",style="solid",shape="box"];681 -> 1802[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1802 -> 732[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1803[label="wy64/Zero",fontsize=10,color="white",style="solid",shape="box"];681 -> 1803[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1803 -> 733[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 732[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 (not (esEsOrdering (primCmpNat (Succ wy640) wy65) GT)))) wy66",fontsize=16,color="burlywood",shape="box"];1804[label="wy65/Succ wy650",fontsize=10,color="white",style="solid",shape="box"];732 -> 1804[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1804 -> 734[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1805[label="wy65/Zero",fontsize=10,color="white",style="solid",shape="box"];732 -> 1805[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1805 -> 735[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 733[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 (not (esEsOrdering (primCmpNat Zero wy65) GT)))) wy66",fontsize=16,color="burlywood",shape="box"];1806[label="wy65/Succ wy650",fontsize=10,color="white",style="solid",shape="box"];733 -> 1806[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1806 -> 736[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1807[label="wy65/Zero",fontsize=10,color="white",style="solid",shape="box"];733 -> 1807[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1807 -> 737[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 734[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 (not (esEsOrdering (primCmpNat (Succ wy640) (Succ wy650)) GT)))) wy66",fontsize=16,color="black",shape="box"];734 -> 738[label="",style="solid", color="black", weight=3]; 14.97/5.55 735[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 (not (esEsOrdering (primCmpNat (Succ wy640) Zero) GT)))) wy66",fontsize=16,color="black",shape="box"];735 -> 739[label="",style="solid", color="black", weight=3]; 14.97/5.55 736[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 (not (esEsOrdering (primCmpNat Zero (Succ wy650)) GT)))) wy66",fontsize=16,color="black",shape="box"];736 -> 740[label="",style="solid", color="black", weight=3]; 14.97/5.55 737[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 (not (esEsOrdering (primCmpNat Zero Zero) GT)))) wy66",fontsize=16,color="black",shape="box"];737 -> 741[label="",style="solid", color="black", weight=3]; 14.97/5.55 738 -> 681[label="",style="dashed", color="red", weight=0]; 14.97/5.55 738[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 (not (esEsOrdering (primCmpNat wy640 wy650) GT)))) wy66",fontsize=16,color="magenta"];738 -> 742[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 738 -> 743[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 739[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 (not (esEsOrdering GT GT)))) wy66",fontsize=16,color="black",shape="box"];739 -> 744[label="",style="solid", color="black", weight=3]; 14.97/5.55 740[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 (not (esEsOrdering LT GT)))) wy66",fontsize=16,color="black",shape="box"];740 -> 745[label="",style="solid", color="black", weight=3]; 14.97/5.55 741[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 (not (esEsOrdering EQ GT)))) wy66",fontsize=16,color="black",shape="box"];741 -> 746[label="",style="solid", color="black", weight=3]; 14.97/5.55 742[label="wy650",fontsize=16,color="green",shape="box"];743[label="wy640",fontsize=16,color="green",shape="box"];744[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 (not MyTrue))) wy66",fontsize=16,color="black",shape="box"];744 -> 747[label="",style="solid", color="black", weight=3]; 14.97/5.55 745[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 (not MyFalse))) wy66",fontsize=16,color="black",shape="triangle"];745 -> 748[label="",style="solid", color="black", weight=3]; 14.97/5.55 746 -> 745[label="",style="dashed", color="red", weight=0]; 14.97/5.55 746[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 (not MyFalse))) wy66",fontsize=16,color="magenta"];747 -> 437[label="",style="dashed", color="red", weight=0]; 14.97/5.55 747[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 MyFalse)) wy66",fontsize=16,color="magenta"];747 -> 749[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 747 -> 750[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 747 -> 751[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 748[label="psPs (nonnull00 (span2Span1 isDigit wy62 isDigit (Char (Pos (Succ wy63))) wy62 MyTrue)) wy66",fontsize=16,color="black",shape="box"];748 -> 752[label="",style="solid", color="black", weight=3]; 14.97/5.55 749[label="wy62",fontsize=16,color="green",shape="box"];750[label="wy66",fontsize=16,color="green",shape="box"];751[label="wy63",fontsize=16,color="green",shape="box"];752[label="psPs (nonnull00 (Tup2 (Cons (Char (Pos (Succ wy63))) (span2Ys isDigit wy62)) (span2Zs isDigit wy62))) wy66",fontsize=16,color="black",shape="box"];752 -> 753[label="",style="solid", color="black", weight=3]; 14.97/5.55 753[label="psPs (Cons (Tup2 (Cons (Char (Pos (Succ wy63))) (span2Ys isDigit wy62)) (span2Zs isDigit wy62)) Nil) wy66",fontsize=16,color="black",shape="box"];753 -> 754[label="",style="solid", color="black", weight=3]; 14.97/5.55 754[label="Cons (Tup2 (Cons (Char (Pos (Succ wy63))) (span2Ys isDigit wy62)) (span2Zs isDigit wy62)) (psPs Nil wy66)",fontsize=16,color="green",shape="box"];754 -> 755[label="",style="dashed", color="green", weight=3]; 14.97/5.55 754 -> 756[label="",style="dashed", color="green", weight=3]; 14.97/5.55 754 -> 757[label="",style="dashed", color="green", weight=3]; 14.97/5.55 755[label="span2Ys isDigit wy62",fontsize=16,color="black",shape="triangle"];755 -> 758[label="",style="solid", color="black", weight=3]; 14.97/5.55 756[label="span2Zs isDigit wy62",fontsize=16,color="black",shape="triangle"];756 -> 759[label="",style="solid", color="black", weight=3]; 14.97/5.55 757 -> 102[label="",style="dashed", color="red", weight=0]; 14.97/5.55 757[label="psPs Nil wy66",fontsize=16,color="magenta"];757 -> 760[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 758[label="span2Ys0 isDigit wy62 (span2Vu43 isDigit wy62)",fontsize=16,color="black",shape="box"];758 -> 761[label="",style="solid", color="black", weight=3]; 14.97/5.55 759[label="span2Zs0 isDigit wy62 (span2Vu43 isDigit wy62)",fontsize=16,color="black",shape="box"];759 -> 762[label="",style="solid", color="black", weight=3]; 14.97/5.55 760[label="wy66",fontsize=16,color="green",shape="box"];761[label="span2Ys0 isDigit wy62 (span isDigit wy62)",fontsize=16,color="burlywood",shape="box"];1808[label="wy62/Cons wy620 wy621",fontsize=10,color="white",style="solid",shape="box"];761 -> 1808[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1808 -> 763[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1809[label="wy62/Nil",fontsize=10,color="white",style="solid",shape="box"];761 -> 1809[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1809 -> 764[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 762[label="span2Zs0 isDigit wy62 (span isDigit wy62)",fontsize=16,color="burlywood",shape="box"];1810[label="wy62/Cons wy620 wy621",fontsize=10,color="white",style="solid",shape="box"];762 -> 1810[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1810 -> 765[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1811[label="wy62/Nil",fontsize=10,color="white",style="solid",shape="box"];762 -> 1811[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1811 -> 766[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 763[label="span2Ys0 isDigit (Cons wy620 wy621) (span isDigit (Cons wy620 wy621))",fontsize=16,color="black",shape="box"];763 -> 767[label="",style="solid", color="black", weight=3]; 14.97/5.55 764[label="span2Ys0 isDigit Nil (span isDigit Nil)",fontsize=16,color="black",shape="box"];764 -> 768[label="",style="solid", color="black", weight=3]; 14.97/5.55 765[label="span2Zs0 isDigit (Cons wy620 wy621) (span isDigit (Cons wy620 wy621))",fontsize=16,color="black",shape="box"];765 -> 769[label="",style="solid", color="black", weight=3]; 14.97/5.55 766[label="span2Zs0 isDigit Nil (span isDigit Nil)",fontsize=16,color="black",shape="box"];766 -> 770[label="",style="solid", color="black", weight=3]; 14.97/5.55 767[label="span2Ys0 isDigit (Cons wy620 wy621) (span2 isDigit (Cons wy620 wy621))",fontsize=16,color="black",shape="box"];767 -> 771[label="",style="solid", color="black", weight=3]; 14.97/5.55 768[label="span2Ys0 isDigit Nil (span3 isDigit Nil)",fontsize=16,color="black",shape="box"];768 -> 772[label="",style="solid", color="black", weight=3]; 14.97/5.55 769[label="span2Zs0 isDigit (Cons wy620 wy621) (span2 isDigit (Cons wy620 wy621))",fontsize=16,color="black",shape="box"];769 -> 773[label="",style="solid", color="black", weight=3]; 14.97/5.55 770[label="span2Zs0 isDigit Nil (span3 isDigit Nil)",fontsize=16,color="black",shape="box"];770 -> 774[label="",style="solid", color="black", weight=3]; 14.97/5.55 771[label="span2Ys0 isDigit (Cons wy620 wy621) (span2Span1 isDigit wy621 isDigit wy620 wy621 (isDigit wy620))",fontsize=16,color="black",shape="box"];771 -> 775[label="",style="solid", color="black", weight=3]; 14.97/5.55 772[label="span2Ys0 isDigit Nil (Tup2 Nil Nil)",fontsize=16,color="black",shape="box"];772 -> 776[label="",style="solid", color="black", weight=3]; 14.97/5.55 773[label="span2Zs0 isDigit (Cons wy620 wy621) (span2Span1 isDigit wy621 isDigit wy620 wy621 (isDigit wy620))",fontsize=16,color="black",shape="box"];773 -> 777[label="",style="solid", color="black", weight=3]; 14.97/5.55 774[label="span2Zs0 isDigit Nil (Tup2 Nil Nil)",fontsize=16,color="black",shape="box"];774 -> 778[label="",style="solid", color="black", weight=3]; 14.97/5.55 775 -> 787[label="",style="dashed", color="red", weight=0]; 14.97/5.55 775[label="span2Ys0 isDigit (Cons wy620 wy621) (span2Span1 isDigit wy621 isDigit wy620 wy621 (asAs (gtEsChar wy620 (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))))))))))))))))))))))))))))))))))))))))))))))))))) (ltEsChar wy620 (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 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="magenta"];775 -> 788[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 775 -> 789[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 775 -> 790[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 775 -> 791[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 776[label="Nil",fontsize=16,color="green",shape="box"];777 -> 797[label="",style="dashed", color="red", weight=0]; 14.97/5.55 777[label="span2Zs0 isDigit (Cons wy620 wy621) (span2Span1 isDigit wy621 isDigit wy620 wy621 (asAs (gtEsChar wy620 (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))))))))))))))))))))))))))))))))))))))))))))))))))) (ltEsChar wy620 (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 (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="magenta"];777 -> 798[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 777 -> 799[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 777 -> 800[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 777 -> 801[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 778[label="Nil",fontsize=16,color="green",shape="box"];788[label="wy620",fontsize=16,color="green",shape="box"];789[label="wy621",fontsize=16,color="green",shape="box"];790[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];791[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"];787[label="span2Ys0 isDigit (Cons wy76 wy77) (span2Span1 isDigit wy77 isDigit wy76 wy77 (asAs (gtEsChar wy76 (Char (Pos (Succ wy78)))) (ltEsChar wy76 (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="triangle"];787 -> 796[label="",style="solid", color="black", weight=3]; 14.97/5.55 798[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"];799[label="wy620",fontsize=16,color="green",shape="box"];800[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))",fontsize=16,color="green",shape="box"];801[label="wy621",fontsize=16,color="green",shape="box"];797[label="span2Zs0 isDigit (Cons wy81 wy82) (span2Span1 isDigit wy82 isDigit wy81 wy82 (asAs (gtEsChar wy81 (Char (Pos (Succ wy83)))) (ltEsChar wy81 (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="triangle"];797 -> 806[label="",style="solid", color="black", weight=3]; 14.97/5.55 796[label="span2Ys0 isDigit (Cons wy76 wy77) (span2Span1 isDigit wy77 isDigit wy76 wy77 (asAs (fsEsOrdering (compareChar wy76 (Char (Pos (Succ wy78)))) LT) (ltEsChar wy76 (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];796 -> 807[label="",style="solid", color="black", weight=3]; 14.97/5.55 806[label="span2Zs0 isDigit (Cons wy81 wy82) (span2Span1 isDigit wy82 isDigit wy81 wy82 (asAs (fsEsOrdering (compareChar wy81 (Char (Pos (Succ wy83)))) LT) (ltEsChar wy81 (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];806 -> 808[label="",style="solid", color="black", weight=3]; 14.97/5.55 807[label="span2Ys0 isDigit (Cons wy76 wy77) (span2Span1 isDigit wy77 isDigit wy76 wy77 (asAs (not (esEsOrdering (compareChar wy76 (Char (Pos (Succ wy78)))) LT)) (ltEsChar wy76 (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];807 -> 809[label="",style="solid", color="black", weight=3]; 14.97/5.55 808[label="span2Zs0 isDigit (Cons wy81 wy82) (span2Span1 isDigit wy82 isDigit wy81 wy82 (asAs (not (esEsOrdering (compareChar wy81 (Char (Pos (Succ wy83)))) LT)) (ltEsChar wy81 (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];808 -> 810[label="",style="solid", color="black", weight=3]; 14.97/5.55 809[label="span2Ys0 isDigit (Cons wy76 wy77) (span2Span1 isDigit wy77 isDigit wy76 wy77 (asAs (not (esEsOrdering (primCmpChar wy76 (Char (Pos (Succ wy78)))) LT)) (ltEsChar wy76 (Char (Pos (Succ wy79))))))",fontsize=16,color="burlywood",shape="box"];1812[label="wy76/Char wy760",fontsize=10,color="white",style="solid",shape="box"];809 -> 1812[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1812 -> 811[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 810[label="span2Zs0 isDigit (Cons wy81 wy82) (span2Span1 isDigit wy82 isDigit wy81 wy82 (asAs (not (esEsOrdering (primCmpChar wy81 (Char (Pos (Succ wy83)))) LT)) (ltEsChar wy81 (Char (Pos (Succ wy84))))))",fontsize=16,color="burlywood",shape="box"];1813[label="wy81/Char wy810",fontsize=10,color="white",style="solid",shape="box"];810 -> 1813[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1813 -> 812[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 811[label="span2Ys0 isDigit (Cons (Char wy760) wy77) (span2Span1 isDigit wy77 isDigit (Char wy760) wy77 (asAs (not (esEsOrdering (primCmpChar (Char wy760) (Char (Pos (Succ wy78)))) LT)) (ltEsChar (Char wy760) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];811 -> 813[label="",style="solid", color="black", weight=3]; 14.97/5.55 812[label="span2Zs0 isDigit (Cons (Char wy810) wy82) (span2Span1 isDigit wy82 isDigit (Char wy810) wy82 (asAs (not (esEsOrdering (primCmpChar (Char wy810) (Char (Pos (Succ wy83)))) LT)) (ltEsChar (Char wy810) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];812 -> 814[label="",style="solid", color="black", weight=3]; 14.97/5.55 813[label="span2Ys0 isDigit (Cons (Char wy760) wy77) (span2Span1 isDigit wy77 isDigit (Char wy760) wy77 (asAs (not (esEsOrdering (primCmpInt wy760 (Pos (Succ wy78))) LT)) (ltEsChar (Char wy760) (Char (Pos (Succ wy79))))))",fontsize=16,color="burlywood",shape="box"];1814[label="wy760/Pos wy7600",fontsize=10,color="white",style="solid",shape="box"];813 -> 1814[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1814 -> 815[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1815[label="wy760/Neg wy7600",fontsize=10,color="white",style="solid",shape="box"];813 -> 1815[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1815 -> 816[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 814[label="span2Zs0 isDigit (Cons (Char wy810) wy82) (span2Span1 isDigit wy82 isDigit (Char wy810) wy82 (asAs (not (esEsOrdering (primCmpInt wy810 (Pos (Succ wy83))) LT)) (ltEsChar (Char wy810) (Char (Pos (Succ wy84))))))",fontsize=16,color="burlywood",shape="box"];1816[label="wy810/Pos wy8100",fontsize=10,color="white",style="solid",shape="box"];814 -> 1816[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1816 -> 817[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1817[label="wy810/Neg wy8100",fontsize=10,color="white",style="solid",shape="box"];814 -> 1817[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1817 -> 818[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 815[label="span2Ys0 isDigit (Cons (Char (Pos wy7600)) wy77) (span2Span1 isDigit wy77 isDigit (Char (Pos wy7600)) wy77 (asAs (not (esEsOrdering (primCmpInt (Pos wy7600) (Pos (Succ wy78))) LT)) (ltEsChar (Char (Pos wy7600)) (Char (Pos (Succ wy79))))))",fontsize=16,color="burlywood",shape="box"];1818[label="wy7600/Succ wy76000",fontsize=10,color="white",style="solid",shape="box"];815 -> 1818[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1818 -> 819[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1819[label="wy7600/Zero",fontsize=10,color="white",style="solid",shape="box"];815 -> 1819[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1819 -> 820[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 816[label="span2Ys0 isDigit (Cons (Char (Neg wy7600)) wy77) (span2Span1 isDigit wy77 isDigit (Char (Neg wy7600)) wy77 (asAs (not (esEsOrdering (primCmpInt (Neg wy7600) (Pos (Succ wy78))) LT)) (ltEsChar (Char (Neg wy7600)) (Char (Pos (Succ wy79))))))",fontsize=16,color="burlywood",shape="box"];1820[label="wy7600/Succ wy76000",fontsize=10,color="white",style="solid",shape="box"];816 -> 1820[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1820 -> 821[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1821[label="wy7600/Zero",fontsize=10,color="white",style="solid",shape="box"];816 -> 1821[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1821 -> 822[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 817[label="span2Zs0 isDigit (Cons (Char (Pos wy8100)) wy82) (span2Span1 isDigit wy82 isDigit (Char (Pos wy8100)) wy82 (asAs (not (esEsOrdering (primCmpInt (Pos wy8100) (Pos (Succ wy83))) LT)) (ltEsChar (Char (Pos wy8100)) (Char (Pos (Succ wy84))))))",fontsize=16,color="burlywood",shape="box"];1822[label="wy8100/Succ wy81000",fontsize=10,color="white",style="solid",shape="box"];817 -> 1822[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1822 -> 823[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1823[label="wy8100/Zero",fontsize=10,color="white",style="solid",shape="box"];817 -> 1823[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1823 -> 824[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 818[label="span2Zs0 isDigit (Cons (Char (Neg wy8100)) wy82) (span2Span1 isDigit wy82 isDigit (Char (Neg wy8100)) wy82 (asAs (not (esEsOrdering (primCmpInt (Neg wy8100) (Pos (Succ wy83))) LT)) (ltEsChar (Char (Neg wy8100)) (Char (Pos (Succ wy84))))))",fontsize=16,color="burlywood",shape="box"];1824[label="wy8100/Succ wy81000",fontsize=10,color="white",style="solid",shape="box"];818 -> 1824[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1824 -> 825[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1825[label="wy8100/Zero",fontsize=10,color="white",style="solid",shape="box"];818 -> 1825[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1825 -> 826[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 819[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy76000))) wy77) (span2Span1 isDigit wy77 isDigit (Char (Pos (Succ wy76000))) wy77 (asAs (not (esEsOrdering (primCmpInt (Pos (Succ wy76000)) (Pos (Succ wy78))) LT)) (ltEsChar (Char (Pos (Succ wy76000))) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];819 -> 827[label="",style="solid", color="black", weight=3]; 14.97/5.55 820[label="span2Ys0 isDigit (Cons (Char (Pos Zero)) wy77) (span2Span1 isDigit wy77 isDigit (Char (Pos Zero)) wy77 (asAs (not (esEsOrdering (primCmpInt (Pos Zero) (Pos (Succ wy78))) LT)) (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];820 -> 828[label="",style="solid", color="black", weight=3]; 14.97/5.55 821[label="span2Ys0 isDigit (Cons (Char (Neg (Succ wy76000))) wy77) (span2Span1 isDigit wy77 isDigit (Char (Neg (Succ wy76000))) wy77 (asAs (not (esEsOrdering (primCmpInt (Neg (Succ wy76000)) (Pos (Succ wy78))) LT)) (ltEsChar (Char (Neg (Succ wy76000))) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];821 -> 829[label="",style="solid", color="black", weight=3]; 14.97/5.55 822[label="span2Ys0 isDigit (Cons (Char (Neg Zero)) wy77) (span2Span1 isDigit wy77 isDigit (Char (Neg Zero)) wy77 (asAs (not (esEsOrdering (primCmpInt (Neg Zero) (Pos (Succ wy78))) LT)) (ltEsChar (Char (Neg Zero)) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];822 -> 830[label="",style="solid", color="black", weight=3]; 14.97/5.55 823[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy81000))) wy82) (span2Span1 isDigit wy82 isDigit (Char (Pos (Succ wy81000))) wy82 (asAs (not (esEsOrdering (primCmpInt (Pos (Succ wy81000)) (Pos (Succ wy83))) LT)) (ltEsChar (Char (Pos (Succ wy81000))) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];823 -> 831[label="",style="solid", color="black", weight=3]; 14.97/5.55 824[label="span2Zs0 isDigit (Cons (Char (Pos Zero)) wy82) (span2Span1 isDigit wy82 isDigit (Char (Pos Zero)) wy82 (asAs (not (esEsOrdering (primCmpInt (Pos Zero) (Pos (Succ wy83))) LT)) (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];824 -> 832[label="",style="solid", color="black", weight=3]; 14.97/5.55 825[label="span2Zs0 isDigit (Cons (Char (Neg (Succ wy81000))) wy82) (span2Span1 isDigit wy82 isDigit (Char (Neg (Succ wy81000))) wy82 (asAs (not (esEsOrdering (primCmpInt (Neg (Succ wy81000)) (Pos (Succ wy83))) LT)) (ltEsChar (Char (Neg (Succ wy81000))) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];825 -> 833[label="",style="solid", color="black", weight=3]; 14.97/5.55 826[label="span2Zs0 isDigit (Cons (Char (Neg Zero)) wy82) (span2Span1 isDigit wy82 isDigit (Char (Neg Zero)) wy82 (asAs (not (esEsOrdering (primCmpInt (Neg Zero) (Pos (Succ wy83))) LT)) (ltEsChar (Char (Neg Zero)) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];826 -> 834[label="",style="solid", color="black", weight=3]; 14.97/5.55 827 -> 1107[label="",style="dashed", color="red", weight=0]; 14.97/5.55 827[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy76000))) wy77) (span2Span1 isDigit wy77 isDigit (Char (Pos (Succ wy76000))) wy77 (asAs (not (esEsOrdering (primCmpNat (Succ wy76000) (Succ wy78)) LT)) (ltEsChar (Char (Pos (Succ wy76000))) (Char (Pos (Succ wy79))))))",fontsize=16,color="magenta"];827 -> 1108[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 827 -> 1109[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 827 -> 1110[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 827 -> 1111[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 827 -> 1112[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 828[label="span2Ys0 isDigit (Cons (Char (Pos Zero)) wy77) (span2Span1 isDigit wy77 isDigit (Char (Pos Zero)) wy77 (asAs (not (esEsOrdering (primCmpNat Zero (Succ wy78)) LT)) (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];828 -> 836[label="",style="solid", color="black", weight=3]; 14.97/5.55 829[label="span2Ys0 isDigit (Cons (Char (Neg (Succ wy76000))) wy77) (span2Span1 isDigit wy77 isDigit (Char (Neg (Succ wy76000))) wy77 (asAs (not (esEsOrdering LT LT)) (ltEsChar (Char (Neg (Succ wy76000))) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];829 -> 837[label="",style="solid", color="black", weight=3]; 14.97/5.55 830[label="span2Ys0 isDigit (Cons (Char (Neg Zero)) wy77) (span2Span1 isDigit wy77 isDigit (Char (Neg Zero)) wy77 (asAs (not (esEsOrdering LT LT)) (ltEsChar (Char (Neg Zero)) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];830 -> 838[label="",style="solid", color="black", weight=3]; 14.97/5.55 831 -> 1282[label="",style="dashed", color="red", weight=0]; 14.97/5.55 831[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy81000))) wy82) (span2Span1 isDigit wy82 isDigit (Char (Pos (Succ wy81000))) wy82 (asAs (not (esEsOrdering (primCmpNat (Succ wy81000) (Succ wy83)) LT)) (ltEsChar (Char (Pos (Succ wy81000))) (Char (Pos (Succ wy84))))))",fontsize=16,color="magenta"];831 -> 1283[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 831 -> 1284[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 831 -> 1285[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 831 -> 1286[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 831 -> 1287[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 832[label="span2Zs0 isDigit (Cons (Char (Pos Zero)) wy82) (span2Span1 isDigit wy82 isDigit (Char (Pos Zero)) wy82 (asAs (not (esEsOrdering (primCmpNat Zero (Succ wy83)) LT)) (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];832 -> 840[label="",style="solid", color="black", weight=3]; 14.97/5.55 833[label="span2Zs0 isDigit (Cons (Char (Neg (Succ wy81000))) wy82) (span2Span1 isDigit wy82 isDigit (Char (Neg (Succ wy81000))) wy82 (asAs (not (esEsOrdering LT LT)) (ltEsChar (Char (Neg (Succ wy81000))) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];833 -> 841[label="",style="solid", color="black", weight=3]; 14.97/5.55 834[label="span2Zs0 isDigit (Cons (Char (Neg Zero)) wy82) (span2Span1 isDigit wy82 isDigit (Char (Neg Zero)) wy82 (asAs (not (esEsOrdering LT LT)) (ltEsChar (Char (Neg Zero)) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];834 -> 842[label="",style="solid", color="black", weight=3]; 14.97/5.55 1108[label="wy76000",fontsize=16,color="green",shape="box"];1109[label="Succ wy78",fontsize=16,color="green",shape="box"];1110[label="wy79",fontsize=16,color="green",shape="box"];1111[label="Succ wy76000",fontsize=16,color="green",shape="box"];1112[label="wy77",fontsize=16,color="green",shape="box"];1107[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs (not (esEsOrdering (primCmpNat wy88 wy89) LT)) (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="burlywood",shape="triangle"];1826[label="wy88/Succ wy880",fontsize=10,color="white",style="solid",shape="box"];1107 -> 1826[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1826 -> 1143[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1827[label="wy88/Zero",fontsize=10,color="white",style="solid",shape="box"];1107 -> 1827[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1827 -> 1144[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 836[label="span2Ys0 isDigit (Cons (Char (Pos Zero)) wy77) (span2Span1 isDigit wy77 isDigit (Char (Pos Zero)) wy77 (asAs (not (esEsOrdering LT LT)) (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];836 -> 845[label="",style="solid", color="black", weight=3]; 14.97/5.55 837[label="span2Ys0 isDigit (Cons (Char (Neg (Succ wy76000))) wy77) (span2Span1 isDigit wy77 isDigit (Char (Neg (Succ wy76000))) wy77 (asAs (not MyTrue) (ltEsChar (Char (Neg (Succ wy76000))) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];837 -> 846[label="",style="solid", color="black", weight=3]; 14.97/5.55 838[label="span2Ys0 isDigit (Cons (Char (Neg Zero)) wy77) (span2Span1 isDigit wy77 isDigit (Char (Neg Zero)) wy77 (asAs (not MyTrue) (ltEsChar (Char (Neg Zero)) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];838 -> 847[label="",style="solid", color="black", weight=3]; 14.97/5.55 1283[label="wy82",fontsize=16,color="green",shape="box"];1284[label="wy84",fontsize=16,color="green",shape="box"];1285[label="Succ wy83",fontsize=16,color="green",shape="box"];1286[label="wy81000",fontsize=16,color="green",shape="box"];1287[label="Succ wy81000",fontsize=16,color="green",shape="box"];1282[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs (not (esEsOrdering (primCmpNat wy106 wy107) LT)) (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="burlywood",shape="triangle"];1828[label="wy106/Succ wy1060",fontsize=10,color="white",style="solid",shape="box"];1282 -> 1828[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1828 -> 1328[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1829[label="wy106/Zero",fontsize=10,color="white",style="solid",shape="box"];1282 -> 1829[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1829 -> 1329[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 840[label="span2Zs0 isDigit (Cons (Char (Pos Zero)) wy82) (span2Span1 isDigit wy82 isDigit (Char (Pos Zero)) wy82 (asAs (not (esEsOrdering LT LT)) (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];840 -> 850[label="",style="solid", color="black", weight=3]; 14.97/5.55 841[label="span2Zs0 isDigit (Cons (Char (Neg (Succ wy81000))) wy82) (span2Span1 isDigit wy82 isDigit (Char (Neg (Succ wy81000))) wy82 (asAs (not MyTrue) (ltEsChar (Char (Neg (Succ wy81000))) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];841 -> 851[label="",style="solid", color="black", weight=3]; 14.97/5.55 842[label="span2Zs0 isDigit (Cons (Char (Neg Zero)) wy82) (span2Span1 isDigit wy82 isDigit (Char (Neg Zero)) wy82 (asAs (not MyTrue) (ltEsChar (Char (Neg Zero)) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];842 -> 852[label="",style="solid", color="black", weight=3]; 14.97/5.55 1143[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs (not (esEsOrdering (primCmpNat (Succ wy880) wy89) LT)) (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="burlywood",shape="box"];1830[label="wy89/Succ wy890",fontsize=10,color="white",style="solid",shape="box"];1143 -> 1830[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1830 -> 1164[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1831[label="wy89/Zero",fontsize=10,color="white",style="solid",shape="box"];1143 -> 1831[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1831 -> 1165[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1144[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs (not (esEsOrdering (primCmpNat Zero wy89) LT)) (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="burlywood",shape="box"];1832[label="wy89/Succ wy890",fontsize=10,color="white",style="solid",shape="box"];1144 -> 1832[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1832 -> 1166[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1833[label="wy89/Zero",fontsize=10,color="white",style="solid",shape="box"];1144 -> 1833[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1833 -> 1167[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 845[label="span2Ys0 isDigit (Cons (Char (Pos Zero)) wy77) (span2Span1 isDigit wy77 isDigit (Char (Pos Zero)) wy77 (asAs (not MyTrue) (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];845 -> 857[label="",style="solid", color="black", weight=3]; 14.97/5.55 846[label="span2Ys0 isDigit (Cons (Char (Neg (Succ wy76000))) wy77) (span2Span1 isDigit wy77 isDigit (Char (Neg (Succ wy76000))) wy77 (asAs MyFalse (ltEsChar (Char (Neg (Succ wy76000))) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];846 -> 858[label="",style="solid", color="black", weight=3]; 14.97/5.55 847[label="span2Ys0 isDigit (Cons (Char (Neg Zero)) wy77) (span2Span1 isDigit wy77 isDigit (Char (Neg Zero)) wy77 (asAs MyFalse (ltEsChar (Char (Neg Zero)) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];847 -> 859[label="",style="solid", color="black", weight=3]; 14.97/5.55 1328[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs (not (esEsOrdering (primCmpNat (Succ wy1060) wy107) LT)) (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="burlywood",shape="box"];1834[label="wy107/Succ wy1070",fontsize=10,color="white",style="solid",shape="box"];1328 -> 1834[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1834 -> 1332[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1835[label="wy107/Zero",fontsize=10,color="white",style="solid",shape="box"];1328 -> 1835[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1835 -> 1333[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1329[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs (not (esEsOrdering (primCmpNat Zero wy107) LT)) (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="burlywood",shape="box"];1836[label="wy107/Succ wy1070",fontsize=10,color="white",style="solid",shape="box"];1329 -> 1836[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1836 -> 1334[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1837[label="wy107/Zero",fontsize=10,color="white",style="solid",shape="box"];1329 -> 1837[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1837 -> 1335[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 850[label="span2Zs0 isDigit (Cons (Char (Pos Zero)) wy82) (span2Span1 isDigit wy82 isDigit (Char (Pos Zero)) wy82 (asAs (not MyTrue) (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];850 -> 864[label="",style="solid", color="black", weight=3]; 14.97/5.55 851[label="span2Zs0 isDigit (Cons (Char (Neg (Succ wy81000))) wy82) (span2Span1 isDigit wy82 isDigit (Char (Neg (Succ wy81000))) wy82 (asAs MyFalse (ltEsChar (Char (Neg (Succ wy81000))) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];851 -> 865[label="",style="solid", color="black", weight=3]; 14.97/5.55 852[label="span2Zs0 isDigit (Cons (Char (Neg Zero)) wy82) (span2Span1 isDigit wy82 isDigit (Char (Neg Zero)) wy82 (asAs MyFalse (ltEsChar (Char (Neg Zero)) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];852 -> 866[label="",style="solid", color="black", weight=3]; 14.97/5.55 1164[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs (not (esEsOrdering (primCmpNat (Succ wy880) (Succ wy890)) LT)) (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="black",shape="box"];1164 -> 1180[label="",style="solid", color="black", weight=3]; 14.97/5.55 1165[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs (not (esEsOrdering (primCmpNat (Succ wy880) Zero) LT)) (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="black",shape="box"];1165 -> 1181[label="",style="solid", color="black", weight=3]; 14.97/5.55 1166[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs (not (esEsOrdering (primCmpNat Zero (Succ wy890)) LT)) (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="black",shape="box"];1166 -> 1182[label="",style="solid", color="black", weight=3]; 14.97/5.55 1167[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs (not (esEsOrdering (primCmpNat Zero Zero) LT)) (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="black",shape="box"];1167 -> 1183[label="",style="solid", color="black", weight=3]; 14.97/5.55 857[label="span2Ys0 isDigit (Cons (Char (Pos Zero)) wy77) (span2Span1 isDigit wy77 isDigit (Char (Pos Zero)) wy77 (asAs MyFalse (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy79))))))",fontsize=16,color="black",shape="box"];857 -> 871[label="",style="solid", color="black", weight=3]; 14.97/5.55 858[label="span2Ys0 isDigit (Cons (Char (Neg (Succ wy76000))) wy77) (span2Span1 isDigit wy77 isDigit (Char (Neg (Succ wy76000))) wy77 MyFalse)",fontsize=16,color="black",shape="box"];858 -> 872[label="",style="solid", color="black", weight=3]; 14.97/5.55 859[label="span2Ys0 isDigit (Cons (Char (Neg Zero)) wy77) (span2Span1 isDigit wy77 isDigit (Char (Neg Zero)) wy77 MyFalse)",fontsize=16,color="black",shape="box"];859 -> 873[label="",style="solid", color="black", weight=3]; 14.97/5.55 1332[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs (not (esEsOrdering (primCmpNat (Succ wy1060) (Succ wy1070)) LT)) (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="black",shape="box"];1332 -> 1337[label="",style="solid", color="black", weight=3]; 14.97/5.55 1333[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs (not (esEsOrdering (primCmpNat (Succ wy1060) Zero) LT)) (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="black",shape="box"];1333 -> 1338[label="",style="solid", color="black", weight=3]; 14.97/5.55 1334[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs (not (esEsOrdering (primCmpNat Zero (Succ wy1070)) LT)) (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="black",shape="box"];1334 -> 1339[label="",style="solid", color="black", weight=3]; 14.97/5.55 1335[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs (not (esEsOrdering (primCmpNat Zero Zero) LT)) (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="black",shape="box"];1335 -> 1340[label="",style="solid", color="black", weight=3]; 14.97/5.55 864[label="span2Zs0 isDigit (Cons (Char (Pos Zero)) wy82) (span2Span1 isDigit wy82 isDigit (Char (Pos Zero)) wy82 (asAs MyFalse (ltEsChar (Char (Pos Zero)) (Char (Pos (Succ wy84))))))",fontsize=16,color="black",shape="box"];864 -> 878[label="",style="solid", color="black", weight=3]; 14.97/5.55 865[label="span2Zs0 isDigit (Cons (Char (Neg (Succ wy81000))) wy82) (span2Span1 isDigit wy82 isDigit (Char (Neg (Succ wy81000))) wy82 MyFalse)",fontsize=16,color="black",shape="box"];865 -> 879[label="",style="solid", color="black", weight=3]; 14.97/5.55 866[label="span2Zs0 isDigit (Cons (Char (Neg Zero)) wy82) (span2Span1 isDigit wy82 isDigit (Char (Neg Zero)) wy82 MyFalse)",fontsize=16,color="black",shape="box"];866 -> 880[label="",style="solid", color="black", weight=3]; 14.97/5.55 1180 -> 1107[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1180[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs (not (esEsOrdering (primCmpNat wy880 wy890) LT)) (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="magenta"];1180 -> 1196[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1180 -> 1197[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1181[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs (not (esEsOrdering GT LT)) (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="black",shape="box"];1181 -> 1198[label="",style="solid", color="black", weight=3]; 14.97/5.55 1182[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs (not (esEsOrdering LT LT)) (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="black",shape="box"];1182 -> 1199[label="",style="solid", color="black", weight=3]; 14.97/5.55 1183[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs (not (esEsOrdering EQ LT)) (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="black",shape="box"];1183 -> 1200[label="",style="solid", color="black", weight=3]; 14.97/5.55 871[label="span2Ys0 isDigit (Cons (Char (Pos Zero)) wy77) (span2Span1 isDigit wy77 isDigit (Char (Pos Zero)) wy77 MyFalse)",fontsize=16,color="black",shape="box"];871 -> 886[label="",style="solid", color="black", weight=3]; 14.97/5.55 872[label="span2Ys0 isDigit (Cons (Char (Neg (Succ wy76000))) wy77) (span2Span0 isDigit wy77 isDigit (Char (Neg (Succ wy76000))) wy77 otherwise)",fontsize=16,color="black",shape="box"];872 -> 887[label="",style="solid", color="black", weight=3]; 14.97/5.55 873[label="span2Ys0 isDigit (Cons (Char (Neg Zero)) wy77) (span2Span0 isDigit wy77 isDigit (Char (Neg Zero)) wy77 otherwise)",fontsize=16,color="black",shape="box"];873 -> 888[label="",style="solid", color="black", weight=3]; 14.97/5.55 1337 -> 1282[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1337[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs (not (esEsOrdering (primCmpNat wy1060 wy1070) LT)) (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="magenta"];1337 -> 1342[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1337 -> 1343[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1338[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs (not (esEsOrdering GT LT)) (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="black",shape="box"];1338 -> 1344[label="",style="solid", color="black", weight=3]; 14.97/5.55 1339[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs (not (esEsOrdering LT LT)) (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="black",shape="box"];1339 -> 1345[label="",style="solid", color="black", weight=3]; 14.97/5.55 1340[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs (not (esEsOrdering EQ LT)) (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="black",shape="box"];1340 -> 1346[label="",style="solid", color="black", weight=3]; 14.97/5.55 878[label="span2Zs0 isDigit (Cons (Char (Pos Zero)) wy82) (span2Span1 isDigit wy82 isDigit (Char (Pos Zero)) wy82 MyFalse)",fontsize=16,color="black",shape="box"];878 -> 894[label="",style="solid", color="black", weight=3]; 14.97/5.55 879[label="span2Zs0 isDigit (Cons (Char (Neg (Succ wy81000))) wy82) (span2Span0 isDigit wy82 isDigit (Char (Neg (Succ wy81000))) wy82 otherwise)",fontsize=16,color="black",shape="box"];879 -> 895[label="",style="solid", color="black", weight=3]; 14.97/5.55 880[label="span2Zs0 isDigit (Cons (Char (Neg Zero)) wy82) (span2Span0 isDigit wy82 isDigit (Char (Neg Zero)) wy82 otherwise)",fontsize=16,color="black",shape="box"];880 -> 896[label="",style="solid", color="black", weight=3]; 14.97/5.55 1196[label="wy890",fontsize=16,color="green",shape="box"];1197[label="wy880",fontsize=16,color="green",shape="box"];1198[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs (not MyFalse) (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="black",shape="triangle"];1198 -> 1211[label="",style="solid", color="black", weight=3]; 14.97/5.55 1199[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs (not MyTrue) (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="black",shape="box"];1199 -> 1212[label="",style="solid", color="black", weight=3]; 14.97/5.55 1200 -> 1198[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1200[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs (not MyFalse) (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="magenta"];886[label="span2Ys0 isDigit (Cons (Char (Pos Zero)) wy77) (span2Span0 isDigit wy77 isDigit (Char (Pos Zero)) wy77 otherwise)",fontsize=16,color="black",shape="box"];886 -> 904[label="",style="solid", color="black", weight=3]; 14.97/5.55 887[label="span2Ys0 isDigit (Cons (Char (Neg (Succ wy76000))) wy77) (span2Span0 isDigit wy77 isDigit (Char (Neg (Succ wy76000))) wy77 MyTrue)",fontsize=16,color="black",shape="box"];887 -> 905[label="",style="solid", color="black", weight=3]; 14.97/5.55 888[label="span2Ys0 isDigit (Cons (Char (Neg Zero)) wy77) (span2Span0 isDigit wy77 isDigit (Char (Neg Zero)) wy77 MyTrue)",fontsize=16,color="black",shape="box"];888 -> 906[label="",style="solid", color="black", weight=3]; 14.97/5.55 1342[label="wy1070",fontsize=16,color="green",shape="box"];1343[label="wy1060",fontsize=16,color="green",shape="box"];1344[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs (not MyFalse) (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="black",shape="triangle"];1344 -> 1349[label="",style="solid", color="black", weight=3]; 14.97/5.55 1345[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs (not MyTrue) (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="black",shape="box"];1345 -> 1350[label="",style="solid", color="black", weight=3]; 14.97/5.55 1346 -> 1344[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1346[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs (not MyFalse) (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="magenta"];894[label="span2Zs0 isDigit (Cons (Char (Pos Zero)) wy82) (span2Span0 isDigit wy82 isDigit (Char (Pos Zero)) wy82 otherwise)",fontsize=16,color="black",shape="box"];894 -> 914[label="",style="solid", color="black", weight=3]; 14.97/5.55 895[label="span2Zs0 isDigit (Cons (Char (Neg (Succ wy81000))) wy82) (span2Span0 isDigit wy82 isDigit (Char (Neg (Succ wy81000))) wy82 MyTrue)",fontsize=16,color="black",shape="box"];895 -> 915[label="",style="solid", color="black", weight=3]; 14.97/5.55 896[label="span2Zs0 isDigit (Cons (Char (Neg Zero)) wy82) (span2Span0 isDigit wy82 isDigit (Char (Neg Zero)) wy82 MyTrue)",fontsize=16,color="black",shape="box"];896 -> 916[label="",style="solid", color="black", weight=3]; 14.97/5.55 1211[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs MyTrue (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="black",shape="box"];1211 -> 1240[label="",style="solid", color="black", weight=3]; 14.97/5.55 1212[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (asAs MyFalse (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90))))))",fontsize=16,color="black",shape="box"];1212 -> 1241[label="",style="solid", color="black", weight=3]; 14.97/5.55 904[label="span2Ys0 isDigit (Cons (Char (Pos Zero)) wy77) (span2Span0 isDigit wy77 isDigit (Char (Pos Zero)) wy77 MyTrue)",fontsize=16,color="black",shape="box"];904 -> 924[label="",style="solid", color="black", weight=3]; 14.97/5.55 905[label="span2Ys0 isDigit (Cons (Char (Neg (Succ wy76000))) wy77) (Tup2 Nil (Cons (Char (Neg (Succ wy76000))) wy77))",fontsize=16,color="black",shape="box"];905 -> 925[label="",style="solid", color="black", weight=3]; 14.97/5.55 906[label="span2Ys0 isDigit (Cons (Char (Neg Zero)) wy77) (Tup2 Nil (Cons (Char (Neg Zero)) wy77))",fontsize=16,color="black",shape="box"];906 -> 926[label="",style="solid", color="black", weight=3]; 14.97/5.55 1349[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs MyTrue (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="black",shape="box"];1349 -> 1355[label="",style="solid", color="black", weight=3]; 14.97/5.55 1350[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (asAs MyFalse (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108))))))",fontsize=16,color="black",shape="box"];1350 -> 1356[label="",style="solid", color="black", weight=3]; 14.97/5.55 914[label="span2Zs0 isDigit (Cons (Char (Pos Zero)) wy82) (span2Span0 isDigit wy82 isDigit (Char (Pos Zero)) wy82 MyTrue)",fontsize=16,color="black",shape="box"];914 -> 934[label="",style="solid", color="black", weight=3]; 14.97/5.55 915[label="span2Zs0 isDigit (Cons (Char (Neg (Succ wy81000))) wy82) (Tup2 Nil (Cons (Char (Neg (Succ wy81000))) wy82))",fontsize=16,color="black",shape="box"];915 -> 935[label="",style="solid", color="black", weight=3]; 14.97/5.55 916[label="span2Zs0 isDigit (Cons (Char (Neg Zero)) wy82) (Tup2 Nil (Cons (Char (Neg Zero)) wy82))",fontsize=16,color="black",shape="box"];916 -> 936[label="",style="solid", color="black", weight=3]; 14.97/5.55 1240[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (ltEsChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90)))))",fontsize=16,color="black",shape="box"];1240 -> 1254[label="",style="solid", color="black", weight=3]; 14.97/5.55 1241[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 MyFalse)",fontsize=16,color="black",shape="triangle"];1241 -> 1255[label="",style="solid", color="black", weight=3]; 14.97/5.55 924[label="span2Ys0 isDigit (Cons (Char (Pos Zero)) wy77) (Tup2 Nil (Cons (Char (Pos Zero)) wy77))",fontsize=16,color="black",shape="box"];924 -> 945[label="",style="solid", color="black", weight=3]; 14.97/5.55 925[label="Nil",fontsize=16,color="green",shape="box"];926[label="Nil",fontsize=16,color="green",shape="box"];1355[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (ltEsChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108)))))",fontsize=16,color="black",shape="box"];1355 -> 1361[label="",style="solid", color="black", weight=3]; 14.97/5.55 1356[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 MyFalse)",fontsize=16,color="black",shape="triangle"];1356 -> 1362[label="",style="solid", color="black", weight=3]; 14.97/5.55 934[label="span2Zs0 isDigit (Cons (Char (Pos Zero)) wy82) (Tup2 Nil (Cons (Char (Pos Zero)) wy82))",fontsize=16,color="black",shape="box"];934 -> 954[label="",style="solid", color="black", weight=3]; 14.97/5.55 935[label="Cons (Char (Neg (Succ wy81000))) wy82",fontsize=16,color="green",shape="box"];936[label="Cons (Char (Neg Zero)) wy82",fontsize=16,color="green",shape="box"];1254[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (fsEsOrdering (compareChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90)))) GT))",fontsize=16,color="black",shape="box"];1254 -> 1268[label="",style="solid", color="black", weight=3]; 14.97/5.55 1255[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span0 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 otherwise)",fontsize=16,color="black",shape="box"];1255 -> 1269[label="",style="solid", color="black", weight=3]; 14.97/5.55 945[label="Nil",fontsize=16,color="green",shape="box"];1361[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (fsEsOrdering (compareChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108)))) GT))",fontsize=16,color="black",shape="box"];1361 -> 1368[label="",style="solid", color="black", weight=3]; 14.97/5.55 1362[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span0 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 otherwise)",fontsize=16,color="black",shape="box"];1362 -> 1369[label="",style="solid", color="black", weight=3]; 14.97/5.55 954[label="Cons (Char (Pos Zero)) wy82",fontsize=16,color="green",shape="box"];1268[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (not (esEsOrdering (compareChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90)))) GT)))",fontsize=16,color="black",shape="box"];1268 -> 1280[label="",style="solid", color="black", weight=3]; 14.97/5.55 1269[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span0 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 MyTrue)",fontsize=16,color="black",shape="box"];1269 -> 1281[label="",style="solid", color="black", weight=3]; 14.97/5.55 1368[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (not (esEsOrdering (compareChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108)))) GT)))",fontsize=16,color="black",shape="box"];1368 -> 1376[label="",style="solid", color="black", weight=3]; 14.97/5.55 1369[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span0 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 MyTrue)",fontsize=16,color="black",shape="box"];1369 -> 1377[label="",style="solid", color="black", weight=3]; 14.97/5.55 1280[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (not (esEsOrdering (primCmpChar (Char (Pos (Succ wy86))) (Char (Pos (Succ wy90)))) GT)))",fontsize=16,color="black",shape="box"];1280 -> 1330[label="",style="solid", color="black", weight=3]; 14.97/5.55 1281[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (Tup2 Nil (Cons (Char (Pos (Succ wy86))) wy87))",fontsize=16,color="black",shape="box"];1281 -> 1331[label="",style="solid", color="black", weight=3]; 14.97/5.55 1376[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (not (esEsOrdering (primCmpChar (Char (Pos (Succ wy104))) (Char (Pos (Succ wy108)))) GT)))",fontsize=16,color="black",shape="box"];1376 -> 1384[label="",style="solid", color="black", weight=3]; 14.97/5.55 1377[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (Tup2 Nil (Cons (Char (Pos (Succ wy104))) wy105))",fontsize=16,color="black",shape="box"];1377 -> 1385[label="",style="solid", color="black", weight=3]; 14.97/5.55 1330[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (not (esEsOrdering (primCmpInt (Pos (Succ wy86)) (Pos (Succ wy90))) GT)))",fontsize=16,color="black",shape="box"];1330 -> 1336[label="",style="solid", color="black", weight=3]; 14.97/5.55 1331[label="Nil",fontsize=16,color="green",shape="box"];1384[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (not (esEsOrdering (primCmpInt (Pos (Succ wy104)) (Pos (Succ wy108))) GT)))",fontsize=16,color="black",shape="box"];1384 -> 1394[label="",style="solid", color="black", weight=3]; 14.97/5.55 1385[label="Cons (Char (Pos (Succ wy104))) wy105",fontsize=16,color="green",shape="box"];1336 -> 1709[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1336[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy86))) wy87) (span2Span1 isDigit wy87 isDigit (Char (Pos (Succ wy86))) wy87 (not (esEsOrdering (primCmpNat (Succ wy86) (Succ wy90)) GT)))",fontsize=16,color="magenta"];1336 -> 1710[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1336 -> 1711[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1336 -> 1712[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1336 -> 1713[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1394 -> 1650[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1394[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy104))) wy105) (span2Span1 isDigit wy105 isDigit (Char (Pos (Succ wy104))) wy105 (not (esEsOrdering (primCmpNat (Succ wy104) (Succ wy108)) GT)))",fontsize=16,color="magenta"];1394 -> 1651[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1394 -> 1652[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1394 -> 1653[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1394 -> 1654[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1710[label="Succ wy86",fontsize=16,color="green",shape="box"];1711[label="wy86",fontsize=16,color="green",shape="box"];1712[label="Succ wy90",fontsize=16,color="green",shape="box"];1713[label="wy87",fontsize=16,color="green",shape="box"];1709[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 (not (esEsOrdering (primCmpNat wy139 wy140) GT)))",fontsize=16,color="burlywood",shape="triangle"];1838[label="wy139/Succ wy1390",fontsize=10,color="white",style="solid",shape="box"];1709 -> 1838[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1838 -> 1750[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1839[label="wy139/Zero",fontsize=10,color="white",style="solid",shape="box"];1709 -> 1839[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1839 -> 1751[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1651[label="Succ wy108",fontsize=16,color="green",shape="box"];1652[label="wy104",fontsize=16,color="green",shape="box"];1653[label="wy105",fontsize=16,color="green",shape="box"];1654[label="Succ wy104",fontsize=16,color="green",shape="box"];1650[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 (not (esEsOrdering (primCmpNat wy134 wy135) GT)))",fontsize=16,color="burlywood",shape="triangle"];1840[label="wy134/Succ wy1340",fontsize=10,color="white",style="solid",shape="box"];1650 -> 1840[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1840 -> 1679[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1841[label="wy134/Zero",fontsize=10,color="white",style="solid",shape="box"];1650 -> 1841[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1841 -> 1680[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1750[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 (not (esEsOrdering (primCmpNat (Succ wy1390) wy140) GT)))",fontsize=16,color="burlywood",shape="box"];1842[label="wy140/Succ wy1400",fontsize=10,color="white",style="solid",shape="box"];1750 -> 1842[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1842 -> 1754[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1843[label="wy140/Zero",fontsize=10,color="white",style="solid",shape="box"];1750 -> 1843[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1843 -> 1755[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1751[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 (not (esEsOrdering (primCmpNat Zero wy140) GT)))",fontsize=16,color="burlywood",shape="box"];1844[label="wy140/Succ wy1400",fontsize=10,color="white",style="solid",shape="box"];1751 -> 1844[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1844 -> 1756[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1845[label="wy140/Zero",fontsize=10,color="white",style="solid",shape="box"];1751 -> 1845[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1845 -> 1757[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1679[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 (not (esEsOrdering (primCmpNat (Succ wy1340) wy135) GT)))",fontsize=16,color="burlywood",shape="box"];1846[label="wy135/Succ wy1350",fontsize=10,color="white",style="solid",shape="box"];1679 -> 1846[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1846 -> 1688[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1847[label="wy135/Zero",fontsize=10,color="white",style="solid",shape="box"];1679 -> 1847[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1847 -> 1689[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1680[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 (not (esEsOrdering (primCmpNat Zero wy135) GT)))",fontsize=16,color="burlywood",shape="box"];1848[label="wy135/Succ wy1350",fontsize=10,color="white",style="solid",shape="box"];1680 -> 1848[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1848 -> 1690[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1849[label="wy135/Zero",fontsize=10,color="white",style="solid",shape="box"];1680 -> 1849[label="",style="solid", color="burlywood", weight=9]; 14.97/5.55 1849 -> 1691[label="",style="solid", color="burlywood", weight=3]; 14.97/5.55 1754[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 (not (esEsOrdering (primCmpNat (Succ wy1390) (Succ wy1400)) GT)))",fontsize=16,color="black",shape="box"];1754 -> 1761[label="",style="solid", color="black", weight=3]; 14.97/5.55 1755[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 (not (esEsOrdering (primCmpNat (Succ wy1390) Zero) GT)))",fontsize=16,color="black",shape="box"];1755 -> 1762[label="",style="solid", color="black", weight=3]; 14.97/5.55 1756[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 (not (esEsOrdering (primCmpNat Zero (Succ wy1400)) GT)))",fontsize=16,color="black",shape="box"];1756 -> 1763[label="",style="solid", color="black", weight=3]; 14.97/5.55 1757[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 (not (esEsOrdering (primCmpNat Zero Zero) GT)))",fontsize=16,color="black",shape="box"];1757 -> 1764[label="",style="solid", color="black", weight=3]; 14.97/5.55 1688[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 (not (esEsOrdering (primCmpNat (Succ wy1340) (Succ wy1350)) GT)))",fontsize=16,color="black",shape="box"];1688 -> 1696[label="",style="solid", color="black", weight=3]; 14.97/5.55 1689[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 (not (esEsOrdering (primCmpNat (Succ wy1340) Zero) GT)))",fontsize=16,color="black",shape="box"];1689 -> 1697[label="",style="solid", color="black", weight=3]; 14.97/5.55 1690[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 (not (esEsOrdering (primCmpNat Zero (Succ wy1350)) GT)))",fontsize=16,color="black",shape="box"];1690 -> 1698[label="",style="solid", color="black", weight=3]; 14.97/5.55 1691[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 (not (esEsOrdering (primCmpNat Zero Zero) GT)))",fontsize=16,color="black",shape="box"];1691 -> 1699[label="",style="solid", color="black", weight=3]; 14.97/5.55 1761 -> 1709[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1761[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 (not (esEsOrdering (primCmpNat wy1390 wy1400) GT)))",fontsize=16,color="magenta"];1761 -> 1768[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1761 -> 1769[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1762[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 (not (esEsOrdering GT GT)))",fontsize=16,color="black",shape="box"];1762 -> 1770[label="",style="solid", color="black", weight=3]; 14.97/5.55 1763[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 (not (esEsOrdering LT GT)))",fontsize=16,color="black",shape="box"];1763 -> 1771[label="",style="solid", color="black", weight=3]; 14.97/5.55 1764[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 (not (esEsOrdering EQ GT)))",fontsize=16,color="black",shape="box"];1764 -> 1772[label="",style="solid", color="black", weight=3]; 14.97/5.55 1696 -> 1650[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1696[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 (not (esEsOrdering (primCmpNat wy1340 wy1350) GT)))",fontsize=16,color="magenta"];1696 -> 1704[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1696 -> 1705[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1697[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 (not (esEsOrdering GT GT)))",fontsize=16,color="black",shape="box"];1697 -> 1706[label="",style="solid", color="black", weight=3]; 14.97/5.55 1698[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 (not (esEsOrdering LT GT)))",fontsize=16,color="black",shape="box"];1698 -> 1707[label="",style="solid", color="black", weight=3]; 14.97/5.55 1699[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 (not (esEsOrdering EQ GT)))",fontsize=16,color="black",shape="box"];1699 -> 1708[label="",style="solid", color="black", weight=3]; 14.97/5.55 1768[label="wy1390",fontsize=16,color="green",shape="box"];1769[label="wy1400",fontsize=16,color="green",shape="box"];1770[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 (not MyTrue))",fontsize=16,color="black",shape="box"];1770 -> 1776[label="",style="solid", color="black", weight=3]; 14.97/5.55 1771[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 (not MyFalse))",fontsize=16,color="black",shape="triangle"];1771 -> 1777[label="",style="solid", color="black", weight=3]; 14.97/5.55 1772 -> 1771[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1772[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 (not MyFalse))",fontsize=16,color="magenta"];1704[label="wy1350",fontsize=16,color="green",shape="box"];1705[label="wy1340",fontsize=16,color="green",shape="box"];1706[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 (not MyTrue))",fontsize=16,color="black",shape="box"];1706 -> 1752[label="",style="solid", color="black", weight=3]; 14.97/5.55 1707[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 (not MyFalse))",fontsize=16,color="black",shape="triangle"];1707 -> 1753[label="",style="solid", color="black", weight=3]; 14.97/5.55 1708 -> 1707[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1708[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 (not MyFalse))",fontsize=16,color="magenta"];1776 -> 1241[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1776[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 MyFalse)",fontsize=16,color="magenta"];1776 -> 1778[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1776 -> 1779[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1777[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (span2Span1 isDigit wy138 isDigit (Char (Pos (Succ wy137))) wy138 MyTrue)",fontsize=16,color="black",shape="box"];1777 -> 1780[label="",style="solid", color="black", weight=3]; 14.97/5.55 1752 -> 1356[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1752[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 MyFalse)",fontsize=16,color="magenta"];1752 -> 1758[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1752 -> 1759[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1753[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (span2Span1 isDigit wy133 isDigit (Char (Pos (Succ wy132))) wy133 MyTrue)",fontsize=16,color="black",shape="box"];1753 -> 1760[label="",style="solid", color="black", weight=3]; 14.97/5.55 1778[label="wy137",fontsize=16,color="green",shape="box"];1779[label="wy138",fontsize=16,color="green",shape="box"];1780 -> 1781[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1780[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (Tup2 (Cons (Char (Pos (Succ wy137))) (span2Ys isDigit wy138)) (span2Zs isDigit wy138))",fontsize=16,color="magenta"];1780 -> 1782[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1780 -> 1783[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1758[label="wy133",fontsize=16,color="green",shape="box"];1759[label="wy132",fontsize=16,color="green",shape="box"];1760 -> 1765[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1760[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (Tup2 (Cons (Char (Pos (Succ wy132))) (span2Ys isDigit wy133)) (span2Zs isDigit wy133))",fontsize=16,color="magenta"];1760 -> 1766[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1760 -> 1767[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1782 -> 755[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1782[label="span2Ys isDigit wy138",fontsize=16,color="magenta"];1782 -> 1784[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1783 -> 756[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1783[label="span2Zs isDigit wy138",fontsize=16,color="magenta"];1783 -> 1785[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1781[label="span2Ys0 isDigit (Cons (Char (Pos (Succ wy137))) wy138) (Tup2 (Cons (Char (Pos (Succ wy137))) wy144) wy143)",fontsize=16,color="black",shape="triangle"];1781 -> 1786[label="",style="solid", color="black", weight=3]; 14.97/5.55 1766 -> 756[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1766[label="span2Zs isDigit wy133",fontsize=16,color="magenta"];1766 -> 1773[label="",style="dashed", color="magenta", weight=3]; 14.97/5.55 1767 -> 755[label="",style="dashed", color="red", weight=0]; 14.97/5.55 1767[label="span2Ys isDigit wy133",fontsize=16,color="magenta"];1767 -> 1774[label="",style="dashed", color="magenta", weight=3]; 14.97/5.56 1765[label="span2Zs0 isDigit (Cons (Char (Pos (Succ wy132))) wy133) (Tup2 (Cons (Char (Pos (Succ wy132))) wy142) wy141)",fontsize=16,color="black",shape="triangle"];1765 -> 1775[label="",style="solid", color="black", weight=3]; 14.97/5.56 1784[label="wy138",fontsize=16,color="green",shape="box"];1785[label="wy138",fontsize=16,color="green",shape="box"];1786[label="Cons (Char (Pos (Succ wy137))) wy144",fontsize=16,color="green",shape="box"];1773[label="wy133",fontsize=16,color="green",shape="box"];1774[label="wy133",fontsize=16,color="green",shape="box"];1775[label="wy141",fontsize=16,color="green",shape="box"];} 14.97/5.56 14.97/5.56 ---------------------------------------- 14.97/5.56 14.97/5.56 (6) 14.97/5.56 Complex Obligation (AND) 14.97/5.56 14.97/5.56 ---------------------------------------- 14.97/5.56 14.97/5.56 (7) 14.97/5.56 Obligation: 14.97/5.56 Q DP problem: 14.97/5.56 The TRS P consists of the following rules: 14.97/5.56 14.97/5.56 new_psPs0(wy27, wy28, Main.Succ(wy290), Main.Succ(wy300), wy31, wy32) -> new_psPs0(wy27, wy28, wy290, wy300, wy31, wy32) 14.97/5.56 14.97/5.56 R is empty. 14.97/5.56 Q is empty. 14.97/5.56 We have to consider all minimal (P,Q,R)-chains. 14.97/5.56 ---------------------------------------- 14.97/5.56 14.97/5.56 (8) QDPSizeChangeProof (EQUIVALENT) 14.97/5.56 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. 14.97/5.56 14.97/5.56 From the DPs we obtained the following set of size-change graphs: 14.97/5.56 *new_psPs0(wy27, wy28, Main.Succ(wy290), Main.Succ(wy300), wy31, wy32) -> new_psPs0(wy27, wy28, wy290, wy300, wy31, wy32) 14.97/5.56 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4, 5 >= 5, 6 >= 6 14.97/5.56 14.97/5.56 14.97/5.56 ---------------------------------------- 14.97/5.56 14.97/5.56 (9) 14.97/5.56 YES 14.97/5.56 14.97/5.56 ---------------------------------------- 14.97/5.56 14.97/5.56 (10) 14.97/5.56 Obligation: 14.97/5.56 Q DP problem: 14.97/5.56 The TRS P consists of the following rules: 14.97/5.56 14.97/5.56 new_psPs(wy62, wy63, Main.Succ(wy640), Main.Succ(wy650), wy66) -> new_psPs(wy62, wy63, wy640, wy650, wy66) 14.97/5.56 14.97/5.56 R is empty. 14.97/5.56 Q is empty. 14.97/5.56 We have to consider all minimal (P,Q,R)-chains. 14.97/5.56 ---------------------------------------- 14.97/5.56 14.97/5.56 (11) QDPSizeChangeProof (EQUIVALENT) 14.97/5.56 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. 14.97/5.56 14.97/5.56 From the DPs we obtained the following set of size-change graphs: 14.97/5.56 *new_psPs(wy62, wy63, Main.Succ(wy640), Main.Succ(wy650), wy66) -> new_psPs(wy62, wy63, wy640, wy650, wy66) 14.97/5.56 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4, 5 >= 5 14.97/5.56 14.97/5.56 14.97/5.56 ---------------------------------------- 14.97/5.56 14.97/5.56 (12) 14.97/5.56 YES 14.97/5.56 14.97/5.56 ---------------------------------------- 14.97/5.56 14.97/5.56 (13) 14.97/5.56 Obligation: 14.97/5.56 Q DP problem: 14.97/5.56 The TRS P consists of the following rules: 14.97/5.56 14.97/5.56 new_span2Ys0(Main.Char(Main.Pos(Main.Succ(wy76000))), wy77, wy78, wy79) -> new_span2Ys00(wy76000, wy77, Main.Succ(wy76000), Main.Succ(wy78), wy79) 14.97/5.56 new_span2Zs00(wy104, wy105, Main.Succ(wy1060), Main.Zero, wy108) -> new_span2Zs01(wy104, wy105, Main.Succ(wy104), Main.Succ(wy108)) 14.97/5.56 new_span2Ys01(wy137, wy138, Main.Zero, Main.Zero) -> new_span2Ys03(wy137, wy138) 14.97/5.56 new_span2Zs0(Main.Char(Main.Pos(Main.Succ(wy81000))), wy82, wy83, wy84) -> new_span2Zs00(wy81000, wy82, Main.Succ(wy81000), Main.Succ(wy83), wy84) 14.97/5.56 new_span2Zs03(wy132, wy133) -> new_span2Ys(wy133) 14.97/5.56 new_span2Ys01(wy137, wy138, Main.Zero, Main.Succ(wy1400)) -> new_span2Zs(wy138) 14.97/5.56 new_span2Zs01(wy132, wy133, Main.Zero, Main.Succ(wy1350)) -> new_span2Ys(wy133) 14.97/5.56 new_span2Ys03(wy137, wy138) -> new_span2Zs(wy138) 14.97/5.56 new_span2Ys01(wy137, wy138, Main.Succ(wy1390), Main.Succ(wy1400)) -> new_span2Ys01(wy137, wy138, wy1390, wy1400) 14.97/5.56 new_span2Ys03(wy137, wy138) -> new_span2Ys(wy138) 14.97/5.56 new_span2Ys00(wy86, wy87, Main.Succ(wy880), Main.Succ(wy890), wy90) -> new_span2Ys00(wy86, wy87, wy880, wy890, wy90) 14.97/5.56 new_span2Zs00(wy104, wy105, Main.Zero, Main.Zero, wy108) -> new_span2Zs02(wy104, wy105, wy108) 14.97/5.56 new_span2Zs02(wy104, wy105, wy108) -> new_span2Zs01(wy104, wy105, Main.Succ(wy104), Main.Succ(wy108)) 14.97/5.56 new_span2Zs01(wy132, wy133, Main.Zero, Main.Succ(wy1350)) -> new_span2Zs(wy133) 14.97/5.56 new_span2Zs03(wy132, wy133) -> new_span2Zs(wy133) 14.97/5.56 new_span2Zs01(wy132, wy133, Main.Succ(wy1340), Main.Succ(wy1350)) -> new_span2Zs01(wy132, wy133, wy1340, wy1350) 14.97/5.56 new_span2Zs01(wy132, wy133, Main.Zero, Main.Zero) -> new_span2Zs03(wy132, wy133) 14.97/5.56 new_span2Zs00(wy104, wy105, Main.Succ(wy1060), Main.Succ(wy1070), wy108) -> new_span2Zs00(wy104, wy105, wy1060, wy1070, wy108) 14.97/5.56 new_span2Ys00(wy86, wy87, Main.Succ(wy880), Main.Zero, wy90) -> new_span2Ys01(wy86, wy87, Main.Succ(wy86), Main.Succ(wy90)) 14.97/5.56 new_span2Ys01(wy137, wy138, Main.Zero, Main.Succ(wy1400)) -> new_span2Ys(wy138) 14.97/5.56 new_span2Ys00(wy86, wy87, Main.Zero, Main.Zero, wy90) -> new_span2Ys02(wy86, wy87, wy90) 14.97/5.56 new_span2Ys02(wy86, wy87, wy90) -> new_span2Ys01(wy86, wy87, Main.Succ(wy86), Main.Succ(wy90)) 14.97/5.56 new_span2Zs(Cons(wy620, wy621)) -> new_span2Zs0(wy620, wy621, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 new_span2Ys(Cons(wy620, wy621)) -> new_span2Ys0(wy620, wy621, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 14.97/5.56 R is empty. 14.97/5.56 Q is empty. 14.97/5.56 We have to consider all minimal (P,Q,R)-chains. 14.97/5.56 ---------------------------------------- 14.97/5.56 14.97/5.56 (14) TransformationProof (EQUIVALENT) 14.97/5.56 By instantiating [LPAR04] the rule new_span2Ys0(Main.Char(Main.Pos(Main.Succ(wy76000))), wy77, wy78, wy79) -> new_span2Ys00(wy76000, wy77, Main.Succ(wy76000), Main.Succ(wy78), wy79) we obtained the following new rules [LPAR04]: 14.97/5.56 14.97/5.56 (new_span2Ys0(Main.Char(Main.Pos(Main.Succ(x0))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) -> new_span2Ys00(x0, z1, Main.Succ(x0), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))),new_span2Ys0(Main.Char(Main.Pos(Main.Succ(x0))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) -> new_span2Ys00(x0, z1, Main.Succ(x0), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 14.97/5.56 14.97/5.56 ---------------------------------------- 14.97/5.56 14.97/5.56 (15) 14.97/5.56 Obligation: 14.97/5.56 Q DP problem: 14.97/5.56 The TRS P consists of the following rules: 14.97/5.56 14.97/5.56 new_span2Zs00(wy104, wy105, Main.Succ(wy1060), Main.Zero, wy108) -> new_span2Zs01(wy104, wy105, Main.Succ(wy104), Main.Succ(wy108)) 14.97/5.56 new_span2Ys01(wy137, wy138, Main.Zero, Main.Zero) -> new_span2Ys03(wy137, wy138) 14.97/5.56 new_span2Zs0(Main.Char(Main.Pos(Main.Succ(wy81000))), wy82, wy83, wy84) -> new_span2Zs00(wy81000, wy82, Main.Succ(wy81000), Main.Succ(wy83), wy84) 14.97/5.56 new_span2Zs03(wy132, wy133) -> new_span2Ys(wy133) 14.97/5.56 new_span2Ys01(wy137, wy138, Main.Zero, Main.Succ(wy1400)) -> new_span2Zs(wy138) 14.97/5.56 new_span2Zs01(wy132, wy133, Main.Zero, Main.Succ(wy1350)) -> new_span2Ys(wy133) 14.97/5.56 new_span2Ys03(wy137, wy138) -> new_span2Zs(wy138) 14.97/5.56 new_span2Ys01(wy137, wy138, Main.Succ(wy1390), Main.Succ(wy1400)) -> new_span2Ys01(wy137, wy138, wy1390, wy1400) 14.97/5.56 new_span2Ys03(wy137, wy138) -> new_span2Ys(wy138) 14.97/5.56 new_span2Ys00(wy86, wy87, Main.Succ(wy880), Main.Succ(wy890), wy90) -> new_span2Ys00(wy86, wy87, wy880, wy890, wy90) 14.97/5.56 new_span2Zs00(wy104, wy105, Main.Zero, Main.Zero, wy108) -> new_span2Zs02(wy104, wy105, wy108) 14.97/5.56 new_span2Zs02(wy104, wy105, wy108) -> new_span2Zs01(wy104, wy105, Main.Succ(wy104), Main.Succ(wy108)) 14.97/5.56 new_span2Zs01(wy132, wy133, Main.Zero, Main.Succ(wy1350)) -> new_span2Zs(wy133) 14.97/5.56 new_span2Zs03(wy132, wy133) -> new_span2Zs(wy133) 14.97/5.56 new_span2Zs01(wy132, wy133, Main.Succ(wy1340), Main.Succ(wy1350)) -> new_span2Zs01(wy132, wy133, wy1340, wy1350) 14.97/5.56 new_span2Zs01(wy132, wy133, Main.Zero, Main.Zero) -> new_span2Zs03(wy132, wy133) 14.97/5.56 new_span2Zs00(wy104, wy105, Main.Succ(wy1060), Main.Succ(wy1070), wy108) -> new_span2Zs00(wy104, wy105, wy1060, wy1070, wy108) 14.97/5.56 new_span2Ys00(wy86, wy87, Main.Succ(wy880), Main.Zero, wy90) -> new_span2Ys01(wy86, wy87, Main.Succ(wy86), Main.Succ(wy90)) 14.97/5.56 new_span2Ys01(wy137, wy138, Main.Zero, Main.Succ(wy1400)) -> new_span2Ys(wy138) 14.97/5.56 new_span2Ys00(wy86, wy87, Main.Zero, Main.Zero, wy90) -> new_span2Ys02(wy86, wy87, wy90) 14.97/5.56 new_span2Ys02(wy86, wy87, wy90) -> new_span2Ys01(wy86, wy87, Main.Succ(wy86), Main.Succ(wy90)) 14.97/5.56 new_span2Zs(Cons(wy620, wy621)) -> new_span2Zs0(wy620, wy621, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 new_span2Ys(Cons(wy620, wy621)) -> new_span2Ys0(wy620, wy621, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 new_span2Ys0(Main.Char(Main.Pos(Main.Succ(x0))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) -> new_span2Ys00(x0, z1, Main.Succ(x0), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 14.97/5.56 R is empty. 14.97/5.56 Q is empty. 14.97/5.56 We have to consider all minimal (P,Q,R)-chains. 14.97/5.56 ---------------------------------------- 14.97/5.56 14.97/5.56 (16) TransformationProof (EQUIVALENT) 14.97/5.56 By instantiating [LPAR04] the rule new_span2Zs0(Main.Char(Main.Pos(Main.Succ(wy81000))), wy82, wy83, wy84) -> new_span2Zs00(wy81000, wy82, Main.Succ(wy81000), Main.Succ(wy83), wy84) we obtained the following new rules [LPAR04]: 14.97/5.56 14.97/5.56 (new_span2Zs0(Main.Char(Main.Pos(Main.Succ(x0))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) -> new_span2Zs00(x0, z1, Main.Succ(x0), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))),new_span2Zs0(Main.Char(Main.Pos(Main.Succ(x0))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) -> new_span2Zs00(x0, z1, Main.Succ(x0), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 14.97/5.56 14.97/5.56 ---------------------------------------- 14.97/5.56 14.97/5.56 (17) 14.97/5.56 Obligation: 14.97/5.56 Q DP problem: 14.97/5.56 The TRS P consists of the following rules: 14.97/5.56 14.97/5.56 new_span2Zs00(wy104, wy105, Main.Succ(wy1060), Main.Zero, wy108) -> new_span2Zs01(wy104, wy105, Main.Succ(wy104), Main.Succ(wy108)) 14.97/5.56 new_span2Ys01(wy137, wy138, Main.Zero, Main.Zero) -> new_span2Ys03(wy137, wy138) 14.97/5.56 new_span2Zs03(wy132, wy133) -> new_span2Ys(wy133) 14.97/5.56 new_span2Ys01(wy137, wy138, Main.Zero, Main.Succ(wy1400)) -> new_span2Zs(wy138) 14.97/5.56 new_span2Zs01(wy132, wy133, Main.Zero, Main.Succ(wy1350)) -> new_span2Ys(wy133) 14.97/5.56 new_span2Ys03(wy137, wy138) -> new_span2Zs(wy138) 14.97/5.56 new_span2Ys01(wy137, wy138, Main.Succ(wy1390), Main.Succ(wy1400)) -> new_span2Ys01(wy137, wy138, wy1390, wy1400) 14.97/5.56 new_span2Ys03(wy137, wy138) -> new_span2Ys(wy138) 14.97/5.56 new_span2Ys00(wy86, wy87, Main.Succ(wy880), Main.Succ(wy890), wy90) -> new_span2Ys00(wy86, wy87, wy880, wy890, wy90) 14.97/5.56 new_span2Zs00(wy104, wy105, Main.Zero, Main.Zero, wy108) -> new_span2Zs02(wy104, wy105, wy108) 14.97/5.56 new_span2Zs02(wy104, wy105, wy108) -> new_span2Zs01(wy104, wy105, Main.Succ(wy104), Main.Succ(wy108)) 14.97/5.56 new_span2Zs01(wy132, wy133, Main.Zero, Main.Succ(wy1350)) -> new_span2Zs(wy133) 14.97/5.56 new_span2Zs03(wy132, wy133) -> new_span2Zs(wy133) 14.97/5.56 new_span2Zs01(wy132, wy133, Main.Succ(wy1340), Main.Succ(wy1350)) -> new_span2Zs01(wy132, wy133, wy1340, wy1350) 14.97/5.56 new_span2Zs01(wy132, wy133, Main.Zero, Main.Zero) -> new_span2Zs03(wy132, wy133) 14.97/5.56 new_span2Zs00(wy104, wy105, Main.Succ(wy1060), Main.Succ(wy1070), wy108) -> new_span2Zs00(wy104, wy105, wy1060, wy1070, wy108) 14.97/5.56 new_span2Ys00(wy86, wy87, Main.Succ(wy880), Main.Zero, wy90) -> new_span2Ys01(wy86, wy87, Main.Succ(wy86), Main.Succ(wy90)) 14.97/5.56 new_span2Ys01(wy137, wy138, Main.Zero, Main.Succ(wy1400)) -> new_span2Ys(wy138) 14.97/5.56 new_span2Ys00(wy86, wy87, Main.Zero, Main.Zero, wy90) -> new_span2Ys02(wy86, wy87, wy90) 14.97/5.56 new_span2Ys02(wy86, wy87, wy90) -> new_span2Ys01(wy86, wy87, Main.Succ(wy86), Main.Succ(wy90)) 14.97/5.56 new_span2Zs(Cons(wy620, wy621)) -> new_span2Zs0(wy620, wy621, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 new_span2Ys(Cons(wy620, wy621)) -> new_span2Ys0(wy620, wy621, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 new_span2Ys0(Main.Char(Main.Pos(Main.Succ(x0))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) -> new_span2Ys00(x0, z1, Main.Succ(x0), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 new_span2Zs0(Main.Char(Main.Pos(Main.Succ(x0))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) -> new_span2Zs00(x0, z1, Main.Succ(x0), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 14.97/5.56 R is empty. 14.97/5.56 Q is empty. 14.97/5.56 We have to consider all minimal (P,Q,R)-chains. 14.97/5.56 ---------------------------------------- 14.97/5.56 14.97/5.56 (18) QDPSizeChangeProof (EQUIVALENT) 14.97/5.56 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. 14.97/5.56 14.97/5.56 From the DPs we obtained the following set of size-change graphs: 14.97/5.56 *new_span2Zs01(wy132, wy133, Main.Succ(wy1340), Main.Succ(wy1350)) -> new_span2Zs01(wy132, wy133, wy1340, wy1350) 14.97/5.56 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Zs00(wy104, wy105, Main.Succ(wy1060), Main.Succ(wy1070), wy108) -> new_span2Zs00(wy104, wy105, wy1060, wy1070, wy108) 14.97/5.56 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4, 5 >= 5 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Ys01(wy137, wy138, Main.Succ(wy1390), Main.Succ(wy1400)) -> new_span2Ys01(wy137, wy138, wy1390, wy1400) 14.97/5.56 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Ys(Cons(wy620, wy621)) -> new_span2Ys0(wy620, wy621, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 The graph contains the following edges 1 > 1, 1 > 2 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Zs01(wy132, wy133, Main.Zero, Main.Zero) -> new_span2Zs03(wy132, wy133) 14.97/5.56 The graph contains the following edges 1 >= 1, 2 >= 2 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Zs(Cons(wy620, wy621)) -> new_span2Zs0(wy620, wy621, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 The graph contains the following edges 1 > 1, 1 > 2 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Ys01(wy137, wy138, Main.Zero, Main.Zero) -> new_span2Ys03(wy137, wy138) 14.97/5.56 The graph contains the following edges 1 >= 1, 2 >= 2 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Ys00(wy86, wy87, Main.Succ(wy880), Main.Zero, wy90) -> new_span2Ys01(wy86, wy87, Main.Succ(wy86), Main.Succ(wy90)) 14.97/5.56 The graph contains the following edges 1 >= 1, 2 >= 2 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Ys02(wy86, wy87, wy90) -> new_span2Ys01(wy86, wy87, Main.Succ(wy86), Main.Succ(wy90)) 14.97/5.56 The graph contains the following edges 1 >= 1, 2 >= 2 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Ys00(wy86, wy87, Main.Succ(wy880), Main.Succ(wy890), wy90) -> new_span2Ys00(wy86, wy87, wy880, wy890, wy90) 14.97/5.56 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4, 5 >= 5 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Ys00(wy86, wy87, Main.Zero, Main.Zero, wy90) -> new_span2Ys02(wy86, wy87, wy90) 14.97/5.56 The graph contains the following edges 1 >= 1, 2 >= 2, 5 >= 3 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Ys0(Main.Char(Main.Pos(Main.Succ(x0))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) -> new_span2Ys00(x0, z1, Main.Succ(x0), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 The graph contains the following edges 1 > 1, 2 >= 2, 1 > 3, 4 > 4, 4 >= 5 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Zs02(wy104, wy105, wy108) -> new_span2Zs01(wy104, wy105, Main.Succ(wy104), Main.Succ(wy108)) 14.97/5.56 The graph contains the following edges 1 >= 1, 2 >= 2 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Zs00(wy104, wy105, Main.Zero, Main.Zero, wy108) -> new_span2Zs02(wy104, wy105, wy108) 14.97/5.56 The graph contains the following edges 1 >= 1, 2 >= 2, 5 >= 3 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Zs00(wy104, wy105, Main.Succ(wy1060), Main.Zero, wy108) -> new_span2Zs01(wy104, wy105, Main.Succ(wy104), Main.Succ(wy108)) 14.97/5.56 The graph contains the following edges 1 >= 1, 2 >= 2 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Zs0(Main.Char(Main.Pos(Main.Succ(x0))), z1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) -> new_span2Zs00(x0, z1, Main.Succ(x0), Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(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(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 14.97/5.56 The graph contains the following edges 1 > 1, 2 >= 2, 1 > 3, 4 > 4, 4 >= 5 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Ys03(wy137, wy138) -> new_span2Zs(wy138) 14.97/5.56 The graph contains the following edges 2 >= 1 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Ys03(wy137, wy138) -> new_span2Ys(wy138) 14.97/5.56 The graph contains the following edges 2 >= 1 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Ys01(wy137, wy138, Main.Zero, Main.Succ(wy1400)) -> new_span2Zs(wy138) 14.97/5.56 The graph contains the following edges 2 >= 1 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Ys01(wy137, wy138, Main.Zero, Main.Succ(wy1400)) -> new_span2Ys(wy138) 14.97/5.56 The graph contains the following edges 2 >= 1 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Zs01(wy132, wy133, Main.Zero, Main.Succ(wy1350)) -> new_span2Zs(wy133) 14.97/5.56 The graph contains the following edges 2 >= 1 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Zs01(wy132, wy133, Main.Zero, Main.Succ(wy1350)) -> new_span2Ys(wy133) 14.97/5.56 The graph contains the following edges 2 >= 1 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Zs03(wy132, wy133) -> new_span2Zs(wy133) 14.97/5.56 The graph contains the following edges 2 >= 1 14.97/5.56 14.97/5.56 14.97/5.56 *new_span2Zs03(wy132, wy133) -> new_span2Ys(wy133) 14.97/5.56 The graph contains the following edges 2 >= 1 14.97/5.56 14.97/5.56 14.97/5.56 ---------------------------------------- 14.97/5.56 14.97/5.56 (19) 14.97/5.56 YES 15.34/5.72 EOF