14.04/5.43 YES 16.41/6.09 proof of /export/starexec/sandbox/benchmark/theBenchmark.hs 16.41/6.09 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 16.41/6.09 16.41/6.09 16.41/6.09 H-Termination with start terms of the given HASKELL could be proven: 16.41/6.09 16.41/6.09 (0) HASKELL 16.41/6.09 (1) IFR [EQUIVALENT, 0 ms] 16.41/6.09 (2) HASKELL 16.41/6.09 (3) BR [EQUIVALENT, 0 ms] 16.41/6.09 (4) HASKELL 16.41/6.09 (5) COR [EQUIVALENT, 18 ms] 16.41/6.09 (6) HASKELL 16.41/6.09 (7) LetRed [EQUIVALENT, 0 ms] 16.41/6.09 (8) HASKELL 16.41/6.09 (9) Narrow [SOUND, 0 ms] 16.41/6.09 (10) AND 16.41/6.09 (11) QDP 16.41/6.09 (12) TransformationProof [EQUIVALENT, 15 ms] 16.41/6.09 (13) QDP 16.41/6.09 (14) DependencyGraphProof [EQUIVALENT, 0 ms] 16.41/6.09 (15) QDP 16.41/6.09 (16) UsableRulesProof [EQUIVALENT, 0 ms] 16.41/6.09 (17) QDP 16.41/6.09 (18) QReductionProof [EQUIVALENT, 0 ms] 16.41/6.09 (19) QDP 16.41/6.09 (20) TransformationProof [EQUIVALENT, 0 ms] 16.41/6.09 (21) QDP 16.41/6.09 (22) TransformationProof [EQUIVALENT, 0 ms] 16.41/6.09 (23) QDP 16.41/6.09 (24) DependencyGraphProof [EQUIVALENT, 0 ms] 16.41/6.09 (25) QDP 16.41/6.09 (26) UsableRulesProof [EQUIVALENT, 0 ms] 16.41/6.09 (27) QDP 16.41/6.09 (28) QReductionProof [EQUIVALENT, 0 ms] 16.41/6.09 (29) QDP 16.41/6.09 (30) TransformationProof [EQUIVALENT, 0 ms] 16.41/6.09 (31) QDP 16.41/6.09 (32) UsableRulesProof [EQUIVALENT, 0 ms] 16.41/6.09 (33) QDP 16.41/6.09 (34) QReductionProof [EQUIVALENT, 0 ms] 16.41/6.09 (35) QDP 16.41/6.09 (36) TransformationProof [EQUIVALENT, 0 ms] 16.41/6.09 (37) QDP 16.41/6.09 (38) TransformationProof [EQUIVALENT, 3 ms] 16.41/6.09 (39) QDP 16.41/6.09 (40) QDPSizeChangeProof [EQUIVALENT, 0 ms] 16.41/6.09 (41) YES 16.41/6.09 (42) QDP 16.41/6.09 (43) QDPSizeChangeProof [EQUIVALENT, 0 ms] 16.41/6.09 (44) YES 16.41/6.09 (45) QDP 16.41/6.09 (46) TransformationProof [EQUIVALENT, 0 ms] 16.41/6.09 (47) QDP 16.41/6.09 (48) DependencyGraphProof [EQUIVALENT, 0 ms] 16.41/6.09 (49) QDP 16.41/6.09 (50) UsableRulesProof [EQUIVALENT, 0 ms] 16.41/6.09 (51) QDP 16.41/6.09 (52) QReductionProof [EQUIVALENT, 0 ms] 16.41/6.09 (53) QDP 16.41/6.09 (54) TransformationProof [EQUIVALENT, 0 ms] 16.41/6.09 (55) QDP 16.41/6.09 (56) DependencyGraphProof [EQUIVALENT, 0 ms] 16.41/6.09 (57) QDP 16.41/6.09 (58) UsableRulesProof [EQUIVALENT, 0 ms] 16.41/6.09 (59) QDP 16.41/6.09 (60) QReductionProof [EQUIVALENT, 1 ms] 16.41/6.09 (61) QDP 16.41/6.09 (62) TransformationProof [EQUIVALENT, 0 ms] 16.41/6.09 (63) QDP 16.41/6.09 (64) DependencyGraphProof [EQUIVALENT, 0 ms] 16.41/6.09 (65) AND 16.41/6.09 (66) QDP 16.41/6.09 (67) QDPSizeChangeProof [EQUIVALENT, 0 ms] 16.41/6.09 (68) YES 16.41/6.09 (69) QDP 16.41/6.09 (70) QDPSizeChangeProof [EQUIVALENT, 0 ms] 16.41/6.09 (71) YES 16.41/6.09 (72) QDP 16.41/6.09 (73) QDPSizeChangeProof [EQUIVALENT, 0 ms] 16.41/6.09 (74) YES 16.41/6.09 (75) QDP 16.41/6.09 (76) TransformationProof [EQUIVALENT, 0 ms] 16.41/6.09 (77) QDP 16.41/6.09 (78) UsableRulesProof [EQUIVALENT, 0 ms] 16.41/6.09 (79) QDP 16.41/6.09 (80) QReductionProof [EQUIVALENT, 0 ms] 16.41/6.09 (81) QDP 16.41/6.09 (82) QDPSizeChangeProof [EQUIVALENT, 0 ms] 16.41/6.09 (83) YES 16.41/6.09 16.41/6.09 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (0) 16.41/6.09 Obligation: 16.41/6.09 mainModule Main 16.41/6.09 module Maybe where { 16.41/6.09 import qualified List; 16.41/6.09 import qualified Main; 16.41/6.09 import qualified Prelude; 16.41/6.09 } 16.41/6.09 module List where { 16.41/6.09 import qualified Main; 16.41/6.09 import qualified Maybe; 16.41/6.09 import qualified Prelude; 16.41/6.09 deleteBy :: (a -> a -> Bool) -> a -> [a] -> [a]; 16.41/6.09 deleteBy _ _ [] = []; 16.41/6.09 deleteBy eq x (y : ys) = if x `eq` y then ys else y : deleteBy eq x ys; 16.41/6.09 16.41/6.09 elem_by :: (a -> a -> Bool) -> a -> [a] -> Bool; 16.41/6.09 elem_by _ _ [] = False; 16.41/6.09 elem_by eq y (x : xs) = x `eq` y || elem_by eq y xs; 16.41/6.09 16.41/6.09 nubBy :: (a -> a -> Bool) -> [a] -> [a]; 16.41/6.09 nubBy eq l = nubBy' l [] where { 16.41/6.09 nubBy' [] _ = []; 16.41/6.09 nubBy' (y : ys) xs | elem_by eq y xs = nubBy' ys xs 16.41/6.09 | otherwise = y : nubBy' ys (y : xs); 16.41/6.09 }; 16.41/6.09 16.41/6.09 union :: Eq a => [a] -> [a] -> [a]; 16.41/6.09 union = unionBy (==); 16.41/6.09 16.41/6.09 unionBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]; 16.41/6.09 unionBy eq xs ys = xs ++ foldl (flip (deleteBy eq)) (nubBy eq ys) xs; 16.41/6.09 16.41/6.09 } 16.41/6.09 module Main where { 16.41/6.09 import qualified List; 16.41/6.09 import qualified Maybe; 16.41/6.09 import qualified Prelude; 16.41/6.09 } 16.41/6.09 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (1) IFR (EQUIVALENT) 16.41/6.09 If Reductions: 16.41/6.09 The following If expression 16.41/6.09 "if eq x y then ys else y : deleteBy eq x ys" 16.41/6.09 is transformed to 16.41/6.09 "deleteBy0 ys y eq x True = ys; 16.41/6.09 deleteBy0 ys y eq x False = y : deleteBy eq x ys; 16.41/6.09 " 16.41/6.09 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (2) 16.41/6.09 Obligation: 16.41/6.09 mainModule Main 16.41/6.09 module Maybe where { 16.41/6.09 import qualified List; 16.41/6.09 import qualified Main; 16.41/6.09 import qualified Prelude; 16.41/6.09 } 16.41/6.09 module List where { 16.41/6.09 import qualified Main; 16.41/6.09 import qualified Maybe; 16.41/6.09 import qualified Prelude; 16.41/6.09 deleteBy :: (a -> a -> Bool) -> a -> [a] -> [a]; 16.41/6.09 deleteBy _ _ [] = []; 16.41/6.09 deleteBy eq x (y : ys) = deleteBy0 ys y eq x (x `eq` y); 16.41/6.09 16.41/6.09 deleteBy0 ys y eq x True = ys; 16.41/6.09 deleteBy0 ys y eq x False = y : deleteBy eq x ys; 16.41/6.09 16.41/6.09 elem_by :: (a -> a -> Bool) -> a -> [a] -> Bool; 16.41/6.09 elem_by _ _ [] = False; 16.41/6.09 elem_by eq y (x : xs) = x `eq` y || elem_by eq y xs; 16.41/6.09 16.41/6.09 nubBy :: (a -> a -> Bool) -> [a] -> [a]; 16.41/6.09 nubBy eq l = nubBy' l [] where { 16.41/6.09 nubBy' [] _ = []; 16.41/6.09 nubBy' (y : ys) xs | elem_by eq y xs = nubBy' ys xs 16.41/6.09 | otherwise = y : nubBy' ys (y : xs); 16.41/6.09 }; 16.41/6.09 16.41/6.09 union :: Eq a => [a] -> [a] -> [a]; 16.41/6.09 union = unionBy (==); 16.41/6.09 16.41/6.09 unionBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]; 16.41/6.09 unionBy eq xs ys = xs ++ foldl (flip (deleteBy eq)) (nubBy eq ys) xs; 16.41/6.09 16.41/6.09 } 16.41/6.09 module Main where { 16.41/6.09 import qualified List; 16.41/6.09 import qualified Maybe; 16.41/6.09 import qualified Prelude; 16.41/6.09 } 16.41/6.09 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (3) BR (EQUIVALENT) 16.41/6.09 Replaced joker patterns by fresh variables and removed binding patterns. 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (4) 16.41/6.09 Obligation: 16.41/6.09 mainModule Main 16.41/6.09 module Maybe where { 16.41/6.09 import qualified List; 16.41/6.09 import qualified Main; 16.41/6.09 import qualified Prelude; 16.41/6.09 } 16.41/6.09 module List where { 16.41/6.09 import qualified Main; 16.41/6.09 import qualified Maybe; 16.41/6.09 import qualified Prelude; 16.41/6.09 deleteBy :: (a -> a -> Bool) -> a -> [a] -> [a]; 16.41/6.09 deleteBy wv ww [] = []; 16.41/6.09 deleteBy eq x (y : ys) = deleteBy0 ys y eq x (x `eq` y); 16.41/6.09 16.41/6.09 deleteBy0 ys y eq x True = ys; 16.41/6.09 deleteBy0 ys y eq x False = y : deleteBy eq x ys; 16.41/6.09 16.41/6.09 elem_by :: (a -> a -> Bool) -> a -> [a] -> Bool; 16.41/6.09 elem_by vy vz [] = False; 16.41/6.09 elem_by eq y (x : xs) = x `eq` y || elem_by eq y xs; 16.41/6.09 16.41/6.09 nubBy :: (a -> a -> Bool) -> [a] -> [a]; 16.41/6.09 nubBy eq l = nubBy' l [] where { 16.41/6.09 nubBy' [] wu = []; 16.41/6.09 nubBy' (y : ys) xs | elem_by eq y xs = nubBy' ys xs 16.41/6.09 | otherwise = y : nubBy' ys (y : xs); 16.41/6.09 }; 16.41/6.09 16.41/6.09 union :: Eq a => [a] -> [a] -> [a]; 16.41/6.09 union = unionBy (==); 16.41/6.09 16.41/6.09 unionBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]; 16.41/6.09 unionBy eq xs ys = xs ++ foldl (flip (deleteBy eq)) (nubBy eq ys) xs; 16.41/6.09 16.41/6.09 } 16.41/6.09 module Main where { 16.41/6.09 import qualified List; 16.41/6.09 import qualified Maybe; 16.41/6.09 import qualified Prelude; 16.41/6.09 } 16.41/6.09 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (5) COR (EQUIVALENT) 16.41/6.09 Cond Reductions: 16.41/6.09 The following Function with conditions 16.41/6.09 "undefined |Falseundefined; 16.41/6.09 " 16.41/6.09 is transformed to 16.41/6.09 "undefined = undefined1; 16.41/6.09 " 16.41/6.09 "undefined0 True = undefined; 16.41/6.09 " 16.41/6.09 "undefined1 = undefined0 False; 16.41/6.09 " 16.41/6.09 The following Function with conditions 16.41/6.09 "nubBy' [] wu = []; 16.41/6.09 nubBy' (y : ys) xs|elem_by eq y xsnubBy' ys xs|otherwisey : nubBy' ys (y : xs); 16.41/6.09 " 16.41/6.09 is transformed to 16.41/6.09 "nubBy' [] wu = nubBy'3 [] wu; 16.41/6.09 nubBy' (y : ys) xs = nubBy'2 (y : ys) xs; 16.41/6.09 " 16.41/6.09 "nubBy'0 y ys xs True = y : nubBy' ys (y : xs); 16.41/6.09 " 16.41/6.09 "nubBy'1 y ys xs True = nubBy' ys xs; 16.41/6.09 nubBy'1 y ys xs False = nubBy'0 y ys xs otherwise; 16.41/6.09 " 16.41/6.09 "nubBy'2 (y : ys) xs = nubBy'1 y ys xs (elem_by eq y xs); 16.41/6.09 " 16.41/6.09 "nubBy'3 [] wu = []; 16.41/6.09 nubBy'3 wz xu = nubBy'2 wz xu; 16.41/6.09 " 16.41/6.09 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (6) 16.41/6.09 Obligation: 16.41/6.09 mainModule Main 16.41/6.09 module Maybe where { 16.41/6.09 import qualified List; 16.41/6.09 import qualified Main; 16.41/6.09 import qualified Prelude; 16.41/6.09 } 16.41/6.09 module List where { 16.41/6.09 import qualified Main; 16.41/6.09 import qualified Maybe; 16.41/6.09 import qualified Prelude; 16.41/6.09 deleteBy :: (a -> a -> Bool) -> a -> [a] -> [a]; 16.41/6.09 deleteBy wv ww [] = []; 16.41/6.09 deleteBy eq x (y : ys) = deleteBy0 ys y eq x (x `eq` y); 16.41/6.09 16.41/6.09 deleteBy0 ys y eq x True = ys; 16.41/6.09 deleteBy0 ys y eq x False = y : deleteBy eq x ys; 16.41/6.09 16.41/6.09 elem_by :: (a -> a -> Bool) -> a -> [a] -> Bool; 16.41/6.09 elem_by vy vz [] = False; 16.41/6.09 elem_by eq y (x : xs) = x `eq` y || elem_by eq y xs; 16.41/6.09 16.41/6.09 nubBy :: (a -> a -> Bool) -> [a] -> [a]; 16.41/6.09 nubBy eq l = nubBy' l [] where { 16.41/6.09 nubBy' [] wu = nubBy'3 [] wu; 16.41/6.09 nubBy' (y : ys) xs = nubBy'2 (y : ys) xs; 16.41/6.09 nubBy'0 y ys xs True = y : nubBy' ys (y : xs); 16.41/6.09 nubBy'1 y ys xs True = nubBy' ys xs; 16.41/6.09 nubBy'1 y ys xs False = nubBy'0 y ys xs otherwise; 16.41/6.09 nubBy'2 (y : ys) xs = nubBy'1 y ys xs (elem_by eq y xs); 16.41/6.09 nubBy'3 [] wu = []; 16.41/6.09 nubBy'3 wz xu = nubBy'2 wz xu; 16.41/6.09 }; 16.41/6.09 16.41/6.09 union :: Eq a => [a] -> [a] -> [a]; 16.41/6.09 union = unionBy (==); 16.41/6.09 16.41/6.09 unionBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]; 16.41/6.09 unionBy eq xs ys = xs ++ foldl (flip (deleteBy eq)) (nubBy eq ys) xs; 16.41/6.09 16.41/6.09 } 16.41/6.09 module Main where { 16.41/6.09 import qualified List; 16.41/6.09 import qualified Maybe; 16.41/6.09 import qualified Prelude; 16.41/6.09 } 16.41/6.09 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (7) LetRed (EQUIVALENT) 16.41/6.09 Let/Where Reductions: 16.41/6.09 The bindings of the following Let/Where expression 16.41/6.09 "nubBy' l [] where { 16.41/6.09 nubBy' [] wu = nubBy'3 [] wu; 16.41/6.09 nubBy' (y : ys) xs = nubBy'2 (y : ys) xs; 16.41/6.09 ; 16.41/6.09 nubBy'0 y ys xs True = y : nubBy' ys (y : xs); 16.41/6.09 ; 16.41/6.09 nubBy'1 y ys xs True = nubBy' ys xs; 16.41/6.09 nubBy'1 y ys xs False = nubBy'0 y ys xs otherwise; 16.41/6.09 ; 16.41/6.09 nubBy'2 (y : ys) xs = nubBy'1 y ys xs (elem_by eq y xs); 16.41/6.09 ; 16.41/6.09 nubBy'3 [] wu = []; 16.41/6.09 nubBy'3 wz xu = nubBy'2 wz xu; 16.41/6.09 } 16.41/6.09 " 16.41/6.09 are unpacked to the following functions on top level 16.41/6.09 "nubByNubBy'2 xv (y : ys) xs = nubByNubBy'1 xv y ys xs (elem_by xv y xs); 16.41/6.09 " 16.41/6.09 "nubByNubBy'1 xv y ys xs True = nubByNubBy' xv ys xs; 16.41/6.09 nubByNubBy'1 xv y ys xs False = nubByNubBy'0 xv y ys xs otherwise; 16.41/6.09 " 16.41/6.09 "nubByNubBy' xv [] wu = nubByNubBy'3 xv [] wu; 16.41/6.09 nubByNubBy' xv (y : ys) xs = nubByNubBy'2 xv (y : ys) xs; 16.41/6.09 " 16.41/6.09 "nubByNubBy'0 xv y ys xs True = y : nubByNubBy' xv ys (y : xs); 16.41/6.09 " 16.41/6.09 "nubByNubBy'3 xv [] wu = []; 16.41/6.09 nubByNubBy'3 xv wz xu = nubByNubBy'2 xv wz xu; 16.41/6.09 " 16.41/6.09 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (8) 16.41/6.09 Obligation: 16.41/6.09 mainModule Main 16.41/6.09 module Maybe where { 16.41/6.09 import qualified List; 16.41/6.09 import qualified Main; 16.41/6.09 import qualified Prelude; 16.41/6.09 } 16.41/6.09 module List where { 16.41/6.09 import qualified Main; 16.41/6.09 import qualified Maybe; 16.41/6.09 import qualified Prelude; 16.41/6.09 deleteBy :: (a -> a -> Bool) -> a -> [a] -> [a]; 16.41/6.09 deleteBy wv ww [] = []; 16.41/6.09 deleteBy eq x (y : ys) = deleteBy0 ys y eq x (x `eq` y); 16.41/6.09 16.41/6.09 deleteBy0 ys y eq x True = ys; 16.41/6.09 deleteBy0 ys y eq x False = y : deleteBy eq x ys; 16.41/6.09 16.41/6.09 elem_by :: (a -> a -> Bool) -> a -> [a] -> Bool; 16.41/6.09 elem_by vy vz [] = False; 16.41/6.09 elem_by eq y (x : xs) = x `eq` y || elem_by eq y xs; 16.41/6.09 16.41/6.09 nubBy :: (a -> a -> Bool) -> [a] -> [a]; 16.41/6.09 nubBy eq l = nubByNubBy' eq l []; 16.41/6.09 16.41/6.09 nubByNubBy' xv [] wu = nubByNubBy'3 xv [] wu; 16.41/6.09 nubByNubBy' xv (y : ys) xs = nubByNubBy'2 xv (y : ys) xs; 16.41/6.09 16.41/6.09 nubByNubBy'0 xv y ys xs True = y : nubByNubBy' xv ys (y : xs); 16.41/6.09 16.41/6.09 nubByNubBy'1 xv y ys xs True = nubByNubBy' xv ys xs; 16.41/6.09 nubByNubBy'1 xv y ys xs False = nubByNubBy'0 xv y ys xs otherwise; 16.41/6.09 16.41/6.09 nubByNubBy'2 xv (y : ys) xs = nubByNubBy'1 xv y ys xs (elem_by xv y xs); 16.41/6.09 16.41/6.09 nubByNubBy'3 xv [] wu = []; 16.41/6.09 nubByNubBy'3 xv wz xu = nubByNubBy'2 xv wz xu; 16.41/6.09 16.41/6.09 union :: Eq a => [a] -> [a] -> [a]; 16.41/6.09 union = unionBy (==); 16.41/6.09 16.41/6.09 unionBy :: (a -> a -> Bool) -> [a] -> [a] -> [a]; 16.41/6.09 unionBy eq xs ys = xs ++ foldl (flip (deleteBy eq)) (nubBy eq ys) xs; 16.41/6.09 16.41/6.09 } 16.41/6.09 module Main where { 16.41/6.09 import qualified List; 16.41/6.09 import qualified Maybe; 16.41/6.09 import qualified Prelude; 16.41/6.09 } 16.41/6.09 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (9) Narrow (SOUND) 16.41/6.09 Haskell To QDPs 16.41/6.09 16.41/6.09 digraph dp_graph { 16.41/6.09 node [outthreshold=100, inthreshold=100];1[label="List.union",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 16.41/6.09 3[label="List.union xw3",fontsize=16,color="grey",shape="box"];3 -> 4[label="",style="dashed", color="grey", weight=3]; 16.41/6.09 4[label="List.union xw3 xw4",fontsize=16,color="black",shape="triangle"];4 -> 5[label="",style="solid", color="black", weight=3]; 16.41/6.09 5[label="List.unionBy (==) xw3 xw4",fontsize=16,color="black",shape="box"];5 -> 6[label="",style="solid", color="black", weight=3]; 16.41/6.09 6[label="xw3 ++ foldl (flip (List.deleteBy (==))) (List.nubBy (==) xw4) xw3",fontsize=16,color="burlywood",shape="box"];2054[label="xw3/xw30 : xw31",fontsize=10,color="white",style="solid",shape="box"];6 -> 2054[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2054 -> 7[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2055[label="xw3/[]",fontsize=10,color="white",style="solid",shape="box"];6 -> 2055[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2055 -> 8[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 7[label="(xw30 : xw31) ++ foldl (flip (List.deleteBy (==))) (List.nubBy (==) xw4) (xw30 : xw31)",fontsize=16,color="black",shape="box"];7 -> 9[label="",style="solid", color="black", weight=3]; 16.41/6.09 8[label="[] ++ foldl (flip (List.deleteBy (==))) (List.nubBy (==) xw4) []",fontsize=16,color="black",shape="box"];8 -> 10[label="",style="solid", color="black", weight=3]; 16.41/6.09 9[label="xw30 : xw31 ++ foldl (flip (List.deleteBy (==))) (List.nubBy (==) xw4) (xw30 : xw31)",fontsize=16,color="green",shape="box"];9 -> 11[label="",style="dashed", color="green", weight=3]; 16.41/6.09 10[label="foldl (flip (List.deleteBy (==))) (List.nubBy (==) xw4) []",fontsize=16,color="black",shape="box"];10 -> 12[label="",style="solid", color="black", weight=3]; 16.41/6.09 11 -> 153[label="",style="dashed", color="red", weight=0]; 16.41/6.09 11[label="xw31 ++ foldl (flip (List.deleteBy (==))) (List.nubBy (==) xw4) (xw30 : xw31)",fontsize=16,color="magenta"];11 -> 154[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 11 -> 155[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 11 -> 156[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 11 -> 157[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 12[label="List.nubBy (==) xw4",fontsize=16,color="black",shape="triangle"];12 -> 15[label="",style="solid", color="black", weight=3]; 16.41/6.09 154[label="xw31",fontsize=16,color="green",shape="box"];155 -> 12[label="",style="dashed", color="red", weight=0]; 16.41/6.09 155[label="List.nubBy (==) xw4",fontsize=16,color="magenta"];156[label="xw31",fontsize=16,color="green",shape="box"];157[label="xw30",fontsize=16,color="green",shape="box"];153[label="xw8 ++ foldl (flip (List.deleteBy (==))) xw9 (xw10 : xw11)",fontsize=16,color="burlywood",shape="triangle"];2056[label="xw8/xw80 : xw81",fontsize=10,color="white",style="solid",shape="box"];153 -> 2056[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2056 -> 182[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2057[label="xw8/[]",fontsize=10,color="white",style="solid",shape="box"];153 -> 2057[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2057 -> 183[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 15[label="List.nubByNubBy' (==) xw4 []",fontsize=16,color="burlywood",shape="box"];2058[label="xw4/xw40 : xw41",fontsize=10,color="white",style="solid",shape="box"];15 -> 2058[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2058 -> 18[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2059[label="xw4/[]",fontsize=10,color="white",style="solid",shape="box"];15 -> 2059[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2059 -> 19[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 182[label="(xw80 : xw81) ++ foldl (flip (List.deleteBy (==))) xw9 (xw10 : xw11)",fontsize=16,color="black",shape="box"];182 -> 193[label="",style="solid", color="black", weight=3]; 16.41/6.09 183[label="[] ++ foldl (flip (List.deleteBy (==))) xw9 (xw10 : xw11)",fontsize=16,color="black",shape="box"];183 -> 194[label="",style="solid", color="black", weight=3]; 16.41/6.09 18[label="List.nubByNubBy' (==) (xw40 : xw41) []",fontsize=16,color="black",shape="box"];18 -> 23[label="",style="solid", color="black", weight=3]; 16.41/6.09 19[label="List.nubByNubBy' (==) [] []",fontsize=16,color="black",shape="box"];19 -> 24[label="",style="solid", color="black", weight=3]; 16.41/6.09 193[label="xw80 : xw81 ++ foldl (flip (List.deleteBy (==))) xw9 (xw10 : xw11)",fontsize=16,color="green",shape="box"];193 -> 204[label="",style="dashed", color="green", weight=3]; 16.41/6.09 194[label="foldl (flip (List.deleteBy (==))) xw9 (xw10 : xw11)",fontsize=16,color="black",shape="box"];194 -> 205[label="",style="solid", color="black", weight=3]; 16.41/6.09 23[label="List.nubByNubBy'2 (==) (xw40 : xw41) []",fontsize=16,color="black",shape="box"];23 -> 28[label="",style="solid", color="black", weight=3]; 16.41/6.09 24[label="List.nubByNubBy'3 (==) [] []",fontsize=16,color="black",shape="box"];24 -> 29[label="",style="solid", color="black", weight=3]; 16.41/6.09 204 -> 153[label="",style="dashed", color="red", weight=0]; 16.41/6.09 204[label="xw81 ++ foldl (flip (List.deleteBy (==))) xw9 (xw10 : xw11)",fontsize=16,color="magenta"];204 -> 218[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 205[label="foldl (flip (List.deleteBy (==))) (flip (List.deleteBy (==)) xw9 xw10) xw11",fontsize=16,color="burlywood",shape="triangle"];2060[label="xw11/xw110 : xw111",fontsize=10,color="white",style="solid",shape="box"];205 -> 2060[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2060 -> 219[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2061[label="xw11/[]",fontsize=10,color="white",style="solid",shape="box"];205 -> 2061[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2061 -> 220[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 28[label="List.nubByNubBy'1 (==) xw40 xw41 [] (List.elem_by (==) xw40 [])",fontsize=16,color="black",shape="box"];28 -> 33[label="",style="solid", color="black", weight=3]; 16.41/6.09 29[label="[]",fontsize=16,color="green",shape="box"];218[label="xw81",fontsize=16,color="green",shape="box"];219[label="foldl (flip (List.deleteBy (==))) (flip (List.deleteBy (==)) xw9 xw10) (xw110 : xw111)",fontsize=16,color="black",shape="box"];219 -> 227[label="",style="solid", color="black", weight=3]; 16.41/6.09 220[label="foldl (flip (List.deleteBy (==))) (flip (List.deleteBy (==)) xw9 xw10) []",fontsize=16,color="black",shape="box"];220 -> 228[label="",style="solid", color="black", weight=3]; 16.41/6.09 33[label="List.nubByNubBy'1 (==) xw40 xw41 [] False",fontsize=16,color="black",shape="box"];33 -> 37[label="",style="solid", color="black", weight=3]; 16.41/6.09 227 -> 205[label="",style="dashed", color="red", weight=0]; 16.41/6.09 227[label="foldl (flip (List.deleteBy (==))) (flip (List.deleteBy (==)) (flip (List.deleteBy (==)) xw9 xw10) xw110) xw111",fontsize=16,color="magenta"];227 -> 235[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 227 -> 236[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 227 -> 237[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 228[label="flip (List.deleteBy (==)) xw9 xw10",fontsize=16,color="black",shape="triangle"];228 -> 238[label="",style="solid", color="black", weight=3]; 16.41/6.09 37[label="List.nubByNubBy'0 (==) xw40 xw41 [] otherwise",fontsize=16,color="black",shape="box"];37 -> 42[label="",style="solid", color="black", weight=3]; 16.41/6.09 235 -> 228[label="",style="dashed", color="red", weight=0]; 16.41/6.09 235[label="flip (List.deleteBy (==)) xw9 xw10",fontsize=16,color="magenta"];236[label="xw111",fontsize=16,color="green",shape="box"];237[label="xw110",fontsize=16,color="green",shape="box"];238[label="List.deleteBy (==) xw10 xw9",fontsize=16,color="burlywood",shape="triangle"];2062[label="xw9/xw90 : xw91",fontsize=10,color="white",style="solid",shape="box"];238 -> 2062[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2062 -> 245[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2063[label="xw9/[]",fontsize=10,color="white",style="solid",shape="box"];238 -> 2063[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2063 -> 246[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 42[label="List.nubByNubBy'0 (==) xw40 xw41 [] True",fontsize=16,color="black",shape="box"];42 -> 49[label="",style="solid", color="black", weight=3]; 16.41/6.09 245[label="List.deleteBy (==) xw10 (xw90 : xw91)",fontsize=16,color="black",shape="box"];245 -> 259[label="",style="solid", color="black", weight=3]; 16.41/6.09 246[label="List.deleteBy (==) xw10 []",fontsize=16,color="black",shape="box"];246 -> 260[label="",style="solid", color="black", weight=3]; 16.41/6.09 49[label="xw40 : List.nubByNubBy' (==) xw41 (xw40 : [])",fontsize=16,color="green",shape="box"];49 -> 56[label="",style="dashed", color="green", weight=3]; 16.41/6.09 259 -> 273[label="",style="dashed", color="red", weight=0]; 16.41/6.09 259[label="List.deleteBy0 xw91 xw90 (==) xw10 ((==) xw10 xw90)",fontsize=16,color="magenta"];259 -> 274[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 259 -> 275[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 259 -> 276[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 259 -> 277[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 260[label="[]",fontsize=16,color="green",shape="box"];56 -> 1379[label="",style="dashed", color="red", weight=0]; 16.41/6.09 56[label="List.nubByNubBy' (==) xw41 (xw40 : [])",fontsize=16,color="magenta"];56 -> 1380[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 56 -> 1381[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 56 -> 1382[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 274[label="xw10",fontsize=16,color="green",shape="box"];275[label="xw90",fontsize=16,color="green",shape="box"];276[label="xw91",fontsize=16,color="green",shape="box"];277[label="(==) xw10 xw90",fontsize=16,color="blue",shape="box"];2064[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];277 -> 2064[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2064 -> 278[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2065[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];277 -> 2065[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2065 -> 279[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2066[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];277 -> 2066[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2066 -> 280[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2067[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];277 -> 2067[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2067 -> 281[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2068[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];277 -> 2068[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2068 -> 282[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2069[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];277 -> 2069[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2069 -> 283[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2070[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];277 -> 2070[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2070 -> 284[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2071[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];277 -> 2071[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2071 -> 285[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2072[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];277 -> 2072[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2072 -> 286[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2073[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];277 -> 2073[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2073 -> 287[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2074[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];277 -> 2074[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2074 -> 288[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2075[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];277 -> 2075[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2075 -> 289[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2076[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];277 -> 2076[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2076 -> 290[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2077[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];277 -> 2077[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2077 -> 291[label="",style="solid", color="blue", weight=3]; 16.41/6.09 273[label="List.deleteBy0 xw17 xw18 (==) xw19 xw20",fontsize=16,color="burlywood",shape="triangle"];2078[label="xw20/False",fontsize=10,color="white",style="solid",shape="box"];273 -> 2078[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2078 -> 292[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2079[label="xw20/True",fontsize=10,color="white",style="solid",shape="box"];273 -> 2079[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2079 -> 293[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 1380[label="xw40",fontsize=16,color="green",shape="box"];1381[label="xw41",fontsize=16,color="green",shape="box"];1382[label="[]",fontsize=16,color="green",shape="box"];1379[label="List.nubByNubBy' (==) xw106 (xw107 : xw108)",fontsize=16,color="burlywood",shape="triangle"];2080[label="xw106/xw1060 : xw1061",fontsize=10,color="white",style="solid",shape="box"];1379 -> 2080[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2080 -> 1554[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2081[label="xw106/[]",fontsize=10,color="white",style="solid",shape="box"];1379 -> 2081[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2081 -> 1555[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 278[label="(==) xw10 xw90",fontsize=16,color="black",shape="triangle"];278 -> 306[label="",style="solid", color="black", weight=3]; 16.41/6.09 279[label="(==) xw10 xw90",fontsize=16,color="black",shape="triangle"];279 -> 307[label="",style="solid", color="black", weight=3]; 16.41/6.09 280[label="(==) xw10 xw90",fontsize=16,color="black",shape="triangle"];280 -> 308[label="",style="solid", color="black", weight=3]; 16.41/6.09 281[label="(==) xw10 xw90",fontsize=16,color="black",shape="triangle"];281 -> 309[label="",style="solid", color="black", weight=3]; 16.41/6.09 282[label="(==) xw10 xw90",fontsize=16,color="black",shape="triangle"];282 -> 310[label="",style="solid", color="black", weight=3]; 16.41/6.09 283[label="(==) xw10 xw90",fontsize=16,color="black",shape="triangle"];283 -> 311[label="",style="solid", color="black", weight=3]; 16.41/6.09 284[label="(==) xw10 xw90",fontsize=16,color="black",shape="triangle"];284 -> 312[label="",style="solid", color="black", weight=3]; 16.41/6.09 285[label="(==) xw10 xw90",fontsize=16,color="black",shape="triangle"];285 -> 313[label="",style="solid", color="black", weight=3]; 16.41/6.09 286[label="(==) xw10 xw90",fontsize=16,color="black",shape="triangle"];286 -> 314[label="",style="solid", color="black", weight=3]; 16.41/6.09 287[label="(==) xw10 xw90",fontsize=16,color="burlywood",shape="triangle"];2082[label="xw10/LT",fontsize=10,color="white",style="solid",shape="box"];287 -> 2082[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2082 -> 315[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2083[label="xw10/EQ",fontsize=10,color="white",style="solid",shape="box"];287 -> 2083[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2083 -> 316[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2084[label="xw10/GT",fontsize=10,color="white",style="solid",shape="box"];287 -> 2084[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2084 -> 317[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 288[label="(==) xw10 xw90",fontsize=16,color="black",shape="triangle"];288 -> 318[label="",style="solid", color="black", weight=3]; 16.41/6.09 289[label="(==) xw10 xw90",fontsize=16,color="black",shape="triangle"];289 -> 319[label="",style="solid", color="black", weight=3]; 16.41/6.09 290[label="(==) xw10 xw90",fontsize=16,color="black",shape="triangle"];290 -> 320[label="",style="solid", color="black", weight=3]; 16.41/6.09 291[label="(==) xw10 xw90",fontsize=16,color="black",shape="triangle"];291 -> 321[label="",style="solid", color="black", weight=3]; 16.41/6.09 292[label="List.deleteBy0 xw17 xw18 (==) xw19 False",fontsize=16,color="black",shape="box"];292 -> 322[label="",style="solid", color="black", weight=3]; 16.41/6.09 293[label="List.deleteBy0 xw17 xw18 (==) xw19 True",fontsize=16,color="black",shape="box"];293 -> 323[label="",style="solid", color="black", weight=3]; 16.41/6.09 1554[label="List.nubByNubBy' (==) (xw1060 : xw1061) (xw107 : xw108)",fontsize=16,color="black",shape="box"];1554 -> 1556[label="",style="solid", color="black", weight=3]; 16.41/6.09 1555[label="List.nubByNubBy' (==) [] (xw107 : xw108)",fontsize=16,color="black",shape="box"];1555 -> 1557[label="",style="solid", color="black", weight=3]; 16.41/6.09 306[label="error []",fontsize=16,color="red",shape="box"];307[label="error []",fontsize=16,color="red",shape="box"];308[label="error []",fontsize=16,color="red",shape="box"];309[label="error []",fontsize=16,color="red",shape="box"];310[label="error []",fontsize=16,color="red",shape="box"];311[label="error []",fontsize=16,color="red",shape="box"];312[label="error []",fontsize=16,color="red",shape="box"];313[label="error []",fontsize=16,color="red",shape="box"];314[label="error []",fontsize=16,color="red",shape="box"];315[label="(==) LT xw90",fontsize=16,color="burlywood",shape="box"];2085[label="xw90/LT",fontsize=10,color="white",style="solid",shape="box"];315 -> 2085[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2085 -> 330[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2086[label="xw90/EQ",fontsize=10,color="white",style="solid",shape="box"];315 -> 2086[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2086 -> 331[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2087[label="xw90/GT",fontsize=10,color="white",style="solid",shape="box"];315 -> 2087[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2087 -> 332[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 316[label="(==) EQ xw90",fontsize=16,color="burlywood",shape="box"];2088[label="xw90/LT",fontsize=10,color="white",style="solid",shape="box"];316 -> 2088[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2088 -> 333[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2089[label="xw90/EQ",fontsize=10,color="white",style="solid",shape="box"];316 -> 2089[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2089 -> 334[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2090[label="xw90/GT",fontsize=10,color="white",style="solid",shape="box"];316 -> 2090[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2090 -> 335[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 317[label="(==) GT xw90",fontsize=16,color="burlywood",shape="box"];2091[label="xw90/LT",fontsize=10,color="white",style="solid",shape="box"];317 -> 2091[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2091 -> 336[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2092[label="xw90/EQ",fontsize=10,color="white",style="solid",shape="box"];317 -> 2092[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2092 -> 337[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2093[label="xw90/GT",fontsize=10,color="white",style="solid",shape="box"];317 -> 2093[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2093 -> 338[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 318[label="error []",fontsize=16,color="red",shape="box"];319[label="error []",fontsize=16,color="red",shape="box"];320[label="error []",fontsize=16,color="red",shape="box"];321[label="error []",fontsize=16,color="red",shape="box"];322[label="xw18 : List.deleteBy (==) xw19 xw17",fontsize=16,color="green",shape="box"];322 -> 339[label="",style="dashed", color="green", weight=3]; 16.41/6.09 323[label="xw17",fontsize=16,color="green",shape="box"];1556[label="List.nubByNubBy'2 (==) (xw1060 : xw1061) (xw107 : xw108)",fontsize=16,color="black",shape="box"];1556 -> 1558[label="",style="solid", color="black", weight=3]; 16.41/6.09 1557[label="List.nubByNubBy'3 (==) [] (xw107 : xw108)",fontsize=16,color="black",shape="box"];1557 -> 1559[label="",style="solid", color="black", weight=3]; 16.41/6.09 330[label="(==) LT LT",fontsize=16,color="black",shape="box"];330 -> 342[label="",style="solid", color="black", weight=3]; 16.41/6.09 331[label="(==) LT EQ",fontsize=16,color="black",shape="box"];331 -> 343[label="",style="solid", color="black", weight=3]; 16.41/6.09 332[label="(==) LT GT",fontsize=16,color="black",shape="box"];332 -> 344[label="",style="solid", color="black", weight=3]; 16.41/6.09 333[label="(==) EQ LT",fontsize=16,color="black",shape="box"];333 -> 345[label="",style="solid", color="black", weight=3]; 16.41/6.09 334[label="(==) EQ EQ",fontsize=16,color="black",shape="box"];334 -> 346[label="",style="solid", color="black", weight=3]; 16.41/6.09 335[label="(==) EQ GT",fontsize=16,color="black",shape="box"];335 -> 347[label="",style="solid", color="black", weight=3]; 16.41/6.09 336[label="(==) GT LT",fontsize=16,color="black",shape="box"];336 -> 348[label="",style="solid", color="black", weight=3]; 16.41/6.09 337[label="(==) GT EQ",fontsize=16,color="black",shape="box"];337 -> 349[label="",style="solid", color="black", weight=3]; 16.41/6.09 338[label="(==) GT GT",fontsize=16,color="black",shape="box"];338 -> 350[label="",style="solid", color="black", weight=3]; 16.41/6.09 339 -> 238[label="",style="dashed", color="red", weight=0]; 16.41/6.09 339[label="List.deleteBy (==) xw19 xw17",fontsize=16,color="magenta"];339 -> 351[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 339 -> 352[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1558[label="List.nubByNubBy'1 (==) xw1060 xw1061 (xw107 : xw108) (List.elem_by (==) xw1060 (xw107 : xw108))",fontsize=16,color="black",shape="box"];1558 -> 1560[label="",style="solid", color="black", weight=3]; 16.41/6.09 1559[label="[]",fontsize=16,color="green",shape="box"];342[label="True",fontsize=16,color="green",shape="box"];343[label="False",fontsize=16,color="green",shape="box"];344[label="False",fontsize=16,color="green",shape="box"];345[label="False",fontsize=16,color="green",shape="box"];346[label="True",fontsize=16,color="green",shape="box"];347[label="False",fontsize=16,color="green",shape="box"];348[label="False",fontsize=16,color="green",shape="box"];349[label="False",fontsize=16,color="green",shape="box"];350[label="True",fontsize=16,color="green",shape="box"];351[label="xw17",fontsize=16,color="green",shape="box"];352[label="xw19",fontsize=16,color="green",shape="box"];1560 -> 1936[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1560[label="List.nubByNubBy'1 (==) xw1060 xw1061 (xw107 : xw108) ((==) xw107 xw1060 || List.elem_by (==) xw1060 xw108)",fontsize=16,color="magenta"];1560 -> 1937[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1560 -> 1938[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1560 -> 1939[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1560 -> 1940[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1560 -> 1941[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1560 -> 1942[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1937[label="xw107",fontsize=16,color="green",shape="box"];1938[label="xw108",fontsize=16,color="green",shape="box"];1939[label="xw1061",fontsize=16,color="green",shape="box"];1940[label="(==) xw107 xw1060",fontsize=16,color="blue",shape="box"];2094[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];1940 -> 2094[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2094 -> 1949[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2095[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];1940 -> 2095[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2095 -> 1950[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2096[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];1940 -> 2096[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2096 -> 1951[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2097[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];1940 -> 2097[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2097 -> 1952[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2098[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];1940 -> 2098[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2098 -> 1953[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2099[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];1940 -> 2099[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2099 -> 1954[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2100[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];1940 -> 2100[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2100 -> 1955[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2101[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];1940 -> 2101[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2101 -> 1956[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2102[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];1940 -> 2102[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2102 -> 1957[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2103[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];1940 -> 2103[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2103 -> 1958[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2104[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];1940 -> 2104[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2104 -> 1959[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2105[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];1940 -> 2105[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2105 -> 1960[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2106[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];1940 -> 2106[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2106 -> 1961[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2107[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];1940 -> 2107[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2107 -> 1962[label="",style="solid", color="blue", weight=3]; 16.41/6.09 1941[label="xw1060",fontsize=16,color="green",shape="box"];1942[label="xw108",fontsize=16,color="green",shape="box"];1936[label="List.nubByNubBy'1 (==) xw198 xw199 (xw200 : xw201) (xw202 || List.elem_by (==) xw198 xw203)",fontsize=16,color="burlywood",shape="triangle"];2108[label="xw202/False",fontsize=10,color="white",style="solid",shape="box"];1936 -> 2108[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2108 -> 1963[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2109[label="xw202/True",fontsize=10,color="white",style="solid",shape="box"];1936 -> 2109[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2109 -> 1964[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 1949 -> 278[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1949[label="(==) xw107 xw1060",fontsize=16,color="magenta"];1949 -> 1965[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1949 -> 1966[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1950 -> 279[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1950[label="(==) xw107 xw1060",fontsize=16,color="magenta"];1950 -> 1967[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1950 -> 1968[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1951 -> 280[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1951[label="(==) xw107 xw1060",fontsize=16,color="magenta"];1951 -> 1969[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1951 -> 1970[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1952 -> 281[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1952[label="(==) xw107 xw1060",fontsize=16,color="magenta"];1952 -> 1971[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1952 -> 1972[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1953 -> 282[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1953[label="(==) xw107 xw1060",fontsize=16,color="magenta"];1953 -> 1973[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1953 -> 1974[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1954 -> 283[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1954[label="(==) xw107 xw1060",fontsize=16,color="magenta"];1954 -> 1975[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1954 -> 1976[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1955 -> 284[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1955[label="(==) xw107 xw1060",fontsize=16,color="magenta"];1955 -> 1977[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1955 -> 1978[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1956 -> 285[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1956[label="(==) xw107 xw1060",fontsize=16,color="magenta"];1956 -> 1979[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1956 -> 1980[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1957 -> 286[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1957[label="(==) xw107 xw1060",fontsize=16,color="magenta"];1957 -> 1981[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1957 -> 1982[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1958 -> 287[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1958[label="(==) xw107 xw1060",fontsize=16,color="magenta"];1958 -> 1983[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1958 -> 1984[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1959 -> 288[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1959[label="(==) xw107 xw1060",fontsize=16,color="magenta"];1959 -> 1985[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1959 -> 1986[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1960 -> 289[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1960[label="(==) xw107 xw1060",fontsize=16,color="magenta"];1960 -> 1987[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1960 -> 1988[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1961 -> 290[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1961[label="(==) xw107 xw1060",fontsize=16,color="magenta"];1961 -> 1989[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1961 -> 1990[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1962 -> 291[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1962[label="(==) xw107 xw1060",fontsize=16,color="magenta"];1962 -> 1991[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1962 -> 1992[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1963[label="List.nubByNubBy'1 (==) xw198 xw199 (xw200 : xw201) (False || List.elem_by (==) xw198 xw203)",fontsize=16,color="black",shape="box"];1963 -> 1993[label="",style="solid", color="black", weight=3]; 16.41/6.09 1964[label="List.nubByNubBy'1 (==) xw198 xw199 (xw200 : xw201) (True || List.elem_by (==) xw198 xw203)",fontsize=16,color="black",shape="box"];1964 -> 1994[label="",style="solid", color="black", weight=3]; 16.41/6.09 1965[label="xw1060",fontsize=16,color="green",shape="box"];1966[label="xw107",fontsize=16,color="green",shape="box"];1967[label="xw1060",fontsize=16,color="green",shape="box"];1968[label="xw107",fontsize=16,color="green",shape="box"];1969[label="xw1060",fontsize=16,color="green",shape="box"];1970[label="xw107",fontsize=16,color="green",shape="box"];1971[label="xw1060",fontsize=16,color="green",shape="box"];1972[label="xw107",fontsize=16,color="green",shape="box"];1973[label="xw1060",fontsize=16,color="green",shape="box"];1974[label="xw107",fontsize=16,color="green",shape="box"];1975[label="xw1060",fontsize=16,color="green",shape="box"];1976[label="xw107",fontsize=16,color="green",shape="box"];1977[label="xw1060",fontsize=16,color="green",shape="box"];1978[label="xw107",fontsize=16,color="green",shape="box"];1979[label="xw1060",fontsize=16,color="green",shape="box"];1980[label="xw107",fontsize=16,color="green",shape="box"];1981[label="xw1060",fontsize=16,color="green",shape="box"];1982[label="xw107",fontsize=16,color="green",shape="box"];1983[label="xw1060",fontsize=16,color="green",shape="box"];1984[label="xw107",fontsize=16,color="green",shape="box"];1985[label="xw1060",fontsize=16,color="green",shape="box"];1986[label="xw107",fontsize=16,color="green",shape="box"];1987[label="xw1060",fontsize=16,color="green",shape="box"];1988[label="xw107",fontsize=16,color="green",shape="box"];1989[label="xw1060",fontsize=16,color="green",shape="box"];1990[label="xw107",fontsize=16,color="green",shape="box"];1991[label="xw1060",fontsize=16,color="green",shape="box"];1992[label="xw107",fontsize=16,color="green",shape="box"];1993[label="List.nubByNubBy'1 (==) xw198 xw199 (xw200 : xw201) (List.elem_by (==) xw198 xw203)",fontsize=16,color="burlywood",shape="box"];2110[label="xw203/xw2030 : xw2031",fontsize=10,color="white",style="solid",shape="box"];1993 -> 2110[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2110 -> 1995[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 2111[label="xw203/[]",fontsize=10,color="white",style="solid",shape="box"];1993 -> 2111[label="",style="solid", color="burlywood", weight=9]; 16.41/6.09 2111 -> 1996[label="",style="solid", color="burlywood", weight=3]; 16.41/6.09 1994[label="List.nubByNubBy'1 (==) xw198 xw199 (xw200 : xw201) True",fontsize=16,color="black",shape="box"];1994 -> 1997[label="",style="solid", color="black", weight=3]; 16.41/6.09 1995[label="List.nubByNubBy'1 (==) xw198 xw199 (xw200 : xw201) (List.elem_by (==) xw198 (xw2030 : xw2031))",fontsize=16,color="black",shape="box"];1995 -> 1998[label="",style="solid", color="black", weight=3]; 16.41/6.09 1996[label="List.nubByNubBy'1 (==) xw198 xw199 (xw200 : xw201) (List.elem_by (==) xw198 [])",fontsize=16,color="black",shape="box"];1996 -> 1999[label="",style="solid", color="black", weight=3]; 16.41/6.09 1997 -> 1379[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1997[label="List.nubByNubBy' (==) xw199 (xw200 : xw201)",fontsize=16,color="magenta"];1997 -> 2000[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1997 -> 2001[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1997 -> 2002[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1998 -> 1936[label="",style="dashed", color="red", weight=0]; 16.41/6.09 1998[label="List.nubByNubBy'1 (==) xw198 xw199 (xw200 : xw201) ((==) xw2030 xw198 || List.elem_by (==) xw198 xw2031)",fontsize=16,color="magenta"];1998 -> 2003[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1998 -> 2004[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 1999[label="List.nubByNubBy'1 (==) xw198 xw199 (xw200 : xw201) False",fontsize=16,color="black",shape="box"];1999 -> 2005[label="",style="solid", color="black", weight=3]; 16.41/6.09 2000[label="xw200",fontsize=16,color="green",shape="box"];2001[label="xw199",fontsize=16,color="green",shape="box"];2002[label="xw201",fontsize=16,color="green",shape="box"];2003[label="(==) xw2030 xw198",fontsize=16,color="blue",shape="box"];2112[label="== :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];2003 -> 2112[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2112 -> 2006[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2113[label="== :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];2003 -> 2113[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2113 -> 2007[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2114[label="== :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];2003 -> 2114[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2114 -> 2008[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2115[label="== :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];2003 -> 2115[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2115 -> 2009[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2116[label="== :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];2003 -> 2116[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2116 -> 2010[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2117[label="== :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];2003 -> 2117[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2117 -> 2011[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2118[label="== :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];2003 -> 2118[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2118 -> 2012[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2119[label="== :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];2003 -> 2119[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2119 -> 2013[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2120[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];2003 -> 2120[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2120 -> 2014[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2121[label="== :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];2003 -> 2121[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2121 -> 2015[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2122[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];2003 -> 2122[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2122 -> 2016[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2123[label="== :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];2003 -> 2123[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2123 -> 2017[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2124[label="== :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];2003 -> 2124[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2124 -> 2018[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2125[label="== :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];2003 -> 2125[label="",style="solid", color="blue", weight=9]; 16.41/6.09 2125 -> 2019[label="",style="solid", color="blue", weight=3]; 16.41/6.09 2004[label="xw2031",fontsize=16,color="green",shape="box"];2005[label="List.nubByNubBy'0 (==) xw198 xw199 (xw200 : xw201) otherwise",fontsize=16,color="black",shape="box"];2005 -> 2020[label="",style="solid", color="black", weight=3]; 16.41/6.09 2006 -> 278[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2006[label="(==) xw2030 xw198",fontsize=16,color="magenta"];2006 -> 2021[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2006 -> 2022[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2007 -> 279[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2007[label="(==) xw2030 xw198",fontsize=16,color="magenta"];2007 -> 2023[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2007 -> 2024[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2008 -> 280[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2008[label="(==) xw2030 xw198",fontsize=16,color="magenta"];2008 -> 2025[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2008 -> 2026[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2009 -> 281[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2009[label="(==) xw2030 xw198",fontsize=16,color="magenta"];2009 -> 2027[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2009 -> 2028[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2010 -> 282[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2010[label="(==) xw2030 xw198",fontsize=16,color="magenta"];2010 -> 2029[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2010 -> 2030[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2011 -> 283[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2011[label="(==) xw2030 xw198",fontsize=16,color="magenta"];2011 -> 2031[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2011 -> 2032[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2012 -> 284[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2012[label="(==) xw2030 xw198",fontsize=16,color="magenta"];2012 -> 2033[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2012 -> 2034[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2013 -> 285[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2013[label="(==) xw2030 xw198",fontsize=16,color="magenta"];2013 -> 2035[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2013 -> 2036[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2014 -> 286[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2014[label="(==) xw2030 xw198",fontsize=16,color="magenta"];2014 -> 2037[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2014 -> 2038[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2015 -> 287[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2015[label="(==) xw2030 xw198",fontsize=16,color="magenta"];2015 -> 2039[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2015 -> 2040[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2016 -> 288[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2016[label="(==) xw2030 xw198",fontsize=16,color="magenta"];2016 -> 2041[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2016 -> 2042[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2017 -> 289[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2017[label="(==) xw2030 xw198",fontsize=16,color="magenta"];2017 -> 2043[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2017 -> 2044[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2018 -> 290[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2018[label="(==) xw2030 xw198",fontsize=16,color="magenta"];2018 -> 2045[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2018 -> 2046[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2019 -> 291[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2019[label="(==) xw2030 xw198",fontsize=16,color="magenta"];2019 -> 2047[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2019 -> 2048[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2020[label="List.nubByNubBy'0 (==) xw198 xw199 (xw200 : xw201) True",fontsize=16,color="black",shape="box"];2020 -> 2049[label="",style="solid", color="black", weight=3]; 16.41/6.09 2021[label="xw198",fontsize=16,color="green",shape="box"];2022[label="xw2030",fontsize=16,color="green",shape="box"];2023[label="xw198",fontsize=16,color="green",shape="box"];2024[label="xw2030",fontsize=16,color="green",shape="box"];2025[label="xw198",fontsize=16,color="green",shape="box"];2026[label="xw2030",fontsize=16,color="green",shape="box"];2027[label="xw198",fontsize=16,color="green",shape="box"];2028[label="xw2030",fontsize=16,color="green",shape="box"];2029[label="xw198",fontsize=16,color="green",shape="box"];2030[label="xw2030",fontsize=16,color="green",shape="box"];2031[label="xw198",fontsize=16,color="green",shape="box"];2032[label="xw2030",fontsize=16,color="green",shape="box"];2033[label="xw198",fontsize=16,color="green",shape="box"];2034[label="xw2030",fontsize=16,color="green",shape="box"];2035[label="xw198",fontsize=16,color="green",shape="box"];2036[label="xw2030",fontsize=16,color="green",shape="box"];2037[label="xw198",fontsize=16,color="green",shape="box"];2038[label="xw2030",fontsize=16,color="green",shape="box"];2039[label="xw198",fontsize=16,color="green",shape="box"];2040[label="xw2030",fontsize=16,color="green",shape="box"];2041[label="xw198",fontsize=16,color="green",shape="box"];2042[label="xw2030",fontsize=16,color="green",shape="box"];2043[label="xw198",fontsize=16,color="green",shape="box"];2044[label="xw2030",fontsize=16,color="green",shape="box"];2045[label="xw198",fontsize=16,color="green",shape="box"];2046[label="xw2030",fontsize=16,color="green",shape="box"];2047[label="xw198",fontsize=16,color="green",shape="box"];2048[label="xw2030",fontsize=16,color="green",shape="box"];2049[label="xw198 : List.nubByNubBy' (==) xw199 (xw198 : xw200 : xw201)",fontsize=16,color="green",shape="box"];2049 -> 2050[label="",style="dashed", color="green", weight=3]; 16.41/6.09 2050 -> 1379[label="",style="dashed", color="red", weight=0]; 16.41/6.09 2050[label="List.nubByNubBy' (==) xw199 (xw198 : xw200 : xw201)",fontsize=16,color="magenta"];2050 -> 2051[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2050 -> 2052[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2050 -> 2053[label="",style="dashed", color="magenta", weight=3]; 16.41/6.09 2051[label="xw198",fontsize=16,color="green",shape="box"];2052[label="xw199",fontsize=16,color="green",shape="box"];2053[label="xw200 : xw201",fontsize=16,color="green",shape="box"];} 16.41/6.09 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (10) 16.41/6.09 Complex Obligation (AND) 16.41/6.09 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (11) 16.41/6.09 Obligation: 16.41/6.09 Q DP problem: 16.41/6.09 The TRS P consists of the following rules: 16.41/6.09 16.41/6.09 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, [], ba) -> new_nubByNubBy'(xw199, xw198, :(xw200, xw201), ba) 16.41/6.09 new_nubByNubBy'(:(xw1060, xw1061), xw107, xw108, bb) -> new_nubByNubBy'1(xw1060, xw1061, xw107, xw108, new_esEs0(xw107, xw1060, bb), xw108, bb) 16.41/6.09 new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) 16.41/6.09 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, :(xw2030, xw2031), ba) -> new_nubByNubBy'1(xw198, xw199, xw200, xw201, new_esEs(xw2030, xw198, ba), xw2031, ba) 16.41/6.09 16.41/6.09 The TRS R consists of the following rules: 16.41/6.09 16.41/6.09 new_esEs10(EQ, GT) -> False 16.41/6.09 new_esEs10(GT, EQ) -> False 16.41/6.09 new_esEs5(xw10, xw90) -> error([]) 16.41/6.09 new_esEs10(LT, GT) -> False 16.41/6.09 new_esEs10(GT, LT) -> False 16.41/6.09 new_esEs1(xw10, xw90) -> error([]) 16.41/6.09 new_esEs2(xw10, xw90, bc, bd) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, app(ty_Maybe, ed)) -> new_esEs12(xw107, xw1060, ed) 16.41/6.09 new_esEs(xw2030, xw198, ty_Bool) -> new_esEs5(xw2030, xw198) 16.41/6.09 new_esEs(xw2030, xw198, ty_@0) -> new_esEs14(xw2030, xw198) 16.41/6.09 new_esEs4(xw10, xw90, da, db, dc) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Ordering) -> new_esEs10(xw107, xw1060) 16.41/6.09 new_esEs(xw2030, xw198, app(app(ty_@2, cc), cd)) -> new_esEs6(xw2030, xw198, cc, cd) 16.41/6.09 new_esEs(xw2030, xw198, app(app(ty_Either, ca), cb)) -> new_esEs2(xw2030, xw198, ca, cb) 16.41/6.09 new_esEs9(xw10, xw90) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Integer) -> new_esEs9(xw107, xw1060) 16.41/6.09 new_esEs(xw2030, xw198, ty_Char) -> new_esEs7(xw2030, xw198) 16.41/6.09 new_esEs6(xw10, xw90, eg, eh) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Double) -> new_esEs8(xw107, xw1060) 16.41/6.09 new_esEs(xw2030, xw198, app(ty_Maybe, cf)) -> new_esEs12(xw2030, xw198, cf) 16.41/6.09 new_esEs0(xw107, xw1060, app(ty_[], ec)) -> new_esEs3(xw107, xw1060, ec) 16.41/6.09 new_esEs(xw2030, xw198, ty_Double) -> new_esEs8(xw2030, xw198) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Char) -> new_esEs7(xw107, xw1060) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Int) -> new_esEs11(xw107, xw1060) 16.41/6.09 new_esEs3(xw10, xw90, be) -> error([]) 16.41/6.09 new_esEs8(xw10, xw90) -> error([]) 16.41/6.09 new_esEs(xw2030, xw198, ty_Ordering) -> new_esEs10(xw2030, xw198) 16.41/6.09 new_esEs10(EQ, EQ) -> True 16.41/6.09 new_esEs0(xw107, xw1060, ty_@0) -> new_esEs14(xw107, xw1060) 16.41/6.09 new_esEs11(xw10, xw90) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, app(app(ty_@2, ea), eb)) -> new_esEs6(xw107, xw1060, ea, eb) 16.41/6.09 new_esEs(xw2030, xw198, ty_Integer) -> new_esEs9(xw2030, xw198) 16.41/6.09 new_esEs7(xw10, xw90) -> error([]) 16.41/6.09 new_esEs(xw2030, xw198, app(ty_[], ce)) -> new_esEs3(xw2030, xw198, ce) 16.41/6.09 new_esEs0(xw107, xw1060, app(ty_Ratio, ee)) -> new_esEs13(xw107, xw1060, ee) 16.41/6.09 new_esEs(xw2030, xw198, ty_Int) -> new_esEs11(xw2030, xw198) 16.41/6.09 new_esEs(xw2030, xw198, ty_Float) -> new_esEs1(xw2030, xw198) 16.41/6.09 new_esEs(xw2030, xw198, app(ty_Ratio, cg)) -> new_esEs13(xw2030, xw198, cg) 16.41/6.09 new_esEs0(xw107, xw1060, app(app(app(ty_@3, dd), de), df)) -> new_esEs4(xw107, xw1060, dd, de, df) 16.41/6.09 new_esEs10(LT, LT) -> True 16.41/6.09 new_esEs14(xw10, xw90) -> error([]) 16.41/6.09 new_esEs12(xw10, xw90, ef) -> error([]) 16.41/6.09 new_esEs13(xw10, xw90, fa) -> error([]) 16.41/6.09 new_esEs10(LT, EQ) -> False 16.41/6.09 new_esEs10(EQ, LT) -> False 16.41/6.09 new_esEs10(GT, GT) -> True 16.41/6.09 new_esEs0(xw107, xw1060, app(app(ty_Either, dg), dh)) -> new_esEs2(xw107, xw1060, dg, dh) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Bool) -> new_esEs5(xw107, xw1060) 16.41/6.09 new_esEs(xw2030, xw198, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw2030, xw198, bf, bg, bh) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Float) -> new_esEs1(xw107, xw1060) 16.41/6.09 16.41/6.09 The set Q consists of the following terms: 16.41/6.09 16.41/6.09 new_esEs0(x0, x1, ty_Int) 16.41/6.09 new_esEs(x0, x1, ty_Integer) 16.41/6.09 new_esEs7(x0, x1) 16.41/6.09 new_esEs10(GT, GT) 16.41/6.09 new_esEs0(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.09 new_esEs0(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.09 new_esEs14(x0, x1) 16.41/6.09 new_esEs5(x0, x1) 16.41/6.09 new_esEs(x0, x1, ty_Char) 16.41/6.09 new_esEs13(x0, x1, x2) 16.41/6.09 new_esEs10(LT, EQ) 16.41/6.09 new_esEs10(EQ, LT) 16.41/6.09 new_esEs3(x0, x1, x2) 16.41/6.09 new_esEs(x0, x1, ty_Double) 16.41/6.09 new_esEs10(LT, GT) 16.41/6.09 new_esEs10(GT, LT) 16.41/6.09 new_esEs11(x0, x1) 16.41/6.09 new_esEs0(x0, x1, ty_Integer) 16.41/6.09 new_esEs0(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.09 new_esEs(x0, x1, ty_Float) 16.41/6.09 new_esEs8(x0, x1) 16.41/6.09 new_esEs10(EQ, EQ) 16.41/6.09 new_esEs(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.09 new_esEs(x0, x1, ty_Ordering) 16.41/6.09 new_esEs0(x0, x1, ty_Float) 16.41/6.09 new_esEs6(x0, x1, x2, x3) 16.41/6.09 new_esEs0(x0, x1, app(ty_[], x2)) 16.41/6.09 new_esEs0(x0, x1, ty_Bool) 16.41/6.09 new_esEs0(x0, x1, app(ty_Maybe, x2)) 16.41/6.09 new_esEs0(x0, x1, app(ty_Ratio, x2)) 16.41/6.09 new_esEs(x0, x1, ty_Bool) 16.41/6.09 new_esEs0(x0, x1, ty_Ordering) 16.41/6.09 new_esEs0(x0, x1, ty_Double) 16.41/6.09 new_esEs(x0, x1, app(ty_Maybe, x2)) 16.41/6.09 new_esEs(x0, x1, app(ty_Ratio, x2)) 16.41/6.09 new_esEs1(x0, x1) 16.41/6.09 new_esEs(x0, x1, app(ty_[], x2)) 16.41/6.09 new_esEs0(x0, x1, ty_Char) 16.41/6.09 new_esEs2(x0, x1, x2, x3) 16.41/6.09 new_esEs9(x0, x1) 16.41/6.09 new_esEs0(x0, x1, ty_@0) 16.41/6.09 new_esEs(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.09 new_esEs(x0, x1, ty_@0) 16.41/6.09 new_esEs10(EQ, GT) 16.41/6.09 new_esEs10(GT, EQ) 16.41/6.09 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.09 new_esEs(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.09 new_esEs12(x0, x1, x2) 16.41/6.09 new_esEs10(LT, LT) 16.41/6.09 new_esEs(x0, x1, ty_Int) 16.41/6.09 16.41/6.09 We have to consider all minimal (P,Q,R)-chains. 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (12) TransformationProof (EQUIVALENT) 16.41/6.09 By narrowing [LPAR04] the rule new_nubByNubBy'(:(xw1060, xw1061), xw107, xw108, bb) -> new_nubByNubBy'1(xw1060, xw1061, xw107, xw108, new_esEs0(xw107, xw1060, bb), xw108, bb) at position [4] we obtained the following new rules [LPAR04]: 16.41/6.09 16.41/6.09 (new_nubByNubBy'(:(x1, y1), x0, y3, app(ty_Maybe, x2)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs12(x0, x1, x2), y3, app(ty_Maybe, x2)),new_nubByNubBy'(:(x1, y1), x0, y3, app(ty_Maybe, x2)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs12(x0, x1, x2), y3, app(ty_Maybe, x2))) 16.41/6.09 (new_nubByNubBy'(:(x1, y1), x0, y3, ty_Ordering) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs10(x0, x1), y3, ty_Ordering),new_nubByNubBy'(:(x1, y1), x0, y3, ty_Ordering) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs10(x0, x1), y3, ty_Ordering)) 16.41/6.09 (new_nubByNubBy'(:(x1, y1), x0, y3, ty_Integer) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs9(x0, x1), y3, ty_Integer),new_nubByNubBy'(:(x1, y1), x0, y3, ty_Integer) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs9(x0, x1), y3, ty_Integer)) 16.41/6.09 (new_nubByNubBy'(:(x1, y1), x0, y3, ty_Double) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs8(x0, x1), y3, ty_Double),new_nubByNubBy'(:(x1, y1), x0, y3, ty_Double) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs8(x0, x1), y3, ty_Double)) 16.41/6.09 (new_nubByNubBy'(:(x1, y1), x0, y3, app(ty_[], x2)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs3(x0, x1, x2), y3, app(ty_[], x2)),new_nubByNubBy'(:(x1, y1), x0, y3, app(ty_[], x2)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs3(x0, x1, x2), y3, app(ty_[], x2))) 16.41/6.09 (new_nubByNubBy'(:(x1, y1), x0, y3, ty_Char) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs7(x0, x1), y3, ty_Char),new_nubByNubBy'(:(x1, y1), x0, y3, ty_Char) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs7(x0, x1), y3, ty_Char)) 16.41/6.09 (new_nubByNubBy'(:(x1, y1), x0, y3, ty_Int) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs11(x0, x1), y3, ty_Int),new_nubByNubBy'(:(x1, y1), x0, y3, ty_Int) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs11(x0, x1), y3, ty_Int)) 16.41/6.09 (new_nubByNubBy'(:(x1, y1), x0, y3, ty_@0) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs14(x0, x1), y3, ty_@0),new_nubByNubBy'(:(x1, y1), x0, y3, ty_@0) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs14(x0, x1), y3, ty_@0)) 16.41/6.09 (new_nubByNubBy'(:(x1, y1), x0, y3, app(app(ty_@2, x2), x3)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs6(x0, x1, x2, x3), y3, app(app(ty_@2, x2), x3)),new_nubByNubBy'(:(x1, y1), x0, y3, app(app(ty_@2, x2), x3)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs6(x0, x1, x2, x3), y3, app(app(ty_@2, x2), x3))) 16.41/6.09 (new_nubByNubBy'(:(x1, y1), x0, y3, app(ty_Ratio, x2)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs13(x0, x1, x2), y3, app(ty_Ratio, x2)),new_nubByNubBy'(:(x1, y1), x0, y3, app(ty_Ratio, x2)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs13(x0, x1, x2), y3, app(ty_Ratio, x2))) 16.41/6.09 (new_nubByNubBy'(:(x1, y1), x0, y3, app(app(app(ty_@3, x2), x3), x4)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs4(x0, x1, x2, x3, x4), y3, app(app(app(ty_@3, x2), x3), x4)),new_nubByNubBy'(:(x1, y1), x0, y3, app(app(app(ty_@3, x2), x3), x4)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs4(x0, x1, x2, x3, x4), y3, app(app(app(ty_@3, x2), x3), x4))) 16.41/6.09 (new_nubByNubBy'(:(x1, y1), x0, y3, app(app(ty_Either, x2), x3)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs2(x0, x1, x2, x3), y3, app(app(ty_Either, x2), x3)),new_nubByNubBy'(:(x1, y1), x0, y3, app(app(ty_Either, x2), x3)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs2(x0, x1, x2, x3), y3, app(app(ty_Either, x2), x3))) 16.41/6.09 (new_nubByNubBy'(:(x1, y1), x0, y3, ty_Bool) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs5(x0, x1), y3, ty_Bool),new_nubByNubBy'(:(x1, y1), x0, y3, ty_Bool) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs5(x0, x1), y3, ty_Bool)) 16.41/6.09 (new_nubByNubBy'(:(x1, y1), x0, y3, ty_Float) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs1(x0, x1), y3, ty_Float),new_nubByNubBy'(:(x1, y1), x0, y3, ty_Float) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs1(x0, x1), y3, ty_Float)) 16.41/6.09 16.41/6.09 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (13) 16.41/6.09 Obligation: 16.41/6.09 Q DP problem: 16.41/6.09 The TRS P consists of the following rules: 16.41/6.09 16.41/6.09 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, [], ba) -> new_nubByNubBy'(xw199, xw198, :(xw200, xw201), ba) 16.41/6.09 new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) 16.41/6.09 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, :(xw2030, xw2031), ba) -> new_nubByNubBy'1(xw198, xw199, xw200, xw201, new_esEs(xw2030, xw198, ba), xw2031, ba) 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, app(ty_Maybe, x2)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs12(x0, x1, x2), y3, app(ty_Maybe, x2)) 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, ty_Ordering) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs10(x0, x1), y3, ty_Ordering) 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, ty_Integer) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs9(x0, x1), y3, ty_Integer) 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, ty_Double) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs8(x0, x1), y3, ty_Double) 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, app(ty_[], x2)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs3(x0, x1, x2), y3, app(ty_[], x2)) 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, ty_Char) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs7(x0, x1), y3, ty_Char) 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, ty_Int) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs11(x0, x1), y3, ty_Int) 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, ty_@0) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs14(x0, x1), y3, ty_@0) 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, app(app(ty_@2, x2), x3)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs6(x0, x1, x2, x3), y3, app(app(ty_@2, x2), x3)) 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, app(ty_Ratio, x2)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs13(x0, x1, x2), y3, app(ty_Ratio, x2)) 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, app(app(app(ty_@3, x2), x3), x4)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs4(x0, x1, x2, x3, x4), y3, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, app(app(ty_Either, x2), x3)) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs2(x0, x1, x2, x3), y3, app(app(ty_Either, x2), x3)) 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, ty_Bool) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs5(x0, x1), y3, ty_Bool) 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, ty_Float) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs1(x0, x1), y3, ty_Float) 16.41/6.09 16.41/6.09 The TRS R consists of the following rules: 16.41/6.09 16.41/6.09 new_esEs10(EQ, GT) -> False 16.41/6.09 new_esEs10(GT, EQ) -> False 16.41/6.09 new_esEs5(xw10, xw90) -> error([]) 16.41/6.09 new_esEs10(LT, GT) -> False 16.41/6.09 new_esEs10(GT, LT) -> False 16.41/6.09 new_esEs1(xw10, xw90) -> error([]) 16.41/6.09 new_esEs2(xw10, xw90, bc, bd) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, app(ty_Maybe, ed)) -> new_esEs12(xw107, xw1060, ed) 16.41/6.09 new_esEs(xw2030, xw198, ty_Bool) -> new_esEs5(xw2030, xw198) 16.41/6.09 new_esEs(xw2030, xw198, ty_@0) -> new_esEs14(xw2030, xw198) 16.41/6.09 new_esEs4(xw10, xw90, da, db, dc) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Ordering) -> new_esEs10(xw107, xw1060) 16.41/6.09 new_esEs(xw2030, xw198, app(app(ty_@2, cc), cd)) -> new_esEs6(xw2030, xw198, cc, cd) 16.41/6.09 new_esEs(xw2030, xw198, app(app(ty_Either, ca), cb)) -> new_esEs2(xw2030, xw198, ca, cb) 16.41/6.09 new_esEs9(xw10, xw90) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Integer) -> new_esEs9(xw107, xw1060) 16.41/6.09 new_esEs(xw2030, xw198, ty_Char) -> new_esEs7(xw2030, xw198) 16.41/6.09 new_esEs6(xw10, xw90, eg, eh) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Double) -> new_esEs8(xw107, xw1060) 16.41/6.09 new_esEs(xw2030, xw198, app(ty_Maybe, cf)) -> new_esEs12(xw2030, xw198, cf) 16.41/6.09 new_esEs0(xw107, xw1060, app(ty_[], ec)) -> new_esEs3(xw107, xw1060, ec) 16.41/6.09 new_esEs(xw2030, xw198, ty_Double) -> new_esEs8(xw2030, xw198) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Char) -> new_esEs7(xw107, xw1060) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Int) -> new_esEs11(xw107, xw1060) 16.41/6.09 new_esEs3(xw10, xw90, be) -> error([]) 16.41/6.09 new_esEs8(xw10, xw90) -> error([]) 16.41/6.09 new_esEs(xw2030, xw198, ty_Ordering) -> new_esEs10(xw2030, xw198) 16.41/6.09 new_esEs10(EQ, EQ) -> True 16.41/6.09 new_esEs0(xw107, xw1060, ty_@0) -> new_esEs14(xw107, xw1060) 16.41/6.09 new_esEs11(xw10, xw90) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, app(app(ty_@2, ea), eb)) -> new_esEs6(xw107, xw1060, ea, eb) 16.41/6.09 new_esEs(xw2030, xw198, ty_Integer) -> new_esEs9(xw2030, xw198) 16.41/6.09 new_esEs7(xw10, xw90) -> error([]) 16.41/6.09 new_esEs(xw2030, xw198, app(ty_[], ce)) -> new_esEs3(xw2030, xw198, ce) 16.41/6.09 new_esEs0(xw107, xw1060, app(ty_Ratio, ee)) -> new_esEs13(xw107, xw1060, ee) 16.41/6.09 new_esEs(xw2030, xw198, ty_Int) -> new_esEs11(xw2030, xw198) 16.41/6.09 new_esEs(xw2030, xw198, ty_Float) -> new_esEs1(xw2030, xw198) 16.41/6.09 new_esEs(xw2030, xw198, app(ty_Ratio, cg)) -> new_esEs13(xw2030, xw198, cg) 16.41/6.09 new_esEs0(xw107, xw1060, app(app(app(ty_@3, dd), de), df)) -> new_esEs4(xw107, xw1060, dd, de, df) 16.41/6.09 new_esEs10(LT, LT) -> True 16.41/6.09 new_esEs14(xw10, xw90) -> error([]) 16.41/6.09 new_esEs12(xw10, xw90, ef) -> error([]) 16.41/6.09 new_esEs13(xw10, xw90, fa) -> error([]) 16.41/6.09 new_esEs10(LT, EQ) -> False 16.41/6.09 new_esEs10(EQ, LT) -> False 16.41/6.09 new_esEs10(GT, GT) -> True 16.41/6.09 new_esEs0(xw107, xw1060, app(app(ty_Either, dg), dh)) -> new_esEs2(xw107, xw1060, dg, dh) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Bool) -> new_esEs5(xw107, xw1060) 16.41/6.09 new_esEs(xw2030, xw198, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw2030, xw198, bf, bg, bh) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Float) -> new_esEs1(xw107, xw1060) 16.41/6.09 16.41/6.09 The set Q consists of the following terms: 16.41/6.09 16.41/6.09 new_esEs0(x0, x1, ty_Int) 16.41/6.09 new_esEs(x0, x1, ty_Integer) 16.41/6.09 new_esEs7(x0, x1) 16.41/6.09 new_esEs10(GT, GT) 16.41/6.09 new_esEs0(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.09 new_esEs0(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.09 new_esEs14(x0, x1) 16.41/6.09 new_esEs5(x0, x1) 16.41/6.09 new_esEs(x0, x1, ty_Char) 16.41/6.09 new_esEs13(x0, x1, x2) 16.41/6.09 new_esEs10(LT, EQ) 16.41/6.09 new_esEs10(EQ, LT) 16.41/6.09 new_esEs3(x0, x1, x2) 16.41/6.09 new_esEs(x0, x1, ty_Double) 16.41/6.09 new_esEs10(LT, GT) 16.41/6.09 new_esEs10(GT, LT) 16.41/6.09 new_esEs11(x0, x1) 16.41/6.09 new_esEs0(x0, x1, ty_Integer) 16.41/6.09 new_esEs0(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.09 new_esEs(x0, x1, ty_Float) 16.41/6.09 new_esEs8(x0, x1) 16.41/6.09 new_esEs10(EQ, EQ) 16.41/6.09 new_esEs(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.09 new_esEs(x0, x1, ty_Ordering) 16.41/6.09 new_esEs0(x0, x1, ty_Float) 16.41/6.09 new_esEs6(x0, x1, x2, x3) 16.41/6.09 new_esEs0(x0, x1, app(ty_[], x2)) 16.41/6.09 new_esEs0(x0, x1, ty_Bool) 16.41/6.09 new_esEs0(x0, x1, app(ty_Maybe, x2)) 16.41/6.09 new_esEs0(x0, x1, app(ty_Ratio, x2)) 16.41/6.09 new_esEs(x0, x1, ty_Bool) 16.41/6.09 new_esEs0(x0, x1, ty_Ordering) 16.41/6.09 new_esEs0(x0, x1, ty_Double) 16.41/6.09 new_esEs(x0, x1, app(ty_Maybe, x2)) 16.41/6.09 new_esEs(x0, x1, app(ty_Ratio, x2)) 16.41/6.09 new_esEs1(x0, x1) 16.41/6.09 new_esEs(x0, x1, app(ty_[], x2)) 16.41/6.09 new_esEs0(x0, x1, ty_Char) 16.41/6.09 new_esEs2(x0, x1, x2, x3) 16.41/6.09 new_esEs9(x0, x1) 16.41/6.09 new_esEs0(x0, x1, ty_@0) 16.41/6.09 new_esEs(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.09 new_esEs(x0, x1, ty_@0) 16.41/6.09 new_esEs10(EQ, GT) 16.41/6.09 new_esEs10(GT, EQ) 16.41/6.09 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.09 new_esEs(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.09 new_esEs12(x0, x1, x2) 16.41/6.09 new_esEs10(LT, LT) 16.41/6.09 new_esEs(x0, x1, ty_Int) 16.41/6.09 16.41/6.09 We have to consider all minimal (P,Q,R)-chains. 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (14) DependencyGraphProof (EQUIVALENT) 16.41/6.09 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 13 less nodes. 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (15) 16.41/6.09 Obligation: 16.41/6.09 Q DP problem: 16.41/6.09 The TRS P consists of the following rules: 16.41/6.09 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, ty_Ordering) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs10(x0, x1), y3, ty_Ordering) 16.41/6.09 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, [], ba) -> new_nubByNubBy'(xw199, xw198, :(xw200, xw201), ba) 16.41/6.09 new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) 16.41/6.09 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, :(xw2030, xw2031), ba) -> new_nubByNubBy'1(xw198, xw199, xw200, xw201, new_esEs(xw2030, xw198, ba), xw2031, ba) 16.41/6.09 16.41/6.09 The TRS R consists of the following rules: 16.41/6.09 16.41/6.09 new_esEs10(EQ, GT) -> False 16.41/6.09 new_esEs10(GT, EQ) -> False 16.41/6.09 new_esEs5(xw10, xw90) -> error([]) 16.41/6.09 new_esEs10(LT, GT) -> False 16.41/6.09 new_esEs10(GT, LT) -> False 16.41/6.09 new_esEs1(xw10, xw90) -> error([]) 16.41/6.09 new_esEs2(xw10, xw90, bc, bd) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, app(ty_Maybe, ed)) -> new_esEs12(xw107, xw1060, ed) 16.41/6.09 new_esEs(xw2030, xw198, ty_Bool) -> new_esEs5(xw2030, xw198) 16.41/6.09 new_esEs(xw2030, xw198, ty_@0) -> new_esEs14(xw2030, xw198) 16.41/6.09 new_esEs4(xw10, xw90, da, db, dc) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Ordering) -> new_esEs10(xw107, xw1060) 16.41/6.09 new_esEs(xw2030, xw198, app(app(ty_@2, cc), cd)) -> new_esEs6(xw2030, xw198, cc, cd) 16.41/6.09 new_esEs(xw2030, xw198, app(app(ty_Either, ca), cb)) -> new_esEs2(xw2030, xw198, ca, cb) 16.41/6.09 new_esEs9(xw10, xw90) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Integer) -> new_esEs9(xw107, xw1060) 16.41/6.09 new_esEs(xw2030, xw198, ty_Char) -> new_esEs7(xw2030, xw198) 16.41/6.09 new_esEs6(xw10, xw90, eg, eh) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Double) -> new_esEs8(xw107, xw1060) 16.41/6.09 new_esEs(xw2030, xw198, app(ty_Maybe, cf)) -> new_esEs12(xw2030, xw198, cf) 16.41/6.09 new_esEs0(xw107, xw1060, app(ty_[], ec)) -> new_esEs3(xw107, xw1060, ec) 16.41/6.09 new_esEs(xw2030, xw198, ty_Double) -> new_esEs8(xw2030, xw198) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Char) -> new_esEs7(xw107, xw1060) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Int) -> new_esEs11(xw107, xw1060) 16.41/6.09 new_esEs3(xw10, xw90, be) -> error([]) 16.41/6.09 new_esEs8(xw10, xw90) -> error([]) 16.41/6.09 new_esEs(xw2030, xw198, ty_Ordering) -> new_esEs10(xw2030, xw198) 16.41/6.09 new_esEs10(EQ, EQ) -> True 16.41/6.09 new_esEs0(xw107, xw1060, ty_@0) -> new_esEs14(xw107, xw1060) 16.41/6.09 new_esEs11(xw10, xw90) -> error([]) 16.41/6.09 new_esEs0(xw107, xw1060, app(app(ty_@2, ea), eb)) -> new_esEs6(xw107, xw1060, ea, eb) 16.41/6.09 new_esEs(xw2030, xw198, ty_Integer) -> new_esEs9(xw2030, xw198) 16.41/6.09 new_esEs7(xw10, xw90) -> error([]) 16.41/6.09 new_esEs(xw2030, xw198, app(ty_[], ce)) -> new_esEs3(xw2030, xw198, ce) 16.41/6.09 new_esEs0(xw107, xw1060, app(ty_Ratio, ee)) -> new_esEs13(xw107, xw1060, ee) 16.41/6.09 new_esEs(xw2030, xw198, ty_Int) -> new_esEs11(xw2030, xw198) 16.41/6.09 new_esEs(xw2030, xw198, ty_Float) -> new_esEs1(xw2030, xw198) 16.41/6.09 new_esEs(xw2030, xw198, app(ty_Ratio, cg)) -> new_esEs13(xw2030, xw198, cg) 16.41/6.09 new_esEs0(xw107, xw1060, app(app(app(ty_@3, dd), de), df)) -> new_esEs4(xw107, xw1060, dd, de, df) 16.41/6.09 new_esEs10(LT, LT) -> True 16.41/6.09 new_esEs14(xw10, xw90) -> error([]) 16.41/6.09 new_esEs12(xw10, xw90, ef) -> error([]) 16.41/6.09 new_esEs13(xw10, xw90, fa) -> error([]) 16.41/6.09 new_esEs10(LT, EQ) -> False 16.41/6.09 new_esEs10(EQ, LT) -> False 16.41/6.09 new_esEs10(GT, GT) -> True 16.41/6.09 new_esEs0(xw107, xw1060, app(app(ty_Either, dg), dh)) -> new_esEs2(xw107, xw1060, dg, dh) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Bool) -> new_esEs5(xw107, xw1060) 16.41/6.09 new_esEs(xw2030, xw198, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw2030, xw198, bf, bg, bh) 16.41/6.09 new_esEs0(xw107, xw1060, ty_Float) -> new_esEs1(xw107, xw1060) 16.41/6.09 16.41/6.09 The set Q consists of the following terms: 16.41/6.09 16.41/6.09 new_esEs0(x0, x1, ty_Int) 16.41/6.09 new_esEs(x0, x1, ty_Integer) 16.41/6.09 new_esEs7(x0, x1) 16.41/6.09 new_esEs10(GT, GT) 16.41/6.09 new_esEs0(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.09 new_esEs0(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.09 new_esEs14(x0, x1) 16.41/6.09 new_esEs5(x0, x1) 16.41/6.09 new_esEs(x0, x1, ty_Char) 16.41/6.09 new_esEs13(x0, x1, x2) 16.41/6.09 new_esEs10(LT, EQ) 16.41/6.09 new_esEs10(EQ, LT) 16.41/6.09 new_esEs3(x0, x1, x2) 16.41/6.09 new_esEs(x0, x1, ty_Double) 16.41/6.09 new_esEs10(LT, GT) 16.41/6.09 new_esEs10(GT, LT) 16.41/6.09 new_esEs11(x0, x1) 16.41/6.09 new_esEs0(x0, x1, ty_Integer) 16.41/6.09 new_esEs0(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.09 new_esEs(x0, x1, ty_Float) 16.41/6.09 new_esEs8(x0, x1) 16.41/6.09 new_esEs10(EQ, EQ) 16.41/6.09 new_esEs(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.09 new_esEs(x0, x1, ty_Ordering) 16.41/6.09 new_esEs0(x0, x1, ty_Float) 16.41/6.09 new_esEs6(x0, x1, x2, x3) 16.41/6.09 new_esEs0(x0, x1, app(ty_[], x2)) 16.41/6.09 new_esEs0(x0, x1, ty_Bool) 16.41/6.09 new_esEs0(x0, x1, app(ty_Maybe, x2)) 16.41/6.09 new_esEs0(x0, x1, app(ty_Ratio, x2)) 16.41/6.09 new_esEs(x0, x1, ty_Bool) 16.41/6.09 new_esEs0(x0, x1, ty_Ordering) 16.41/6.09 new_esEs0(x0, x1, ty_Double) 16.41/6.09 new_esEs(x0, x1, app(ty_Maybe, x2)) 16.41/6.09 new_esEs(x0, x1, app(ty_Ratio, x2)) 16.41/6.09 new_esEs1(x0, x1) 16.41/6.09 new_esEs(x0, x1, app(ty_[], x2)) 16.41/6.09 new_esEs0(x0, x1, ty_Char) 16.41/6.09 new_esEs2(x0, x1, x2, x3) 16.41/6.09 new_esEs9(x0, x1) 16.41/6.09 new_esEs0(x0, x1, ty_@0) 16.41/6.09 new_esEs(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.09 new_esEs(x0, x1, ty_@0) 16.41/6.09 new_esEs10(EQ, GT) 16.41/6.09 new_esEs10(GT, EQ) 16.41/6.09 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.09 new_esEs(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.09 new_esEs12(x0, x1, x2) 16.41/6.09 new_esEs10(LT, LT) 16.41/6.09 new_esEs(x0, x1, ty_Int) 16.41/6.09 16.41/6.09 We have to consider all minimal (P,Q,R)-chains. 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (16) UsableRulesProof (EQUIVALENT) 16.41/6.09 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 16.41/6.09 ---------------------------------------- 16.41/6.09 16.41/6.09 (17) 16.41/6.09 Obligation: 16.41/6.09 Q DP problem: 16.41/6.09 The TRS P consists of the following rules: 16.41/6.09 16.41/6.09 new_nubByNubBy'(:(x1, y1), x0, y3, ty_Ordering) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs10(x0, x1), y3, ty_Ordering) 16.41/6.09 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, [], ba) -> new_nubByNubBy'(xw199, xw198, :(xw200, xw201), ba) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, :(xw2030, xw2031), ba) -> new_nubByNubBy'1(xw198, xw199, xw200, xw201, new_esEs(xw2030, xw198, ba), xw2031, ba) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs(xw2030, xw198, ty_Bool) -> new_esEs5(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_@0) -> new_esEs14(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(app(ty_@2, cc), cd)) -> new_esEs6(xw2030, xw198, cc, cd) 16.41/6.10 new_esEs(xw2030, xw198, app(app(ty_Either, ca), cb)) -> new_esEs2(xw2030, xw198, ca, cb) 16.41/6.10 new_esEs(xw2030, xw198, ty_Char) -> new_esEs7(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_Maybe, cf)) -> new_esEs12(xw2030, xw198, cf) 16.41/6.10 new_esEs(xw2030, xw198, ty_Double) -> new_esEs8(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Ordering) -> new_esEs10(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Integer) -> new_esEs9(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_[], ce)) -> new_esEs3(xw2030, xw198, ce) 16.41/6.10 new_esEs(xw2030, xw198, ty_Int) -> new_esEs11(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Float) -> new_esEs1(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_Ratio, cg)) -> new_esEs13(xw2030, xw198, cg) 16.41/6.10 new_esEs(xw2030, xw198, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw2030, xw198, bf, bg, bh) 16.41/6.10 new_esEs4(xw10, xw90, da, db, dc) -> error([]) 16.41/6.10 new_esEs13(xw10, xw90, fa) -> error([]) 16.41/6.10 new_esEs1(xw10, xw90) -> error([]) 16.41/6.10 new_esEs11(xw10, xw90) -> error([]) 16.41/6.10 new_esEs3(xw10, xw90, be) -> error([]) 16.41/6.10 new_esEs9(xw10, xw90) -> error([]) 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 new_esEs8(xw10, xw90) -> error([]) 16.41/6.10 new_esEs12(xw10, xw90, ef) -> error([]) 16.41/6.10 new_esEs7(xw10, xw90) -> error([]) 16.41/6.10 new_esEs2(xw10, xw90, bc, bd) -> error([]) 16.41/6.10 new_esEs6(xw10, xw90, eg, eh) -> error([]) 16.41/6.10 new_esEs14(xw10, xw90) -> error([]) 16.41/6.10 new_esEs5(xw10, xw90) -> error([]) 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs0(x0, x1, ty_Int) 16.41/6.10 new_esEs(x0, x1, ty_Integer) 16.41/6.10 new_esEs7(x0, x1) 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs0(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs0(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs14(x0, x1) 16.41/6.10 new_esEs5(x0, x1) 16.41/6.10 new_esEs(x0, x1, ty_Char) 16.41/6.10 new_esEs13(x0, x1, x2) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs3(x0, x1, x2) 16.41/6.10 new_esEs(x0, x1, ty_Double) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs11(x0, x1) 16.41/6.10 new_esEs0(x0, x1, ty_Integer) 16.41/6.10 new_esEs0(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_esEs(x0, x1, ty_Float) 16.41/6.10 new_esEs8(x0, x1) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 new_esEs(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs(x0, x1, ty_Ordering) 16.41/6.10 new_esEs0(x0, x1, ty_Float) 16.41/6.10 new_esEs6(x0, x1, x2, x3) 16.41/6.10 new_esEs0(x0, x1, app(ty_[], x2)) 16.41/6.10 new_esEs0(x0, x1, ty_Bool) 16.41/6.10 new_esEs0(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_esEs0(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs(x0, x1, ty_Bool) 16.41/6.10 new_esEs0(x0, x1, ty_Ordering) 16.41/6.10 new_esEs0(x0, x1, ty_Double) 16.41/6.10 new_esEs(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_esEs(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs1(x0, x1) 16.41/6.10 new_esEs(x0, x1, app(ty_[], x2)) 16.41/6.10 new_esEs0(x0, x1, ty_Char) 16.41/6.10 new_esEs2(x0, x1, x2, x3) 16.41/6.10 new_esEs9(x0, x1) 16.41/6.10 new_esEs0(x0, x1, ty_@0) 16.41/6.10 new_esEs(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs(x0, x1, ty_@0) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.10 new_esEs(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_esEs12(x0, x1, x2) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs(x0, x1, ty_Int) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (18) QReductionProof (EQUIVALENT) 16.41/6.10 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 16.41/6.10 16.41/6.10 new_esEs0(x0, x1, ty_Int) 16.41/6.10 new_esEs0(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs0(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs0(x0, x1, ty_Integer) 16.41/6.10 new_esEs0(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_esEs0(x0, x1, ty_Float) 16.41/6.10 new_esEs0(x0, x1, app(ty_[], x2)) 16.41/6.10 new_esEs0(x0, x1, ty_Bool) 16.41/6.10 new_esEs0(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_esEs0(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs0(x0, x1, ty_Ordering) 16.41/6.10 new_esEs0(x0, x1, ty_Double) 16.41/6.10 new_esEs0(x0, x1, ty_Char) 16.41/6.10 new_esEs0(x0, x1, ty_@0) 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (19) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_nubByNubBy'(:(x1, y1), x0, y3, ty_Ordering) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs10(x0, x1), y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, [], ba) -> new_nubByNubBy'(xw199, xw198, :(xw200, xw201), ba) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, :(xw2030, xw2031), ba) -> new_nubByNubBy'1(xw198, xw199, xw200, xw201, new_esEs(xw2030, xw198, ba), xw2031, ba) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs(xw2030, xw198, ty_Bool) -> new_esEs5(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_@0) -> new_esEs14(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(app(ty_@2, cc), cd)) -> new_esEs6(xw2030, xw198, cc, cd) 16.41/6.10 new_esEs(xw2030, xw198, app(app(ty_Either, ca), cb)) -> new_esEs2(xw2030, xw198, ca, cb) 16.41/6.10 new_esEs(xw2030, xw198, ty_Char) -> new_esEs7(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_Maybe, cf)) -> new_esEs12(xw2030, xw198, cf) 16.41/6.10 new_esEs(xw2030, xw198, ty_Double) -> new_esEs8(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Ordering) -> new_esEs10(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Integer) -> new_esEs9(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_[], ce)) -> new_esEs3(xw2030, xw198, ce) 16.41/6.10 new_esEs(xw2030, xw198, ty_Int) -> new_esEs11(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Float) -> new_esEs1(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_Ratio, cg)) -> new_esEs13(xw2030, xw198, cg) 16.41/6.10 new_esEs(xw2030, xw198, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw2030, xw198, bf, bg, bh) 16.41/6.10 new_esEs4(xw10, xw90, da, db, dc) -> error([]) 16.41/6.10 new_esEs13(xw10, xw90, fa) -> error([]) 16.41/6.10 new_esEs1(xw10, xw90) -> error([]) 16.41/6.10 new_esEs11(xw10, xw90) -> error([]) 16.41/6.10 new_esEs3(xw10, xw90, be) -> error([]) 16.41/6.10 new_esEs9(xw10, xw90) -> error([]) 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 new_esEs8(xw10, xw90) -> error([]) 16.41/6.10 new_esEs12(xw10, xw90, ef) -> error([]) 16.41/6.10 new_esEs7(xw10, xw90) -> error([]) 16.41/6.10 new_esEs2(xw10, xw90, bc, bd) -> error([]) 16.41/6.10 new_esEs6(xw10, xw90, eg, eh) -> error([]) 16.41/6.10 new_esEs14(xw10, xw90) -> error([]) 16.41/6.10 new_esEs5(xw10, xw90) -> error([]) 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs(x0, x1, ty_Integer) 16.41/6.10 new_esEs7(x0, x1) 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs14(x0, x1) 16.41/6.10 new_esEs5(x0, x1) 16.41/6.10 new_esEs(x0, x1, ty_Char) 16.41/6.10 new_esEs13(x0, x1, x2) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs3(x0, x1, x2) 16.41/6.10 new_esEs(x0, x1, ty_Double) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs11(x0, x1) 16.41/6.10 new_esEs(x0, x1, ty_Float) 16.41/6.10 new_esEs8(x0, x1) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 new_esEs(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs(x0, x1, ty_Ordering) 16.41/6.10 new_esEs6(x0, x1, x2, x3) 16.41/6.10 new_esEs(x0, x1, ty_Bool) 16.41/6.10 new_esEs(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_esEs(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs1(x0, x1) 16.41/6.10 new_esEs(x0, x1, app(ty_[], x2)) 16.41/6.10 new_esEs2(x0, x1, x2, x3) 16.41/6.10 new_esEs9(x0, x1) 16.41/6.10 new_esEs(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs(x0, x1, ty_@0) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.10 new_esEs(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_esEs12(x0, x1, x2) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs(x0, x1, ty_Int) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (20) TransformationProof (EQUIVALENT) 16.41/6.10 By narrowing [LPAR04] the rule new_nubByNubBy'(:(x1, y1), x0, y3, ty_Ordering) -> new_nubByNubBy'1(x1, y1, x0, y3, new_esEs10(x0, x1), y3, ty_Ordering) at position [4] we obtained the following new rules [LPAR04]: 16.41/6.10 16.41/6.10 (new_nubByNubBy'(:(GT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, EQ, y3, False, y3, ty_Ordering),new_nubByNubBy'(:(GT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, EQ, y3, False, y3, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'(:(EQ, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, GT, y3, False, y3, ty_Ordering),new_nubByNubBy'(:(EQ, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, GT, y3, False, y3, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'(:(GT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, LT, y3, False, y3, ty_Ordering),new_nubByNubBy'(:(GT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, LT, y3, False, y3, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'(:(LT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, GT, y3, False, y3, ty_Ordering),new_nubByNubBy'(:(LT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, GT, y3, False, y3, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'(:(EQ, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, EQ, y3, True, y3, ty_Ordering),new_nubByNubBy'(:(EQ, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, EQ, y3, True, y3, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'(:(LT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, LT, y3, True, y3, ty_Ordering),new_nubByNubBy'(:(LT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, LT, y3, True, y3, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'(:(EQ, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, LT, y3, False, y3, ty_Ordering),new_nubByNubBy'(:(EQ, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, LT, y3, False, y3, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'(:(LT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, EQ, y3, False, y3, ty_Ordering),new_nubByNubBy'(:(LT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, EQ, y3, False, y3, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'(:(GT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, GT, y3, True, y3, ty_Ordering),new_nubByNubBy'(:(GT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, GT, y3, True, y3, ty_Ordering)) 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (21) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, [], ba) -> new_nubByNubBy'(xw199, xw198, :(xw200, xw201), ba) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, :(xw2030, xw2031), ba) -> new_nubByNubBy'1(xw198, xw199, xw200, xw201, new_esEs(xw2030, xw198, ba), xw2031, ba) 16.41/6.10 new_nubByNubBy'(:(GT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(GT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, EQ, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, LT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(GT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, GT, y3, True, y3, ty_Ordering) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs(xw2030, xw198, ty_Bool) -> new_esEs5(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_@0) -> new_esEs14(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(app(ty_@2, cc), cd)) -> new_esEs6(xw2030, xw198, cc, cd) 16.41/6.10 new_esEs(xw2030, xw198, app(app(ty_Either, ca), cb)) -> new_esEs2(xw2030, xw198, ca, cb) 16.41/6.10 new_esEs(xw2030, xw198, ty_Char) -> new_esEs7(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_Maybe, cf)) -> new_esEs12(xw2030, xw198, cf) 16.41/6.10 new_esEs(xw2030, xw198, ty_Double) -> new_esEs8(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Ordering) -> new_esEs10(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Integer) -> new_esEs9(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_[], ce)) -> new_esEs3(xw2030, xw198, ce) 16.41/6.10 new_esEs(xw2030, xw198, ty_Int) -> new_esEs11(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Float) -> new_esEs1(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_Ratio, cg)) -> new_esEs13(xw2030, xw198, cg) 16.41/6.10 new_esEs(xw2030, xw198, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw2030, xw198, bf, bg, bh) 16.41/6.10 new_esEs4(xw10, xw90, da, db, dc) -> error([]) 16.41/6.10 new_esEs13(xw10, xw90, fa) -> error([]) 16.41/6.10 new_esEs1(xw10, xw90) -> error([]) 16.41/6.10 new_esEs11(xw10, xw90) -> error([]) 16.41/6.10 new_esEs3(xw10, xw90, be) -> error([]) 16.41/6.10 new_esEs9(xw10, xw90) -> error([]) 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 new_esEs8(xw10, xw90) -> error([]) 16.41/6.10 new_esEs12(xw10, xw90, ef) -> error([]) 16.41/6.10 new_esEs7(xw10, xw90) -> error([]) 16.41/6.10 new_esEs2(xw10, xw90, bc, bd) -> error([]) 16.41/6.10 new_esEs6(xw10, xw90, eg, eh) -> error([]) 16.41/6.10 new_esEs14(xw10, xw90) -> error([]) 16.41/6.10 new_esEs5(xw10, xw90) -> error([]) 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs(x0, x1, ty_Integer) 16.41/6.10 new_esEs7(x0, x1) 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs14(x0, x1) 16.41/6.10 new_esEs5(x0, x1) 16.41/6.10 new_esEs(x0, x1, ty_Char) 16.41/6.10 new_esEs13(x0, x1, x2) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs3(x0, x1, x2) 16.41/6.10 new_esEs(x0, x1, ty_Double) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs11(x0, x1) 16.41/6.10 new_esEs(x0, x1, ty_Float) 16.41/6.10 new_esEs8(x0, x1) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 new_esEs(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs(x0, x1, ty_Ordering) 16.41/6.10 new_esEs6(x0, x1, x2, x3) 16.41/6.10 new_esEs(x0, x1, ty_Bool) 16.41/6.10 new_esEs(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_esEs(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs1(x0, x1) 16.41/6.10 new_esEs(x0, x1, app(ty_[], x2)) 16.41/6.10 new_esEs2(x0, x1, x2, x3) 16.41/6.10 new_esEs9(x0, x1) 16.41/6.10 new_esEs(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs(x0, x1, ty_@0) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.10 new_esEs(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_esEs12(x0, x1, x2) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs(x0, x1, ty_Int) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (22) TransformationProof (EQUIVALENT) 16.41/6.10 By narrowing [LPAR04] the rule new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, :(xw2030, xw2031), ba) -> new_nubByNubBy'1(xw198, xw199, xw200, xw201, new_esEs(xw2030, xw198, ba), xw2031, ba) at position [4] we obtained the following new rules [LPAR04]: 16.41/6.10 16.41/6.10 (new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Bool) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs5(x0, x1), y5, ty_Bool),new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Bool) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs5(x0, x1), y5, ty_Bool)) 16.41/6.10 (new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_@0) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs14(x0, x1), y5, ty_@0),new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_@0) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs14(x0, x1), y5, ty_@0)) 16.41/6.10 (new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(app(ty_@2, x2), x3)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs6(x0, x1, x2, x3), y5, app(app(ty_@2, x2), x3)),new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(app(ty_@2, x2), x3)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs6(x0, x1, x2, x3), y5, app(app(ty_@2, x2), x3))) 16.41/6.10 (new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(app(ty_Either, x2), x3)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs2(x0, x1, x2, x3), y5, app(app(ty_Either, x2), x3)),new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(app(ty_Either, x2), x3)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs2(x0, x1, x2, x3), y5, app(app(ty_Either, x2), x3))) 16.41/6.10 (new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Char) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs7(x0, x1), y5, ty_Char),new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Char) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs7(x0, x1), y5, ty_Char)) 16.41/6.10 (new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(ty_Maybe, x2)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs12(x0, x1, x2), y5, app(ty_Maybe, x2)),new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(ty_Maybe, x2)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs12(x0, x1, x2), y5, app(ty_Maybe, x2))) 16.41/6.10 (new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Double) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs8(x0, x1), y5, ty_Double),new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Double) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs8(x0, x1), y5, ty_Double)) 16.41/6.10 (new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Ordering) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs10(x0, x1), y5, ty_Ordering),new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Ordering) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs10(x0, x1), y5, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Integer) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs9(x0, x1), y5, ty_Integer),new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Integer) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs9(x0, x1), y5, ty_Integer)) 16.41/6.10 (new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(ty_[], x2)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs3(x0, x1, x2), y5, app(ty_[], x2)),new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(ty_[], x2)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs3(x0, x1, x2), y5, app(ty_[], x2))) 16.41/6.10 (new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Int) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs11(x0, x1), y5, ty_Int),new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Int) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs11(x0, x1), y5, ty_Int)) 16.41/6.10 (new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Float) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs1(x0, x1), y5, ty_Float),new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Float) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs1(x0, x1), y5, ty_Float)) 16.41/6.10 (new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(ty_Ratio, x2)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs13(x0, x1, x2), y5, app(ty_Ratio, x2)),new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(ty_Ratio, x2)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs13(x0, x1, x2), y5, app(ty_Ratio, x2))) 16.41/6.10 (new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(app(app(ty_@3, x2), x3), x4)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs4(x0, x1, x2, x3, x4), y5, app(app(app(ty_@3, x2), x3), x4)),new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(app(app(ty_@3, x2), x3), x4)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs4(x0, x1, x2, x3, x4), y5, app(app(app(ty_@3, x2), x3), x4))) 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (23) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, [], ba) -> new_nubByNubBy'(xw199, xw198, :(xw200, xw201), ba) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) 16.41/6.10 new_nubByNubBy'(:(GT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(GT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, EQ, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, LT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(GT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, GT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Bool) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs5(x0, x1), y5, ty_Bool) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_@0) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs14(x0, x1), y5, ty_@0) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(app(ty_@2, x2), x3)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs6(x0, x1, x2, x3), y5, app(app(ty_@2, x2), x3)) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(app(ty_Either, x2), x3)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs2(x0, x1, x2, x3), y5, app(app(ty_Either, x2), x3)) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Char) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs7(x0, x1), y5, ty_Char) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(ty_Maybe, x2)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs12(x0, x1, x2), y5, app(ty_Maybe, x2)) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Double) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs8(x0, x1), y5, ty_Double) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Ordering) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs10(x0, x1), y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Integer) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs9(x0, x1), y5, ty_Integer) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(ty_[], x2)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs3(x0, x1, x2), y5, app(ty_[], x2)) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Int) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs11(x0, x1), y5, ty_Int) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Float) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs1(x0, x1), y5, ty_Float) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(ty_Ratio, x2)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs13(x0, x1, x2), y5, app(ty_Ratio, x2)) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), app(app(app(ty_@3, x2), x3), x4)) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs4(x0, x1, x2, x3, x4), y5, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs(xw2030, xw198, ty_Bool) -> new_esEs5(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_@0) -> new_esEs14(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(app(ty_@2, cc), cd)) -> new_esEs6(xw2030, xw198, cc, cd) 16.41/6.10 new_esEs(xw2030, xw198, app(app(ty_Either, ca), cb)) -> new_esEs2(xw2030, xw198, ca, cb) 16.41/6.10 new_esEs(xw2030, xw198, ty_Char) -> new_esEs7(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_Maybe, cf)) -> new_esEs12(xw2030, xw198, cf) 16.41/6.10 new_esEs(xw2030, xw198, ty_Double) -> new_esEs8(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Ordering) -> new_esEs10(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Integer) -> new_esEs9(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_[], ce)) -> new_esEs3(xw2030, xw198, ce) 16.41/6.10 new_esEs(xw2030, xw198, ty_Int) -> new_esEs11(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Float) -> new_esEs1(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_Ratio, cg)) -> new_esEs13(xw2030, xw198, cg) 16.41/6.10 new_esEs(xw2030, xw198, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw2030, xw198, bf, bg, bh) 16.41/6.10 new_esEs4(xw10, xw90, da, db, dc) -> error([]) 16.41/6.10 new_esEs13(xw10, xw90, fa) -> error([]) 16.41/6.10 new_esEs1(xw10, xw90) -> error([]) 16.41/6.10 new_esEs11(xw10, xw90) -> error([]) 16.41/6.10 new_esEs3(xw10, xw90, be) -> error([]) 16.41/6.10 new_esEs9(xw10, xw90) -> error([]) 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 new_esEs8(xw10, xw90) -> error([]) 16.41/6.10 new_esEs12(xw10, xw90, ef) -> error([]) 16.41/6.10 new_esEs7(xw10, xw90) -> error([]) 16.41/6.10 new_esEs2(xw10, xw90, bc, bd) -> error([]) 16.41/6.10 new_esEs6(xw10, xw90, eg, eh) -> error([]) 16.41/6.10 new_esEs14(xw10, xw90) -> error([]) 16.41/6.10 new_esEs5(xw10, xw90) -> error([]) 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs(x0, x1, ty_Integer) 16.41/6.10 new_esEs7(x0, x1) 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs14(x0, x1) 16.41/6.10 new_esEs5(x0, x1) 16.41/6.10 new_esEs(x0, x1, ty_Char) 16.41/6.10 new_esEs13(x0, x1, x2) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs3(x0, x1, x2) 16.41/6.10 new_esEs(x0, x1, ty_Double) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs11(x0, x1) 16.41/6.10 new_esEs(x0, x1, ty_Float) 16.41/6.10 new_esEs8(x0, x1) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 new_esEs(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs(x0, x1, ty_Ordering) 16.41/6.10 new_esEs6(x0, x1, x2, x3) 16.41/6.10 new_esEs(x0, x1, ty_Bool) 16.41/6.10 new_esEs(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_esEs(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs1(x0, x1) 16.41/6.10 new_esEs(x0, x1, app(ty_[], x2)) 16.41/6.10 new_esEs2(x0, x1, x2, x3) 16.41/6.10 new_esEs9(x0, x1) 16.41/6.10 new_esEs(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs(x0, x1, ty_@0) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.10 new_esEs(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_esEs12(x0, x1, x2) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs(x0, x1, ty_Int) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (24) DependencyGraphProof (EQUIVALENT) 16.41/6.10 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 13 less nodes. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (25) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_nubByNubBy'(:(GT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, [], ba) -> new_nubByNubBy'(xw199, xw198, :(xw200, xw201), ba) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Ordering) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs10(x0, x1), y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) 16.41/6.10 new_nubByNubBy'(:(GT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, EQ, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, LT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(GT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, GT, y3, True, y3, ty_Ordering) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs(xw2030, xw198, ty_Bool) -> new_esEs5(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_@0) -> new_esEs14(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(app(ty_@2, cc), cd)) -> new_esEs6(xw2030, xw198, cc, cd) 16.41/6.10 new_esEs(xw2030, xw198, app(app(ty_Either, ca), cb)) -> new_esEs2(xw2030, xw198, ca, cb) 16.41/6.10 new_esEs(xw2030, xw198, ty_Char) -> new_esEs7(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_Maybe, cf)) -> new_esEs12(xw2030, xw198, cf) 16.41/6.10 new_esEs(xw2030, xw198, ty_Double) -> new_esEs8(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Ordering) -> new_esEs10(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Integer) -> new_esEs9(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_[], ce)) -> new_esEs3(xw2030, xw198, ce) 16.41/6.10 new_esEs(xw2030, xw198, ty_Int) -> new_esEs11(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, ty_Float) -> new_esEs1(xw2030, xw198) 16.41/6.10 new_esEs(xw2030, xw198, app(ty_Ratio, cg)) -> new_esEs13(xw2030, xw198, cg) 16.41/6.10 new_esEs(xw2030, xw198, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw2030, xw198, bf, bg, bh) 16.41/6.10 new_esEs4(xw10, xw90, da, db, dc) -> error([]) 16.41/6.10 new_esEs13(xw10, xw90, fa) -> error([]) 16.41/6.10 new_esEs1(xw10, xw90) -> error([]) 16.41/6.10 new_esEs11(xw10, xw90) -> error([]) 16.41/6.10 new_esEs3(xw10, xw90, be) -> error([]) 16.41/6.10 new_esEs9(xw10, xw90) -> error([]) 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 new_esEs8(xw10, xw90) -> error([]) 16.41/6.10 new_esEs12(xw10, xw90, ef) -> error([]) 16.41/6.10 new_esEs7(xw10, xw90) -> error([]) 16.41/6.10 new_esEs2(xw10, xw90, bc, bd) -> error([]) 16.41/6.10 new_esEs6(xw10, xw90, eg, eh) -> error([]) 16.41/6.10 new_esEs14(xw10, xw90) -> error([]) 16.41/6.10 new_esEs5(xw10, xw90) -> error([]) 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs(x0, x1, ty_Integer) 16.41/6.10 new_esEs7(x0, x1) 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs14(x0, x1) 16.41/6.10 new_esEs5(x0, x1) 16.41/6.10 new_esEs(x0, x1, ty_Char) 16.41/6.10 new_esEs13(x0, x1, x2) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs3(x0, x1, x2) 16.41/6.10 new_esEs(x0, x1, ty_Double) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs11(x0, x1) 16.41/6.10 new_esEs(x0, x1, ty_Float) 16.41/6.10 new_esEs8(x0, x1) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 new_esEs(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs(x0, x1, ty_Ordering) 16.41/6.10 new_esEs6(x0, x1, x2, x3) 16.41/6.10 new_esEs(x0, x1, ty_Bool) 16.41/6.10 new_esEs(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_esEs(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs1(x0, x1) 16.41/6.10 new_esEs(x0, x1, app(ty_[], x2)) 16.41/6.10 new_esEs2(x0, x1, x2, x3) 16.41/6.10 new_esEs9(x0, x1) 16.41/6.10 new_esEs(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs(x0, x1, ty_@0) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.10 new_esEs(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_esEs12(x0, x1, x2) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs(x0, x1, ty_Int) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (26) UsableRulesProof (EQUIVALENT) 16.41/6.10 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (27) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_nubByNubBy'(:(GT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, [], ba) -> new_nubByNubBy'(xw199, xw198, :(xw200, xw201), ba) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Ordering) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs10(x0, x1), y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) 16.41/6.10 new_nubByNubBy'(:(GT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, EQ, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, LT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(GT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, GT, y3, True, y3, ty_Ordering) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs(x0, x1, ty_Integer) 16.41/6.10 new_esEs7(x0, x1) 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs14(x0, x1) 16.41/6.10 new_esEs5(x0, x1) 16.41/6.10 new_esEs(x0, x1, ty_Char) 16.41/6.10 new_esEs13(x0, x1, x2) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs3(x0, x1, x2) 16.41/6.10 new_esEs(x0, x1, ty_Double) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs11(x0, x1) 16.41/6.10 new_esEs(x0, x1, ty_Float) 16.41/6.10 new_esEs8(x0, x1) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 new_esEs(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs(x0, x1, ty_Ordering) 16.41/6.10 new_esEs6(x0, x1, x2, x3) 16.41/6.10 new_esEs(x0, x1, ty_Bool) 16.41/6.10 new_esEs(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_esEs(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs1(x0, x1) 16.41/6.10 new_esEs(x0, x1, app(ty_[], x2)) 16.41/6.10 new_esEs2(x0, x1, x2, x3) 16.41/6.10 new_esEs9(x0, x1) 16.41/6.10 new_esEs(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs(x0, x1, ty_@0) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.10 new_esEs(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_esEs12(x0, x1, x2) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs(x0, x1, ty_Int) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (28) QReductionProof (EQUIVALENT) 16.41/6.10 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 16.41/6.10 16.41/6.10 new_esEs(x0, x1, ty_Integer) 16.41/6.10 new_esEs7(x0, x1) 16.41/6.10 new_esEs14(x0, x1) 16.41/6.10 new_esEs5(x0, x1) 16.41/6.10 new_esEs(x0, x1, ty_Char) 16.41/6.10 new_esEs13(x0, x1, x2) 16.41/6.10 new_esEs3(x0, x1, x2) 16.41/6.10 new_esEs(x0, x1, ty_Double) 16.41/6.10 new_esEs11(x0, x1) 16.41/6.10 new_esEs(x0, x1, ty_Float) 16.41/6.10 new_esEs8(x0, x1) 16.41/6.10 new_esEs(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs(x0, x1, ty_Ordering) 16.41/6.10 new_esEs6(x0, x1, x2, x3) 16.41/6.10 new_esEs(x0, x1, ty_Bool) 16.41/6.10 new_esEs(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_esEs(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs1(x0, x1) 16.41/6.10 new_esEs(x0, x1, app(ty_[], x2)) 16.41/6.10 new_esEs2(x0, x1, x2, x3) 16.41/6.10 new_esEs9(x0, x1) 16.41/6.10 new_esEs(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs(x0, x1, ty_@0) 16.41/6.10 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.10 new_esEs(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_esEs12(x0, x1, x2) 16.41/6.10 new_esEs(x0, x1, ty_Int) 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (29) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_nubByNubBy'(:(GT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, [], ba) -> new_nubByNubBy'(xw199, xw198, :(xw200, xw201), ba) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Ordering) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs10(x0, x1), y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) 16.41/6.10 new_nubByNubBy'(:(GT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, EQ, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, LT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(GT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, GT, y3, True, y3, ty_Ordering) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (30) TransformationProof (EQUIVALENT) 16.41/6.10 By narrowing [LPAR04] the rule new_nubByNubBy'1(x1, y1, y2, y3, False, :(x0, y5), ty_Ordering) -> new_nubByNubBy'1(x1, y1, y2, y3, new_esEs10(x0, x1), y5, ty_Ordering) at position [4] we obtained the following new rules [LPAR04]: 16.41/6.10 16.41/6.10 (new_nubByNubBy'1(GT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering),new_nubByNubBy'1(GT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(EQ, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering),new_nubByNubBy'1(EQ, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(GT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering),new_nubByNubBy'1(GT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(LT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering),new_nubByNubBy'1(LT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(EQ, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, True, y5, ty_Ordering),new_nubByNubBy'1(EQ, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, True, y5, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(LT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, True, y5, ty_Ordering),new_nubByNubBy'1(LT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, True, y5, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(EQ, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering),new_nubByNubBy'1(EQ, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(LT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering),new_nubByNubBy'1(LT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(GT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, True, y5, ty_Ordering),new_nubByNubBy'1(GT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, True, y5, ty_Ordering)) 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (31) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_nubByNubBy'(:(GT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, [], ba) -> new_nubByNubBy'(xw199, xw198, :(xw200, xw201), ba) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) 16.41/6.10 new_nubByNubBy'(:(GT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, EQ, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, LT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(GT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, GT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (32) UsableRulesProof (EQUIVALENT) 16.41/6.10 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (33) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_nubByNubBy'(:(GT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, [], ba) -> new_nubByNubBy'(xw199, xw198, :(xw200, xw201), ba) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) 16.41/6.10 new_nubByNubBy'(:(GT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, EQ, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, LT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(GT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, GT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 16.41/6.10 R is empty. 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (34) QReductionProof (EQUIVALENT) 16.41/6.10 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 16.41/6.10 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (35) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_nubByNubBy'(:(GT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, [], ba) -> new_nubByNubBy'(xw199, xw198, :(xw200, xw201), ba) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) 16.41/6.10 new_nubByNubBy'(:(GT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, EQ, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, LT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(GT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, GT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 16.41/6.10 R is empty. 16.41/6.10 Q is empty. 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (36) TransformationProof (EQUIVALENT) 16.41/6.10 By instantiating [LPAR04] the rule new_nubByNubBy'1(xw198, xw199, xw200, xw201, False, [], ba) -> new_nubByNubBy'(xw199, xw198, :(xw200, xw201), ba) we obtained the following new rules [LPAR04]: 16.41/6.10 16.41/6.10 (new_nubByNubBy'1(GT, z0, EQ, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(EQ, []), ty_Ordering),new_nubByNubBy'1(GT, z0, EQ, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(EQ, []), ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(EQ, z0, GT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(GT, []), ty_Ordering),new_nubByNubBy'1(EQ, z0, GT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(GT, []), ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(GT, z0, LT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(LT, []), ty_Ordering),new_nubByNubBy'1(GT, z0, LT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(LT, []), ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(LT, z0, GT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(GT, []), ty_Ordering),new_nubByNubBy'1(LT, z0, GT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(GT, []), ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(EQ, z0, LT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(LT, []), ty_Ordering),new_nubByNubBy'1(EQ, z0, LT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(LT, []), ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(LT, z0, EQ, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(EQ, []), ty_Ordering),new_nubByNubBy'1(LT, z0, EQ, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(EQ, []), ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(GT, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(z1, z2), ty_Ordering),new_nubByNubBy'1(GT, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(z1, z2), ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(EQ, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(z1, z2), ty_Ordering),new_nubByNubBy'1(EQ, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(z1, z2), ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(LT, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(z1, z2), ty_Ordering),new_nubByNubBy'1(LT, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(z1, z2), ty_Ordering)) 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (37) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_nubByNubBy'(:(GT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) 16.41/6.10 new_nubByNubBy'(:(GT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, EQ, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, LT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(GT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, GT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, z0, EQ, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(EQ, []), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, z0, GT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(GT, []), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, z0, LT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(LT, []), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, z0, GT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(GT, []), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, z0, LT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(LT, []), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, z0, EQ, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(EQ, []), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(z1, z2), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(z1, z2), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(z1, z2), ty_Ordering) 16.41/6.10 16.41/6.10 R is empty. 16.41/6.10 Q is empty. 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (38) TransformationProof (EQUIVALENT) 16.41/6.10 By instantiating [LPAR04] the rule new_nubByNubBy'1(xw198, xw199, xw200, xw201, True, xw203, ba) -> new_nubByNubBy'(xw199, xw200, xw201, ba) we obtained the following new rules [LPAR04]: 16.41/6.10 16.41/6.10 (new_nubByNubBy'1(EQ, z0, EQ, z1, True, z1, ty_Ordering) -> new_nubByNubBy'(z0, EQ, z1, ty_Ordering),new_nubByNubBy'1(EQ, z0, EQ, z1, True, z1, ty_Ordering) -> new_nubByNubBy'(z0, EQ, z1, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(LT, z0, LT, z1, True, z1, ty_Ordering) -> new_nubByNubBy'(z0, LT, z1, ty_Ordering),new_nubByNubBy'1(LT, z0, LT, z1, True, z1, ty_Ordering) -> new_nubByNubBy'(z0, LT, z1, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(GT, z0, GT, z1, True, z1, ty_Ordering) -> new_nubByNubBy'(z0, GT, z1, ty_Ordering),new_nubByNubBy'1(GT, z0, GT, z1, True, z1, ty_Ordering) -> new_nubByNubBy'(z0, GT, z1, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(EQ, z0, z1, z2, True, z3, ty_Ordering) -> new_nubByNubBy'(z0, z1, z2, ty_Ordering),new_nubByNubBy'1(EQ, z0, z1, z2, True, z3, ty_Ordering) -> new_nubByNubBy'(z0, z1, z2, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(LT, z0, z1, z2, True, z3, ty_Ordering) -> new_nubByNubBy'(z0, z1, z2, ty_Ordering),new_nubByNubBy'1(LT, z0, z1, z2, True, z3, ty_Ordering) -> new_nubByNubBy'(z0, z1, z2, ty_Ordering)) 16.41/6.10 (new_nubByNubBy'1(GT, z0, z1, z2, True, z3, ty_Ordering) -> new_nubByNubBy'(z0, z1, z2, ty_Ordering),new_nubByNubBy'1(GT, z0, z1, z2, True, z3, ty_Ordering) -> new_nubByNubBy'(z0, z1, z2, ty_Ordering)) 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (39) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_nubByNubBy'(:(GT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(GT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, EQ, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, LT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(EQ, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(LT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'(:(GT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, GT, y3, True, y3, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, z0, EQ, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(EQ, []), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, z0, GT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(GT, []), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, z0, LT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(LT, []), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, z0, GT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(GT, []), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, z0, LT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(LT, []), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, z0, EQ, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(EQ, []), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(z1, z2), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(z1, z2), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(z1, z2), ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, z0, EQ, z1, True, z1, ty_Ordering) -> new_nubByNubBy'(z0, EQ, z1, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, z0, LT, z1, True, z1, ty_Ordering) -> new_nubByNubBy'(z0, LT, z1, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, z0, GT, z1, True, z1, ty_Ordering) -> new_nubByNubBy'(z0, GT, z1, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(EQ, z0, z1, z2, True, z3, ty_Ordering) -> new_nubByNubBy'(z0, z1, z2, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(LT, z0, z1, z2, True, z3, ty_Ordering) -> new_nubByNubBy'(z0, z1, z2, ty_Ordering) 16.41/6.10 new_nubByNubBy'1(GT, z0, z1, z2, True, z3, ty_Ordering) -> new_nubByNubBy'(z0, z1, z2, ty_Ordering) 16.41/6.10 16.41/6.10 R is empty. 16.41/6.10 Q is empty. 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (40) QDPSizeChangeProof (EQUIVALENT) 16.41/6.10 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. 16.41/6.10 16.41/6.10 From the DPs we obtained the following set of size-change graphs: 16.41/6.10 *new_nubByNubBy'1(GT, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(z1, z2), ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 1 >= 2, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(GT, z0, EQ, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(EQ, []), ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 1 >= 2, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(GT, z0, LT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, GT, :(LT, []), ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 1 >= 2, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(GT, z0, GT, z1, True, z1, ty_Ordering) -> new_nubByNubBy'(z0, GT, z1, ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 1 >= 2, 3 >= 2, 4 >= 3, 6 >= 3, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(EQ, z0, z1, z2, True, z3, ty_Ordering) -> new_nubByNubBy'(z0, z1, z2, ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 3 >= 2, 4 >= 3, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(EQ, z0, EQ, z1, True, z1, ty_Ordering) -> new_nubByNubBy'(z0, EQ, z1, ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 1 >= 2, 3 >= 2, 4 >= 3, 6 >= 3, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(EQ, z0, LT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(LT, []), ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 1 >= 2, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(LT, z0, z1, z2, True, z3, ty_Ordering) -> new_nubByNubBy'(z0, z1, z2, ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 3 >= 2, 4 >= 3, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(GT, z0, z1, z2, True, z3, ty_Ordering) -> new_nubByNubBy'(z0, z1, z2, ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 3 >= 2, 4 >= 3, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(LT, z0, LT, z1, True, z1, ty_Ordering) -> new_nubByNubBy'(z0, LT, z1, ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 1 >= 2, 3 >= 2, 4 >= 3, 6 >= 3, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(LT, z0, EQ, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(EQ, []), ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 1 >= 2, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(EQ, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(z1, z2), ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 1 >= 2, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(EQ, z0, GT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, EQ, :(GT, []), ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 1 >= 2, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(LT, z0, z1, z2, False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(z1, z2), ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 1 >= 2, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(LT, z0, GT, [], False, [], ty_Ordering) -> new_nubByNubBy'(z0, LT, :(GT, []), ty_Ordering) 16.41/6.10 The graph contains the following edges 2 >= 1, 1 >= 2, 7 >= 4 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(GT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 >= 1, 6 > 1, 2 >= 2, 3 >= 3, 4 >= 4, 6 > 6, 7 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(EQ, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 >= 1, 6 > 1, 2 >= 2, 3 >= 3, 4 >= 4, 6 > 6, 7 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(LT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, True, y5, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 >= 1, 6 > 1, 2 >= 2, 3 >= 3, 4 >= 4, 6 > 6, 7 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'(:(GT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 > 1, 1 > 2, 2 >= 3, 3 >= 4, 3 >= 6, 4 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'(:(GT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 > 1, 1 > 2, 2 >= 3, 3 >= 4, 3 >= 6, 4 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'(:(EQ, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 > 1, 1 > 2, 2 >= 3, 3 >= 4, 3 >= 6, 4 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'(:(EQ, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, LT, y3, False, y3, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 > 1, 1 > 2, 2 >= 3, 3 >= 4, 3 >= 6, 4 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'(:(LT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, GT, y3, False, y3, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 > 1, 1 > 2, 2 >= 3, 3 >= 4, 3 >= 6, 4 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'(:(LT, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, EQ, y3, False, y3, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 > 1, 1 > 2, 2 >= 3, 3 >= 4, 3 >= 6, 4 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'(:(GT, y1), GT, y3, ty_Ordering) -> new_nubByNubBy'1(GT, y1, GT, y3, True, y3, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 > 1, 2 >= 1, 1 > 2, 1 > 3, 2 >= 3, 3 >= 4, 3 >= 6, 4 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'(:(EQ, y1), EQ, y3, ty_Ordering) -> new_nubByNubBy'1(EQ, y1, EQ, y3, True, y3, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 > 1, 2 >= 1, 1 > 2, 1 > 3, 2 >= 3, 3 >= 4, 3 >= 6, 4 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'(:(LT, y1), LT, y3, ty_Ordering) -> new_nubByNubBy'1(LT, y1, LT, y3, True, y3, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 > 1, 2 >= 1, 1 > 2, 1 > 3, 2 >= 3, 3 >= 4, 3 >= 6, 4 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(GT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 6 > 6, 7 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(GT, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(GT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 6 > 6, 7 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(EQ, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 6 > 6, 7 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(EQ, y1, y2, y3, False, :(LT, y5), ty_Ordering) -> new_nubByNubBy'1(EQ, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 6 > 6, 7 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(LT, y1, y2, y3, False, :(GT, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 6 > 6, 7 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 *new_nubByNubBy'1(LT, y1, y2, y3, False, :(EQ, y5), ty_Ordering) -> new_nubByNubBy'1(LT, y1, y2, y3, False, y5, ty_Ordering) 16.41/6.10 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 6 > 6, 7 >= 7 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (41) 16.41/6.10 YES 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (42) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_psPs(:(xw80, xw81), xw9, xw10, xw11, ba) -> new_psPs(xw81, xw9, xw10, xw11, ba) 16.41/6.10 16.41/6.10 R is empty. 16.41/6.10 Q is empty. 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (43) QDPSizeChangeProof (EQUIVALENT) 16.41/6.10 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. 16.41/6.10 16.41/6.10 From the DPs we obtained the following set of size-change graphs: 16.41/6.10 *new_psPs(:(xw80, xw81), xw9, xw10, xw11, ba) -> new_psPs(xw81, xw9, xw10, xw11, ba) 16.41/6.10 The graph contains the following edges 1 > 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (44) 16.41/6.10 YES 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (45) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_deleteBy(xw10, :(xw90, xw91), bb) -> new_deleteBy0(xw91, xw90, xw10, new_esEs15(xw10, xw90, bb), bb) 16.41/6.10 new_deleteBy0(xw17, xw18, xw19, False, ba) -> new_deleteBy(xw19, xw17, ba) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs15(xw10, xw90, ty_@0) -> new_esEs14(xw10, xw90) 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs11(xw10, xw90) -> error([]) 16.41/6.10 new_esEs5(xw10, xw90) -> error([]) 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs1(xw10, xw90) -> error([]) 16.41/6.10 new_esEs2(xw10, xw90, bc, bd) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, app(app(ty_@2, ca), cb)) -> new_esEs6(xw10, xw90, ca, cb) 16.41/6.10 new_esEs4(xw10, xw90, bf, bg, bh) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Ordering) -> new_esEs10(xw10, xw90) 16.41/6.10 new_esEs7(xw10, xw90) -> error([]) 16.41/6.10 new_esEs9(xw10, xw90) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, app(ty_Ratio, cd)) -> new_esEs13(xw10, xw90, cd) 16.41/6.10 new_esEs15(xw10, xw90, app(ty_Maybe, cc)) -> new_esEs12(xw10, xw90, cc) 16.41/6.10 new_esEs6(xw10, xw90, ca, cb) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Bool) -> new_esEs5(xw10, xw90) 16.41/6.10 new_esEs15(xw10, xw90, ty_Integer) -> new_esEs9(xw10, xw90) 16.41/6.10 new_esEs15(xw10, xw90, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw10, xw90, bf, bg, bh) 16.41/6.10 new_esEs15(xw10, xw90, ty_Double) -> new_esEs8(xw10, xw90) 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs15(xw10, xw90, app(ty_[], be)) -> new_esEs3(xw10, xw90, be) 16.41/6.10 new_esEs14(xw10, xw90) -> error([]) 16.41/6.10 new_esEs12(xw10, xw90, cc) -> error([]) 16.41/6.10 new_esEs13(xw10, xw90, cd) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Char) -> new_esEs7(xw10, xw90) 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs15(xw10, xw90, ty_Int) -> new_esEs11(xw10, xw90) 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 new_esEs3(xw10, xw90, be) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, app(app(ty_Either, bc), bd)) -> new_esEs2(xw10, xw90, bc, bd) 16.41/6.10 new_esEs8(xw10, xw90) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Float) -> new_esEs1(xw10, xw90) 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs7(x0, x1) 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.10 new_esEs15(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_esEs15(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs15(x0, x1, ty_Char) 16.41/6.10 new_esEs14(x0, x1) 16.41/6.10 new_esEs12(x0, x1, x2) 16.41/6.10 new_esEs13(x0, x1, x2) 16.41/6.10 new_esEs15(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs15(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_esEs5(x0, x1) 16.41/6.10 new_esEs1(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Double) 16.41/6.10 new_esEs15(x0, x1, ty_@0) 16.41/6.10 new_esEs15(x0, x1, ty_Ordering) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs15(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs15(x0, x1, ty_Float) 16.41/6.10 new_esEs2(x0, x1, x2, x3) 16.41/6.10 new_esEs6(x0, x1, x2, x3) 16.41/6.10 new_esEs3(x0, x1, x2) 16.41/6.10 new_esEs9(x0, x1) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs15(x0, x1, ty_Int) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs11(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Integer) 16.41/6.10 new_esEs8(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Bool) 16.41/6.10 new_esEs15(x0, x1, app(ty_[], x2)) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (46) TransformationProof (EQUIVALENT) 16.41/6.10 By narrowing [LPAR04] the rule new_deleteBy(xw10, :(xw90, xw91), bb) -> new_deleteBy0(xw91, xw90, xw10, new_esEs15(xw10, xw90, bb), bb) at position [3] we obtained the following new rules [LPAR04]: 16.41/6.10 16.41/6.10 (new_deleteBy(x0, :(x1, y2), ty_@0) -> new_deleteBy0(y2, x1, x0, new_esEs14(x0, x1), ty_@0),new_deleteBy(x0, :(x1, y2), ty_@0) -> new_deleteBy0(y2, x1, x0, new_esEs14(x0, x1), ty_@0)) 16.41/6.10 (new_deleteBy(x0, :(x1, y2), app(app(ty_@2, x2), x3)) -> new_deleteBy0(y2, x1, x0, new_esEs6(x0, x1, x2, x3), app(app(ty_@2, x2), x3)),new_deleteBy(x0, :(x1, y2), app(app(ty_@2, x2), x3)) -> new_deleteBy0(y2, x1, x0, new_esEs6(x0, x1, x2, x3), app(app(ty_@2, x2), x3))) 16.41/6.10 (new_deleteBy(x0, :(x1, y2), ty_Ordering) -> new_deleteBy0(y2, x1, x0, new_esEs10(x0, x1), ty_Ordering),new_deleteBy(x0, :(x1, y2), ty_Ordering) -> new_deleteBy0(y2, x1, x0, new_esEs10(x0, x1), ty_Ordering)) 16.41/6.10 (new_deleteBy(x0, :(x1, y2), app(ty_Ratio, x2)) -> new_deleteBy0(y2, x1, x0, new_esEs13(x0, x1, x2), app(ty_Ratio, x2)),new_deleteBy(x0, :(x1, y2), app(ty_Ratio, x2)) -> new_deleteBy0(y2, x1, x0, new_esEs13(x0, x1, x2), app(ty_Ratio, x2))) 16.41/6.10 (new_deleteBy(x0, :(x1, y2), app(ty_Maybe, x2)) -> new_deleteBy0(y2, x1, x0, new_esEs12(x0, x1, x2), app(ty_Maybe, x2)),new_deleteBy(x0, :(x1, y2), app(ty_Maybe, x2)) -> new_deleteBy0(y2, x1, x0, new_esEs12(x0, x1, x2), app(ty_Maybe, x2))) 16.41/6.10 (new_deleteBy(x0, :(x1, y2), ty_Bool) -> new_deleteBy0(y2, x1, x0, new_esEs5(x0, x1), ty_Bool),new_deleteBy(x0, :(x1, y2), ty_Bool) -> new_deleteBy0(y2, x1, x0, new_esEs5(x0, x1), ty_Bool)) 16.41/6.10 (new_deleteBy(x0, :(x1, y2), ty_Integer) -> new_deleteBy0(y2, x1, x0, new_esEs9(x0, x1), ty_Integer),new_deleteBy(x0, :(x1, y2), ty_Integer) -> new_deleteBy0(y2, x1, x0, new_esEs9(x0, x1), ty_Integer)) 16.41/6.10 (new_deleteBy(x0, :(x1, y2), app(app(app(ty_@3, x2), x3), x4)) -> new_deleteBy0(y2, x1, x0, new_esEs4(x0, x1, x2, x3, x4), app(app(app(ty_@3, x2), x3), x4)),new_deleteBy(x0, :(x1, y2), app(app(app(ty_@3, x2), x3), x4)) -> new_deleteBy0(y2, x1, x0, new_esEs4(x0, x1, x2, x3, x4), app(app(app(ty_@3, x2), x3), x4))) 16.41/6.10 (new_deleteBy(x0, :(x1, y2), ty_Double) -> new_deleteBy0(y2, x1, x0, new_esEs8(x0, x1), ty_Double),new_deleteBy(x0, :(x1, y2), ty_Double) -> new_deleteBy0(y2, x1, x0, new_esEs8(x0, x1), ty_Double)) 16.41/6.10 (new_deleteBy(x0, :(x1, y2), app(ty_[], x2)) -> new_deleteBy0(y2, x1, x0, new_esEs3(x0, x1, x2), app(ty_[], x2)),new_deleteBy(x0, :(x1, y2), app(ty_[], x2)) -> new_deleteBy0(y2, x1, x0, new_esEs3(x0, x1, x2), app(ty_[], x2))) 16.41/6.10 (new_deleteBy(x0, :(x1, y2), ty_Char) -> new_deleteBy0(y2, x1, x0, new_esEs7(x0, x1), ty_Char),new_deleteBy(x0, :(x1, y2), ty_Char) -> new_deleteBy0(y2, x1, x0, new_esEs7(x0, x1), ty_Char)) 16.41/6.10 (new_deleteBy(x0, :(x1, y2), ty_Int) -> new_deleteBy0(y2, x1, x0, new_esEs11(x0, x1), ty_Int),new_deleteBy(x0, :(x1, y2), ty_Int) -> new_deleteBy0(y2, x1, x0, new_esEs11(x0, x1), ty_Int)) 16.41/6.10 (new_deleteBy(x0, :(x1, y2), app(app(ty_Either, x2), x3)) -> new_deleteBy0(y2, x1, x0, new_esEs2(x0, x1, x2, x3), app(app(ty_Either, x2), x3)),new_deleteBy(x0, :(x1, y2), app(app(ty_Either, x2), x3)) -> new_deleteBy0(y2, x1, x0, new_esEs2(x0, x1, x2, x3), app(app(ty_Either, x2), x3))) 16.41/6.10 (new_deleteBy(x0, :(x1, y2), ty_Float) -> new_deleteBy0(y2, x1, x0, new_esEs1(x0, x1), ty_Float),new_deleteBy(x0, :(x1, y2), ty_Float) -> new_deleteBy0(y2, x1, x0, new_esEs1(x0, x1), ty_Float)) 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (47) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_deleteBy0(xw17, xw18, xw19, False, ba) -> new_deleteBy(xw19, xw17, ba) 16.41/6.10 new_deleteBy(x0, :(x1, y2), ty_@0) -> new_deleteBy0(y2, x1, x0, new_esEs14(x0, x1), ty_@0) 16.41/6.10 new_deleteBy(x0, :(x1, y2), app(app(ty_@2, x2), x3)) -> new_deleteBy0(y2, x1, x0, new_esEs6(x0, x1, x2, x3), app(app(ty_@2, x2), x3)) 16.41/6.10 new_deleteBy(x0, :(x1, y2), ty_Ordering) -> new_deleteBy0(y2, x1, x0, new_esEs10(x0, x1), ty_Ordering) 16.41/6.10 new_deleteBy(x0, :(x1, y2), app(ty_Ratio, x2)) -> new_deleteBy0(y2, x1, x0, new_esEs13(x0, x1, x2), app(ty_Ratio, x2)) 16.41/6.10 new_deleteBy(x0, :(x1, y2), app(ty_Maybe, x2)) -> new_deleteBy0(y2, x1, x0, new_esEs12(x0, x1, x2), app(ty_Maybe, x2)) 16.41/6.10 new_deleteBy(x0, :(x1, y2), ty_Bool) -> new_deleteBy0(y2, x1, x0, new_esEs5(x0, x1), ty_Bool) 16.41/6.10 new_deleteBy(x0, :(x1, y2), ty_Integer) -> new_deleteBy0(y2, x1, x0, new_esEs9(x0, x1), ty_Integer) 16.41/6.10 new_deleteBy(x0, :(x1, y2), app(app(app(ty_@3, x2), x3), x4)) -> new_deleteBy0(y2, x1, x0, new_esEs4(x0, x1, x2, x3, x4), app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_deleteBy(x0, :(x1, y2), ty_Double) -> new_deleteBy0(y2, x1, x0, new_esEs8(x0, x1), ty_Double) 16.41/6.10 new_deleteBy(x0, :(x1, y2), app(ty_[], x2)) -> new_deleteBy0(y2, x1, x0, new_esEs3(x0, x1, x2), app(ty_[], x2)) 16.41/6.10 new_deleteBy(x0, :(x1, y2), ty_Char) -> new_deleteBy0(y2, x1, x0, new_esEs7(x0, x1), ty_Char) 16.41/6.10 new_deleteBy(x0, :(x1, y2), ty_Int) -> new_deleteBy0(y2, x1, x0, new_esEs11(x0, x1), ty_Int) 16.41/6.10 new_deleteBy(x0, :(x1, y2), app(app(ty_Either, x2), x3)) -> new_deleteBy0(y2, x1, x0, new_esEs2(x0, x1, x2, x3), app(app(ty_Either, x2), x3)) 16.41/6.10 new_deleteBy(x0, :(x1, y2), ty_Float) -> new_deleteBy0(y2, x1, x0, new_esEs1(x0, x1), ty_Float) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs15(xw10, xw90, ty_@0) -> new_esEs14(xw10, xw90) 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs11(xw10, xw90) -> error([]) 16.41/6.10 new_esEs5(xw10, xw90) -> error([]) 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs1(xw10, xw90) -> error([]) 16.41/6.10 new_esEs2(xw10, xw90, bc, bd) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, app(app(ty_@2, ca), cb)) -> new_esEs6(xw10, xw90, ca, cb) 16.41/6.10 new_esEs4(xw10, xw90, bf, bg, bh) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Ordering) -> new_esEs10(xw10, xw90) 16.41/6.10 new_esEs7(xw10, xw90) -> error([]) 16.41/6.10 new_esEs9(xw10, xw90) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, app(ty_Ratio, cd)) -> new_esEs13(xw10, xw90, cd) 16.41/6.10 new_esEs15(xw10, xw90, app(ty_Maybe, cc)) -> new_esEs12(xw10, xw90, cc) 16.41/6.10 new_esEs6(xw10, xw90, ca, cb) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Bool) -> new_esEs5(xw10, xw90) 16.41/6.10 new_esEs15(xw10, xw90, ty_Integer) -> new_esEs9(xw10, xw90) 16.41/6.10 new_esEs15(xw10, xw90, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw10, xw90, bf, bg, bh) 16.41/6.10 new_esEs15(xw10, xw90, ty_Double) -> new_esEs8(xw10, xw90) 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs15(xw10, xw90, app(ty_[], be)) -> new_esEs3(xw10, xw90, be) 16.41/6.10 new_esEs14(xw10, xw90) -> error([]) 16.41/6.10 new_esEs12(xw10, xw90, cc) -> error([]) 16.41/6.10 new_esEs13(xw10, xw90, cd) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Char) -> new_esEs7(xw10, xw90) 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs15(xw10, xw90, ty_Int) -> new_esEs11(xw10, xw90) 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 new_esEs3(xw10, xw90, be) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, app(app(ty_Either, bc), bd)) -> new_esEs2(xw10, xw90, bc, bd) 16.41/6.10 new_esEs8(xw10, xw90) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Float) -> new_esEs1(xw10, xw90) 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs7(x0, x1) 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.10 new_esEs15(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_esEs15(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs15(x0, x1, ty_Char) 16.41/6.10 new_esEs14(x0, x1) 16.41/6.10 new_esEs12(x0, x1, x2) 16.41/6.10 new_esEs13(x0, x1, x2) 16.41/6.10 new_esEs15(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs15(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_esEs5(x0, x1) 16.41/6.10 new_esEs1(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Double) 16.41/6.10 new_esEs15(x0, x1, ty_@0) 16.41/6.10 new_esEs15(x0, x1, ty_Ordering) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs15(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs15(x0, x1, ty_Float) 16.41/6.10 new_esEs2(x0, x1, x2, x3) 16.41/6.10 new_esEs6(x0, x1, x2, x3) 16.41/6.10 new_esEs3(x0, x1, x2) 16.41/6.10 new_esEs9(x0, x1) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs15(x0, x1, ty_Int) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs11(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Integer) 16.41/6.10 new_esEs8(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Bool) 16.41/6.10 new_esEs15(x0, x1, app(ty_[], x2)) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (48) DependencyGraphProof (EQUIVALENT) 16.41/6.10 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 13 less nodes. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (49) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_deleteBy(x0, :(x1, y2), ty_Ordering) -> new_deleteBy0(y2, x1, x0, new_esEs10(x0, x1), ty_Ordering) 16.41/6.10 new_deleteBy0(xw17, xw18, xw19, False, ba) -> new_deleteBy(xw19, xw17, ba) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs15(xw10, xw90, ty_@0) -> new_esEs14(xw10, xw90) 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs11(xw10, xw90) -> error([]) 16.41/6.10 new_esEs5(xw10, xw90) -> error([]) 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs1(xw10, xw90) -> error([]) 16.41/6.10 new_esEs2(xw10, xw90, bc, bd) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, app(app(ty_@2, ca), cb)) -> new_esEs6(xw10, xw90, ca, cb) 16.41/6.10 new_esEs4(xw10, xw90, bf, bg, bh) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Ordering) -> new_esEs10(xw10, xw90) 16.41/6.10 new_esEs7(xw10, xw90) -> error([]) 16.41/6.10 new_esEs9(xw10, xw90) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, app(ty_Ratio, cd)) -> new_esEs13(xw10, xw90, cd) 16.41/6.10 new_esEs15(xw10, xw90, app(ty_Maybe, cc)) -> new_esEs12(xw10, xw90, cc) 16.41/6.10 new_esEs6(xw10, xw90, ca, cb) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Bool) -> new_esEs5(xw10, xw90) 16.41/6.10 new_esEs15(xw10, xw90, ty_Integer) -> new_esEs9(xw10, xw90) 16.41/6.10 new_esEs15(xw10, xw90, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw10, xw90, bf, bg, bh) 16.41/6.10 new_esEs15(xw10, xw90, ty_Double) -> new_esEs8(xw10, xw90) 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs15(xw10, xw90, app(ty_[], be)) -> new_esEs3(xw10, xw90, be) 16.41/6.10 new_esEs14(xw10, xw90) -> error([]) 16.41/6.10 new_esEs12(xw10, xw90, cc) -> error([]) 16.41/6.10 new_esEs13(xw10, xw90, cd) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Char) -> new_esEs7(xw10, xw90) 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs15(xw10, xw90, ty_Int) -> new_esEs11(xw10, xw90) 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 new_esEs3(xw10, xw90, be) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, app(app(ty_Either, bc), bd)) -> new_esEs2(xw10, xw90, bc, bd) 16.41/6.10 new_esEs8(xw10, xw90) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Float) -> new_esEs1(xw10, xw90) 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs7(x0, x1) 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.10 new_esEs15(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_esEs15(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs15(x0, x1, ty_Char) 16.41/6.10 new_esEs14(x0, x1) 16.41/6.10 new_esEs12(x0, x1, x2) 16.41/6.10 new_esEs13(x0, x1, x2) 16.41/6.10 new_esEs15(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs15(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_esEs5(x0, x1) 16.41/6.10 new_esEs1(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Double) 16.41/6.10 new_esEs15(x0, x1, ty_@0) 16.41/6.10 new_esEs15(x0, x1, ty_Ordering) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs15(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs15(x0, x1, ty_Float) 16.41/6.10 new_esEs2(x0, x1, x2, x3) 16.41/6.10 new_esEs6(x0, x1, x2, x3) 16.41/6.10 new_esEs3(x0, x1, x2) 16.41/6.10 new_esEs9(x0, x1) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs15(x0, x1, ty_Int) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs11(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Integer) 16.41/6.10 new_esEs8(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Bool) 16.41/6.10 new_esEs15(x0, x1, app(ty_[], x2)) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (50) UsableRulesProof (EQUIVALENT) 16.41/6.10 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (51) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_deleteBy(x0, :(x1, y2), ty_Ordering) -> new_deleteBy0(y2, x1, x0, new_esEs10(x0, x1), ty_Ordering) 16.41/6.10 new_deleteBy0(xw17, xw18, xw19, False, ba) -> new_deleteBy(xw19, xw17, ba) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs7(x0, x1) 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.10 new_esEs15(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_esEs15(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs15(x0, x1, ty_Char) 16.41/6.10 new_esEs14(x0, x1) 16.41/6.10 new_esEs12(x0, x1, x2) 16.41/6.10 new_esEs13(x0, x1, x2) 16.41/6.10 new_esEs15(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs15(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_esEs5(x0, x1) 16.41/6.10 new_esEs1(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Double) 16.41/6.10 new_esEs15(x0, x1, ty_@0) 16.41/6.10 new_esEs15(x0, x1, ty_Ordering) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs15(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs15(x0, x1, ty_Float) 16.41/6.10 new_esEs2(x0, x1, x2, x3) 16.41/6.10 new_esEs6(x0, x1, x2, x3) 16.41/6.10 new_esEs3(x0, x1, x2) 16.41/6.10 new_esEs9(x0, x1) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs15(x0, x1, ty_Int) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs11(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Integer) 16.41/6.10 new_esEs8(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Bool) 16.41/6.10 new_esEs15(x0, x1, app(ty_[], x2)) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (52) QReductionProof (EQUIVALENT) 16.41/6.10 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 16.41/6.10 16.41/6.10 new_esEs7(x0, x1) 16.41/6.10 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.10 new_esEs15(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_esEs15(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs15(x0, x1, ty_Char) 16.41/6.10 new_esEs14(x0, x1) 16.41/6.10 new_esEs12(x0, x1, x2) 16.41/6.10 new_esEs13(x0, x1, x2) 16.41/6.10 new_esEs15(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs15(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_esEs5(x0, x1) 16.41/6.10 new_esEs1(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Double) 16.41/6.10 new_esEs15(x0, x1, ty_@0) 16.41/6.10 new_esEs15(x0, x1, ty_Ordering) 16.41/6.10 new_esEs15(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs15(x0, x1, ty_Float) 16.41/6.10 new_esEs2(x0, x1, x2, x3) 16.41/6.10 new_esEs6(x0, x1, x2, x3) 16.41/6.10 new_esEs3(x0, x1, x2) 16.41/6.10 new_esEs9(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Int) 16.41/6.10 new_esEs11(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Integer) 16.41/6.10 new_esEs8(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Bool) 16.41/6.10 new_esEs15(x0, x1, app(ty_[], x2)) 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (53) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_deleteBy(x0, :(x1, y2), ty_Ordering) -> new_deleteBy0(y2, x1, x0, new_esEs10(x0, x1), ty_Ordering) 16.41/6.10 new_deleteBy0(xw17, xw18, xw19, False, ba) -> new_deleteBy(xw19, xw17, ba) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (54) TransformationProof (EQUIVALENT) 16.41/6.10 By narrowing [LPAR04] the rule new_deleteBy(x0, :(x1, y2), ty_Ordering) -> new_deleteBy0(y2, x1, x0, new_esEs10(x0, x1), ty_Ordering) at position [3] we obtained the following new rules [LPAR04]: 16.41/6.10 16.41/6.10 (new_deleteBy(EQ, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, EQ, False, ty_Ordering),new_deleteBy(EQ, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, EQ, False, ty_Ordering)) 16.41/6.10 (new_deleteBy(GT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, GT, False, ty_Ordering),new_deleteBy(GT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, GT, False, ty_Ordering)) 16.41/6.10 (new_deleteBy(LT, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, LT, False, ty_Ordering),new_deleteBy(LT, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, LT, False, ty_Ordering)) 16.41/6.10 (new_deleteBy(GT, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, GT, False, ty_Ordering),new_deleteBy(GT, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, GT, False, ty_Ordering)) 16.41/6.10 (new_deleteBy(LT, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, LT, True, ty_Ordering),new_deleteBy(LT, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, LT, True, ty_Ordering)) 16.41/6.10 (new_deleteBy(LT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, LT, False, ty_Ordering),new_deleteBy(LT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, LT, False, ty_Ordering)) 16.41/6.10 (new_deleteBy(EQ, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, EQ, False, ty_Ordering),new_deleteBy(EQ, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, EQ, False, ty_Ordering)) 16.41/6.10 (new_deleteBy(GT, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, GT, True, ty_Ordering),new_deleteBy(GT, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, GT, True, ty_Ordering)) 16.41/6.10 (new_deleteBy(EQ, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, EQ, True, ty_Ordering),new_deleteBy(EQ, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, EQ, True, ty_Ordering)) 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (55) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_deleteBy0(xw17, xw18, xw19, False, ba) -> new_deleteBy(xw19, xw17, ba) 16.41/6.10 new_deleteBy(EQ, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, EQ, False, ty_Ordering) 16.41/6.10 new_deleteBy(GT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, GT, False, ty_Ordering) 16.41/6.10 new_deleteBy(LT, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, LT, False, ty_Ordering) 16.41/6.10 new_deleteBy(GT, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, GT, False, ty_Ordering) 16.41/6.10 new_deleteBy(LT, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, LT, True, ty_Ordering) 16.41/6.10 new_deleteBy(LT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, LT, False, ty_Ordering) 16.41/6.10 new_deleteBy(EQ, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, EQ, False, ty_Ordering) 16.41/6.10 new_deleteBy(GT, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, GT, True, ty_Ordering) 16.41/6.10 new_deleteBy(EQ, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, EQ, True, ty_Ordering) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (56) DependencyGraphProof (EQUIVALENT) 16.41/6.10 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 3 less nodes. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (57) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_deleteBy(EQ, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, EQ, False, ty_Ordering) 16.41/6.10 new_deleteBy0(xw17, xw18, xw19, False, ba) -> new_deleteBy(xw19, xw17, ba) 16.41/6.10 new_deleteBy(GT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, GT, False, ty_Ordering) 16.41/6.10 new_deleteBy(LT, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, LT, False, ty_Ordering) 16.41/6.10 new_deleteBy(GT, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, GT, False, ty_Ordering) 16.41/6.10 new_deleteBy(LT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, LT, False, ty_Ordering) 16.41/6.10 new_deleteBy(EQ, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, EQ, False, ty_Ordering) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (58) UsableRulesProof (EQUIVALENT) 16.41/6.10 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (59) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_deleteBy(EQ, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, EQ, False, ty_Ordering) 16.41/6.10 new_deleteBy0(xw17, xw18, xw19, False, ba) -> new_deleteBy(xw19, xw17, ba) 16.41/6.10 new_deleteBy(GT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, GT, False, ty_Ordering) 16.41/6.10 new_deleteBy(LT, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, LT, False, ty_Ordering) 16.41/6.10 new_deleteBy(GT, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, GT, False, ty_Ordering) 16.41/6.10 new_deleteBy(LT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, LT, False, ty_Ordering) 16.41/6.10 new_deleteBy(EQ, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, EQ, False, ty_Ordering) 16.41/6.10 16.41/6.10 R is empty. 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (60) QReductionProof (EQUIVALENT) 16.41/6.10 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 16.41/6.10 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (61) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_deleteBy(EQ, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, EQ, False, ty_Ordering) 16.41/6.10 new_deleteBy0(xw17, xw18, xw19, False, ba) -> new_deleteBy(xw19, xw17, ba) 16.41/6.10 new_deleteBy(GT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, GT, False, ty_Ordering) 16.41/6.10 new_deleteBy(LT, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, LT, False, ty_Ordering) 16.41/6.10 new_deleteBy(GT, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, GT, False, ty_Ordering) 16.41/6.10 new_deleteBy(LT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, LT, False, ty_Ordering) 16.41/6.10 new_deleteBy(EQ, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, EQ, False, ty_Ordering) 16.41/6.10 16.41/6.10 R is empty. 16.41/6.10 Q is empty. 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (62) TransformationProof (EQUIVALENT) 16.41/6.10 By instantiating [LPAR04] the rule new_deleteBy0(xw17, xw18, xw19, False, ba) -> new_deleteBy(xw19, xw17, ba) we obtained the following new rules [LPAR04]: 16.41/6.10 16.41/6.10 (new_deleteBy0(z0, GT, EQ, False, ty_Ordering) -> new_deleteBy(EQ, z0, ty_Ordering),new_deleteBy0(z0, GT, EQ, False, ty_Ordering) -> new_deleteBy(EQ, z0, ty_Ordering)) 16.41/6.10 (new_deleteBy0(z0, EQ, GT, False, ty_Ordering) -> new_deleteBy(GT, z0, ty_Ordering),new_deleteBy0(z0, EQ, GT, False, ty_Ordering) -> new_deleteBy(GT, z0, ty_Ordering)) 16.41/6.10 (new_deleteBy0(z0, GT, LT, False, ty_Ordering) -> new_deleteBy(LT, z0, ty_Ordering),new_deleteBy0(z0, GT, LT, False, ty_Ordering) -> new_deleteBy(LT, z0, ty_Ordering)) 16.41/6.10 (new_deleteBy0(z0, LT, GT, False, ty_Ordering) -> new_deleteBy(GT, z0, ty_Ordering),new_deleteBy0(z0, LT, GT, False, ty_Ordering) -> new_deleteBy(GT, z0, ty_Ordering)) 16.41/6.10 (new_deleteBy0(z0, EQ, LT, False, ty_Ordering) -> new_deleteBy(LT, z0, ty_Ordering),new_deleteBy0(z0, EQ, LT, False, ty_Ordering) -> new_deleteBy(LT, z0, ty_Ordering)) 16.41/6.10 (new_deleteBy0(z0, LT, EQ, False, ty_Ordering) -> new_deleteBy(EQ, z0, ty_Ordering),new_deleteBy0(z0, LT, EQ, False, ty_Ordering) -> new_deleteBy(EQ, z0, ty_Ordering)) 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (63) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_deleteBy(EQ, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, EQ, False, ty_Ordering) 16.41/6.10 new_deleteBy(GT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, GT, False, ty_Ordering) 16.41/6.10 new_deleteBy(LT, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, LT, False, ty_Ordering) 16.41/6.10 new_deleteBy(GT, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, GT, False, ty_Ordering) 16.41/6.10 new_deleteBy(LT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, LT, False, ty_Ordering) 16.41/6.10 new_deleteBy(EQ, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, EQ, False, ty_Ordering) 16.41/6.10 new_deleteBy0(z0, GT, EQ, False, ty_Ordering) -> new_deleteBy(EQ, z0, ty_Ordering) 16.41/6.10 new_deleteBy0(z0, EQ, GT, False, ty_Ordering) -> new_deleteBy(GT, z0, ty_Ordering) 16.41/6.10 new_deleteBy0(z0, GT, LT, False, ty_Ordering) -> new_deleteBy(LT, z0, ty_Ordering) 16.41/6.10 new_deleteBy0(z0, LT, GT, False, ty_Ordering) -> new_deleteBy(GT, z0, ty_Ordering) 16.41/6.10 new_deleteBy0(z0, EQ, LT, False, ty_Ordering) -> new_deleteBy(LT, z0, ty_Ordering) 16.41/6.10 new_deleteBy0(z0, LT, EQ, False, ty_Ordering) -> new_deleteBy(EQ, z0, ty_Ordering) 16.41/6.10 16.41/6.10 R is empty. 16.41/6.10 Q is empty. 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (64) DependencyGraphProof (EQUIVALENT) 16.41/6.10 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (65) 16.41/6.10 Complex Obligation (AND) 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (66) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_deleteBy0(z0, GT, LT, False, ty_Ordering) -> new_deleteBy(LT, z0, ty_Ordering) 16.41/6.10 new_deleteBy(LT, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, LT, False, ty_Ordering) 16.41/6.10 new_deleteBy(LT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, LT, False, ty_Ordering) 16.41/6.10 new_deleteBy0(z0, EQ, LT, False, ty_Ordering) -> new_deleteBy(LT, z0, ty_Ordering) 16.41/6.10 16.41/6.10 R is empty. 16.41/6.10 Q is empty. 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (67) QDPSizeChangeProof (EQUIVALENT) 16.41/6.10 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. 16.41/6.10 16.41/6.10 From the DPs we obtained the following set of size-change graphs: 16.41/6.10 *new_deleteBy(LT, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, LT, False, ty_Ordering) 16.41/6.10 The graph contains the following edges 2 > 1, 2 > 2, 1 >= 3, 3 >= 5 16.41/6.10 16.41/6.10 16.41/6.10 *new_deleteBy(LT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, LT, False, ty_Ordering) 16.41/6.10 The graph contains the following edges 2 > 1, 2 > 2, 1 >= 3, 3 >= 5 16.41/6.10 16.41/6.10 16.41/6.10 *new_deleteBy0(z0, GT, LT, False, ty_Ordering) -> new_deleteBy(LT, z0, ty_Ordering) 16.41/6.10 The graph contains the following edges 3 >= 1, 1 >= 2, 5 >= 3 16.41/6.10 16.41/6.10 16.41/6.10 *new_deleteBy0(z0, EQ, LT, False, ty_Ordering) -> new_deleteBy(LT, z0, ty_Ordering) 16.41/6.10 The graph contains the following edges 3 >= 1, 1 >= 2, 5 >= 3 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (68) 16.41/6.10 YES 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (69) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_deleteBy0(z0, EQ, GT, False, ty_Ordering) -> new_deleteBy(GT, z0, ty_Ordering) 16.41/6.10 new_deleteBy(GT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, GT, False, ty_Ordering) 16.41/6.10 new_deleteBy(GT, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, GT, False, ty_Ordering) 16.41/6.10 new_deleteBy0(z0, LT, GT, False, ty_Ordering) -> new_deleteBy(GT, z0, ty_Ordering) 16.41/6.10 16.41/6.10 R is empty. 16.41/6.10 Q is empty. 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (70) QDPSizeChangeProof (EQUIVALENT) 16.41/6.10 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. 16.41/6.10 16.41/6.10 From the DPs we obtained the following set of size-change graphs: 16.41/6.10 *new_deleteBy(GT, :(EQ, y2), ty_Ordering) -> new_deleteBy0(y2, EQ, GT, False, ty_Ordering) 16.41/6.10 The graph contains the following edges 2 > 1, 2 > 2, 1 >= 3, 3 >= 5 16.41/6.10 16.41/6.10 16.41/6.10 *new_deleteBy(GT, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, GT, False, ty_Ordering) 16.41/6.10 The graph contains the following edges 2 > 1, 2 > 2, 1 >= 3, 3 >= 5 16.41/6.10 16.41/6.10 16.41/6.10 *new_deleteBy0(z0, EQ, GT, False, ty_Ordering) -> new_deleteBy(GT, z0, ty_Ordering) 16.41/6.10 The graph contains the following edges 3 >= 1, 1 >= 2, 5 >= 3 16.41/6.10 16.41/6.10 16.41/6.10 *new_deleteBy0(z0, LT, GT, False, ty_Ordering) -> new_deleteBy(GT, z0, ty_Ordering) 16.41/6.10 The graph contains the following edges 3 >= 1, 1 >= 2, 5 >= 3 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (71) 16.41/6.10 YES 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (72) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_deleteBy0(z0, GT, EQ, False, ty_Ordering) -> new_deleteBy(EQ, z0, ty_Ordering) 16.41/6.10 new_deleteBy(EQ, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, EQ, False, ty_Ordering) 16.41/6.10 new_deleteBy(EQ, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, EQ, False, ty_Ordering) 16.41/6.10 new_deleteBy0(z0, LT, EQ, False, ty_Ordering) -> new_deleteBy(EQ, z0, ty_Ordering) 16.41/6.10 16.41/6.10 R is empty. 16.41/6.10 Q is empty. 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (73) QDPSizeChangeProof (EQUIVALENT) 16.41/6.10 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. 16.41/6.10 16.41/6.10 From the DPs we obtained the following set of size-change graphs: 16.41/6.10 *new_deleteBy(EQ, :(GT, y2), ty_Ordering) -> new_deleteBy0(y2, GT, EQ, False, ty_Ordering) 16.41/6.10 The graph contains the following edges 2 > 1, 2 > 2, 1 >= 3, 3 >= 5 16.41/6.10 16.41/6.10 16.41/6.10 *new_deleteBy(EQ, :(LT, y2), ty_Ordering) -> new_deleteBy0(y2, LT, EQ, False, ty_Ordering) 16.41/6.10 The graph contains the following edges 2 > 1, 2 > 2, 1 >= 3, 3 >= 5 16.41/6.10 16.41/6.10 16.41/6.10 *new_deleteBy0(z0, GT, EQ, False, ty_Ordering) -> new_deleteBy(EQ, z0, ty_Ordering) 16.41/6.10 The graph contains the following edges 3 >= 1, 1 >= 2, 5 >= 3 16.41/6.10 16.41/6.10 16.41/6.10 *new_deleteBy0(z0, LT, EQ, False, ty_Ordering) -> new_deleteBy(EQ, z0, ty_Ordering) 16.41/6.10 The graph contains the following edges 3 >= 1, 1 >= 2, 5 >= 3 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (74) 16.41/6.10 YES 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (75) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_foldl(xw9, xw10, :(xw110, xw111), ba) -> new_foldl(new_flip(xw9, xw10, ba), xw110, xw111, ba) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs15(xw10, xw90, ty_@0) -> new_esEs14(xw10, xw90) 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs11(xw10, xw90) -> error([]) 16.41/6.10 new_esEs5(xw10, xw90) -> error([]) 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs1(xw10, xw90) -> error([]) 16.41/6.10 new_esEs2(xw10, xw90, bb, bc) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, app(app(ty_@2, ca), cb)) -> new_esEs6(xw10, xw90, ca, cb) 16.41/6.10 new_esEs4(xw10, xw90, bf, bg, bh) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Ordering) -> new_esEs10(xw10, xw90) 16.41/6.10 new_esEs7(xw10, xw90) -> error([]) 16.41/6.10 new_esEs9(xw10, xw90) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, app(ty_Ratio, cd)) -> new_esEs13(xw10, xw90, cd) 16.41/6.10 new_esEs15(xw10, xw90, app(ty_Maybe, cc)) -> new_esEs12(xw10, xw90, cc) 16.41/6.10 new_deleteBy00(xw17, xw18, xw19, True, be) -> xw17 16.41/6.10 new_esEs6(xw10, xw90, ca, cb) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Bool) -> new_esEs5(xw10, xw90) 16.41/6.10 new_esEs15(xw10, xw90, ty_Integer) -> new_esEs9(xw10, xw90) 16.41/6.10 new_esEs15(xw10, xw90, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw10, xw90, bf, bg, bh) 16.41/6.10 new_deleteBy1(xw10, :(xw90, xw91), ba) -> new_deleteBy00(xw91, xw90, xw10, new_esEs15(xw10, xw90, ba), ba) 16.41/6.10 new_esEs15(xw10, xw90, ty_Double) -> new_esEs8(xw10, xw90) 16.41/6.10 new_esEs10(LT, LT) -> True 16.41/6.10 new_esEs15(xw10, xw90, app(ty_[], bd)) -> new_esEs3(xw10, xw90, bd) 16.41/6.10 new_flip(xw9, xw10, ba) -> new_deleteBy1(xw10, xw9, ba) 16.41/6.10 new_esEs14(xw10, xw90) -> error([]) 16.41/6.10 new_esEs12(xw10, xw90, cc) -> error([]) 16.41/6.10 new_esEs13(xw10, xw90, cd) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Char) -> new_esEs7(xw10, xw90) 16.41/6.10 new_esEs10(LT, EQ) -> False 16.41/6.10 new_esEs10(EQ, LT) -> False 16.41/6.10 new_esEs15(xw10, xw90, ty_Int) -> new_esEs11(xw10, xw90) 16.41/6.10 new_esEs10(GT, GT) -> True 16.41/6.10 new_esEs3(xw10, xw90, bd) -> error([]) 16.41/6.10 new_deleteBy1(xw10, [], ba) -> [] 16.41/6.10 new_esEs15(xw10, xw90, app(app(ty_Either, bb), bc)) -> new_esEs2(xw10, xw90, bb, bc) 16.41/6.10 new_esEs8(xw10, xw90) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Float) -> new_esEs1(xw10, xw90) 16.41/6.10 new_deleteBy00(xw17, xw18, xw19, False, be) -> :(xw18, new_deleteBy1(xw19, xw17, be)) 16.41/6.10 new_esEs10(EQ, EQ) -> True 16.41/6.10 16.41/6.10 The set Q consists of the following terms: 16.41/6.10 16.41/6.10 new_esEs7(x0, x1) 16.41/6.10 new_esEs15(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.10 new_esEs10(GT, GT) 16.41/6.10 new_esEs2(x0, x1, x2, x3) 16.41/6.10 new_esEs3(x0, x1, x2) 16.41/6.10 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.10 new_esEs15(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.10 new_deleteBy1(x0, :(x1, x2), x3) 16.41/6.10 new_esEs15(x0, x1, ty_Char) 16.41/6.10 new_deleteBy1(x0, [], x1) 16.41/6.10 new_flip(x0, x1, x2) 16.41/6.10 new_esEs14(x0, x1) 16.41/6.10 new_esEs12(x0, x1, x2) 16.41/6.10 new_esEs13(x0, x1, x2) 16.41/6.10 new_esEs15(x0, x1, app(ty_Ratio, x2)) 16.41/6.10 new_esEs15(x0, x1, app(ty_Maybe, x2)) 16.41/6.10 new_deleteBy00(x0, x1, x2, False, x3) 16.41/6.10 new_esEs5(x0, x1) 16.41/6.10 new_esEs1(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Double) 16.41/6.10 new_esEs15(x0, x1, ty_@0) 16.41/6.10 new_esEs15(x0, x1, ty_Ordering) 16.41/6.10 new_esEs10(LT, EQ) 16.41/6.10 new_esEs10(EQ, LT) 16.41/6.10 new_esEs15(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.10 new_esEs15(x0, x1, ty_Float) 16.41/6.10 new_esEs6(x0, x1, x2, x3) 16.41/6.10 new_esEs9(x0, x1) 16.41/6.10 new_esEs15(x0, x1, app(ty_[], x2)) 16.41/6.10 new_esEs10(EQ, GT) 16.41/6.10 new_esEs10(GT, EQ) 16.41/6.10 new_esEs15(x0, x1, ty_Int) 16.41/6.10 new_esEs10(LT, GT) 16.41/6.10 new_esEs10(GT, LT) 16.41/6.10 new_esEs11(x0, x1) 16.41/6.10 new_deleteBy00(x0, x1, x2, True, x3) 16.41/6.10 new_esEs15(x0, x1, ty_Integer) 16.41/6.10 new_esEs8(x0, x1) 16.41/6.10 new_esEs15(x0, x1, ty_Bool) 16.41/6.10 new_esEs10(LT, LT) 16.41/6.10 new_esEs10(EQ, EQ) 16.41/6.10 16.41/6.10 We have to consider all minimal (P,Q,R)-chains. 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (76) TransformationProof (EQUIVALENT) 16.41/6.10 By rewriting [LPAR04] the rule new_foldl(xw9, xw10, :(xw110, xw111), ba) -> new_foldl(new_flip(xw9, xw10, ba), xw110, xw111, ba) at position [0] we obtained the following new rules [LPAR04]: 16.41/6.10 16.41/6.10 (new_foldl(xw9, xw10, :(xw110, xw111), ba) -> new_foldl(new_deleteBy1(xw10, xw9, ba), xw110, xw111, ba),new_foldl(xw9, xw10, :(xw110, xw111), ba) -> new_foldl(new_deleteBy1(xw10, xw9, ba), xw110, xw111, ba)) 16.41/6.10 16.41/6.10 16.41/6.10 ---------------------------------------- 16.41/6.10 16.41/6.10 (77) 16.41/6.10 Obligation: 16.41/6.10 Q DP problem: 16.41/6.10 The TRS P consists of the following rules: 16.41/6.10 16.41/6.10 new_foldl(xw9, xw10, :(xw110, xw111), ba) -> new_foldl(new_deleteBy1(xw10, xw9, ba), xw110, xw111, ba) 16.41/6.10 16.41/6.10 The TRS R consists of the following rules: 16.41/6.10 16.41/6.10 new_esEs15(xw10, xw90, ty_@0) -> new_esEs14(xw10, xw90) 16.41/6.10 new_esEs10(EQ, GT) -> False 16.41/6.10 new_esEs10(GT, EQ) -> False 16.41/6.10 new_esEs11(xw10, xw90) -> error([]) 16.41/6.10 new_esEs5(xw10, xw90) -> error([]) 16.41/6.10 new_esEs10(LT, GT) -> False 16.41/6.10 new_esEs10(GT, LT) -> False 16.41/6.10 new_esEs1(xw10, xw90) -> error([]) 16.41/6.10 new_esEs2(xw10, xw90, bb, bc) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, app(app(ty_@2, ca), cb)) -> new_esEs6(xw10, xw90, ca, cb) 16.41/6.10 new_esEs4(xw10, xw90, bf, bg, bh) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Ordering) -> new_esEs10(xw10, xw90) 16.41/6.10 new_esEs7(xw10, xw90) -> error([]) 16.41/6.10 new_esEs9(xw10, xw90) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, app(ty_Ratio, cd)) -> new_esEs13(xw10, xw90, cd) 16.41/6.10 new_esEs15(xw10, xw90, app(ty_Maybe, cc)) -> new_esEs12(xw10, xw90, cc) 16.41/6.10 new_deleteBy00(xw17, xw18, xw19, True, be) -> xw17 16.41/6.10 new_esEs6(xw10, xw90, ca, cb) -> error([]) 16.41/6.10 new_esEs15(xw10, xw90, ty_Bool) -> new_esEs5(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, ty_Integer) -> new_esEs9(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw10, xw90, bf, bg, bh) 16.41/6.11 new_deleteBy1(xw10, :(xw90, xw91), ba) -> new_deleteBy00(xw91, xw90, xw10, new_esEs15(xw10, xw90, ba), ba) 16.41/6.11 new_esEs15(xw10, xw90, ty_Double) -> new_esEs8(xw10, xw90) 16.41/6.11 new_esEs10(LT, LT) -> True 16.41/6.11 new_esEs15(xw10, xw90, app(ty_[], bd)) -> new_esEs3(xw10, xw90, bd) 16.41/6.11 new_flip(xw9, xw10, ba) -> new_deleteBy1(xw10, xw9, ba) 16.41/6.11 new_esEs14(xw10, xw90) -> error([]) 16.41/6.11 new_esEs12(xw10, xw90, cc) -> error([]) 16.41/6.11 new_esEs13(xw10, xw90, cd) -> error([]) 16.41/6.11 new_esEs15(xw10, xw90, ty_Char) -> new_esEs7(xw10, xw90) 16.41/6.11 new_esEs10(LT, EQ) -> False 16.41/6.11 new_esEs10(EQ, LT) -> False 16.41/6.11 new_esEs15(xw10, xw90, ty_Int) -> new_esEs11(xw10, xw90) 16.41/6.11 new_esEs10(GT, GT) -> True 16.41/6.11 new_esEs3(xw10, xw90, bd) -> error([]) 16.41/6.11 new_deleteBy1(xw10, [], ba) -> [] 16.41/6.11 new_esEs15(xw10, xw90, app(app(ty_Either, bb), bc)) -> new_esEs2(xw10, xw90, bb, bc) 16.41/6.11 new_esEs8(xw10, xw90) -> error([]) 16.41/6.11 new_esEs15(xw10, xw90, ty_Float) -> new_esEs1(xw10, xw90) 16.41/6.11 new_deleteBy00(xw17, xw18, xw19, False, be) -> :(xw18, new_deleteBy1(xw19, xw17, be)) 16.41/6.11 new_esEs10(EQ, EQ) -> True 16.41/6.11 16.41/6.11 The set Q consists of the following terms: 16.41/6.11 16.41/6.11 new_esEs7(x0, x1) 16.41/6.11 new_esEs15(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.11 new_esEs10(GT, GT) 16.41/6.11 new_esEs2(x0, x1, x2, x3) 16.41/6.11 new_esEs3(x0, x1, x2) 16.41/6.11 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.11 new_esEs15(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.11 new_deleteBy1(x0, :(x1, x2), x3) 16.41/6.11 new_esEs15(x0, x1, ty_Char) 16.41/6.11 new_deleteBy1(x0, [], x1) 16.41/6.11 new_flip(x0, x1, x2) 16.41/6.11 new_esEs14(x0, x1) 16.41/6.11 new_esEs12(x0, x1, x2) 16.41/6.11 new_esEs13(x0, x1, x2) 16.41/6.11 new_esEs15(x0, x1, app(ty_Ratio, x2)) 16.41/6.11 new_esEs15(x0, x1, app(ty_Maybe, x2)) 16.41/6.11 new_deleteBy00(x0, x1, x2, False, x3) 16.41/6.11 new_esEs5(x0, x1) 16.41/6.11 new_esEs1(x0, x1) 16.41/6.11 new_esEs15(x0, x1, ty_Double) 16.41/6.11 new_esEs15(x0, x1, ty_@0) 16.41/6.11 new_esEs15(x0, x1, ty_Ordering) 16.41/6.11 new_esEs10(LT, EQ) 16.41/6.11 new_esEs10(EQ, LT) 16.41/6.11 new_esEs15(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.11 new_esEs15(x0, x1, ty_Float) 16.41/6.11 new_esEs6(x0, x1, x2, x3) 16.41/6.11 new_esEs9(x0, x1) 16.41/6.11 new_esEs15(x0, x1, app(ty_[], x2)) 16.41/6.11 new_esEs10(EQ, GT) 16.41/6.11 new_esEs10(GT, EQ) 16.41/6.11 new_esEs15(x0, x1, ty_Int) 16.41/6.11 new_esEs10(LT, GT) 16.41/6.11 new_esEs10(GT, LT) 16.41/6.11 new_esEs11(x0, x1) 16.41/6.11 new_deleteBy00(x0, x1, x2, True, x3) 16.41/6.11 new_esEs15(x0, x1, ty_Integer) 16.41/6.11 new_esEs8(x0, x1) 16.41/6.11 new_esEs15(x0, x1, ty_Bool) 16.41/6.11 new_esEs10(LT, LT) 16.41/6.11 new_esEs10(EQ, EQ) 16.41/6.11 16.41/6.11 We have to consider all minimal (P,Q,R)-chains. 16.41/6.11 ---------------------------------------- 16.41/6.11 16.41/6.11 (78) UsableRulesProof (EQUIVALENT) 16.41/6.11 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 16.41/6.11 ---------------------------------------- 16.41/6.11 16.41/6.11 (79) 16.41/6.11 Obligation: 16.41/6.11 Q DP problem: 16.41/6.11 The TRS P consists of the following rules: 16.41/6.11 16.41/6.11 new_foldl(xw9, xw10, :(xw110, xw111), ba) -> new_foldl(new_deleteBy1(xw10, xw9, ba), xw110, xw111, ba) 16.41/6.11 16.41/6.11 The TRS R consists of the following rules: 16.41/6.11 16.41/6.11 new_deleteBy1(xw10, :(xw90, xw91), ba) -> new_deleteBy00(xw91, xw90, xw10, new_esEs15(xw10, xw90, ba), ba) 16.41/6.11 new_deleteBy1(xw10, [], ba) -> [] 16.41/6.11 new_esEs15(xw10, xw90, ty_@0) -> new_esEs14(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, app(app(ty_@2, ca), cb)) -> new_esEs6(xw10, xw90, ca, cb) 16.41/6.11 new_esEs15(xw10, xw90, ty_Ordering) -> new_esEs10(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, app(ty_Ratio, cd)) -> new_esEs13(xw10, xw90, cd) 16.41/6.11 new_esEs15(xw10, xw90, app(ty_Maybe, cc)) -> new_esEs12(xw10, xw90, cc) 16.41/6.11 new_esEs15(xw10, xw90, ty_Bool) -> new_esEs5(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, ty_Integer) -> new_esEs9(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw10, xw90, bf, bg, bh) 16.41/6.11 new_esEs15(xw10, xw90, ty_Double) -> new_esEs8(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, app(ty_[], bd)) -> new_esEs3(xw10, xw90, bd) 16.41/6.11 new_esEs15(xw10, xw90, ty_Char) -> new_esEs7(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, ty_Int) -> new_esEs11(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, app(app(ty_Either, bb), bc)) -> new_esEs2(xw10, xw90, bb, bc) 16.41/6.11 new_esEs15(xw10, xw90, ty_Float) -> new_esEs1(xw10, xw90) 16.41/6.11 new_deleteBy00(xw17, xw18, xw19, True, be) -> xw17 16.41/6.11 new_deleteBy00(xw17, xw18, xw19, False, be) -> :(xw18, new_deleteBy1(xw19, xw17, be)) 16.41/6.11 new_esEs1(xw10, xw90) -> error([]) 16.41/6.11 new_esEs2(xw10, xw90, bb, bc) -> error([]) 16.41/6.11 new_esEs11(xw10, xw90) -> error([]) 16.41/6.11 new_esEs7(xw10, xw90) -> error([]) 16.41/6.11 new_esEs3(xw10, xw90, bd) -> error([]) 16.41/6.11 new_esEs8(xw10, xw90) -> error([]) 16.41/6.11 new_esEs4(xw10, xw90, bf, bg, bh) -> error([]) 16.41/6.11 new_esEs9(xw10, xw90) -> error([]) 16.41/6.11 new_esEs5(xw10, xw90) -> error([]) 16.41/6.11 new_esEs12(xw10, xw90, cc) -> error([]) 16.41/6.11 new_esEs13(xw10, xw90, cd) -> error([]) 16.41/6.11 new_esEs10(EQ, GT) -> False 16.41/6.11 new_esEs10(GT, EQ) -> False 16.41/6.11 new_esEs10(LT, GT) -> False 16.41/6.11 new_esEs10(GT, LT) -> False 16.41/6.11 new_esEs10(LT, LT) -> True 16.41/6.11 new_esEs10(LT, EQ) -> False 16.41/6.11 new_esEs10(EQ, LT) -> False 16.41/6.11 new_esEs10(GT, GT) -> True 16.41/6.11 new_esEs10(EQ, EQ) -> True 16.41/6.11 new_esEs6(xw10, xw90, ca, cb) -> error([]) 16.41/6.11 new_esEs14(xw10, xw90) -> error([]) 16.41/6.11 16.41/6.11 The set Q consists of the following terms: 16.41/6.11 16.41/6.11 new_esEs7(x0, x1) 16.41/6.11 new_esEs15(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.11 new_esEs10(GT, GT) 16.41/6.11 new_esEs2(x0, x1, x2, x3) 16.41/6.11 new_esEs3(x0, x1, x2) 16.41/6.11 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.11 new_esEs15(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.11 new_deleteBy1(x0, :(x1, x2), x3) 16.41/6.11 new_esEs15(x0, x1, ty_Char) 16.41/6.11 new_deleteBy1(x0, [], x1) 16.41/6.11 new_flip(x0, x1, x2) 16.41/6.11 new_esEs14(x0, x1) 16.41/6.11 new_esEs12(x0, x1, x2) 16.41/6.11 new_esEs13(x0, x1, x2) 16.41/6.11 new_esEs15(x0, x1, app(ty_Ratio, x2)) 16.41/6.11 new_esEs15(x0, x1, app(ty_Maybe, x2)) 16.41/6.11 new_deleteBy00(x0, x1, x2, False, x3) 16.41/6.11 new_esEs5(x0, x1) 16.41/6.11 new_esEs1(x0, x1) 16.41/6.11 new_esEs15(x0, x1, ty_Double) 16.41/6.11 new_esEs15(x0, x1, ty_@0) 16.41/6.11 new_esEs15(x0, x1, ty_Ordering) 16.41/6.11 new_esEs10(LT, EQ) 16.41/6.11 new_esEs10(EQ, LT) 16.41/6.11 new_esEs15(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.11 new_esEs15(x0, x1, ty_Float) 16.41/6.11 new_esEs6(x0, x1, x2, x3) 16.41/6.11 new_esEs9(x0, x1) 16.41/6.11 new_esEs15(x0, x1, app(ty_[], x2)) 16.41/6.11 new_esEs10(EQ, GT) 16.41/6.11 new_esEs10(GT, EQ) 16.41/6.11 new_esEs15(x0, x1, ty_Int) 16.41/6.11 new_esEs10(LT, GT) 16.41/6.11 new_esEs10(GT, LT) 16.41/6.11 new_esEs11(x0, x1) 16.41/6.11 new_deleteBy00(x0, x1, x2, True, x3) 16.41/6.11 new_esEs15(x0, x1, ty_Integer) 16.41/6.11 new_esEs8(x0, x1) 16.41/6.11 new_esEs15(x0, x1, ty_Bool) 16.41/6.11 new_esEs10(LT, LT) 16.41/6.11 new_esEs10(EQ, EQ) 16.41/6.11 16.41/6.11 We have to consider all minimal (P,Q,R)-chains. 16.41/6.11 ---------------------------------------- 16.41/6.11 16.41/6.11 (80) QReductionProof (EQUIVALENT) 16.41/6.11 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 16.41/6.11 16.41/6.11 new_flip(x0, x1, x2) 16.41/6.11 16.41/6.11 16.41/6.11 ---------------------------------------- 16.41/6.11 16.41/6.11 (81) 16.41/6.11 Obligation: 16.41/6.11 Q DP problem: 16.41/6.11 The TRS P consists of the following rules: 16.41/6.11 16.41/6.11 new_foldl(xw9, xw10, :(xw110, xw111), ba) -> new_foldl(new_deleteBy1(xw10, xw9, ba), xw110, xw111, ba) 16.41/6.11 16.41/6.11 The TRS R consists of the following rules: 16.41/6.11 16.41/6.11 new_deleteBy1(xw10, :(xw90, xw91), ba) -> new_deleteBy00(xw91, xw90, xw10, new_esEs15(xw10, xw90, ba), ba) 16.41/6.11 new_deleteBy1(xw10, [], ba) -> [] 16.41/6.11 new_esEs15(xw10, xw90, ty_@0) -> new_esEs14(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, app(app(ty_@2, ca), cb)) -> new_esEs6(xw10, xw90, ca, cb) 16.41/6.11 new_esEs15(xw10, xw90, ty_Ordering) -> new_esEs10(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, app(ty_Ratio, cd)) -> new_esEs13(xw10, xw90, cd) 16.41/6.11 new_esEs15(xw10, xw90, app(ty_Maybe, cc)) -> new_esEs12(xw10, xw90, cc) 16.41/6.11 new_esEs15(xw10, xw90, ty_Bool) -> new_esEs5(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, ty_Integer) -> new_esEs9(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, app(app(app(ty_@3, bf), bg), bh)) -> new_esEs4(xw10, xw90, bf, bg, bh) 16.41/6.11 new_esEs15(xw10, xw90, ty_Double) -> new_esEs8(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, app(ty_[], bd)) -> new_esEs3(xw10, xw90, bd) 16.41/6.11 new_esEs15(xw10, xw90, ty_Char) -> new_esEs7(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, ty_Int) -> new_esEs11(xw10, xw90) 16.41/6.11 new_esEs15(xw10, xw90, app(app(ty_Either, bb), bc)) -> new_esEs2(xw10, xw90, bb, bc) 16.41/6.11 new_esEs15(xw10, xw90, ty_Float) -> new_esEs1(xw10, xw90) 16.41/6.11 new_deleteBy00(xw17, xw18, xw19, True, be) -> xw17 16.41/6.11 new_deleteBy00(xw17, xw18, xw19, False, be) -> :(xw18, new_deleteBy1(xw19, xw17, be)) 16.41/6.11 new_esEs1(xw10, xw90) -> error([]) 16.41/6.11 new_esEs2(xw10, xw90, bb, bc) -> error([]) 16.41/6.11 new_esEs11(xw10, xw90) -> error([]) 16.41/6.11 new_esEs7(xw10, xw90) -> error([]) 16.41/6.11 new_esEs3(xw10, xw90, bd) -> error([]) 16.41/6.11 new_esEs8(xw10, xw90) -> error([]) 16.41/6.11 new_esEs4(xw10, xw90, bf, bg, bh) -> error([]) 16.41/6.11 new_esEs9(xw10, xw90) -> error([]) 16.41/6.11 new_esEs5(xw10, xw90) -> error([]) 16.41/6.11 new_esEs12(xw10, xw90, cc) -> error([]) 16.41/6.11 new_esEs13(xw10, xw90, cd) -> error([]) 16.41/6.11 new_esEs10(EQ, GT) -> False 16.41/6.11 new_esEs10(GT, EQ) -> False 16.41/6.11 new_esEs10(LT, GT) -> False 16.41/6.11 new_esEs10(GT, LT) -> False 16.41/6.11 new_esEs10(LT, LT) -> True 16.41/6.11 new_esEs10(LT, EQ) -> False 16.41/6.11 new_esEs10(EQ, LT) -> False 16.41/6.11 new_esEs10(GT, GT) -> True 16.41/6.11 new_esEs10(EQ, EQ) -> True 16.41/6.11 new_esEs6(xw10, xw90, ca, cb) -> error([]) 16.41/6.11 new_esEs14(xw10, xw90) -> error([]) 16.41/6.11 16.41/6.11 The set Q consists of the following terms: 16.41/6.11 16.41/6.11 new_esEs7(x0, x1) 16.41/6.11 new_esEs15(x0, x1, app(app(ty_Either, x2), x3)) 16.41/6.11 new_esEs10(GT, GT) 16.41/6.11 new_esEs2(x0, x1, x2, x3) 16.41/6.11 new_esEs3(x0, x1, x2) 16.41/6.11 new_esEs4(x0, x1, x2, x3, x4) 16.41/6.11 new_esEs15(x0, x1, app(app(ty_@2, x2), x3)) 16.41/6.11 new_deleteBy1(x0, :(x1, x2), x3) 16.41/6.11 new_esEs15(x0, x1, ty_Char) 16.41/6.11 new_deleteBy1(x0, [], x1) 16.41/6.11 new_esEs14(x0, x1) 16.41/6.11 new_esEs12(x0, x1, x2) 16.41/6.11 new_esEs13(x0, x1, x2) 16.41/6.11 new_esEs15(x0, x1, app(ty_Ratio, x2)) 16.41/6.11 new_esEs15(x0, x1, app(ty_Maybe, x2)) 16.41/6.11 new_deleteBy00(x0, x1, x2, False, x3) 16.41/6.11 new_esEs5(x0, x1) 16.41/6.11 new_esEs1(x0, x1) 16.41/6.11 new_esEs15(x0, x1, ty_Double) 16.41/6.11 new_esEs15(x0, x1, ty_@0) 16.41/6.11 new_esEs15(x0, x1, ty_Ordering) 16.41/6.11 new_esEs10(LT, EQ) 16.41/6.11 new_esEs10(EQ, LT) 16.41/6.11 new_esEs15(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 16.41/6.11 new_esEs15(x0, x1, ty_Float) 16.41/6.11 new_esEs6(x0, x1, x2, x3) 16.41/6.11 new_esEs9(x0, x1) 16.41/6.11 new_esEs15(x0, x1, app(ty_[], x2)) 16.41/6.11 new_esEs10(EQ, GT) 16.41/6.11 new_esEs10(GT, EQ) 16.41/6.11 new_esEs15(x0, x1, ty_Int) 16.41/6.11 new_esEs10(LT, GT) 16.41/6.11 new_esEs10(GT, LT) 16.41/6.11 new_esEs11(x0, x1) 16.41/6.11 new_deleteBy00(x0, x1, x2, True, x3) 16.41/6.11 new_esEs15(x0, x1, ty_Integer) 16.41/6.11 new_esEs8(x0, x1) 16.41/6.11 new_esEs15(x0, x1, ty_Bool) 16.41/6.11 new_esEs10(LT, LT) 16.41/6.11 new_esEs10(EQ, EQ) 16.41/6.11 16.41/6.11 We have to consider all minimal (P,Q,R)-chains. 16.41/6.11 ---------------------------------------- 16.41/6.11 16.41/6.11 (82) QDPSizeChangeProof (EQUIVALENT) 16.41/6.11 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. 16.41/6.11 16.41/6.11 From the DPs we obtained the following set of size-change graphs: 16.41/6.11 *new_foldl(xw9, xw10, :(xw110, xw111), ba) -> new_foldl(new_deleteBy1(xw10, xw9, ba), xw110, xw111, ba) 16.41/6.11 The graph contains the following edges 3 > 2, 3 > 3, 4 >= 4 16.41/6.11 16.41/6.11 16.41/6.11 ---------------------------------------- 16.41/6.11 16.41/6.11 (83) 16.41/6.11 YES 16.60/6.15 EOF