/export/starexec/sandbox2/solver/bin/starexec_run_standard /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- MAYBE proof of /export/starexec/sandbox2/benchmark/theBenchmark.xml # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty Outermost Termination of the given OTRS could not be shown: (0) OTRS (1) Trivial-Transformation [SOUND, 0 ms] (2) QTRS (3) DependencyPairsProof [EQUIVALENT, 0 ms] (4) QDP (5) DependencyGraphProof [EQUIVALENT, 1 ms] (6) AND (7) QDP (8) UsableRulesProof [EQUIVALENT, 0 ms] (9) QDP (10) QDPSizeChangeProof [EQUIVALENT, 0 ms] (11) YES (12) QDP (13) UsableRulesProof [EQUIVALENT, 0 ms] (14) QDP (15) NonTerminationLoopProof [COMPLETE, 0 ms] (16) NO (17) Thiemann-SpecialC-Transformation [EQUIVALENT, 0 ms] (18) QTRS (19) DependencyPairsProof [EQUIVALENT, 0 ms] (20) QDP (21) DependencyGraphProof [EQUIVALENT, 0 ms] (22) AND (23) QDP (24) UsableRulesProof [EQUIVALENT, 0 ms] (25) QDP (26) QReductionProof [EQUIVALENT, 0 ms] (27) QDP (28) MRRProof [EQUIVALENT, 10 ms] (29) QDP (30) UsableRulesProof [EQUIVALENT, 0 ms] (31) QDP (32) QReductionProof [EQUIVALENT, 0 ms] (33) QDP (34) UsableRulesReductionPairsProof [EQUIVALENT, 3 ms] (35) QDP (36) DependencyGraphProof [EQUIVALENT, 0 ms] (37) TRUE (38) QDP (39) UsableRulesProof [EQUIVALENT, 0 ms] (40) QDP (41) QReductionProof [EQUIVALENT, 0 ms] (42) QDP (43) TransformationProof [EQUIVALENT, 0 ms] (44) QDP (45) UsableRulesProof [EQUIVALENT, 0 ms] (46) QDP (47) QDPOrderProof [EQUIVALENT, 16 ms] (48) QDP (49) SplitQDPProof [EQUIVALENT, 0 ms] (50) AND (51) QDP (52) SemLabProof [SOUND, 0 ms] (53) QDP (54) UsableRulesReductionPairsProof [EQUIVALENT, 0 ms] (55) QDP (56) MRRProof [EQUIVALENT, 0 ms] (57) QDP (58) QDPOrderProof [EQUIVALENT, 0 ms] (59) QDP (60) UsableRulesReductionPairsProof [EQUIVALENT, 0 ms] (61) QDP (62) QDPOrderProof [EQUIVALENT, 0 ms] (63) QDP (64) QDPOrderProof [EQUIVALENT, 5 ms] (65) QDP (66) PisEmptyProof [SOUND, 0 ms] (67) TRUE (68) QDP (69) TransformationProof [SOUND, 0 ms] (70) QDP (71) UsableRulesProof [EQUIVALENT, 0 ms] (72) QDP (73) QReductionProof [EQUIVALENT, 0 ms] (74) QDP (75) UsableRulesProof [EQUIVALENT, 0 ms] (76) QDP (77) QReductionProof [EQUIVALENT, 0 ms] (78) QDP (79) Raffelsieper-Zantema-Transformation [SOUND, 0 ms] (80) QTRS (81) AAECC Innermost [EQUIVALENT, 14 ms] (82) QTRS (83) DependencyPairsProof [EQUIVALENT, 0 ms] (84) QDP (85) DependencyGraphProof [EQUIVALENT, 0 ms] (86) AND (87) QDP (88) UsableRulesProof [EQUIVALENT, 0 ms] (89) QDP (90) QReductionProof [EQUIVALENT, 0 ms] (91) QDP (92) QDPSizeChangeProof [EQUIVALENT, 0 ms] (93) YES (94) QDP (95) UsableRulesProof [EQUIVALENT, 0 ms] (96) QDP (97) QReductionProof [EQUIVALENT, 0 ms] (98) QDP (99) TransformationProof [EQUIVALENT, 14 ms] (100) QDP (101) DependencyGraphProof [EQUIVALENT, 0 ms] (102) QDP (103) UsableRulesProof [EQUIVALENT, 0 ms] (104) QDP (105) TransformationProof [EQUIVALENT, 0 ms] (106) QDP (107) TransformationProof [EQUIVALENT, 0 ms] (108) QDP (109) TransformationProof [EQUIVALENT, 0 ms] (110) QDP (111) TransformationProof [EQUIVALENT, 0 ms] (112) QDP (113) DependencyGraphProof [EQUIVALENT, 0 ms] (114) QDP (115) TransformationProof [EQUIVALENT, 0 ms] (116) QDP (117) TransformationProof [EQUIVALENT, 0 ms] (118) QDP (119) TransformationProof [EQUIVALENT, 0 ms] (120) QDP (121) QDPOrderProof [EQUIVALENT, 16 ms] (122) QDP (123) DependencyGraphProof [EQUIVALENT, 0 ms] (124) QDP (125) QDPOrderProof [EQUIVALENT, 14 ms] (126) QDP (127) DependencyGraphProof [EQUIVALENT, 0 ms] (128) QDP (129) SplitQDPProof [EQUIVALENT, 0 ms] (130) AND (131) QDP (132) SemLabProof [SOUND, 0 ms] (133) QDP (134) UsableRulesReductionPairsProof [EQUIVALENT, 0 ms] (135) QDP (136) MRRProof [EQUIVALENT, 0 ms] (137) QDP (138) DependencyGraphProof [EQUIVALENT, 0 ms] (139) QDP (140) PisEmptyProof [SOUND, 0 ms] (141) TRUE (142) QDP (143) QReductionProof [EQUIVALENT, 0 ms] (144) QDP (145) SplitQDPProof [EQUIVALENT, 0 ms] (146) AND (147) QDP (148) SemLabProof [SOUND, 0 ms] (149) QDP (150) UsableRulesReductionPairsProof [EQUIVALENT, 0 ms] (151) QDP (152) MRRProof [EQUIVALENT, 0 ms] (153) QDP (154) DependencyGraphProof [EQUIVALENT, 0 ms] (155) QDP (156) PisEmptyProof [SOUND, 0 ms] (157) TRUE (158) QDP (159) QReductionProof [EQUIVALENT, 0 ms] (160) QDP ---------------------------------------- (0) Obligation: Term rewrite system R: The TRS R consists of the following rules: a -> f(a) f(f(x)) -> b 0(f(x)) -> 1(x) 1(f(x)) -> f(0(x)) Outermost Strategy. ---------------------------------------- (1) Trivial-Transformation (SOUND) We applied the Trivial transformation to transform the outermost TRS to a standard TRS. ---------------------------------------- (2) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: a -> f(a) f(f(x)) -> b 0(f(x)) -> 1(x) 1(f(x)) -> f(0(x)) Q is empty. ---------------------------------------- (3) DependencyPairsProof (EQUIVALENT) Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem. ---------------------------------------- (4) Obligation: Q DP problem: The TRS P consists of the following rules: A -> F(a) A -> A 0^1(f(x)) -> 1^1(x) 1^1(f(x)) -> F(0(x)) 1^1(f(x)) -> 0^1(x) The TRS R consists of the following rules: a -> f(a) f(f(x)) -> b 0(f(x)) -> 1(x) 1(f(x)) -> f(0(x)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (5) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 2 less nodes. ---------------------------------------- (6) Complex Obligation (AND) ---------------------------------------- (7) Obligation: Q DP problem: The TRS P consists of the following rules: 1^1(f(x)) -> 0^1(x) 0^1(f(x)) -> 1^1(x) The TRS R consists of the following rules: a -> f(a) f(f(x)) -> b 0(f(x)) -> 1(x) 1(f(x)) -> f(0(x)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (8) UsableRulesProof (EQUIVALENT) We can use the usable rules and reduction pair processor [LPAR04] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its arguments. Then, we can delete all non-usable rules [FROCOS05] from R. ---------------------------------------- (9) Obligation: Q DP problem: The TRS P consists of the following rules: 1^1(f(x)) -> 0^1(x) 0^1(f(x)) -> 1^1(x) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (10) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *0^1(f(x)) -> 1^1(x) The graph contains the following edges 1 > 1 *1^1(f(x)) -> 0^1(x) The graph contains the following edges 1 > 1 ---------------------------------------- (11) YES ---------------------------------------- (12) Obligation: Q DP problem: The TRS P consists of the following rules: A -> A The TRS R consists of the following rules: a -> f(a) f(f(x)) -> b 0(f(x)) -> 1(x) 1(f(x)) -> f(0(x)) Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (13) UsableRulesProof (EQUIVALENT) We can use the usable rules and reduction pair processor [LPAR04] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its arguments. Then, we can delete all non-usable rules [FROCOS05] from R. ---------------------------------------- (14) Obligation: Q DP problem: The TRS P consists of the following rules: A -> A R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (15) NonTerminationLoopProof (COMPLETE) We used the non-termination processor [FROCOS05] to show that the DP problem is infinite. Found a loop by semiunifying a rule from P directly. s = A evaluates to t =A Thus s starts an infinite chain as s semiunifies with t with the following substitutions: * Matcher: [ ] * Semiunifier: [ ] -------------------------------------------------------------------------------- Rewriting sequence The DP semiunifies directly so there is only one rewrite step from A to A. ---------------------------------------- (16) NO ---------------------------------------- (17) Thiemann-SpecialC-Transformation (EQUIVALENT) We applied the Thiemann-SpecialC transformation to transform the outermost TRS to an innermost TRS. ---------------------------------------- (18) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: top(go_up(x)) -> top(reduce(x)) reduce(f(x_1)) -> check_f(redex_f(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) redex_f(f(x)) -> result_f(b) redex_0(f(x)) -> result_0(1(x)) redex_1(f(x)) -> result_1(f(0(x))) check_f(result_f(x)) -> go_up(x) check_0(result_0(x)) -> go_up(x) check_1(result_1(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) The set Q consists of the following terms: top(go_up(x0)) reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) ---------------------------------------- (19) DependencyPairsProof (EQUIVALENT) Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem. ---------------------------------------- (20) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(go_up(x)) -> TOP(reduce(x)) TOP(go_up(x)) -> REDUCE(x) REDUCE(f(x_1)) -> CHECK_F(redex_f(x_1)) REDUCE(f(x_1)) -> REDEX_F(x_1) REDUCE(0(x_1)) -> CHECK_0(redex_0(x_1)) REDUCE(0(x_1)) -> REDEX_0(x_1) REDUCE(1(x_1)) -> CHECK_1(redex_1(x_1)) REDUCE(1(x_1)) -> REDEX_1(x_1) CHECK_F(redex_f(x_1)) -> IN_F_1(reduce(x_1)) CHECK_F(redex_f(x_1)) -> REDUCE(x_1) CHECK_0(redex_0(x_1)) -> IN_0_1(reduce(x_1)) CHECK_0(redex_0(x_1)) -> REDUCE(x_1) CHECK_1(redex_1(x_1)) -> IN_1_1(reduce(x_1)) CHECK_1(redex_1(x_1)) -> REDUCE(x_1) The TRS R consists of the following rules: top(go_up(x)) -> top(reduce(x)) reduce(f(x_1)) -> check_f(redex_f(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) redex_f(f(x)) -> result_f(b) redex_0(f(x)) -> result_0(1(x)) redex_1(f(x)) -> result_1(f(0(x))) check_f(result_f(x)) -> go_up(x) check_0(result_0(x)) -> go_up(x) check_1(result_1(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) The set Q consists of the following terms: top(go_up(x0)) reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (21) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 9 less nodes. ---------------------------------------- (22) Complex Obligation (AND) ---------------------------------------- (23) Obligation: Q DP problem: The TRS P consists of the following rules: REDUCE(0(x_1)) -> CHECK_0(redex_0(x_1)) CHECK_0(redex_0(x_1)) -> REDUCE(x_1) REDUCE(1(x_1)) -> CHECK_1(redex_1(x_1)) CHECK_1(redex_1(x_1)) -> REDUCE(x_1) The TRS R consists of the following rules: top(go_up(x)) -> top(reduce(x)) reduce(f(x_1)) -> check_f(redex_f(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) redex_f(f(x)) -> result_f(b) redex_0(f(x)) -> result_0(1(x)) redex_1(f(x)) -> result_1(f(0(x))) check_f(result_f(x)) -> go_up(x) check_0(result_0(x)) -> go_up(x) check_1(result_1(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) The set Q consists of the following terms: top(go_up(x0)) reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (24) UsableRulesProof (EQUIVALENT) 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. ---------------------------------------- (25) Obligation: Q DP problem: The TRS P consists of the following rules: REDUCE(0(x_1)) -> CHECK_0(redex_0(x_1)) CHECK_0(redex_0(x_1)) -> REDUCE(x_1) REDUCE(1(x_1)) -> CHECK_1(redex_1(x_1)) CHECK_1(redex_1(x_1)) -> REDUCE(x_1) The TRS R consists of the following rules: redex_1(f(x)) -> result_1(f(0(x))) redex_0(f(x)) -> result_0(1(x)) The set Q consists of the following terms: top(go_up(x0)) reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (26) QReductionProof (EQUIVALENT) We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. top(go_up(x0)) reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) ---------------------------------------- (27) Obligation: Q DP problem: The TRS P consists of the following rules: REDUCE(0(x_1)) -> CHECK_0(redex_0(x_1)) CHECK_0(redex_0(x_1)) -> REDUCE(x_1) REDUCE(1(x_1)) -> CHECK_1(redex_1(x_1)) CHECK_1(redex_1(x_1)) -> REDUCE(x_1) The TRS R consists of the following rules: redex_1(f(x)) -> result_1(f(0(x))) redex_0(f(x)) -> result_0(1(x)) The set Q consists of the following terms: redex_0(f(x0)) redex_1(f(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (28) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented dependency pairs: REDUCE(1(x_1)) -> CHECK_1(redex_1(x_1)) CHECK_1(redex_1(x_1)) -> REDUCE(x_1) Used ordering: Polynomial interpretation [POLO]: POL(0(x_1)) = x_1 POL(1(x_1)) = 2 + 2*x_1 POL(CHECK_0(x_1)) = 1 + x_1 POL(CHECK_1(x_1)) = 2 + 2*x_1 POL(REDUCE(x_1)) = 1 + 2*x_1 POL(f(x_1)) = 2 + 2*x_1 POL(redex_0(x_1)) = 2*x_1 POL(redex_1(x_1)) = 2*x_1 POL(result_0(x_1)) = 2*x_1 POL(result_1(x_1)) = 2 + x_1 ---------------------------------------- (29) Obligation: Q DP problem: The TRS P consists of the following rules: REDUCE(0(x_1)) -> CHECK_0(redex_0(x_1)) CHECK_0(redex_0(x_1)) -> REDUCE(x_1) The TRS R consists of the following rules: redex_1(f(x)) -> result_1(f(0(x))) redex_0(f(x)) -> result_0(1(x)) The set Q consists of the following terms: redex_0(f(x0)) redex_1(f(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (30) UsableRulesProof (EQUIVALENT) 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. ---------------------------------------- (31) Obligation: Q DP problem: The TRS P consists of the following rules: REDUCE(0(x_1)) -> CHECK_0(redex_0(x_1)) CHECK_0(redex_0(x_1)) -> REDUCE(x_1) The TRS R consists of the following rules: redex_0(f(x)) -> result_0(1(x)) The set Q consists of the following terms: redex_0(f(x0)) redex_1(f(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (32) QReductionProof (EQUIVALENT) We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. redex_1(f(x0)) ---------------------------------------- (33) Obligation: Q DP problem: The TRS P consists of the following rules: REDUCE(0(x_1)) -> CHECK_0(redex_0(x_1)) CHECK_0(redex_0(x_1)) -> REDUCE(x_1) The TRS R consists of the following rules: redex_0(f(x)) -> result_0(1(x)) The set Q consists of the following terms: redex_0(f(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (34) UsableRulesReductionPairsProof (EQUIVALENT) By using the usable rules with reduction pair processor [LPAR04] with a polynomial ordering [POLO], all dependency pairs and the corresponding usable rules [FROCOS05] can be oriented non-strictly. All non-usable rules are removed, and those dependency pairs and usable rules that have been oriented strictly or contain non-usable symbols in their left-hand side are removed as well. The following dependency pairs can be deleted: REDUCE(0(x_1)) -> CHECK_0(redex_0(x_1)) The following rules are removed from R: redex_0(f(x)) -> result_0(1(x)) Used ordering: POLO with Polynomial interpretation [POLO]: POL(0(x_1)) = 2*x_1 POL(1(x_1)) = x_1 POL(CHECK_0(x_1)) = x_1 POL(REDUCE(x_1)) = 2*x_1 POL(f(x_1)) = 2*x_1 POL(redex_0(x_1)) = 2*x_1 POL(result_0(x_1)) = 2*x_1 ---------------------------------------- (35) Obligation: Q DP problem: The TRS P consists of the following rules: CHECK_0(redex_0(x_1)) -> REDUCE(x_1) R is empty. The set Q consists of the following terms: redex_0(f(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (36) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. ---------------------------------------- (37) TRUE ---------------------------------------- (38) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(go_up(x)) -> TOP(reduce(x)) The TRS R consists of the following rules: top(go_up(x)) -> top(reduce(x)) reduce(f(x_1)) -> check_f(redex_f(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) redex_f(f(x)) -> result_f(b) redex_0(f(x)) -> result_0(1(x)) redex_1(f(x)) -> result_1(f(0(x))) check_f(result_f(x)) -> go_up(x) check_0(result_0(x)) -> go_up(x) check_1(result_1(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) The set Q consists of the following terms: top(go_up(x0)) reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (39) UsableRulesProof (EQUIVALENT) 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. ---------------------------------------- (40) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(go_up(x)) -> TOP(reduce(x)) The TRS R consists of the following rules: reduce(f(x_1)) -> check_f(redex_f(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) redex_1(f(x)) -> result_1(f(0(x))) check_1(result_1(x)) -> go_up(x) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) redex_0(f(x)) -> result_0(1(x)) check_0(result_0(x)) -> go_up(x) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) redex_f(f(x)) -> result_f(b) check_f(result_f(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) The set Q consists of the following terms: top(go_up(x0)) reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (41) QReductionProof (EQUIVALENT) We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. top(go_up(x0)) ---------------------------------------- (42) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(go_up(x)) -> TOP(reduce(x)) The TRS R consists of the following rules: reduce(f(x_1)) -> check_f(redex_f(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) redex_1(f(x)) -> result_1(f(0(x))) check_1(result_1(x)) -> go_up(x) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) redex_0(f(x)) -> result_0(1(x)) check_0(result_0(x)) -> go_up(x) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) redex_f(f(x)) -> result_f(b) check_f(result_f(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) The set Q consists of the following terms: reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (43) TransformationProof (EQUIVALENT) By narrowing [LPAR04] the rule TOP(go_up(x)) -> TOP(reduce(x)) at position [0] we obtained the following new rules [LPAR04]: (TOP(go_up(f(x0))) -> TOP(check_f(redex_f(x0))),TOP(go_up(f(x0))) -> TOP(check_f(redex_f(x0)))) (TOP(go_up(0(x0))) -> TOP(check_0(redex_0(x0))),TOP(go_up(0(x0))) -> TOP(check_0(redex_0(x0)))) (TOP(go_up(1(x0))) -> TOP(check_1(redex_1(x0))),TOP(go_up(1(x0))) -> TOP(check_1(redex_1(x0)))) (TOP(go_up(a)) -> TOP(go_up(f(a))),TOP(go_up(a)) -> TOP(go_up(f(a)))) ---------------------------------------- (44) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(go_up(f(x0))) -> TOP(check_f(redex_f(x0))) TOP(go_up(0(x0))) -> TOP(check_0(redex_0(x0))) TOP(go_up(1(x0))) -> TOP(check_1(redex_1(x0))) TOP(go_up(a)) -> TOP(go_up(f(a))) The TRS R consists of the following rules: reduce(f(x_1)) -> check_f(redex_f(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) redex_1(f(x)) -> result_1(f(0(x))) check_1(result_1(x)) -> go_up(x) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) redex_0(f(x)) -> result_0(1(x)) check_0(result_0(x)) -> go_up(x) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) redex_f(f(x)) -> result_f(b) check_f(result_f(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) The set Q consists of the following terms: reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (45) UsableRulesProof (EQUIVALENT) 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. ---------------------------------------- (46) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(go_up(f(x0))) -> TOP(check_f(redex_f(x0))) TOP(go_up(0(x0))) -> TOP(check_0(redex_0(x0))) TOP(go_up(1(x0))) -> TOP(check_1(redex_1(x0))) TOP(go_up(a)) -> TOP(go_up(f(a))) The TRS R consists of the following rules: redex_1(f(x)) -> result_1(f(0(x))) check_1(result_1(x)) -> go_up(x) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) redex_0(f(x)) -> result_0(1(x)) check_0(result_0(x)) -> go_up(x) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) redex_f(f(x)) -> result_f(b) check_f(result_f(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) The set Q consists of the following terms: reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (47) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. TOP(go_up(a)) -> TOP(go_up(f(a))) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial interpretation [POLO]: POL(0(x_1)) = 0 POL(1(x_1)) = 0 POL(TOP(x_1)) = x_1 POL(a) = 1 POL(b) = 0 POL(check_0(x_1)) = x_1 POL(check_1(x_1)) = x_1 POL(check_f(x_1)) = x_1 POL(f(x_1)) = 0 POL(go_up(x_1)) = x_1 POL(in_0_1(x_1)) = 0 POL(in_1_1(x_1)) = 0 POL(in_f_1(x_1)) = 0 POL(redex_0(x_1)) = 0 POL(redex_1(x_1)) = 0 POL(redex_f(x_1)) = 0 POL(reduce(x_1)) = 0 POL(result_0(x_1)) = x_1 POL(result_1(x_1)) = x_1 POL(result_f(x_1)) = x_1 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: redex_f(f(x)) -> result_f(b) check_f(result_f(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) redex_0(f(x)) -> result_0(1(x)) check_0(result_0(x)) -> go_up(x) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) redex_1(f(x)) -> result_1(f(0(x))) check_1(result_1(x)) -> go_up(x) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) ---------------------------------------- (48) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(go_up(f(x0))) -> TOP(check_f(redex_f(x0))) TOP(go_up(0(x0))) -> TOP(check_0(redex_0(x0))) TOP(go_up(1(x0))) -> TOP(check_1(redex_1(x0))) The TRS R consists of the following rules: redex_1(f(x)) -> result_1(f(0(x))) check_1(result_1(x)) -> go_up(x) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) redex_0(f(x)) -> result_0(1(x)) check_0(result_0(x)) -> go_up(x) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) redex_f(f(x)) -> result_f(b) check_f(result_f(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) The set Q consists of the following terms: reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (49) SplitQDPProof (EQUIVALENT) We show in the first subproof that some pairs and rules can be removed, afterwards, we continue with the remaining DP-Problem ---------------------------------------- (50) Complex Obligation (AND) ---------------------------------------- (51) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(go_up(f(x0))) -> TOP(check_f(redex_f(x0))) TOP(go_up(0(x0))) -> TOP(check_0(redex_0(x0))) TOP(go_up(1(x0))) -> TOP(check_1(redex_1(x0))) The TRS R consists of the following rules: redex_1(f(x)) -> result_1(f(0(x))) check_1(result_1(x)) -> go_up(x) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) redex_0(f(x)) -> result_0(1(x)) check_0(result_0(x)) -> go_up(x) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) redex_f(f(x)) -> result_f(b) check_f(result_f(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) The set Q consists of the following terms: reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (52) SemLabProof (SOUND) We found the following model for the rules of the TRSs R and P. Interpretation over the domain with elements from 0 to 1. result_f: 0 a: 1 reduce: 0 redex_0: 0 check_1: 0 redex_f: 0 check_f: 0 in_1_1: 0 TOP: 0 redex_1: 0 go_up: 0 in_f_1: 0 b: 0 in_0_1: 0 result_0: 0 f: 0 0: 1 1: 1 check_0: 0 result_1: 0 By semantic labelling [SEMLAB] we obtain the following labelled QDP problem. ---------------------------------------- (53) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(go_up.0(f.0(x0))) -> TOP.0(check_f.0(redex_f.0(x0))) TOP.0(go_up.0(f.1(x0))) -> TOP.0(check_f.0(redex_f.1(x0))) TOP.0(go_up.1(0.0(x0))) -> TOP.0(check_0.0(redex_0.0(x0))) TOP.0(go_up.1(0.1(x0))) -> TOP.0(check_0.0(redex_0.1(x0))) TOP.0(go_up.1(1.0(x0))) -> TOP.0(check_1.0(redex_1.0(x0))) TOP.0(go_up.1(1.1(x0))) -> TOP.0(check_1.0(redex_1.1(x0))) The TRS R consists of the following rules: redex_1.0(f.0(x)) -> result_1.0(f.1(0.0(x))) redex_1.0(f.1(x)) -> result_1.0(f.1(0.1(x))) check_1.0(result_1.0(x)) -> go_up.0(x) check_1.0(result_1.1(x)) -> go_up.1(x) check_1.0(redex_1.0(x_1)) -> in_1_1.0(reduce.0(x_1)) check_1.0(redex_1.1(x_1)) -> in_1_1.0(reduce.1(x_1)) reduce.1(0.0(x_1)) -> check_0.0(redex_0.0(x_1)) reduce.1(0.1(x_1)) -> check_0.0(redex_0.1(x_1)) reduce.1(1.0(x_1)) -> check_1.0(redex_1.0(x_1)) reduce.1(1.1(x_1)) -> check_1.0(redex_1.1(x_1)) reduce.1(a.) -> go_up.0(f.1(a.)) in_1_1.0(go_up.0(x_1)) -> go_up.1(1.0(x_1)) in_1_1.0(go_up.1(x_1)) -> go_up.1(1.1(x_1)) redex_0.0(f.0(x)) -> result_0.1(1.0(x)) redex_0.0(f.1(x)) -> result_0.1(1.1(x)) check_0.0(result_0.0(x)) -> go_up.0(x) check_0.0(result_0.1(x)) -> go_up.1(x) check_0.0(redex_0.0(x_1)) -> in_0_1.0(reduce.0(x_1)) check_0.0(redex_0.1(x_1)) -> in_0_1.0(reduce.1(x_1)) in_0_1.0(go_up.0(x_1)) -> go_up.1(0.0(x_1)) in_0_1.0(go_up.1(x_1)) -> go_up.1(0.1(x_1)) redex_f.0(f.0(x)) -> result_f.0(b.) redex_f.0(f.1(x)) -> result_f.0(b.) check_f.0(result_f.0(x)) -> go_up.0(x) check_f.0(result_f.1(x)) -> go_up.1(x) check_f.0(redex_f.0(x_1)) -> in_f_1.0(reduce.0(x_1)) check_f.0(redex_f.1(x_1)) -> in_f_1.0(reduce.1(x_1)) in_f_1.0(go_up.0(x_1)) -> go_up.0(f.0(x_1)) in_f_1.0(go_up.1(x_1)) -> go_up.0(f.1(x_1)) The set Q consists of the following terms: reduce.0(f.0(x0)) reduce.0(f.1(x0)) reduce.1(0.0(x0)) reduce.1(0.1(x0)) reduce.1(1.0(x0)) reduce.1(1.1(x0)) reduce.1(a.) redex_f.0(f.0(x0)) redex_f.0(f.1(x0)) redex_0.0(f.0(x0)) redex_0.0(f.1(x0)) redex_1.0(f.0(x0)) redex_1.0(f.1(x0)) check_f.0(result_f.0(x0)) check_f.0(result_f.1(x0)) check_0.0(result_0.0(x0)) check_0.0(result_0.1(x0)) check_1.0(result_1.0(x0)) check_1.0(result_1.1(x0)) check_f.0(redex_f.0(x0)) check_f.0(redex_f.1(x0)) check_0.0(redex_0.0(x0)) check_0.0(redex_0.1(x0)) check_1.0(redex_1.0(x0)) check_1.0(redex_1.1(x0)) in_f_1.0(go_up.0(x0)) in_f_1.0(go_up.1(x0)) in_0_1.0(go_up.0(x0)) in_0_1.0(go_up.1(x0)) in_1_1.0(go_up.0(x0)) in_1_1.0(go_up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (54) UsableRulesReductionPairsProof (EQUIVALENT) By using the usable rules with reduction pair processor [LPAR04] with a polynomial ordering [POLO], all dependency pairs and the corresponding usable rules [FROCOS05] can be oriented non-strictly. All non-usable rules are removed, and those dependency pairs and usable rules that have been oriented strictly or contain non-usable symbols in their left-hand side are removed as well. No dependency pairs are removed. The following rules are removed from R: check_1.0(result_1.1(x)) -> go_up.1(x) check_0.0(result_0.0(x)) -> go_up.0(x) check_f.0(result_f.1(x)) -> go_up.1(x) Used ordering: POLO with Polynomial interpretation [POLO]: POL(0.0(x_1)) = x_1 POL(0.1(x_1)) = x_1 POL(1.0(x_1)) = x_1 POL(1.1(x_1)) = x_1 POL(TOP.0(x_1)) = x_1 POL(a.) = 0 POL(b.) = 0 POL(check_0.0(x_1)) = x_1 POL(check_1.0(x_1)) = x_1 POL(check_f.0(x_1)) = x_1 POL(f.0(x_1)) = x_1 POL(f.1(x_1)) = x_1 POL(go_up.0(x_1)) = x_1 POL(go_up.1(x_1)) = x_1 POL(in_0_1.0(x_1)) = x_1 POL(in_1_1.0(x_1)) = x_1 POL(in_f_1.0(x_1)) = x_1 POL(redex_0.0(x_1)) = x_1 POL(redex_0.1(x_1)) = x_1 POL(redex_1.0(x_1)) = x_1 POL(redex_1.1(x_1)) = x_1 POL(redex_f.0(x_1)) = x_1 POL(redex_f.1(x_1)) = x_1 POL(reduce.0(x_1)) = x_1 POL(reduce.1(x_1)) = x_1 POL(result_0.0(x_1)) = x_1 POL(result_0.1(x_1)) = x_1 POL(result_1.0(x_1)) = x_1 POL(result_1.1(x_1)) = x_1 POL(result_f.0(x_1)) = x_1 POL(result_f.1(x_1)) = x_1 ---------------------------------------- (55) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(go_up.0(f.0(x0))) -> TOP.0(check_f.0(redex_f.0(x0))) TOP.0(go_up.0(f.1(x0))) -> TOP.0(check_f.0(redex_f.1(x0))) TOP.0(go_up.1(0.0(x0))) -> TOP.0(check_0.0(redex_0.0(x0))) TOP.0(go_up.1(0.1(x0))) -> TOP.0(check_0.0(redex_0.1(x0))) TOP.0(go_up.1(1.0(x0))) -> TOP.0(check_1.0(redex_1.0(x0))) TOP.0(go_up.1(1.1(x0))) -> TOP.0(check_1.0(redex_1.1(x0))) The TRS R consists of the following rules: check_1.0(redex_1.1(x_1)) -> in_1_1.0(reduce.1(x_1)) reduce.1(0.0(x_1)) -> check_0.0(redex_0.0(x_1)) reduce.1(0.1(x_1)) -> check_0.0(redex_0.1(x_1)) reduce.1(1.0(x_1)) -> check_1.0(redex_1.0(x_1)) reduce.1(1.1(x_1)) -> check_1.0(redex_1.1(x_1)) reduce.1(a.) -> go_up.0(f.1(a.)) in_1_1.0(go_up.0(x_1)) -> go_up.1(1.0(x_1)) in_1_1.0(go_up.1(x_1)) -> go_up.1(1.1(x_1)) redex_1.0(f.0(x)) -> result_1.0(f.1(0.0(x))) redex_1.0(f.1(x)) -> result_1.0(f.1(0.1(x))) check_1.0(result_1.0(x)) -> go_up.0(x) check_1.0(redex_1.0(x_1)) -> in_1_1.0(reduce.0(x_1)) check_0.0(redex_0.1(x_1)) -> in_0_1.0(reduce.1(x_1)) in_0_1.0(go_up.0(x_1)) -> go_up.1(0.0(x_1)) in_0_1.0(go_up.1(x_1)) -> go_up.1(0.1(x_1)) redex_0.0(f.0(x)) -> result_0.1(1.0(x)) redex_0.0(f.1(x)) -> result_0.1(1.1(x)) check_0.0(result_0.1(x)) -> go_up.1(x) check_0.0(redex_0.0(x_1)) -> in_0_1.0(reduce.0(x_1)) check_f.0(redex_f.1(x_1)) -> in_f_1.0(reduce.1(x_1)) in_f_1.0(go_up.0(x_1)) -> go_up.0(f.0(x_1)) in_f_1.0(go_up.1(x_1)) -> go_up.0(f.1(x_1)) redex_f.0(f.0(x)) -> result_f.0(b.) redex_f.0(f.1(x)) -> result_f.0(b.) check_f.0(result_f.0(x)) -> go_up.0(x) check_f.0(redex_f.0(x_1)) -> in_f_1.0(reduce.0(x_1)) The set Q consists of the following terms: reduce.0(f.0(x0)) reduce.0(f.1(x0)) reduce.1(0.0(x0)) reduce.1(0.1(x0)) reduce.1(1.0(x0)) reduce.1(1.1(x0)) reduce.1(a.) redex_f.0(f.0(x0)) redex_f.0(f.1(x0)) redex_0.0(f.0(x0)) redex_0.0(f.1(x0)) redex_1.0(f.0(x0)) redex_1.0(f.1(x0)) check_f.0(result_f.0(x0)) check_f.0(result_f.1(x0)) check_0.0(result_0.0(x0)) check_0.0(result_0.1(x0)) check_1.0(result_1.0(x0)) check_1.0(result_1.1(x0)) check_f.0(redex_f.0(x0)) check_f.0(redex_f.1(x0)) check_0.0(redex_0.0(x0)) check_0.0(redex_0.1(x0)) check_1.0(redex_1.0(x0)) check_1.0(redex_1.1(x0)) in_f_1.0(go_up.0(x0)) in_f_1.0(go_up.1(x0)) in_0_1.0(go_up.0(x0)) in_0_1.0(go_up.1(x0)) in_1_1.0(go_up.0(x0)) in_1_1.0(go_up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (56) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented rules of the TRS R: check_1.0(redex_1.0(x_1)) -> in_1_1.0(reduce.0(x_1)) check_0.0(redex_0.0(x_1)) -> in_0_1.0(reduce.0(x_1)) check_f.0(redex_f.0(x_1)) -> in_f_1.0(reduce.0(x_1)) Used ordering: Polynomial interpretation [POLO]: POL(0.0(x_1)) = x_1 POL(0.1(x_1)) = x_1 POL(1.0(x_1)) = x_1 POL(1.1(x_1)) = x_1 POL(TOP.0(x_1)) = x_1 POL(a.) = 0 POL(b.) = 0 POL(check_0.0(x_1)) = 1 + x_1 POL(check_1.0(x_1)) = x_1 POL(check_f.0(x_1)) = 1 + x_1 POL(f.0(x_1)) = x_1 POL(f.1(x_1)) = x_1 POL(go_up.0(x_1)) = 1 + x_1 POL(go_up.1(x_1)) = 1 + x_1 POL(in_0_1.0(x_1)) = x_1 POL(in_1_1.0(x_1)) = x_1 POL(in_f_1.0(x_1)) = x_1 POL(redex_0.0(x_1)) = x_1 POL(redex_0.1(x_1)) = x_1 POL(redex_1.0(x_1)) = 1 + x_1 POL(redex_1.1(x_1)) = 1 + x_1 POL(redex_f.0(x_1)) = x_1 POL(redex_f.1(x_1)) = x_1 POL(reduce.0(x_1)) = x_1 POL(reduce.1(x_1)) = 1 + x_1 POL(result_0.1(x_1)) = x_1 POL(result_1.0(x_1)) = 1 + x_1 POL(result_f.0(x_1)) = x_1 ---------------------------------------- (57) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(go_up.0(f.0(x0))) -> TOP.0(check_f.0(redex_f.0(x0))) TOP.0(go_up.0(f.1(x0))) -> TOP.0(check_f.0(redex_f.1(x0))) TOP.0(go_up.1(0.0(x0))) -> TOP.0(check_0.0(redex_0.0(x0))) TOP.0(go_up.1(0.1(x0))) -> TOP.0(check_0.0(redex_0.1(x0))) TOP.0(go_up.1(1.0(x0))) -> TOP.0(check_1.0(redex_1.0(x0))) TOP.0(go_up.1(1.1(x0))) -> TOP.0(check_1.0(redex_1.1(x0))) The TRS R consists of the following rules: check_1.0(redex_1.1(x_1)) -> in_1_1.0(reduce.1(x_1)) reduce.1(0.0(x_1)) -> check_0.0(redex_0.0(x_1)) reduce.1(0.1(x_1)) -> check_0.0(redex_0.1(x_1)) reduce.1(1.0(x_1)) -> check_1.0(redex_1.0(x_1)) reduce.1(1.1(x_1)) -> check_1.0(redex_1.1(x_1)) reduce.1(a.) -> go_up.0(f.1(a.)) in_1_1.0(go_up.0(x_1)) -> go_up.1(1.0(x_1)) in_1_1.0(go_up.1(x_1)) -> go_up.1(1.1(x_1)) redex_1.0(f.0(x)) -> result_1.0(f.1(0.0(x))) redex_1.0(f.1(x)) -> result_1.0(f.1(0.1(x))) check_1.0(result_1.0(x)) -> go_up.0(x) check_0.0(redex_0.1(x_1)) -> in_0_1.0(reduce.1(x_1)) in_0_1.0(go_up.0(x_1)) -> go_up.1(0.0(x_1)) in_0_1.0(go_up.1(x_1)) -> go_up.1(0.1(x_1)) redex_0.0(f.0(x)) -> result_0.1(1.0(x)) redex_0.0(f.1(x)) -> result_0.1(1.1(x)) check_0.0(result_0.1(x)) -> go_up.1(x) check_f.0(redex_f.1(x_1)) -> in_f_1.0(reduce.1(x_1)) in_f_1.0(go_up.0(x_1)) -> go_up.0(f.0(x_1)) in_f_1.0(go_up.1(x_1)) -> go_up.0(f.1(x_1)) redex_f.0(f.0(x)) -> result_f.0(b.) redex_f.0(f.1(x)) -> result_f.0(b.) check_f.0(result_f.0(x)) -> go_up.0(x) The set Q consists of the following terms: reduce.0(f.0(x0)) reduce.0(f.1(x0)) reduce.1(0.0(x0)) reduce.1(0.1(x0)) reduce.1(1.0(x0)) reduce.1(1.1(x0)) reduce.1(a.) redex_f.0(f.0(x0)) redex_f.0(f.1(x0)) redex_0.0(f.0(x0)) redex_0.0(f.1(x0)) redex_1.0(f.0(x0)) redex_1.0(f.1(x0)) check_f.0(result_f.0(x0)) check_f.0(result_f.1(x0)) check_0.0(result_0.0(x0)) check_0.0(result_0.1(x0)) check_1.0(result_1.0(x0)) check_1.0(result_1.1(x0)) check_f.0(redex_f.0(x0)) check_f.0(redex_f.1(x0)) check_0.0(redex_0.0(x0)) check_0.0(redex_0.1(x0)) check_1.0(redex_1.0(x0)) check_1.0(redex_1.1(x0)) in_f_1.0(go_up.0(x0)) in_f_1.0(go_up.1(x0)) in_0_1.0(go_up.0(x0)) in_0_1.0(go_up.1(x0)) in_1_1.0(go_up.0(x0)) in_1_1.0(go_up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (58) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. TOP.0(go_up.0(f.0(x0))) -> TOP.0(check_f.0(redex_f.0(x0))) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial interpretation [POLO]: POL(0.0(x_1)) = x_1 POL(0.1(x_1)) = x_1 POL(1.0(x_1)) = 0 POL(1.1(x_1)) = x_1 POL(TOP.0(x_1)) = x_1 POL(a.) = 0 POL(b.) = 0 POL(check_0.0(x_1)) = 1 POL(check_1.0(x_1)) = x_1 POL(check_f.0(x_1)) = x_1 POL(f.0(x_1)) = 1 POL(f.1(x_1)) = 1 POL(go_up.0(x_1)) = x_1 POL(go_up.1(x_1)) = 1 POL(in_0_1.0(x_1)) = 1 POL(in_1_1.0(x_1)) = 1 POL(in_f_1.0(x_1)) = 1 POL(redex_0.0(x_1)) = 0 POL(redex_0.1(x_1)) = x_1 POL(redex_1.0(x_1)) = 1 POL(redex_1.1(x_1)) = 1 POL(redex_f.0(x_1)) = 0 POL(redex_f.1(x_1)) = 1 POL(reduce.1(x_1)) = 1 POL(result_0.1(x_1)) = 0 POL(result_1.0(x_1)) = x_1 POL(result_f.0(x_1)) = x_1 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: redex_f.0(f.0(x)) -> result_f.0(b.) redex_f.0(f.1(x)) -> result_f.0(b.) check_f.0(redex_f.1(x_1)) -> in_f_1.0(reduce.1(x_1)) check_f.0(result_f.0(x)) -> go_up.0(x) check_0.0(redex_0.1(x_1)) -> in_0_1.0(reduce.1(x_1)) check_0.0(result_0.1(x)) -> go_up.1(x) redex_1.0(f.0(x)) -> result_1.0(f.1(0.0(x))) redex_1.0(f.1(x)) -> result_1.0(f.1(0.1(x))) check_1.0(redex_1.1(x_1)) -> in_1_1.0(reduce.1(x_1)) check_1.0(result_1.0(x)) -> go_up.0(x) reduce.1(0.0(x_1)) -> check_0.0(redex_0.0(x_1)) reduce.1(0.1(x_1)) -> check_0.0(redex_0.1(x_1)) reduce.1(1.0(x_1)) -> check_1.0(redex_1.0(x_1)) reduce.1(1.1(x_1)) -> check_1.0(redex_1.1(x_1)) in_f_1.0(go_up.0(x_1)) -> go_up.0(f.0(x_1)) in_f_1.0(go_up.1(x_1)) -> go_up.0(f.1(x_1)) in_0_1.0(go_up.0(x_1)) -> go_up.1(0.0(x_1)) in_0_1.0(go_up.1(x_1)) -> go_up.1(0.1(x_1)) in_1_1.0(go_up.0(x_1)) -> go_up.1(1.0(x_1)) in_1_1.0(go_up.1(x_1)) -> go_up.1(1.1(x_1)) ---------------------------------------- (59) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(go_up.0(f.1(x0))) -> TOP.0(check_f.0(redex_f.1(x0))) TOP.0(go_up.1(0.0(x0))) -> TOP.0(check_0.0(redex_0.0(x0))) TOP.0(go_up.1(0.1(x0))) -> TOP.0(check_0.0(redex_0.1(x0))) TOP.0(go_up.1(1.0(x0))) -> TOP.0(check_1.0(redex_1.0(x0))) TOP.0(go_up.1(1.1(x0))) -> TOP.0(check_1.0(redex_1.1(x0))) The TRS R consists of the following rules: check_1.0(redex_1.1(x_1)) -> in_1_1.0(reduce.1(x_1)) reduce.1(0.0(x_1)) -> check_0.0(redex_0.0(x_1)) reduce.1(0.1(x_1)) -> check_0.0(redex_0.1(x_1)) reduce.1(1.0(x_1)) -> check_1.0(redex_1.0(x_1)) reduce.1(1.1(x_1)) -> check_1.0(redex_1.1(x_1)) reduce.1(a.) -> go_up.0(f.1(a.)) in_1_1.0(go_up.0(x_1)) -> go_up.1(1.0(x_1)) in_1_1.0(go_up.1(x_1)) -> go_up.1(1.1(x_1)) redex_1.0(f.0(x)) -> result_1.0(f.1(0.0(x))) redex_1.0(f.1(x)) -> result_1.0(f.1(0.1(x))) check_1.0(result_1.0(x)) -> go_up.0(x) check_0.0(redex_0.1(x_1)) -> in_0_1.0(reduce.1(x_1)) in_0_1.0(go_up.0(x_1)) -> go_up.1(0.0(x_1)) in_0_1.0(go_up.1(x_1)) -> go_up.1(0.1(x_1)) redex_0.0(f.0(x)) -> result_0.1(1.0(x)) redex_0.0(f.1(x)) -> result_0.1(1.1(x)) check_0.0(result_0.1(x)) -> go_up.1(x) check_f.0(redex_f.1(x_1)) -> in_f_1.0(reduce.1(x_1)) in_f_1.0(go_up.0(x_1)) -> go_up.0(f.0(x_1)) in_f_1.0(go_up.1(x_1)) -> go_up.0(f.1(x_1)) redex_f.0(f.0(x)) -> result_f.0(b.) redex_f.0(f.1(x)) -> result_f.0(b.) check_f.0(result_f.0(x)) -> go_up.0(x) The set Q consists of the following terms: reduce.0(f.0(x0)) reduce.0(f.1(x0)) reduce.1(0.0(x0)) reduce.1(0.1(x0)) reduce.1(1.0(x0)) reduce.1(1.1(x0)) reduce.1(a.) redex_f.0(f.0(x0)) redex_f.0(f.1(x0)) redex_0.0(f.0(x0)) redex_0.0(f.1(x0)) redex_1.0(f.0(x0)) redex_1.0(f.1(x0)) check_f.0(result_f.0(x0)) check_f.0(result_f.1(x0)) check_0.0(result_0.0(x0)) check_0.0(result_0.1(x0)) check_1.0(result_1.0(x0)) check_1.0(result_1.1(x0)) check_f.0(redex_f.0(x0)) check_f.0(redex_f.1(x0)) check_0.0(redex_0.0(x0)) check_0.0(redex_0.1(x0)) check_1.0(redex_1.0(x0)) check_1.0(redex_1.1(x0)) in_f_1.0(go_up.0(x0)) in_f_1.0(go_up.1(x0)) in_0_1.0(go_up.0(x0)) in_0_1.0(go_up.1(x0)) in_1_1.0(go_up.0(x0)) in_1_1.0(go_up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (60) UsableRulesReductionPairsProof (EQUIVALENT) By using the usable rules with reduction pair processor [LPAR04] with a polynomial ordering [POLO], all dependency pairs and the corresponding usable rules [FROCOS05] can be oriented non-strictly. All non-usable rules are removed, and those dependency pairs and usable rules that have been oriented strictly or contain non-usable symbols in their left-hand side are removed as well. No dependency pairs are removed. The following rules are removed from R: redex_f.0(f.0(x)) -> result_f.0(b.) redex_f.0(f.1(x)) -> result_f.0(b.) check_f.0(result_f.0(x)) -> go_up.0(x) Used ordering: POLO with Polynomial interpretation [POLO]: POL(0.0(x_1)) = x_1 POL(0.1(x_1)) = x_1 POL(1.0(x_1)) = x_1 POL(1.1(x_1)) = x_1 POL(TOP.0(x_1)) = x_1 POL(a.) = 0 POL(check_0.0(x_1)) = x_1 POL(check_1.0(x_1)) = x_1 POL(check_f.0(x_1)) = x_1 POL(f.0(x_1)) = x_1 POL(f.1(x_1)) = x_1 POL(go_up.0(x_1)) = x_1 POL(go_up.1(x_1)) = x_1 POL(in_0_1.0(x_1)) = x_1 POL(in_1_1.0(x_1)) = x_1 POL(in_f_1.0(x_1)) = x_1 POL(redex_0.0(x_1)) = x_1 POL(redex_0.1(x_1)) = x_1 POL(redex_1.0(x_1)) = x_1 POL(redex_1.1(x_1)) = x_1 POL(redex_f.1(x_1)) = x_1 POL(reduce.1(x_1)) = x_1 POL(result_0.1(x_1)) = x_1 POL(result_1.0(x_1)) = x_1 ---------------------------------------- (61) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(go_up.0(f.1(x0))) -> TOP.0(check_f.0(redex_f.1(x0))) TOP.0(go_up.1(0.0(x0))) -> TOP.0(check_0.0(redex_0.0(x0))) TOP.0(go_up.1(0.1(x0))) -> TOP.0(check_0.0(redex_0.1(x0))) TOP.0(go_up.1(1.0(x0))) -> TOP.0(check_1.0(redex_1.0(x0))) TOP.0(go_up.1(1.1(x0))) -> TOP.0(check_1.0(redex_1.1(x0))) The TRS R consists of the following rules: check_1.0(redex_1.1(x_1)) -> in_1_1.0(reduce.1(x_1)) reduce.1(0.0(x_1)) -> check_0.0(redex_0.0(x_1)) reduce.1(0.1(x_1)) -> check_0.0(redex_0.1(x_1)) reduce.1(1.0(x_1)) -> check_1.0(redex_1.0(x_1)) reduce.1(1.1(x_1)) -> check_1.0(redex_1.1(x_1)) reduce.1(a.) -> go_up.0(f.1(a.)) in_1_1.0(go_up.0(x_1)) -> go_up.1(1.0(x_1)) in_1_1.0(go_up.1(x_1)) -> go_up.1(1.1(x_1)) redex_1.0(f.0(x)) -> result_1.0(f.1(0.0(x))) redex_1.0(f.1(x)) -> result_1.0(f.1(0.1(x))) check_1.0(result_1.0(x)) -> go_up.0(x) check_0.0(redex_0.1(x_1)) -> in_0_1.0(reduce.1(x_1)) in_0_1.0(go_up.0(x_1)) -> go_up.1(0.0(x_1)) in_0_1.0(go_up.1(x_1)) -> go_up.1(0.1(x_1)) redex_0.0(f.0(x)) -> result_0.1(1.0(x)) redex_0.0(f.1(x)) -> result_0.1(1.1(x)) check_0.0(result_0.1(x)) -> go_up.1(x) check_f.0(redex_f.1(x_1)) -> in_f_1.0(reduce.1(x_1)) in_f_1.0(go_up.0(x_1)) -> go_up.0(f.0(x_1)) in_f_1.0(go_up.1(x_1)) -> go_up.0(f.1(x_1)) The set Q consists of the following terms: reduce.0(f.0(x0)) reduce.0(f.1(x0)) reduce.1(0.0(x0)) reduce.1(0.1(x0)) reduce.1(1.0(x0)) reduce.1(1.1(x0)) reduce.1(a.) redex_f.0(f.0(x0)) redex_f.0(f.1(x0)) redex_0.0(f.0(x0)) redex_0.0(f.1(x0)) redex_1.0(f.0(x0)) redex_1.0(f.1(x0)) check_f.0(result_f.0(x0)) check_f.0(result_f.1(x0)) check_0.0(result_0.0(x0)) check_0.0(result_0.1(x0)) check_1.0(result_1.0(x0)) check_1.0(result_1.1(x0)) check_f.0(redex_f.0(x0)) check_f.0(redex_f.1(x0)) check_0.0(redex_0.0(x0)) check_0.0(redex_0.1(x0)) check_1.0(redex_1.0(x0)) check_1.0(redex_1.1(x0)) in_f_1.0(go_up.0(x0)) in_f_1.0(go_up.1(x0)) in_0_1.0(go_up.0(x0)) in_0_1.0(go_up.1(x0)) in_1_1.0(go_up.0(x0)) in_1_1.0(go_up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (62) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. TOP.0(go_up.1(0.0(x0))) -> TOP.0(check_0.0(redex_0.0(x0))) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial interpretation [POLO]: POL(0.0(x_1)) = 1 POL(0.1(x_1)) = 1 POL(1.0(x_1)) = 0 POL(1.1(x_1)) = 0 POL(TOP.0(x_1)) = x_1 POL(a.) = 0 POL(check_0.0(x_1)) = x_1 POL(check_1.0(x_1)) = 0 POL(check_f.0(x_1)) = x_1 POL(f.0(x_1)) = x_1 POL(f.1(x_1)) = 0 POL(go_up.0(x_1)) = 0 POL(go_up.1(x_1)) = x_1 POL(in_0_1.0(x_1)) = 1 POL(in_1_1.0(x_1)) = 0 POL(in_f_1.0(x_1)) = 0 POL(redex_0.0(x_1)) = 0 POL(redex_0.1(x_1)) = 1 POL(redex_1.0(x_1)) = 0 POL(redex_1.1(x_1)) = x_1 POL(redex_f.1(x_1)) = 0 POL(reduce.1(x_1)) = x_1 POL(result_0.1(x_1)) = x_1 POL(result_1.0(x_1)) = 0 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: check_f.0(redex_f.1(x_1)) -> in_f_1.0(reduce.1(x_1)) redex_0.0(f.0(x)) -> result_0.1(1.0(x)) redex_0.0(f.1(x)) -> result_0.1(1.1(x)) check_0.0(redex_0.1(x_1)) -> in_0_1.0(reduce.1(x_1)) check_0.0(result_0.1(x)) -> go_up.1(x) check_1.0(redex_1.1(x_1)) -> in_1_1.0(reduce.1(x_1)) check_1.0(result_1.0(x)) -> go_up.0(x) reduce.1(0.0(x_1)) -> check_0.0(redex_0.0(x_1)) reduce.1(0.1(x_1)) -> check_0.0(redex_0.1(x_1)) reduce.1(1.0(x_1)) -> check_1.0(redex_1.0(x_1)) reduce.1(1.1(x_1)) -> check_1.0(redex_1.1(x_1)) in_f_1.0(go_up.0(x_1)) -> go_up.0(f.0(x_1)) in_f_1.0(go_up.1(x_1)) -> go_up.0(f.1(x_1)) in_0_1.0(go_up.0(x_1)) -> go_up.1(0.0(x_1)) in_0_1.0(go_up.1(x_1)) -> go_up.1(0.1(x_1)) in_1_1.0(go_up.0(x_1)) -> go_up.1(1.0(x_1)) in_1_1.0(go_up.1(x_1)) -> go_up.1(1.1(x_1)) ---------------------------------------- (63) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(go_up.0(f.1(x0))) -> TOP.0(check_f.0(redex_f.1(x0))) TOP.0(go_up.1(0.1(x0))) -> TOP.0(check_0.0(redex_0.1(x0))) TOP.0(go_up.1(1.0(x0))) -> TOP.0(check_1.0(redex_1.0(x0))) TOP.0(go_up.1(1.1(x0))) -> TOP.0(check_1.0(redex_1.1(x0))) The TRS R consists of the following rules: check_1.0(redex_1.1(x_1)) -> in_1_1.0(reduce.1(x_1)) reduce.1(0.0(x_1)) -> check_0.0(redex_0.0(x_1)) reduce.1(0.1(x_1)) -> check_0.0(redex_0.1(x_1)) reduce.1(1.0(x_1)) -> check_1.0(redex_1.0(x_1)) reduce.1(1.1(x_1)) -> check_1.0(redex_1.1(x_1)) reduce.1(a.) -> go_up.0(f.1(a.)) in_1_1.0(go_up.0(x_1)) -> go_up.1(1.0(x_1)) in_1_1.0(go_up.1(x_1)) -> go_up.1(1.1(x_1)) redex_1.0(f.0(x)) -> result_1.0(f.1(0.0(x))) redex_1.0(f.1(x)) -> result_1.0(f.1(0.1(x))) check_1.0(result_1.0(x)) -> go_up.0(x) check_0.0(redex_0.1(x_1)) -> in_0_1.0(reduce.1(x_1)) in_0_1.0(go_up.0(x_1)) -> go_up.1(0.0(x_1)) in_0_1.0(go_up.1(x_1)) -> go_up.1(0.1(x_1)) redex_0.0(f.0(x)) -> result_0.1(1.0(x)) redex_0.0(f.1(x)) -> result_0.1(1.1(x)) check_0.0(result_0.1(x)) -> go_up.1(x) check_f.0(redex_f.1(x_1)) -> in_f_1.0(reduce.1(x_1)) in_f_1.0(go_up.0(x_1)) -> go_up.0(f.0(x_1)) in_f_1.0(go_up.1(x_1)) -> go_up.0(f.1(x_1)) The set Q consists of the following terms: reduce.0(f.0(x0)) reduce.0(f.1(x0)) reduce.1(0.0(x0)) reduce.1(0.1(x0)) reduce.1(1.0(x0)) reduce.1(1.1(x0)) reduce.1(a.) redex_f.0(f.0(x0)) redex_f.0(f.1(x0)) redex_0.0(f.0(x0)) redex_0.0(f.1(x0)) redex_1.0(f.0(x0)) redex_1.0(f.1(x0)) check_f.0(result_f.0(x0)) check_f.0(result_f.1(x0)) check_0.0(result_0.0(x0)) check_0.0(result_0.1(x0)) check_1.0(result_1.0(x0)) check_1.0(result_1.1(x0)) check_f.0(redex_f.0(x0)) check_f.0(redex_f.1(x0)) check_0.0(redex_0.0(x0)) check_0.0(redex_0.1(x0)) check_1.0(redex_1.0(x0)) check_1.0(redex_1.1(x0)) in_f_1.0(go_up.0(x0)) in_f_1.0(go_up.1(x0)) in_0_1.0(go_up.0(x0)) in_0_1.0(go_up.1(x0)) in_1_1.0(go_up.0(x0)) in_1_1.0(go_up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (64) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. TOP.0(go_up.1(1.0(x0))) -> TOP.0(check_1.0(redex_1.0(x0))) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial interpretation [POLO]: POL(0.0(x_1)) = 0 POL(0.1(x_1)) = 0 POL(1.0(x_1)) = 1 POL(1.1(x_1)) = 1 POL(TOP.0(x_1)) = x_1 POL(a.) = 0 POL(check_0.0(x_1)) = x_1 POL(check_1.0(x_1)) = x_1 POL(check_f.0(x_1)) = x_1 POL(f.0(x_1)) = x_1 POL(f.1(x_1)) = 0 POL(go_up.0(x_1)) = 0 POL(go_up.1(x_1)) = x_1 POL(in_0_1.0(x_1)) = 0 POL(in_1_1.0(x_1)) = 1 POL(in_f_1.0(x_1)) = 0 POL(redex_0.0(x_1)) = 1 POL(redex_0.1(x_1)) = 0 POL(redex_1.0(x_1)) = 0 POL(redex_1.1(x_1)) = 1 POL(redex_f.1(x_1)) = 0 POL(reduce.1(x_1)) = 1 POL(result_0.1(x_1)) = x_1 POL(result_1.0(x_1)) = 0 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: check_f.0(redex_f.1(x_1)) -> in_f_1.0(reduce.1(x_1)) check_0.0(redex_0.1(x_1)) -> in_0_1.0(reduce.1(x_1)) redex_1.0(f.0(x)) -> result_1.0(f.1(0.0(x))) redex_1.0(f.1(x)) -> result_1.0(f.1(0.1(x))) check_1.0(redex_1.1(x_1)) -> in_1_1.0(reduce.1(x_1)) check_1.0(result_1.0(x)) -> go_up.0(x) reduce.1(0.0(x_1)) -> check_0.0(redex_0.0(x_1)) reduce.1(0.1(x_1)) -> check_0.0(redex_0.1(x_1)) reduce.1(1.0(x_1)) -> check_1.0(redex_1.0(x_1)) reduce.1(1.1(x_1)) -> check_1.0(redex_1.1(x_1)) in_f_1.0(go_up.0(x_1)) -> go_up.0(f.0(x_1)) in_f_1.0(go_up.1(x_1)) -> go_up.0(f.1(x_1)) redex_0.0(f.0(x)) -> result_0.1(1.0(x)) redex_0.0(f.1(x)) -> result_0.1(1.1(x)) check_0.0(result_0.1(x)) -> go_up.1(x) in_0_1.0(go_up.0(x_1)) -> go_up.1(0.0(x_1)) in_0_1.0(go_up.1(x_1)) -> go_up.1(0.1(x_1)) in_1_1.0(go_up.0(x_1)) -> go_up.1(1.0(x_1)) in_1_1.0(go_up.1(x_1)) -> go_up.1(1.1(x_1)) ---------------------------------------- (65) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(go_up.0(f.1(x0))) -> TOP.0(check_f.0(redex_f.1(x0))) TOP.0(go_up.1(0.1(x0))) -> TOP.0(check_0.0(redex_0.1(x0))) TOP.0(go_up.1(1.1(x0))) -> TOP.0(check_1.0(redex_1.1(x0))) The TRS R consists of the following rules: check_1.0(redex_1.1(x_1)) -> in_1_1.0(reduce.1(x_1)) reduce.1(0.0(x_1)) -> check_0.0(redex_0.0(x_1)) reduce.1(0.1(x_1)) -> check_0.0(redex_0.1(x_1)) reduce.1(1.0(x_1)) -> check_1.0(redex_1.0(x_1)) reduce.1(1.1(x_1)) -> check_1.0(redex_1.1(x_1)) reduce.1(a.) -> go_up.0(f.1(a.)) in_1_1.0(go_up.0(x_1)) -> go_up.1(1.0(x_1)) in_1_1.0(go_up.1(x_1)) -> go_up.1(1.1(x_1)) redex_1.0(f.0(x)) -> result_1.0(f.1(0.0(x))) redex_1.0(f.1(x)) -> result_1.0(f.1(0.1(x))) check_1.0(result_1.0(x)) -> go_up.0(x) check_0.0(redex_0.1(x_1)) -> in_0_1.0(reduce.1(x_1)) in_0_1.0(go_up.0(x_1)) -> go_up.1(0.0(x_1)) in_0_1.0(go_up.1(x_1)) -> go_up.1(0.1(x_1)) redex_0.0(f.0(x)) -> result_0.1(1.0(x)) redex_0.0(f.1(x)) -> result_0.1(1.1(x)) check_0.0(result_0.1(x)) -> go_up.1(x) check_f.0(redex_f.1(x_1)) -> in_f_1.0(reduce.1(x_1)) in_f_1.0(go_up.0(x_1)) -> go_up.0(f.0(x_1)) in_f_1.0(go_up.1(x_1)) -> go_up.0(f.1(x_1)) The set Q consists of the following terms: reduce.0(f.0(x0)) reduce.0(f.1(x0)) reduce.1(0.0(x0)) reduce.1(0.1(x0)) reduce.1(1.0(x0)) reduce.1(1.1(x0)) reduce.1(a.) redex_f.0(f.0(x0)) redex_f.0(f.1(x0)) redex_0.0(f.0(x0)) redex_0.0(f.1(x0)) redex_1.0(f.0(x0)) redex_1.0(f.1(x0)) check_f.0(result_f.0(x0)) check_f.0(result_f.1(x0)) check_0.0(result_0.0(x0)) check_0.0(result_0.1(x0)) check_1.0(result_1.0(x0)) check_1.0(result_1.1(x0)) check_f.0(redex_f.0(x0)) check_f.0(redex_f.1(x0)) check_0.0(redex_0.0(x0)) check_0.0(redex_0.1(x0)) check_1.0(redex_1.0(x0)) check_1.0(redex_1.1(x0)) in_f_1.0(go_up.0(x0)) in_f_1.0(go_up.1(x0)) in_0_1.0(go_up.0(x0)) in_0_1.0(go_up.1(x0)) in_1_1.0(go_up.0(x0)) in_1_1.0(go_up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (66) PisEmptyProof (SOUND) The TRS P is empty. Hence, there is no (P,Q,R) chain. ---------------------------------------- (67) TRUE ---------------------------------------- (68) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(go_up(f(x0))) -> TOP(check_f(redex_f(x0))) TOP(go_up(0(x0))) -> TOP(check_0(redex_0(x0))) TOP(go_up(1(x0))) -> TOP(check_1(redex_1(x0))) The TRS R consists of the following rules: check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) redex_1(f(x)) -> result_1(f(0(x))) check_1(result_1(x)) -> go_up(x) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) redex_0(f(x)) -> result_0(1(x)) check_0(result_0(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) The set Q consists of the following terms: reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (69) TransformationProof (SOUND) By rewriting [LPAR04] the rule TOP(go_up(f(x0))) -> TOP(check_f(redex_f(x0))) at position [0] we obtained the following new rules [LPAR04]: (TOP(go_up(f(x0))) -> TOP(in_f_1(reduce(x0))),TOP(go_up(f(x0))) -> TOP(in_f_1(reduce(x0)))) ---------------------------------------- (70) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(go_up(0(x0))) -> TOP(check_0(redex_0(x0))) TOP(go_up(1(x0))) -> TOP(check_1(redex_1(x0))) TOP(go_up(f(x0))) -> TOP(in_f_1(reduce(x0))) The TRS R consists of the following rules: check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) redex_1(f(x)) -> result_1(f(0(x))) check_1(result_1(x)) -> go_up(x) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) redex_0(f(x)) -> result_0(1(x)) check_0(result_0(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) The set Q consists of the following terms: reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (71) UsableRulesProof (EQUIVALENT) As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. ---------------------------------------- (72) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(go_up(0(x0))) -> TOP(check_0(redex_0(x0))) TOP(go_up(1(x0))) -> TOP(check_1(redex_1(x0))) TOP(go_up(f(x0))) -> TOP(in_f_1(reduce(x0))) The TRS R consists of the following rules: reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) redex_1(f(x)) -> result_1(f(0(x))) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) check_1(result_1(x)) -> go_up(x) in_1_1(go_up(x_1)) -> go_up(1(x_1)) redex_0(f(x)) -> result_0(1(x)) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) check_0(result_0(x)) -> go_up(x) in_0_1(go_up(x_1)) -> go_up(0(x_1)) The set Q consists of the following terms: reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (73) QReductionProof (EQUIVALENT) We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. redex_f(f(x0)) check_f(result_f(x0)) check_f(redex_f(x0)) ---------------------------------------- (74) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(go_up(0(x0))) -> TOP(check_0(redex_0(x0))) TOP(go_up(1(x0))) -> TOP(check_1(redex_1(x0))) TOP(go_up(f(x0))) -> TOP(in_f_1(reduce(x0))) The TRS R consists of the following rules: reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) redex_1(f(x)) -> result_1(f(0(x))) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) check_1(result_1(x)) -> go_up(x) in_1_1(go_up(x_1)) -> go_up(1(x_1)) redex_0(f(x)) -> result_0(1(x)) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) check_0(result_0(x)) -> go_up(x) in_0_1(go_up(x_1)) -> go_up(0(x_1)) The set Q consists of the following terms: reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_0(f(x0)) redex_1(f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (75) UsableRulesProof (EQUIVALENT) 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. ---------------------------------------- (76) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(go_up(x)) -> TOP(reduce(x)) The TRS R consists of the following rules: reduce(f(x_1)) -> check_f(redex_f(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) redex_1(f(x)) -> result_1(f(0(x))) check_1(result_1(x)) -> go_up(x) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) redex_0(f(x)) -> result_0(1(x)) check_0(result_0(x)) -> go_up(x) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) redex_f(f(x)) -> result_f(b) check_f(result_f(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) The set Q consists of the following terms: top(go_up(x0)) reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (77) QReductionProof (EQUIVALENT) We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. top(go_up(x0)) ---------------------------------------- (78) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(go_up(x)) -> TOP(reduce(x)) The TRS R consists of the following rules: reduce(f(x_1)) -> check_f(redex_f(x_1)) reduce(0(x_1)) -> check_0(redex_0(x_1)) reduce(1(x_1)) -> check_1(redex_1(x_1)) reduce(a) -> go_up(f(a)) redex_1(f(x)) -> result_1(f(0(x))) check_1(result_1(x)) -> go_up(x) check_1(redex_1(x_1)) -> in_1_1(reduce(x_1)) in_1_1(go_up(x_1)) -> go_up(1(x_1)) redex_0(f(x)) -> result_0(1(x)) check_0(result_0(x)) -> go_up(x) check_0(redex_0(x_1)) -> in_0_1(reduce(x_1)) in_0_1(go_up(x_1)) -> go_up(0(x_1)) redex_f(f(x)) -> result_f(b) check_f(result_f(x)) -> go_up(x) check_f(redex_f(x_1)) -> in_f_1(reduce(x_1)) in_f_1(go_up(x_1)) -> go_up(f(x_1)) The set Q consists of the following terms: reduce(f(x0)) reduce(0(x0)) reduce(1(x0)) reduce(a) redex_f(f(x0)) redex_0(f(x0)) redex_1(f(x0)) check_f(result_f(x0)) check_0(result_0(x0)) check_1(result_1(x0)) check_f(redex_f(x0)) check_0(redex_0(x0)) check_1(redex_1(x0)) in_f_1(go_up(x0)) in_0_1(go_up(x0)) in_1_1(go_up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (79) Raffelsieper-Zantema-Transformation (SOUND) We applied the Raffelsieper-Zantema transformation to transform the outermost TRS to a standard TRS. ---------------------------------------- (80) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: down(a) -> up(f(a)) down(f(f(x))) -> up(b) down(0(f(x))) -> up(1(x)) down(1(f(x))) -> up(f(0(x))) top(up(x)) -> top(down(x)) down(f(a)) -> f_flat(down(a)) down(f(b)) -> f_flat(down(b)) down(f(0(y5))) -> f_flat(down(0(y5))) down(f(1(y6))) -> f_flat(down(1(y6))) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 0_flat(up(x_1)) -> up(0(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) Q is empty. ---------------------------------------- (81) AAECC Innermost (EQUIVALENT) We have applied [NOC,AAECCNOC] to switch to innermost. The TRS R 1 is down(f(a)) -> f_flat(down(a)) down(f(b)) -> f_flat(down(b)) down(f(0(y5))) -> f_flat(down(0(y5))) down(f(1(y6))) -> f_flat(down(1(y6))) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 0_flat(up(x_1)) -> up(0(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(a) -> up(f(a)) down(f(f(x))) -> up(b) down(0(f(x))) -> up(1(x)) down(1(f(x))) -> up(f(0(x))) The TRS R 2 is top(up(x)) -> top(down(x)) The signature Sigma is {top_1} ---------------------------------------- (82) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: down(a) -> up(f(a)) down(f(f(x))) -> up(b) down(0(f(x))) -> up(1(x)) down(1(f(x))) -> up(f(0(x))) top(up(x)) -> top(down(x)) down(f(a)) -> f_flat(down(a)) down(f(b)) -> f_flat(down(b)) down(f(0(y5))) -> f_flat(down(0(y5))) down(f(1(y6))) -> f_flat(down(1(y6))) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 0_flat(up(x_1)) -> up(0(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) top(up(x0)) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) ---------------------------------------- (83) DependencyPairsProof (EQUIVALENT) Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem. ---------------------------------------- (84) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(x)) -> TOP(down(x)) TOP(up(x)) -> DOWN(x) DOWN(f(a)) -> F_FLAT(down(a)) DOWN(f(a)) -> DOWN(a) DOWN(f(b)) -> F_FLAT(down(b)) DOWN(f(b)) -> DOWN(b) DOWN(f(0(y5))) -> F_FLAT(down(0(y5))) DOWN(f(0(y5))) -> DOWN(0(y5)) DOWN(f(1(y6))) -> F_FLAT(down(1(y6))) DOWN(f(1(y6))) -> DOWN(1(y6)) DOWN(f(fresh_constant)) -> F_FLAT(down(fresh_constant)) DOWN(f(fresh_constant)) -> DOWN(fresh_constant) DOWN(0(a)) -> 0_FLAT(down(a)) DOWN(0(a)) -> DOWN(a) DOWN(0(b)) -> 0_FLAT(down(b)) DOWN(0(b)) -> DOWN(b) DOWN(0(0(y9))) -> 0_FLAT(down(0(y9))) DOWN(0(0(y9))) -> DOWN(0(y9)) DOWN(0(1(y10))) -> 0_FLAT(down(1(y10))) DOWN(0(1(y10))) -> DOWN(1(y10)) DOWN(0(fresh_constant)) -> 0_FLAT(down(fresh_constant)) DOWN(0(fresh_constant)) -> DOWN(fresh_constant) DOWN(1(a)) -> 1_FLAT(down(a)) DOWN(1(a)) -> DOWN(a) DOWN(1(b)) -> 1_FLAT(down(b)) DOWN(1(b)) -> DOWN(b) DOWN(1(0(y13))) -> 1_FLAT(down(0(y13))) DOWN(1(0(y13))) -> DOWN(0(y13)) DOWN(1(1(y14))) -> 1_FLAT(down(1(y14))) DOWN(1(1(y14))) -> DOWN(1(y14)) DOWN(1(fresh_constant)) -> 1_FLAT(down(fresh_constant)) DOWN(1(fresh_constant)) -> DOWN(fresh_constant) The TRS R consists of the following rules: down(a) -> up(f(a)) down(f(f(x))) -> up(b) down(0(f(x))) -> up(1(x)) down(1(f(x))) -> up(f(0(x))) top(up(x)) -> top(down(x)) down(f(a)) -> f_flat(down(a)) down(f(b)) -> f_flat(down(b)) down(f(0(y5))) -> f_flat(down(0(y5))) down(f(1(y6))) -> f_flat(down(1(y6))) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 0_flat(up(x_1)) -> up(0(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) top(up(x0)) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (85) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 27 less nodes. ---------------------------------------- (86) Complex Obligation (AND) ---------------------------------------- (87) Obligation: Q DP problem: The TRS P consists of the following rules: DOWN(0(1(y10))) -> DOWN(1(y10)) DOWN(1(0(y13))) -> DOWN(0(y13)) DOWN(0(0(y9))) -> DOWN(0(y9)) DOWN(1(1(y14))) -> DOWN(1(y14)) The TRS R consists of the following rules: down(a) -> up(f(a)) down(f(f(x))) -> up(b) down(0(f(x))) -> up(1(x)) down(1(f(x))) -> up(f(0(x))) top(up(x)) -> top(down(x)) down(f(a)) -> f_flat(down(a)) down(f(b)) -> f_flat(down(b)) down(f(0(y5))) -> f_flat(down(0(y5))) down(f(1(y6))) -> f_flat(down(1(y6))) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 0_flat(up(x_1)) -> up(0(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) top(up(x0)) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (88) UsableRulesProof (EQUIVALENT) 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. ---------------------------------------- (89) Obligation: Q DP problem: The TRS P consists of the following rules: DOWN(0(1(y10))) -> DOWN(1(y10)) DOWN(1(0(y13))) -> DOWN(0(y13)) DOWN(0(0(y9))) -> DOWN(0(y9)) DOWN(1(1(y14))) -> DOWN(1(y14)) R is empty. The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) top(up(x0)) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (90) QReductionProof (EQUIVALENT) We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) top(up(x0)) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) ---------------------------------------- (91) Obligation: Q DP problem: The TRS P consists of the following rules: DOWN(0(1(y10))) -> DOWN(1(y10)) DOWN(1(0(y13))) -> DOWN(0(y13)) DOWN(0(0(y9))) -> DOWN(0(y9)) DOWN(1(1(y14))) -> DOWN(1(y14)) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (92) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *DOWN(1(0(y13))) -> DOWN(0(y13)) The graph contains the following edges 1 > 1 *DOWN(1(1(y14))) -> DOWN(1(y14)) The graph contains the following edges 1 > 1 *DOWN(0(0(y9))) -> DOWN(0(y9)) The graph contains the following edges 1 > 1 *DOWN(0(1(y10))) -> DOWN(1(y10)) The graph contains the following edges 1 > 1 ---------------------------------------- (93) YES ---------------------------------------- (94) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(x)) -> TOP(down(x)) The TRS R consists of the following rules: down(a) -> up(f(a)) down(f(f(x))) -> up(b) down(0(f(x))) -> up(1(x)) down(1(f(x))) -> up(f(0(x))) top(up(x)) -> top(down(x)) down(f(a)) -> f_flat(down(a)) down(f(b)) -> f_flat(down(b)) down(f(0(y5))) -> f_flat(down(0(y5))) down(f(1(y6))) -> f_flat(down(1(y6))) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 0_flat(up(x_1)) -> up(0(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) top(up(x0)) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (95) UsableRulesProof (EQUIVALENT) 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. ---------------------------------------- (96) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(x)) -> TOP(down(x)) The TRS R consists of the following rules: down(a) -> up(f(a)) down(f(f(x))) -> up(b) down(0(f(x))) -> up(1(x)) down(1(f(x))) -> up(f(0(x))) down(f(a)) -> f_flat(down(a)) down(f(b)) -> f_flat(down(b)) down(f(0(y5))) -> f_flat(down(0(y5))) down(f(1(y6))) -> f_flat(down(1(y6))) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) 1_flat(up(x_1)) -> up(1(x_1)) 0_flat(up(x_1)) -> up(0(x_1)) f_flat(up(x_1)) -> up(f(x_1)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) top(up(x0)) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (97) QReductionProof (EQUIVALENT) We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. top(up(x0)) ---------------------------------------- (98) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(x)) -> TOP(down(x)) The TRS R consists of the following rules: down(a) -> up(f(a)) down(f(f(x))) -> up(b) down(0(f(x))) -> up(1(x)) down(1(f(x))) -> up(f(0(x))) down(f(a)) -> f_flat(down(a)) down(f(b)) -> f_flat(down(b)) down(f(0(y5))) -> f_flat(down(0(y5))) down(f(1(y6))) -> f_flat(down(1(y6))) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) 1_flat(up(x_1)) -> up(1(x_1)) 0_flat(up(x_1)) -> up(0(x_1)) f_flat(up(x_1)) -> up(f(x_1)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (99) TransformationProof (EQUIVALENT) By narrowing [LPAR04] the rule TOP(up(x)) -> TOP(down(x)) at position [0] we obtained the following new rules [LPAR04]: (TOP(up(a)) -> TOP(up(f(a))),TOP(up(a)) -> TOP(up(f(a)))) (TOP(up(f(f(x0)))) -> TOP(up(b)),TOP(up(f(f(x0)))) -> TOP(up(b))) (TOP(up(0(f(x0)))) -> TOP(up(1(x0))),TOP(up(0(f(x0)))) -> TOP(up(1(x0)))) (TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))),TOP(up(1(f(x0)))) -> TOP(up(f(0(x0))))) (TOP(up(f(a))) -> TOP(f_flat(down(a))),TOP(up(f(a))) -> TOP(f_flat(down(a)))) (TOP(up(f(b))) -> TOP(f_flat(down(b))),TOP(up(f(b))) -> TOP(f_flat(down(b)))) (TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))),TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0))))) (TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))),TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0))))) (TOP(up(f(fresh_constant))) -> TOP(f_flat(down(fresh_constant))),TOP(up(f(fresh_constant))) -> TOP(f_flat(down(fresh_constant)))) (TOP(up(0(a))) -> TOP(0_flat(down(a))),TOP(up(0(a))) -> TOP(0_flat(down(a)))) (TOP(up(0(b))) -> TOP(0_flat(down(b))),TOP(up(0(b))) -> TOP(0_flat(down(b)))) (TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))),TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0))))) (TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))),TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0))))) (TOP(up(0(fresh_constant))) -> TOP(0_flat(down(fresh_constant))),TOP(up(0(fresh_constant))) -> TOP(0_flat(down(fresh_constant)))) (TOP(up(1(a))) -> TOP(1_flat(down(a))),TOP(up(1(a))) -> TOP(1_flat(down(a)))) (TOP(up(1(b))) -> TOP(1_flat(down(b))),TOP(up(1(b))) -> TOP(1_flat(down(b)))) (TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))),TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0))))) (TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))),TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0))))) (TOP(up(1(fresh_constant))) -> TOP(1_flat(down(fresh_constant))),TOP(up(1(fresh_constant))) -> TOP(1_flat(down(fresh_constant)))) ---------------------------------------- (100) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(a)) -> TOP(up(f(a))) TOP(up(f(f(x0)))) -> TOP(up(b)) TOP(up(0(f(x0)))) -> TOP(up(1(x0))) TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))) TOP(up(f(a))) -> TOP(f_flat(down(a))) TOP(up(f(b))) -> TOP(f_flat(down(b))) TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(f(fresh_constant))) -> TOP(f_flat(down(fresh_constant))) TOP(up(0(a))) -> TOP(0_flat(down(a))) TOP(up(0(b))) -> TOP(0_flat(down(b))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(0(fresh_constant))) -> TOP(0_flat(down(fresh_constant))) TOP(up(1(a))) -> TOP(1_flat(down(a))) TOP(up(1(b))) -> TOP(1_flat(down(b))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) TOP(up(1(fresh_constant))) -> TOP(1_flat(down(fresh_constant))) The TRS R consists of the following rules: down(a) -> up(f(a)) down(f(f(x))) -> up(b) down(0(f(x))) -> up(1(x)) down(1(f(x))) -> up(f(0(x))) down(f(a)) -> f_flat(down(a)) down(f(b)) -> f_flat(down(b)) down(f(0(y5))) -> f_flat(down(0(y5))) down(f(1(y6))) -> f_flat(down(1(y6))) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) 1_flat(up(x_1)) -> up(1(x_1)) 0_flat(up(x_1)) -> up(0(x_1)) f_flat(up(x_1)) -> up(f(x_1)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (101) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 8 less nodes. ---------------------------------------- (102) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(a))) -> TOP(f_flat(down(a))) TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(0(f(x0)))) -> TOP(up(1(x0))) TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))) TOP(up(1(a))) -> TOP(1_flat(down(a))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(0(a))) -> TOP(0_flat(down(a))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) The TRS R consists of the following rules: down(a) -> up(f(a)) down(f(f(x))) -> up(b) down(0(f(x))) -> up(1(x)) down(1(f(x))) -> up(f(0(x))) down(f(a)) -> f_flat(down(a)) down(f(b)) -> f_flat(down(b)) down(f(0(y5))) -> f_flat(down(0(y5))) down(f(1(y6))) -> f_flat(down(1(y6))) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) 1_flat(up(x_1)) -> up(1(x_1)) 0_flat(up(x_1)) -> up(0(x_1)) f_flat(up(x_1)) -> up(f(x_1)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (103) UsableRulesProof (EQUIVALENT) 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. ---------------------------------------- (104) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(a))) -> TOP(f_flat(down(a))) TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(0(f(x0)))) -> TOP(up(1(x0))) TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))) TOP(up(1(a))) -> TOP(1_flat(down(a))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(0(a))) -> TOP(0_flat(down(a))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) The TRS R consists of the following rules: down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (105) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule TOP(up(f(a))) -> TOP(f_flat(down(a))) at position [0,0] we obtained the following new rules [LPAR04]: (TOP(up(f(a))) -> TOP(f_flat(up(f(a)))),TOP(up(f(a))) -> TOP(f_flat(up(f(a))))) ---------------------------------------- (106) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(0(f(x0)))) -> TOP(up(1(x0))) TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))) TOP(up(1(a))) -> TOP(1_flat(down(a))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(0(a))) -> TOP(0_flat(down(a))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(f(a))) -> TOP(f_flat(up(f(a)))) The TRS R consists of the following rules: down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (107) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule TOP(up(1(a))) -> TOP(1_flat(down(a))) at position [0,0] we obtained the following new rules [LPAR04]: (TOP(up(1(a))) -> TOP(1_flat(up(f(a)))),TOP(up(1(a))) -> TOP(1_flat(up(f(a))))) ---------------------------------------- (108) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(0(f(x0)))) -> TOP(up(1(x0))) TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(0(a))) -> TOP(0_flat(down(a))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(f(a))) -> TOP(f_flat(up(f(a)))) TOP(up(1(a))) -> TOP(1_flat(up(f(a)))) The TRS R consists of the following rules: down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (109) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule TOP(up(0(a))) -> TOP(0_flat(down(a))) at position [0,0] we obtained the following new rules [LPAR04]: (TOP(up(0(a))) -> TOP(0_flat(up(f(a)))),TOP(up(0(a))) -> TOP(0_flat(up(f(a))))) ---------------------------------------- (110) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(0(f(x0)))) -> TOP(up(1(x0))) TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(f(a))) -> TOP(f_flat(up(f(a)))) TOP(up(1(a))) -> TOP(1_flat(up(f(a)))) TOP(up(0(a))) -> TOP(0_flat(up(f(a)))) The TRS R consists of the following rules: down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (111) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule TOP(up(f(a))) -> TOP(f_flat(up(f(a)))) at position [0] we obtained the following new rules [LPAR04]: (TOP(up(f(a))) -> TOP(up(f(f(a)))),TOP(up(f(a))) -> TOP(up(f(f(a))))) ---------------------------------------- (112) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(0(f(x0)))) -> TOP(up(1(x0))) TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(1(a))) -> TOP(1_flat(up(f(a)))) TOP(up(0(a))) -> TOP(0_flat(up(f(a)))) TOP(up(f(a))) -> TOP(up(f(f(a)))) The TRS R consists of the following rules: down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (113) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. ---------------------------------------- (114) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(0(f(x0)))) -> TOP(up(1(x0))) TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))) TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) TOP(up(1(a))) -> TOP(1_flat(up(f(a)))) TOP(up(0(a))) -> TOP(0_flat(up(f(a)))) The TRS R consists of the following rules: down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (115) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule TOP(up(1(a))) -> TOP(1_flat(up(f(a)))) at position [0] we obtained the following new rules [LPAR04]: (TOP(up(1(a))) -> TOP(up(1(f(a)))),TOP(up(1(a))) -> TOP(up(1(f(a))))) ---------------------------------------- (116) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(0(f(x0)))) -> TOP(up(1(x0))) TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))) TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) TOP(up(0(a))) -> TOP(0_flat(up(f(a)))) TOP(up(1(a))) -> TOP(up(1(f(a)))) The TRS R consists of the following rules: down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (117) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule TOP(up(0(a))) -> TOP(0_flat(up(f(a)))) at position [0] we obtained the following new rules [LPAR04]: (TOP(up(0(a))) -> TOP(up(0(f(a)))),TOP(up(0(a))) -> TOP(up(0(f(a))))) ---------------------------------------- (118) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(0(f(x0)))) -> TOP(up(1(x0))) TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))) TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) TOP(up(1(a))) -> TOP(up(1(f(a)))) TOP(up(0(a))) -> TOP(up(0(f(a)))) The TRS R consists of the following rules: down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (119) TransformationProof (EQUIVALENT) By forward instantiating [JAR06] the rule TOP(up(0(f(x0)))) -> TOP(up(1(x0))) we obtained the following new rules [LPAR04]: (TOP(up(0(f(f(y_0))))) -> TOP(up(1(f(y_0)))),TOP(up(0(f(f(y_0))))) -> TOP(up(1(f(y_0))))) (TOP(up(0(f(0(y_0))))) -> TOP(up(1(0(y_0)))),TOP(up(0(f(0(y_0))))) -> TOP(up(1(0(y_0))))) (TOP(up(0(f(1(y_0))))) -> TOP(up(1(1(y_0)))),TOP(up(0(f(1(y_0))))) -> TOP(up(1(1(y_0))))) (TOP(up(0(f(a)))) -> TOP(up(1(a))),TOP(up(0(f(a)))) -> TOP(up(1(a)))) ---------------------------------------- (120) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))) TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) TOP(up(1(a))) -> TOP(up(1(f(a)))) TOP(up(0(a))) -> TOP(up(0(f(a)))) TOP(up(0(f(f(y_0))))) -> TOP(up(1(f(y_0)))) TOP(up(0(f(0(y_0))))) -> TOP(up(1(0(y_0)))) TOP(up(0(f(1(y_0))))) -> TOP(up(1(1(y_0)))) TOP(up(0(f(a)))) -> TOP(up(1(a))) The TRS R consists of the following rules: down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (121) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. TOP(up(0(f(f(y_0))))) -> TOP(up(1(f(y_0)))) TOP(up(0(f(0(y_0))))) -> TOP(up(1(0(y_0)))) TOP(up(0(f(1(y_0))))) -> TOP(up(1(1(y_0)))) TOP(up(0(f(a)))) -> TOP(up(1(a))) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial interpretation [POLO]: POL(0(x_1)) = 1 POL(0_flat(x_1)) = 1 POL(1(x_1)) = 0 POL(1_flat(x_1)) = 0 POL(TOP(x_1)) = x_1 POL(a) = 0 POL(b) = 0 POL(down(x_1)) = 0 POL(f(x_1)) = 0 POL(f_flat(x_1)) = 0 POL(fresh_constant) = 0 POL(up(x_1)) = x_1 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: f_flat(up(x_1)) -> up(f(x_1)) 0_flat(up(x_1)) -> up(0(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) ---------------------------------------- (122) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))) TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) TOP(up(1(a))) -> TOP(up(1(f(a)))) TOP(up(0(a))) -> TOP(up(0(f(a)))) The TRS R consists of the following rules: down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (123) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. ---------------------------------------- (124) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) TOP(up(1(a))) -> TOP(up(1(f(a)))) The TRS R consists of the following rules: down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (125) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. TOP(up(1(f(x0)))) -> TOP(up(f(0(x0)))) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial interpretation [POLO]: POL(0(x_1)) = 0 POL(0_flat(x_1)) = 0 POL(1(x_1)) = 1 POL(1_flat(x_1)) = 1 POL(TOP(x_1)) = x_1 POL(a) = 0 POL(b) = 0 POL(down(x_1)) = 0 POL(f(x_1)) = 0 POL(f_flat(x_1)) = 0 POL(fresh_constant) = 0 POL(up(x_1)) = x_1 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: f_flat(up(x_1)) -> up(f(x_1)) 0_flat(up(x_1)) -> up(0(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) ---------------------------------------- (126) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) TOP(up(1(a))) -> TOP(up(1(f(a)))) The TRS R consists of the following rules: down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (127) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. ---------------------------------------- (128) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) The TRS R consists of the following rules: down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (129) SplitQDPProof (EQUIVALENT) We show in the first subproof that some pairs and rules can be removed, afterwards, we continue with the remaining DP-Problem ---------------------------------------- (130) Complex Obligation (AND) ---------------------------------------- (131) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) The TRS R consists of the following rules: down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(1(fresh_constant)) -> 1_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) 1_flat(up(x_1)) -> up(1(x_1)) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) down(0(fresh_constant)) -> 0_flat(down(fresh_constant)) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (132) SemLabProof (SOUND) We found the following model for the rules of the TRSs R and P. Interpretation over the domain with elements from 0 to 1. a: 0 b: 0 down: 0 f: 0 0: 0 fresh_constant: 1 up: 0 1: 0 1_flat: 0 0_flat: 0 f_flat: 0 TOP: 0 By semantic labelling [SEMLAB] we obtain the following labelled QDP problem. ---------------------------------------- (133) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(up.0(f.0(0.0(x0)))) -> TOP.0(f_flat.0(down.0(0.0(x0)))) TOP.0(up.0(f.0(0.1(x0)))) -> TOP.0(f_flat.0(down.0(0.1(x0)))) TOP.0(up.0(f.0(1.0(x0)))) -> TOP.0(f_flat.0(down.0(1.0(x0)))) TOP.0(up.0(f.0(1.1(x0)))) -> TOP.0(f_flat.0(down.0(1.1(x0)))) TOP.0(up.0(0.0(0.0(x0)))) -> TOP.0(0_flat.0(down.0(0.0(x0)))) TOP.0(up.0(0.0(0.1(x0)))) -> TOP.0(0_flat.0(down.0(0.1(x0)))) TOP.0(up.0(0.0(1.0(x0)))) -> TOP.0(0_flat.0(down.0(1.0(x0)))) TOP.0(up.0(0.0(1.1(x0)))) -> TOP.0(0_flat.0(down.0(1.1(x0)))) TOP.0(up.0(1.0(0.0(x0)))) -> TOP.0(1_flat.0(down.0(0.0(x0)))) TOP.0(up.0(1.0(0.1(x0)))) -> TOP.0(1_flat.0(down.0(0.1(x0)))) TOP.0(up.0(1.0(1.0(x0)))) -> TOP.0(1_flat.0(down.0(1.0(x0)))) TOP.0(up.0(1.0(1.1(x0)))) -> TOP.0(1_flat.0(down.0(1.1(x0)))) The TRS R consists of the following rules: down.0(1.0(f.0(x))) -> up.0(f.0(0.0(x))) down.0(1.0(f.1(x))) -> up.0(f.0(0.1(x))) down.0(1.0(a.)) -> 1_flat.0(down.0(a.)) down.0(1.0(b.)) -> 1_flat.0(down.0(b.)) down.0(1.0(0.0(y13))) -> 1_flat.0(down.0(0.0(y13))) down.0(1.0(0.1(y13))) -> 1_flat.0(down.0(0.1(y13))) down.0(1.0(1.0(y14))) -> 1_flat.0(down.0(1.0(y14))) down.0(1.0(1.1(y14))) -> 1_flat.0(down.0(1.1(y14))) down.0(1.1(fresh_constant.)) -> 1_flat.0(down.1(fresh_constant.)) f_flat.0(up.0(x_1)) -> up.0(f.0(x_1)) f_flat.0(up.1(x_1)) -> up.0(f.1(x_1)) 1_flat.0(up.0(x_1)) -> up.0(1.0(x_1)) 1_flat.0(up.1(x_1)) -> up.0(1.1(x_1)) down.0(0.0(f.0(x))) -> up.0(1.0(x)) down.0(0.0(f.1(x))) -> up.0(1.1(x)) down.0(0.0(a.)) -> 0_flat.0(down.0(a.)) down.0(0.0(b.)) -> 0_flat.0(down.0(b.)) down.0(0.0(0.0(y9))) -> 0_flat.0(down.0(0.0(y9))) down.0(0.0(0.1(y9))) -> 0_flat.0(down.0(0.1(y9))) down.0(0.0(1.0(y10))) -> 0_flat.0(down.0(1.0(y10))) down.0(0.0(1.1(y10))) -> 0_flat.0(down.0(1.1(y10))) down.0(0.1(fresh_constant.)) -> 0_flat.0(down.1(fresh_constant.)) 0_flat.0(up.0(x_1)) -> up.0(0.0(x_1)) 0_flat.0(up.1(x_1)) -> up.0(0.1(x_1)) down.0(a.) -> up.0(f.0(a.)) The set Q consists of the following terms: down.0(a.) down.0(f.0(f.0(x0))) down.0(f.0(f.1(x0))) down.0(0.0(f.0(x0))) down.0(0.0(f.1(x0))) down.0(1.0(f.0(x0))) down.0(1.0(f.1(x0))) down.0(f.0(a.)) down.0(f.0(b.)) down.0(f.0(0.0(x0))) down.0(f.0(0.1(x0))) down.0(f.0(1.0(x0))) down.0(f.0(1.1(x0))) down.0(f.1(fresh_constant.)) down.0(0.0(a.)) down.0(0.0(b.)) down.0(0.0(0.0(x0))) down.0(0.0(0.1(x0))) down.0(0.0(1.0(x0))) down.0(0.0(1.1(x0))) down.0(0.1(fresh_constant.)) down.0(1.0(a.)) down.0(1.0(b.)) down.0(1.0(0.0(x0))) down.0(1.0(0.1(x0))) down.0(1.0(1.0(x0))) down.0(1.0(1.1(x0))) down.0(1.1(fresh_constant.)) f_flat.0(up.0(x0)) f_flat.0(up.1(x0)) 0_flat.0(up.0(x0)) 0_flat.0(up.1(x0)) 1_flat.0(up.0(x0)) 1_flat.0(up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (134) UsableRulesReductionPairsProof (EQUIVALENT) By using the usable rules with reduction pair processor [LPAR04] with a polynomial ordering [POLO], all dependency pairs and the corresponding usable rules [FROCOS05] can be oriented non-strictly. All non-usable rules are removed, and those dependency pairs and usable rules that have been oriented strictly or contain non-usable symbols in their left-hand side are removed as well. No dependency pairs are removed. The following rules are removed from R: down.0(1.0(f.1(x))) -> up.0(f.0(0.1(x))) f_flat.0(up.1(x_1)) -> up.0(f.1(x_1)) 1_flat.0(up.1(x_1)) -> up.0(1.1(x_1)) down.0(0.0(f.1(x))) -> up.0(1.1(x)) 0_flat.0(up.1(x_1)) -> up.0(0.1(x_1)) Used ordering: POLO with Polynomial interpretation [POLO]: POL(0.0(x_1)) = 1 + x_1 POL(0.1(x_1)) = 1 + x_1 POL(0_flat.0(x_1)) = 1 + x_1 POL(1.0(x_1)) = 1 + x_1 POL(1.1(x_1)) = 1 + x_1 POL(1_flat.0(x_1)) = 1 + x_1 POL(TOP.0(x_1)) = x_1 POL(a.) = 0 POL(b.) = 0 POL(down.0(x_1)) = x_1 POL(down.1(x_1)) = x_1 POL(f.0(x_1)) = x_1 POL(f.1(x_1)) = 1 + x_1 POL(f_flat.0(x_1)) = x_1 POL(fresh_constant.) = 0 POL(up.0(x_1)) = x_1 POL(up.1(x_1)) = 1 + x_1 ---------------------------------------- (135) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(up.0(f.0(0.0(x0)))) -> TOP.0(f_flat.0(down.0(0.0(x0)))) TOP.0(up.0(f.0(0.1(x0)))) -> TOP.0(f_flat.0(down.0(0.1(x0)))) TOP.0(up.0(f.0(1.0(x0)))) -> TOP.0(f_flat.0(down.0(1.0(x0)))) TOP.0(up.0(f.0(1.1(x0)))) -> TOP.0(f_flat.0(down.0(1.1(x0)))) TOP.0(up.0(0.0(0.0(x0)))) -> TOP.0(0_flat.0(down.0(0.0(x0)))) TOP.0(up.0(0.0(0.1(x0)))) -> TOP.0(0_flat.0(down.0(0.1(x0)))) TOP.0(up.0(0.0(1.0(x0)))) -> TOP.0(0_flat.0(down.0(1.0(x0)))) TOP.0(up.0(0.0(1.1(x0)))) -> TOP.0(0_flat.0(down.0(1.1(x0)))) TOP.0(up.0(1.0(0.0(x0)))) -> TOP.0(1_flat.0(down.0(0.0(x0)))) TOP.0(up.0(1.0(0.1(x0)))) -> TOP.0(1_flat.0(down.0(0.1(x0)))) TOP.0(up.0(1.0(1.0(x0)))) -> TOP.0(1_flat.0(down.0(1.0(x0)))) TOP.0(up.0(1.0(1.1(x0)))) -> TOP.0(1_flat.0(down.0(1.1(x0)))) The TRS R consists of the following rules: down.0(1.1(fresh_constant.)) -> 1_flat.0(down.1(fresh_constant.)) 1_flat.0(up.0(x_1)) -> up.0(1.0(x_1)) down.0(1.0(f.0(x))) -> up.0(f.0(0.0(x))) down.0(1.0(a.)) -> 1_flat.0(down.0(a.)) down.0(1.0(b.)) -> 1_flat.0(down.0(b.)) down.0(1.0(0.0(y13))) -> 1_flat.0(down.0(0.0(y13))) down.0(1.0(0.1(y13))) -> 1_flat.0(down.0(0.1(y13))) down.0(1.0(1.0(y14))) -> 1_flat.0(down.0(1.0(y14))) down.0(1.0(1.1(y14))) -> 1_flat.0(down.0(1.1(y14))) down.0(0.1(fresh_constant.)) -> 0_flat.0(down.1(fresh_constant.)) down.0(0.0(f.0(x))) -> up.0(1.0(x)) down.0(0.0(a.)) -> 0_flat.0(down.0(a.)) down.0(0.0(b.)) -> 0_flat.0(down.0(b.)) down.0(0.0(0.0(y9))) -> 0_flat.0(down.0(0.0(y9))) down.0(0.0(0.1(y9))) -> 0_flat.0(down.0(0.1(y9))) down.0(0.0(1.0(y10))) -> 0_flat.0(down.0(1.0(y10))) down.0(0.0(1.1(y10))) -> 0_flat.0(down.0(1.1(y10))) 0_flat.0(up.0(x_1)) -> up.0(0.0(x_1)) down.0(a.) -> up.0(f.0(a.)) f_flat.0(up.0(x_1)) -> up.0(f.0(x_1)) The set Q consists of the following terms: down.0(a.) down.0(f.0(f.0(x0))) down.0(f.0(f.1(x0))) down.0(0.0(f.0(x0))) down.0(0.0(f.1(x0))) down.0(1.0(f.0(x0))) down.0(1.0(f.1(x0))) down.0(f.0(a.)) down.0(f.0(b.)) down.0(f.0(0.0(x0))) down.0(f.0(0.1(x0))) down.0(f.0(1.0(x0))) down.0(f.0(1.1(x0))) down.0(f.1(fresh_constant.)) down.0(0.0(a.)) down.0(0.0(b.)) down.0(0.0(0.0(x0))) down.0(0.0(0.1(x0))) down.0(0.0(1.0(x0))) down.0(0.0(1.1(x0))) down.0(0.1(fresh_constant.)) down.0(1.0(a.)) down.0(1.0(b.)) down.0(1.0(0.0(x0))) down.0(1.0(0.1(x0))) down.0(1.0(1.0(x0))) down.0(1.0(1.1(x0))) down.0(1.1(fresh_constant.)) f_flat.0(up.0(x0)) f_flat.0(up.1(x0)) 0_flat.0(up.0(x0)) 0_flat.0(up.1(x0)) 1_flat.0(up.0(x0)) 1_flat.0(up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (136) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented rules of the TRS R: down.0(1.1(fresh_constant.)) -> 1_flat.0(down.1(fresh_constant.)) down.0(0.1(fresh_constant.)) -> 0_flat.0(down.1(fresh_constant.)) Used ordering: Polynomial interpretation [POLO]: POL(0.0(x_1)) = x_1 POL(0.1(x_1)) = 1 + x_1 POL(0_flat.0(x_1)) = x_1 POL(1.0(x_1)) = x_1 POL(1.1(x_1)) = 1 + x_1 POL(1_flat.0(x_1)) = x_1 POL(TOP.0(x_1)) = x_1 POL(a.) = 0 POL(b.) = 0 POL(down.0(x_1)) = x_1 POL(down.1(x_1)) = x_1 POL(f.0(x_1)) = x_1 POL(f_flat.0(x_1)) = x_1 POL(fresh_constant.) = 0 POL(up.0(x_1)) = x_1 ---------------------------------------- (137) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(up.0(f.0(0.0(x0)))) -> TOP.0(f_flat.0(down.0(0.0(x0)))) TOP.0(up.0(f.0(0.1(x0)))) -> TOP.0(f_flat.0(down.0(0.1(x0)))) TOP.0(up.0(f.0(1.0(x0)))) -> TOP.0(f_flat.0(down.0(1.0(x0)))) TOP.0(up.0(f.0(1.1(x0)))) -> TOP.0(f_flat.0(down.0(1.1(x0)))) TOP.0(up.0(0.0(0.0(x0)))) -> TOP.0(0_flat.0(down.0(0.0(x0)))) TOP.0(up.0(0.0(0.1(x0)))) -> TOP.0(0_flat.0(down.0(0.1(x0)))) TOP.0(up.0(0.0(1.0(x0)))) -> TOP.0(0_flat.0(down.0(1.0(x0)))) TOP.0(up.0(0.0(1.1(x0)))) -> TOP.0(0_flat.0(down.0(1.1(x0)))) TOP.0(up.0(1.0(0.0(x0)))) -> TOP.0(1_flat.0(down.0(0.0(x0)))) TOP.0(up.0(1.0(0.1(x0)))) -> TOP.0(1_flat.0(down.0(0.1(x0)))) TOP.0(up.0(1.0(1.0(x0)))) -> TOP.0(1_flat.0(down.0(1.0(x0)))) TOP.0(up.0(1.0(1.1(x0)))) -> TOP.0(1_flat.0(down.0(1.1(x0)))) The TRS R consists of the following rules: 1_flat.0(up.0(x_1)) -> up.0(1.0(x_1)) down.0(1.0(f.0(x))) -> up.0(f.0(0.0(x))) down.0(1.0(a.)) -> 1_flat.0(down.0(a.)) down.0(1.0(b.)) -> 1_flat.0(down.0(b.)) down.0(1.0(0.0(y13))) -> 1_flat.0(down.0(0.0(y13))) down.0(1.0(0.1(y13))) -> 1_flat.0(down.0(0.1(y13))) down.0(1.0(1.0(y14))) -> 1_flat.0(down.0(1.0(y14))) down.0(1.0(1.1(y14))) -> 1_flat.0(down.0(1.1(y14))) down.0(0.0(f.0(x))) -> up.0(1.0(x)) down.0(0.0(a.)) -> 0_flat.0(down.0(a.)) down.0(0.0(b.)) -> 0_flat.0(down.0(b.)) down.0(0.0(0.0(y9))) -> 0_flat.0(down.0(0.0(y9))) down.0(0.0(0.1(y9))) -> 0_flat.0(down.0(0.1(y9))) down.0(0.0(1.0(y10))) -> 0_flat.0(down.0(1.0(y10))) down.0(0.0(1.1(y10))) -> 0_flat.0(down.0(1.1(y10))) 0_flat.0(up.0(x_1)) -> up.0(0.0(x_1)) down.0(a.) -> up.0(f.0(a.)) f_flat.0(up.0(x_1)) -> up.0(f.0(x_1)) The set Q consists of the following terms: down.0(a.) down.0(f.0(f.0(x0))) down.0(f.0(f.1(x0))) down.0(0.0(f.0(x0))) down.0(0.0(f.1(x0))) down.0(1.0(f.0(x0))) down.0(1.0(f.1(x0))) down.0(f.0(a.)) down.0(f.0(b.)) down.0(f.0(0.0(x0))) down.0(f.0(0.1(x0))) down.0(f.0(1.0(x0))) down.0(f.0(1.1(x0))) down.0(f.1(fresh_constant.)) down.0(0.0(a.)) down.0(0.0(b.)) down.0(0.0(0.0(x0))) down.0(0.0(0.1(x0))) down.0(0.0(1.0(x0))) down.0(0.0(1.1(x0))) down.0(0.1(fresh_constant.)) down.0(1.0(a.)) down.0(1.0(b.)) down.0(1.0(0.0(x0))) down.0(1.0(0.1(x0))) down.0(1.0(1.0(x0))) down.0(1.0(1.1(x0))) down.0(1.1(fresh_constant.)) f_flat.0(up.0(x0)) f_flat.0(up.1(x0)) 0_flat.0(up.0(x0)) 0_flat.0(up.1(x0)) 1_flat.0(up.0(x0)) 1_flat.0(up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (138) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 6 less nodes. ---------------------------------------- (139) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(up.0(f.0(0.0(x0)))) -> TOP.0(f_flat.0(down.0(0.0(x0)))) TOP.0(up.0(f.0(1.0(x0)))) -> TOP.0(f_flat.0(down.0(1.0(x0)))) TOP.0(up.0(0.0(0.0(x0)))) -> TOP.0(0_flat.0(down.0(0.0(x0)))) TOP.0(up.0(0.0(1.0(x0)))) -> TOP.0(0_flat.0(down.0(1.0(x0)))) TOP.0(up.0(1.0(0.0(x0)))) -> TOP.0(1_flat.0(down.0(0.0(x0)))) TOP.0(up.0(1.0(1.0(x0)))) -> TOP.0(1_flat.0(down.0(1.0(x0)))) The TRS R consists of the following rules: 1_flat.0(up.0(x_1)) -> up.0(1.0(x_1)) down.0(1.0(f.0(x))) -> up.0(f.0(0.0(x))) down.0(1.0(a.)) -> 1_flat.0(down.0(a.)) down.0(1.0(b.)) -> 1_flat.0(down.0(b.)) down.0(1.0(0.0(y13))) -> 1_flat.0(down.0(0.0(y13))) down.0(1.0(0.1(y13))) -> 1_flat.0(down.0(0.1(y13))) down.0(1.0(1.0(y14))) -> 1_flat.0(down.0(1.0(y14))) down.0(1.0(1.1(y14))) -> 1_flat.0(down.0(1.1(y14))) down.0(0.0(f.0(x))) -> up.0(1.0(x)) down.0(0.0(a.)) -> 0_flat.0(down.0(a.)) down.0(0.0(b.)) -> 0_flat.0(down.0(b.)) down.0(0.0(0.0(y9))) -> 0_flat.0(down.0(0.0(y9))) down.0(0.0(0.1(y9))) -> 0_flat.0(down.0(0.1(y9))) down.0(0.0(1.0(y10))) -> 0_flat.0(down.0(1.0(y10))) down.0(0.0(1.1(y10))) -> 0_flat.0(down.0(1.1(y10))) 0_flat.0(up.0(x_1)) -> up.0(0.0(x_1)) down.0(a.) -> up.0(f.0(a.)) f_flat.0(up.0(x_1)) -> up.0(f.0(x_1)) The set Q consists of the following terms: down.0(a.) down.0(f.0(f.0(x0))) down.0(f.0(f.1(x0))) down.0(0.0(f.0(x0))) down.0(0.0(f.1(x0))) down.0(1.0(f.0(x0))) down.0(1.0(f.1(x0))) down.0(f.0(a.)) down.0(f.0(b.)) down.0(f.0(0.0(x0))) down.0(f.0(0.1(x0))) down.0(f.0(1.0(x0))) down.0(f.0(1.1(x0))) down.0(f.1(fresh_constant.)) down.0(0.0(a.)) down.0(0.0(b.)) down.0(0.0(0.0(x0))) down.0(0.0(0.1(x0))) down.0(0.0(1.0(x0))) down.0(0.0(1.1(x0))) down.0(0.1(fresh_constant.)) down.0(1.0(a.)) down.0(1.0(b.)) down.0(1.0(0.0(x0))) down.0(1.0(0.1(x0))) down.0(1.0(1.0(x0))) down.0(1.0(1.1(x0))) down.0(1.1(fresh_constant.)) f_flat.0(up.0(x0)) f_flat.0(up.1(x0)) 0_flat.0(up.0(x0)) 0_flat.0(up.1(x0)) 1_flat.0(up.0(x0)) 1_flat.0(up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (140) PisEmptyProof (SOUND) The TRS P is empty. Hence, there is no (P,Q,R) chain. ---------------------------------------- (141) TRUE ---------------------------------------- (142) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) The TRS R consists of the following rules: 1_flat(up(x_1)) -> up(1(x_1)) down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) f_flat(up(x_1)) -> up(f(x_1)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (143) QReductionProof (EQUIVALENT) We deleted the following terms from Q as they contain symbols which do neither occur in P nor in R.[THIEMANN]. down(f(fresh_constant)) down(0(fresh_constant)) down(1(fresh_constant)) ---------------------------------------- (144) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) The TRS R consists of the following rules: 1_flat(up(x_1)) -> up(1(x_1)) down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) f_flat(up(x_1)) -> up(f(x_1)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all (P,Q,R)-chains. ---------------------------------------- (145) SplitQDPProof (EQUIVALENT) We show in the first subproof that some pairs and rules can be removed, afterwards, we continue with the remaining DP-Problem ---------------------------------------- (146) Complex Obligation (AND) ---------------------------------------- (147) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) The TRS R consists of the following rules: 1_flat(up(x_1)) -> up(1(x_1)) down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(b)) -> 1_flat(down(b)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(b)) -> 0_flat(down(b)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) f_flat(up(x_1)) -> up(f(x_1)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (148) SemLabProof (SOUND) We found the following model for the rules of the TRSs R and P. Interpretation over the domain with elements from 0 to 1. a: 0 b: 1 down: 0 f: 0 fresh_constant: 0 0: 0 up: 0 1: 0 1_flat: 0 0_flat: 0 f_flat: 0 TOP: 0 By semantic labelling [SEMLAB] we obtain the following labelled QDP problem. ---------------------------------------- (149) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(up.0(f.0(0.0(x0)))) -> TOP.0(f_flat.0(down.0(0.0(x0)))) TOP.0(up.0(f.0(0.1(x0)))) -> TOP.0(f_flat.0(down.0(0.1(x0)))) TOP.0(up.0(f.0(1.0(x0)))) -> TOP.0(f_flat.0(down.0(1.0(x0)))) TOP.0(up.0(f.0(1.1(x0)))) -> TOP.0(f_flat.0(down.0(1.1(x0)))) TOP.0(up.0(0.0(0.0(x0)))) -> TOP.0(0_flat.0(down.0(0.0(x0)))) TOP.0(up.0(0.0(0.1(x0)))) -> TOP.0(0_flat.0(down.0(0.1(x0)))) TOP.0(up.0(0.0(1.0(x0)))) -> TOP.0(0_flat.0(down.0(1.0(x0)))) TOP.0(up.0(0.0(1.1(x0)))) -> TOP.0(0_flat.0(down.0(1.1(x0)))) TOP.0(up.0(1.0(0.0(x0)))) -> TOP.0(1_flat.0(down.0(0.0(x0)))) TOP.0(up.0(1.0(0.1(x0)))) -> TOP.0(1_flat.0(down.0(0.1(x0)))) TOP.0(up.0(1.0(1.0(x0)))) -> TOP.0(1_flat.0(down.0(1.0(x0)))) TOP.0(up.0(1.0(1.1(x0)))) -> TOP.0(1_flat.0(down.0(1.1(x0)))) The TRS R consists of the following rules: 1_flat.0(up.0(x_1)) -> up.0(1.0(x_1)) 1_flat.0(up.1(x_1)) -> up.0(1.1(x_1)) down.0(1.0(f.0(x))) -> up.0(f.0(0.0(x))) down.0(1.0(f.1(x))) -> up.0(f.0(0.1(x))) down.0(1.0(a.)) -> 1_flat.0(down.0(a.)) down.0(1.1(b.)) -> 1_flat.0(down.1(b.)) down.0(1.0(0.0(y13))) -> 1_flat.0(down.0(0.0(y13))) down.0(1.0(0.1(y13))) -> 1_flat.0(down.0(0.1(y13))) down.0(1.0(1.0(y14))) -> 1_flat.0(down.0(1.0(y14))) down.0(1.0(1.1(y14))) -> 1_flat.0(down.0(1.1(y14))) down.0(0.0(f.0(x))) -> up.0(1.0(x)) down.0(0.0(f.1(x))) -> up.0(1.1(x)) down.0(0.0(a.)) -> 0_flat.0(down.0(a.)) down.0(0.1(b.)) -> 0_flat.0(down.1(b.)) down.0(0.0(0.0(y9))) -> 0_flat.0(down.0(0.0(y9))) down.0(0.0(0.1(y9))) -> 0_flat.0(down.0(0.1(y9))) down.0(0.0(1.0(y10))) -> 0_flat.0(down.0(1.0(y10))) down.0(0.0(1.1(y10))) -> 0_flat.0(down.0(1.1(y10))) 0_flat.0(up.0(x_1)) -> up.0(0.0(x_1)) 0_flat.0(up.1(x_1)) -> up.0(0.1(x_1)) down.0(a.) -> up.0(f.0(a.)) f_flat.0(up.0(x_1)) -> up.0(f.0(x_1)) f_flat.0(up.1(x_1)) -> up.0(f.1(x_1)) The set Q consists of the following terms: down.0(a.) down.0(f.0(f.0(x0))) down.0(f.0(f.1(x0))) down.0(0.0(f.0(x0))) down.0(0.0(f.1(x0))) down.0(1.0(f.0(x0))) down.0(1.0(f.1(x0))) down.0(f.0(a.)) down.0(f.1(b.)) down.0(f.0(0.0(x0))) down.0(f.0(0.1(x0))) down.0(f.0(1.0(x0))) down.0(f.0(1.1(x0))) down.0(f.0(fresh_constant.)) down.0(0.0(a.)) down.0(0.1(b.)) down.0(0.0(0.0(x0))) down.0(0.0(0.1(x0))) down.0(0.0(1.0(x0))) down.0(0.0(1.1(x0))) down.0(0.0(fresh_constant.)) down.0(1.0(a.)) down.0(1.1(b.)) down.0(1.0(0.0(x0))) down.0(1.0(0.1(x0))) down.0(1.0(1.0(x0))) down.0(1.0(1.1(x0))) down.0(1.0(fresh_constant.)) f_flat.0(up.0(x0)) f_flat.0(up.1(x0)) 0_flat.0(up.0(x0)) 0_flat.0(up.1(x0)) 1_flat.0(up.0(x0)) 1_flat.0(up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (150) UsableRulesReductionPairsProof (EQUIVALENT) By using the usable rules with reduction pair processor [LPAR04] with a polynomial ordering [POLO], all dependency pairs and the corresponding usable rules [FROCOS05] can be oriented non-strictly. All non-usable rules are removed, and those dependency pairs and usable rules that have been oriented strictly or contain non-usable symbols in their left-hand side are removed as well. No dependency pairs are removed. The following rules are removed from R: 1_flat.0(up.1(x_1)) -> up.0(1.1(x_1)) down.0(1.0(f.1(x))) -> up.0(f.0(0.1(x))) down.0(0.0(f.1(x))) -> up.0(1.1(x)) 0_flat.0(up.1(x_1)) -> up.0(0.1(x_1)) f_flat.0(up.1(x_1)) -> up.0(f.1(x_1)) Used ordering: POLO with Polynomial interpretation [POLO]: POL(0.0(x_1)) = 1 + x_1 POL(0.1(x_1)) = 1 + x_1 POL(0_flat.0(x_1)) = 1 + x_1 POL(1.0(x_1)) = 1 + x_1 POL(1.1(x_1)) = 1 + x_1 POL(1_flat.0(x_1)) = 1 + x_1 POL(TOP.0(x_1)) = x_1 POL(a.) = 0 POL(b.) = 0 POL(down.0(x_1)) = x_1 POL(down.1(x_1)) = x_1 POL(f.0(x_1)) = x_1 POL(f.1(x_1)) = 1 + x_1 POL(f_flat.0(x_1)) = x_1 POL(up.0(x_1)) = x_1 POL(up.1(x_1)) = 1 + x_1 ---------------------------------------- (151) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(up.0(f.0(0.0(x0)))) -> TOP.0(f_flat.0(down.0(0.0(x0)))) TOP.0(up.0(f.0(0.1(x0)))) -> TOP.0(f_flat.0(down.0(0.1(x0)))) TOP.0(up.0(f.0(1.0(x0)))) -> TOP.0(f_flat.0(down.0(1.0(x0)))) TOP.0(up.0(f.0(1.1(x0)))) -> TOP.0(f_flat.0(down.0(1.1(x0)))) TOP.0(up.0(0.0(0.0(x0)))) -> TOP.0(0_flat.0(down.0(0.0(x0)))) TOP.0(up.0(0.0(0.1(x0)))) -> TOP.0(0_flat.0(down.0(0.1(x0)))) TOP.0(up.0(0.0(1.0(x0)))) -> TOP.0(0_flat.0(down.0(1.0(x0)))) TOP.0(up.0(0.0(1.1(x0)))) -> TOP.0(0_flat.0(down.0(1.1(x0)))) TOP.0(up.0(1.0(0.0(x0)))) -> TOP.0(1_flat.0(down.0(0.0(x0)))) TOP.0(up.0(1.0(0.1(x0)))) -> TOP.0(1_flat.0(down.0(0.1(x0)))) TOP.0(up.0(1.0(1.0(x0)))) -> TOP.0(1_flat.0(down.0(1.0(x0)))) TOP.0(up.0(1.0(1.1(x0)))) -> TOP.0(1_flat.0(down.0(1.1(x0)))) The TRS R consists of the following rules: down.0(1.1(b.)) -> 1_flat.0(down.1(b.)) 1_flat.0(up.0(x_1)) -> up.0(1.0(x_1)) down.0(1.0(f.0(x))) -> up.0(f.0(0.0(x))) down.0(1.0(a.)) -> 1_flat.0(down.0(a.)) down.0(1.0(0.0(y13))) -> 1_flat.0(down.0(0.0(y13))) down.0(1.0(0.1(y13))) -> 1_flat.0(down.0(0.1(y13))) down.0(1.0(1.0(y14))) -> 1_flat.0(down.0(1.0(y14))) down.0(1.0(1.1(y14))) -> 1_flat.0(down.0(1.1(y14))) down.0(0.1(b.)) -> 0_flat.0(down.1(b.)) down.0(0.0(f.0(x))) -> up.0(1.0(x)) down.0(0.0(a.)) -> 0_flat.0(down.0(a.)) down.0(0.0(0.0(y9))) -> 0_flat.0(down.0(0.0(y9))) down.0(0.0(0.1(y9))) -> 0_flat.0(down.0(0.1(y9))) down.0(0.0(1.0(y10))) -> 0_flat.0(down.0(1.0(y10))) down.0(0.0(1.1(y10))) -> 0_flat.0(down.0(1.1(y10))) 0_flat.0(up.0(x_1)) -> up.0(0.0(x_1)) down.0(a.) -> up.0(f.0(a.)) f_flat.0(up.0(x_1)) -> up.0(f.0(x_1)) The set Q consists of the following terms: down.0(a.) down.0(f.0(f.0(x0))) down.0(f.0(f.1(x0))) down.0(0.0(f.0(x0))) down.0(0.0(f.1(x0))) down.0(1.0(f.0(x0))) down.0(1.0(f.1(x0))) down.0(f.0(a.)) down.0(f.1(b.)) down.0(f.0(0.0(x0))) down.0(f.0(0.1(x0))) down.0(f.0(1.0(x0))) down.0(f.0(1.1(x0))) down.0(f.0(fresh_constant.)) down.0(0.0(a.)) down.0(0.1(b.)) down.0(0.0(0.0(x0))) down.0(0.0(0.1(x0))) down.0(0.0(1.0(x0))) down.0(0.0(1.1(x0))) down.0(0.0(fresh_constant.)) down.0(1.0(a.)) down.0(1.1(b.)) down.0(1.0(0.0(x0))) down.0(1.0(0.1(x0))) down.0(1.0(1.0(x0))) down.0(1.0(1.1(x0))) down.0(1.0(fresh_constant.)) f_flat.0(up.0(x0)) f_flat.0(up.1(x0)) 0_flat.0(up.0(x0)) 0_flat.0(up.1(x0)) 1_flat.0(up.0(x0)) 1_flat.0(up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (152) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented rules of the TRS R: down.0(1.1(b.)) -> 1_flat.0(down.1(b.)) down.0(0.1(b.)) -> 0_flat.0(down.1(b.)) Used ordering: Polynomial interpretation [POLO]: POL(0.0(x_1)) = x_1 POL(0.1(x_1)) = 1 + x_1 POL(0_flat.0(x_1)) = x_1 POL(1.0(x_1)) = x_1 POL(1.1(x_1)) = 1 + x_1 POL(1_flat.0(x_1)) = x_1 POL(TOP.0(x_1)) = x_1 POL(a.) = 0 POL(b.) = 0 POL(down.0(x_1)) = x_1 POL(down.1(x_1)) = x_1 POL(f.0(x_1)) = x_1 POL(f_flat.0(x_1)) = x_1 POL(up.0(x_1)) = x_1 ---------------------------------------- (153) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(up.0(f.0(0.0(x0)))) -> TOP.0(f_flat.0(down.0(0.0(x0)))) TOP.0(up.0(f.0(0.1(x0)))) -> TOP.0(f_flat.0(down.0(0.1(x0)))) TOP.0(up.0(f.0(1.0(x0)))) -> TOP.0(f_flat.0(down.0(1.0(x0)))) TOP.0(up.0(f.0(1.1(x0)))) -> TOP.0(f_flat.0(down.0(1.1(x0)))) TOP.0(up.0(0.0(0.0(x0)))) -> TOP.0(0_flat.0(down.0(0.0(x0)))) TOP.0(up.0(0.0(0.1(x0)))) -> TOP.0(0_flat.0(down.0(0.1(x0)))) TOP.0(up.0(0.0(1.0(x0)))) -> TOP.0(0_flat.0(down.0(1.0(x0)))) TOP.0(up.0(0.0(1.1(x0)))) -> TOP.0(0_flat.0(down.0(1.1(x0)))) TOP.0(up.0(1.0(0.0(x0)))) -> TOP.0(1_flat.0(down.0(0.0(x0)))) TOP.0(up.0(1.0(0.1(x0)))) -> TOP.0(1_flat.0(down.0(0.1(x0)))) TOP.0(up.0(1.0(1.0(x0)))) -> TOP.0(1_flat.0(down.0(1.0(x0)))) TOP.0(up.0(1.0(1.1(x0)))) -> TOP.0(1_flat.0(down.0(1.1(x0)))) The TRS R consists of the following rules: 1_flat.0(up.0(x_1)) -> up.0(1.0(x_1)) down.0(1.0(f.0(x))) -> up.0(f.0(0.0(x))) down.0(1.0(a.)) -> 1_flat.0(down.0(a.)) down.0(1.0(0.0(y13))) -> 1_flat.0(down.0(0.0(y13))) down.0(1.0(0.1(y13))) -> 1_flat.0(down.0(0.1(y13))) down.0(1.0(1.0(y14))) -> 1_flat.0(down.0(1.0(y14))) down.0(1.0(1.1(y14))) -> 1_flat.0(down.0(1.1(y14))) down.0(0.0(f.0(x))) -> up.0(1.0(x)) down.0(0.0(a.)) -> 0_flat.0(down.0(a.)) down.0(0.0(0.0(y9))) -> 0_flat.0(down.0(0.0(y9))) down.0(0.0(0.1(y9))) -> 0_flat.0(down.0(0.1(y9))) down.0(0.0(1.0(y10))) -> 0_flat.0(down.0(1.0(y10))) down.0(0.0(1.1(y10))) -> 0_flat.0(down.0(1.1(y10))) 0_flat.0(up.0(x_1)) -> up.0(0.0(x_1)) down.0(a.) -> up.0(f.0(a.)) f_flat.0(up.0(x_1)) -> up.0(f.0(x_1)) The set Q consists of the following terms: down.0(a.) down.0(f.0(f.0(x0))) down.0(f.0(f.1(x0))) down.0(0.0(f.0(x0))) down.0(0.0(f.1(x0))) down.0(1.0(f.0(x0))) down.0(1.0(f.1(x0))) down.0(f.0(a.)) down.0(f.1(b.)) down.0(f.0(0.0(x0))) down.0(f.0(0.1(x0))) down.0(f.0(1.0(x0))) down.0(f.0(1.1(x0))) down.0(f.0(fresh_constant.)) down.0(0.0(a.)) down.0(0.1(b.)) down.0(0.0(0.0(x0))) down.0(0.0(0.1(x0))) down.0(0.0(1.0(x0))) down.0(0.0(1.1(x0))) down.0(0.0(fresh_constant.)) down.0(1.0(a.)) down.0(1.1(b.)) down.0(1.0(0.0(x0))) down.0(1.0(0.1(x0))) down.0(1.0(1.0(x0))) down.0(1.0(1.1(x0))) down.0(1.0(fresh_constant.)) f_flat.0(up.0(x0)) f_flat.0(up.1(x0)) 0_flat.0(up.0(x0)) 0_flat.0(up.1(x0)) 1_flat.0(up.0(x0)) 1_flat.0(up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (154) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 6 less nodes. ---------------------------------------- (155) Obligation: Q DP problem: The TRS P consists of the following rules: TOP.0(up.0(f.0(0.0(x0)))) -> TOP.0(f_flat.0(down.0(0.0(x0)))) TOP.0(up.0(f.0(1.0(x0)))) -> TOP.0(f_flat.0(down.0(1.0(x0)))) TOP.0(up.0(0.0(0.0(x0)))) -> TOP.0(0_flat.0(down.0(0.0(x0)))) TOP.0(up.0(0.0(1.0(x0)))) -> TOP.0(0_flat.0(down.0(1.0(x0)))) TOP.0(up.0(1.0(0.0(x0)))) -> TOP.0(1_flat.0(down.0(0.0(x0)))) TOP.0(up.0(1.0(1.0(x0)))) -> TOP.0(1_flat.0(down.0(1.0(x0)))) The TRS R consists of the following rules: 1_flat.0(up.0(x_1)) -> up.0(1.0(x_1)) down.0(1.0(f.0(x))) -> up.0(f.0(0.0(x))) down.0(1.0(a.)) -> 1_flat.0(down.0(a.)) down.0(1.0(0.0(y13))) -> 1_flat.0(down.0(0.0(y13))) down.0(1.0(0.1(y13))) -> 1_flat.0(down.0(0.1(y13))) down.0(1.0(1.0(y14))) -> 1_flat.0(down.0(1.0(y14))) down.0(1.0(1.1(y14))) -> 1_flat.0(down.0(1.1(y14))) down.0(0.0(f.0(x))) -> up.0(1.0(x)) down.0(0.0(a.)) -> 0_flat.0(down.0(a.)) down.0(0.0(0.0(y9))) -> 0_flat.0(down.0(0.0(y9))) down.0(0.0(0.1(y9))) -> 0_flat.0(down.0(0.1(y9))) down.0(0.0(1.0(y10))) -> 0_flat.0(down.0(1.0(y10))) down.0(0.0(1.1(y10))) -> 0_flat.0(down.0(1.1(y10))) 0_flat.0(up.0(x_1)) -> up.0(0.0(x_1)) down.0(a.) -> up.0(f.0(a.)) f_flat.0(up.0(x_1)) -> up.0(f.0(x_1)) The set Q consists of the following terms: down.0(a.) down.0(f.0(f.0(x0))) down.0(f.0(f.1(x0))) down.0(0.0(f.0(x0))) down.0(0.0(f.1(x0))) down.0(1.0(f.0(x0))) down.0(1.0(f.1(x0))) down.0(f.0(a.)) down.0(f.1(b.)) down.0(f.0(0.0(x0))) down.0(f.0(0.1(x0))) down.0(f.0(1.0(x0))) down.0(f.0(1.1(x0))) down.0(f.0(fresh_constant.)) down.0(0.0(a.)) down.0(0.1(b.)) down.0(0.0(0.0(x0))) down.0(0.0(0.1(x0))) down.0(0.0(1.0(x0))) down.0(0.0(1.1(x0))) down.0(0.0(fresh_constant.)) down.0(1.0(a.)) down.0(1.1(b.)) down.0(1.0(0.0(x0))) down.0(1.0(0.1(x0))) down.0(1.0(1.0(x0))) down.0(1.0(1.1(x0))) down.0(1.0(fresh_constant.)) f_flat.0(up.0(x0)) f_flat.0(up.1(x0)) 0_flat.0(up.0(x0)) 0_flat.0(up.1(x0)) 1_flat.0(up.0(x0)) 1_flat.0(up.1(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (156) PisEmptyProof (SOUND) The TRS P is empty. Hence, there is no (P,Q,R) chain. ---------------------------------------- (157) TRUE ---------------------------------------- (158) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) The TRS R consists of the following rules: 1_flat(up(x_1)) -> up(1(x_1)) down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) f_flat(up(x_1)) -> up(f(x_1)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(b)) down(f(0(x0))) down(f(1(x0))) down(f(fresh_constant)) down(0(a)) down(0(b)) down(0(0(x0))) down(0(1(x0))) down(0(fresh_constant)) down(1(a)) down(1(b)) down(1(0(x0))) down(1(1(x0))) down(1(fresh_constant)) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (159) QReductionProof (EQUIVALENT) We deleted the following terms from Q as they contain symbols which do neither occur in P nor in R.[THIEMANN]. down(f(b)) down(f(fresh_constant)) down(0(b)) down(0(fresh_constant)) down(1(b)) down(1(fresh_constant)) ---------------------------------------- (160) Obligation: Q DP problem: The TRS P consists of the following rules: TOP(up(f(0(x0)))) -> TOP(f_flat(down(0(x0)))) TOP(up(f(1(x0)))) -> TOP(f_flat(down(1(x0)))) TOP(up(0(0(x0)))) -> TOP(0_flat(down(0(x0)))) TOP(up(0(1(x0)))) -> TOP(0_flat(down(1(x0)))) TOP(up(1(0(x0)))) -> TOP(1_flat(down(0(x0)))) TOP(up(1(1(x0)))) -> TOP(1_flat(down(1(x0)))) The TRS R consists of the following rules: 1_flat(up(x_1)) -> up(1(x_1)) down(1(f(x))) -> up(f(0(x))) down(1(a)) -> 1_flat(down(a)) down(1(0(y13))) -> 1_flat(down(0(y13))) down(1(1(y14))) -> 1_flat(down(1(y14))) down(0(f(x))) -> up(1(x)) down(0(a)) -> 0_flat(down(a)) down(0(0(y9))) -> 0_flat(down(0(y9))) down(0(1(y10))) -> 0_flat(down(1(y10))) 0_flat(up(x_1)) -> up(0(x_1)) down(a) -> up(f(a)) f_flat(up(x_1)) -> up(f(x_1)) The set Q consists of the following terms: down(a) down(f(f(x0))) down(0(f(x0))) down(1(f(x0))) down(f(a)) down(f(0(x0))) down(f(1(x0))) down(0(a)) down(0(0(x0))) down(0(1(x0))) down(1(a)) down(1(0(x0))) down(1(1(x0))) f_flat(up(x0)) 0_flat(up(x0)) 1_flat(up(x0)) We have to consider all (P,Q,R)-chains.