/export/starexec/sandbox2/solver/bin/starexec_run_standard /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox2/benchmark/theBenchmark.xml # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty Termination w.r.t. Q of the given QTRS could be proven: (0) QTRS (1) AAECC Innermost [EQUIVALENT, 0 ms] (2) QTRS (3) DependencyPairsProof [EQUIVALENT, 0 ms] (4) QDP (5) DependencyGraphProof [EQUIVALENT, 0 ms] (6) AND (7) QDP (8) UsableRulesProof [EQUIVALENT, 0 ms] (9) QDP (10) QReductionProof [EQUIVALENT, 0 ms] (11) QDP (12) QDPSizeChangeProof [EQUIVALENT, 2 ms] (13) YES (14) QDP (15) UsableRulesProof [EQUIVALENT, 0 ms] (16) QDP (17) QReductionProof [EQUIVALENT, 4 ms] (18) QDP (19) TransformationProof [EQUIVALENT, 0 ms] (20) QDP (21) TransformationProof [EQUIVALENT, 0 ms] (22) QDP (23) TransformationProof [EQUIVALENT, 0 ms] (24) QDP (25) TransformationProof [EQUIVALENT, 0 ms] (26) QDP (27) TransformationProof [EQUIVALENT, 0 ms] (28) QDP (29) TransformationProof [EQUIVALENT, 0 ms] (30) QDP (31) DependencyGraphProof [EQUIVALENT, 0 ms] (32) QDP (33) TransformationProof [EQUIVALENT, 0 ms] (34) QDP (35) TransformationProof [EQUIVALENT, 0 ms] (36) QDP (37) TransformationProof [EQUIVALENT, 0 ms] (38) QDP (39) TransformationProof [EQUIVALENT, 0 ms] (40) QDP (41) TransformationProof [EQUIVALENT, 0 ms] (42) QDP (43) TransformationProof [EQUIVALENT, 0 ms] (44) QDP (45) DependencyGraphProof [EQUIVALENT, 0 ms] (46) QDP (47) TransformationProof [EQUIVALENT, 0 ms] (48) QDP (49) DependencyGraphProof [EQUIVALENT, 0 ms] (50) QDP (51) TransformationProof [EQUIVALENT, 0 ms] (52) QDP (53) TransformationProof [EQUIVALENT, 0 ms] (54) QDP (55) DependencyGraphProof [EQUIVALENT, 0 ms] (56) QDP (57) TransformationProof [EQUIVALENT, 0 ms] (58) QDP (59) DependencyGraphProof [EQUIVALENT, 0 ms] (60) QDP (61) TransformationProof [EQUIVALENT, 0 ms] (62) QDP (63) TransformationProof [EQUIVALENT, 0 ms] (64) QDP (65) DependencyGraphProof [EQUIVALENT, 0 ms] (66) QDP (67) TransformationProof [EQUIVALENT, 0 ms] (68) QDP (69) UsableRulesProof [EQUIVALENT, 0 ms] (70) QDP (71) TransformationProof [EQUIVALENT, 0 ms] (72) QDP (73) TransformationProof [EQUIVALENT, 0 ms] (74) QDP (75) DependencyGraphProof [EQUIVALENT, 0 ms] (76) QDP (77) TransformationProof [EQUIVALENT, 0 ms] (78) QDP (79) DependencyGraphProof [EQUIVALENT, 0 ms] (80) QDP (81) UsableRulesProof [EQUIVALENT, 0 ms] (82) QDP (83) QReductionProof [EQUIVALENT, 0 ms] (84) QDP (85) TransformationProof [EQUIVALENT, 0 ms] (86) QDP (87) UsableRulesProof [EQUIVALENT, 0 ms] (88) QDP (89) QReductionProof [EQUIVALENT, 0 ms] (90) QDP (91) TransformationProof [EQUIVALENT, 0 ms] (92) QDP (93) TransformationProof [EQUIVALENT, 0 ms] (94) QDP (95) DependencyGraphProof [EQUIVALENT, 0 ms] (96) QDP (97) TransformationProof [EQUIVALENT, 0 ms] (98) QDP (99) DependencyGraphProof [EQUIVALENT, 0 ms] (100) QDP (101) UsableRulesProof [EQUIVALENT, 0 ms] (102) QDP (103) QReductionProof [EQUIVALENT, 0 ms] (104) QDP (105) TransformationProof [EQUIVALENT, 0 ms] (106) QDP (107) DependencyGraphProof [EQUIVALENT, 0 ms] (108) AND (109) QDP (110) QDPSizeChangeProof [EQUIVALENT, 0 ms] (111) YES (112) QDP (113) QDPSizeChangeProof [EQUIVALENT, 0 ms] (114) YES ---------------------------------------- (0) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: cond1(true, x, y) -> cond2(gr(x, 0), x, y) cond2(true, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), p(x), y) cond2(false, x, y) -> cond3(gr(y, 0), x, y) cond3(true, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), x, p(y)) cond3(false, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), x, y) gr(0, x) -> false gr(s(x), 0) -> true gr(s(x), s(y)) -> gr(x, y) or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x Q is empty. ---------------------------------------- (1) AAECC Innermost (EQUIVALENT) We have applied [NOC,AAECCNOC] to switch to innermost. The TRS R 1 is gr(0, x) -> false gr(s(x), 0) -> true gr(s(x), s(y)) -> gr(x, y) or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The TRS R 2 is cond1(true, x, y) -> cond2(gr(x, 0), x, y) cond2(true, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), p(x), y) cond2(false, x, y) -> cond3(gr(y, 0), x, y) cond3(true, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), x, p(y)) cond3(false, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), x, y) The signature Sigma is {cond1_3, cond2_3, cond3_3} ---------------------------------------- (2) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: cond1(true, x, y) -> cond2(gr(x, 0), x, y) cond2(true, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), p(x), y) cond2(false, x, y) -> cond3(gr(y, 0), x, y) cond3(true, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), x, p(y)) cond3(false, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), x, y) gr(0, x) -> false gr(s(x), 0) -> true gr(s(x), s(y)) -> gr(x, y) or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: cond1(true, x0, x1) cond2(true, x0, x1) cond2(false, x0, x1) cond3(true, x0, x1) cond3(false, x0, x1) gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) ---------------------------------------- (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: COND1(true, x, y) -> COND2(gr(x, 0), x, y) COND1(true, x, y) -> GR(x, 0) COND2(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), p(x), y) COND2(true, x, y) -> OR(gr(x, 0), gr(y, 0)) COND2(true, x, y) -> GR(x, 0) COND2(true, x, y) -> GR(y, 0) COND2(true, x, y) -> P(x) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND2(false, x, y) -> GR(y, 0) COND3(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, p(y)) COND3(true, x, y) -> OR(gr(x, 0), gr(y, 0)) COND3(true, x, y) -> GR(x, 0) COND3(true, x, y) -> GR(y, 0) COND3(true, x, y) -> P(y) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND3(false, x, y) -> OR(gr(x, 0), gr(y, 0)) COND3(false, x, y) -> GR(x, 0) COND3(false, x, y) -> GR(y, 0) GR(s(x), s(y)) -> GR(x, y) The TRS R consists of the following rules: cond1(true, x, y) -> cond2(gr(x, 0), x, y) cond2(true, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), p(x), y) cond2(false, x, y) -> cond3(gr(y, 0), x, y) cond3(true, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), x, p(y)) cond3(false, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), x, y) gr(0, x) -> false gr(s(x), 0) -> true gr(s(x), s(y)) -> gr(x, y) or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: cond1(true, x0, x1) cond2(true, x0, x1) cond2(false, x0, x1) cond3(true, x0, x1) cond3(false, x0, x1) gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) 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 13 less nodes. ---------------------------------------- (6) Complex Obligation (AND) ---------------------------------------- (7) Obligation: Q DP problem: The TRS P consists of the following rules: GR(s(x), s(y)) -> GR(x, y) The TRS R consists of the following rules: cond1(true, x, y) -> cond2(gr(x, 0), x, y) cond2(true, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), p(x), y) cond2(false, x, y) -> cond3(gr(y, 0), x, y) cond3(true, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), x, p(y)) cond3(false, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), x, y) gr(0, x) -> false gr(s(x), 0) -> true gr(s(x), s(y)) -> gr(x, y) or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: cond1(true, x0, x1) cond2(true, x0, x1) cond2(false, x0, x1) cond3(true, x0, x1) cond3(false, x0, x1) gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (8) 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. ---------------------------------------- (9) Obligation: Q DP problem: The TRS P consists of the following rules: GR(s(x), s(y)) -> GR(x, y) R is empty. The set Q consists of the following terms: cond1(true, x0, x1) cond2(true, x0, x1) cond2(false, x0, x1) cond3(true, x0, x1) cond3(false, x0, x1) gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (10) 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]. cond1(true, x0, x1) cond2(true, x0, x1) cond2(false, x0, x1) cond3(true, x0, x1) cond3(false, x0, x1) gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) ---------------------------------------- (11) Obligation: Q DP problem: The TRS P consists of the following rules: GR(s(x), s(y)) -> GR(x, y) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (12) 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: *GR(s(x), s(y)) -> GR(x, y) The graph contains the following edges 1 > 1, 2 > 2 ---------------------------------------- (13) YES ---------------------------------------- (14) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), p(x), y) COND1(true, x, y) -> COND2(gr(x, 0), x, y) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, p(y)) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) The TRS R consists of the following rules: cond1(true, x, y) -> cond2(gr(x, 0), x, y) cond2(true, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), p(x), y) cond2(false, x, y) -> cond3(gr(y, 0), x, y) cond3(true, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), x, p(y)) cond3(false, x, y) -> cond1(or(gr(x, 0), gr(y, 0)), x, y) gr(0, x) -> false gr(s(x), 0) -> true gr(s(x), s(y)) -> gr(x, y) or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: cond1(true, x0, x1) cond2(true, x0, x1) cond2(false, x0, x1) cond3(true, x0, x1) cond3(false, x0, x1) gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (15) 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. ---------------------------------------- (16) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), p(x), y) COND1(true, x, y) -> COND2(gr(x, 0), x, y) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, p(y)) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: cond1(true, x0, x1) cond2(true, x0, x1) cond2(false, x0, x1) cond3(true, x0, x1) cond3(false, x0, x1) gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (17) 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]. cond1(true, x0, x1) cond2(true, x0, x1) cond2(false, x0, x1) cond3(true, x0, x1) cond3(false, x0, x1) ---------------------------------------- (18) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), p(x), y) COND1(true, x, y) -> COND2(gr(x, 0), x, y) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, p(y)) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (19) TransformationProof (EQUIVALENT) By narrowing [LPAR04] the rule COND2(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), p(x), y) at position [0] we obtained the following new rules [LPAR04]: (COND2(true, 0, y1) -> COND1(or(false, gr(y1, 0)), p(0), y1),COND2(true, 0, y1) -> COND1(or(false, gr(y1, 0)), p(0), y1)) (COND2(true, s(x0), y1) -> COND1(or(true, gr(y1, 0)), p(s(x0)), y1),COND2(true, s(x0), y1) -> COND1(or(true, gr(y1, 0)), p(s(x0)), y1)) (COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0),COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0)) (COND2(true, y0, s(x0)) -> COND1(or(gr(y0, 0), true), p(y0), s(x0)),COND2(true, y0, s(x0)) -> COND1(or(gr(y0, 0), true), p(y0), s(x0))) ---------------------------------------- (20) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, x, y) -> COND2(gr(x, 0), x, y) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, p(y)) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND2(true, 0, y1) -> COND1(or(false, gr(y1, 0)), p(0), y1) COND2(true, s(x0), y1) -> COND1(or(true, gr(y1, 0)), p(s(x0)), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(or(gr(y0, 0), true), p(y0), s(x0)) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (21) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule COND2(true, 0, y1) -> COND1(or(false, gr(y1, 0)), p(0), y1) at position [1] we obtained the following new rules [LPAR04]: (COND2(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, y1),COND2(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, y1)) ---------------------------------------- (22) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, x, y) -> COND2(gr(x, 0), x, y) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, p(y)) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND2(true, s(x0), y1) -> COND1(or(true, gr(y1, 0)), p(s(x0)), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(or(gr(y0, 0), true), p(y0), s(x0)) COND2(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, y1) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (23) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule COND2(true, s(x0), y1) -> COND1(or(true, gr(y1, 0)), p(s(x0)), y1) at position [0] we obtained the following new rules [LPAR04]: (COND2(true, s(x0), y1) -> COND1(true, p(s(x0)), y1),COND2(true, s(x0), y1) -> COND1(true, p(s(x0)), y1)) ---------------------------------------- (24) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, x, y) -> COND2(gr(x, 0), x, y) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, p(y)) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(or(gr(y0, 0), true), p(y0), s(x0)) COND2(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, y1) COND2(true, s(x0), y1) -> COND1(true, p(s(x0)), y1) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (25) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule COND2(true, y0, s(x0)) -> COND1(or(gr(y0, 0), true), p(y0), s(x0)) at position [0] we obtained the following new rules [LPAR04]: (COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)),COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0))) ---------------------------------------- (26) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, x, y) -> COND2(gr(x, 0), x, y) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, p(y)) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, y1) COND2(true, s(x0), y1) -> COND1(true, p(s(x0)), y1) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (27) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule COND2(true, s(x0), y1) -> COND1(true, p(s(x0)), y1) at position [1] we obtained the following new rules [LPAR04]: (COND2(true, s(x0), y1) -> COND1(true, x0, y1),COND2(true, s(x0), y1) -> COND1(true, x0, y1)) ---------------------------------------- (28) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, x, y) -> COND2(gr(x, 0), x, y) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, p(y)) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, y1) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (29) TransformationProof (EQUIVALENT) By narrowing [LPAR04] the rule COND1(true, x, y) -> COND2(gr(x, 0), x, y) at position [0] we obtained the following new rules [LPAR04]: (COND1(true, 0, y1) -> COND2(false, 0, y1),COND1(true, 0, y1) -> COND2(false, 0, y1)) (COND1(true, s(x0), y1) -> COND2(true, s(x0), y1),COND1(true, s(x0), y1) -> COND2(true, s(x0), y1)) ---------------------------------------- (30) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, p(y)) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, y1) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND1(true, 0, y1) -> COND2(false, 0, y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (31) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. ---------------------------------------- (32) Obligation: Q DP problem: The TRS P consists of the following rules: COND3(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, p(y)) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (33) TransformationProof (EQUIVALENT) By narrowing [LPAR04] the rule COND3(true, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, p(y)) at position [0] we obtained the following new rules [LPAR04]: (COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)),COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1))) (COND3(true, s(x0), y1) -> COND1(or(true, gr(y1, 0)), s(x0), p(y1)),COND3(true, s(x0), y1) -> COND1(or(true, gr(y1, 0)), s(x0), p(y1))) (COND3(true, y0, 0) -> COND1(or(gr(y0, 0), false), y0, p(0)),COND3(true, y0, 0) -> COND1(or(gr(y0, 0), false), y0, p(0))) (COND3(true, y0, s(x0)) -> COND1(or(gr(y0, 0), true), y0, p(s(x0))),COND3(true, y0, s(x0)) -> COND1(or(gr(y0, 0), true), y0, p(s(x0)))) ---------------------------------------- (34) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(or(true, gr(y1, 0)), s(x0), p(y1)) COND3(true, y0, 0) -> COND1(or(gr(y0, 0), false), y0, p(0)) COND3(true, y0, s(x0)) -> COND1(or(gr(y0, 0), true), y0, p(s(x0))) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (35) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule COND3(true, s(x0), y1) -> COND1(or(true, gr(y1, 0)), s(x0), p(y1)) at position [0] we obtained the following new rules [LPAR04]: (COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)),COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1))) ---------------------------------------- (36) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, y0, 0) -> COND1(or(gr(y0, 0), false), y0, p(0)) COND3(true, y0, s(x0)) -> COND1(or(gr(y0, 0), true), y0, p(s(x0))) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (37) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule COND3(true, y0, 0) -> COND1(or(gr(y0, 0), false), y0, p(0)) at position [2] we obtained the following new rules [LPAR04]: (COND3(true, y0, 0) -> COND1(or(gr(y0, 0), false), y0, 0),COND3(true, y0, 0) -> COND1(or(gr(y0, 0), false), y0, 0)) ---------------------------------------- (38) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, y0, s(x0)) -> COND1(or(gr(y0, 0), true), y0, p(s(x0))) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, 0) -> COND1(or(gr(y0, 0), false), y0, 0) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (39) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule COND3(true, y0, s(x0)) -> COND1(or(gr(y0, 0), true), y0, p(s(x0))) at position [0] we obtained the following new rules [LPAR04]: (COND3(true, y0, s(x0)) -> COND1(true, y0, p(s(x0))),COND3(true, y0, s(x0)) -> COND1(true, y0, p(s(x0)))) ---------------------------------------- (40) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, 0) -> COND1(or(gr(y0, 0), false), y0, 0) COND3(true, y0, s(x0)) -> COND1(true, y0, p(s(x0))) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (41) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule COND3(true, y0, s(x0)) -> COND1(true, y0, p(s(x0))) at position [2] we obtained the following new rules [LPAR04]: (COND3(true, y0, s(x0)) -> COND1(true, y0, x0),COND3(true, y0, s(x0)) -> COND1(true, y0, x0)) ---------------------------------------- (42) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, x, y) -> COND3(gr(y, 0), x, y) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, 0) -> COND1(or(gr(y0, 0), false), y0, 0) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (43) TransformationProof (EQUIVALENT) By narrowing [LPAR04] the rule COND2(false, x, y) -> COND3(gr(y, 0), x, y) at position [0] we obtained the following new rules [LPAR04]: (COND2(false, y0, 0) -> COND3(false, y0, 0),COND2(false, y0, 0) -> COND3(false, y0, 0)) (COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)),COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0))) ---------------------------------------- (44) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, 0) -> COND1(or(gr(y0, 0), false), y0, 0) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND2(false, y0, 0) -> COND3(false, y0, 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (45) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. ---------------------------------------- (46) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (47) TransformationProof (EQUIVALENT) By narrowing [LPAR04] the rule COND3(false, x, y) -> COND1(or(gr(x, 0), gr(y, 0)), x, y) at position [0] we obtained the following new rules [LPAR04]: (COND3(false, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, y1),COND3(false, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, y1)) (COND3(false, s(x0), y1) -> COND1(or(true, gr(y1, 0)), s(x0), y1),COND3(false, s(x0), y1) -> COND1(or(true, gr(y1, 0)), s(x0), y1)) (COND3(false, y0, 0) -> COND1(or(gr(y0, 0), false), y0, 0),COND3(false, y0, 0) -> COND1(or(gr(y0, 0), false), y0, 0)) (COND3(false, y0, s(x0)) -> COND1(or(gr(y0, 0), true), y0, s(x0)),COND3(false, y0, s(x0)) -> COND1(or(gr(y0, 0), true), y0, s(x0))) ---------------------------------------- (48) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(false, y0, 0) -> COND3(false, y0, 0) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(false, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, y1) COND3(false, s(x0), y1) -> COND1(or(true, gr(y1, 0)), s(x0), y1) COND3(false, y0, 0) -> COND1(or(gr(y0, 0), false), y0, 0) COND3(false, y0, s(x0)) -> COND1(or(gr(y0, 0), true), y0, s(x0)) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (49) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. ---------------------------------------- (50) Obligation: Q DP problem: The TRS P consists of the following rules: COND3(false, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, y1) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(or(true, gr(y1, 0)), s(x0), y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(false, y0, 0) -> COND1(or(gr(y0, 0), false), y0, 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (51) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule COND3(false, s(x0), y1) -> COND1(or(true, gr(y1, 0)), s(x0), y1) at position [0] we obtained the following new rules [LPAR04]: (COND3(false, s(x0), y1) -> COND1(true, s(x0), y1),COND3(false, s(x0), y1) -> COND1(true, s(x0), y1)) ---------------------------------------- (52) Obligation: Q DP problem: The TRS P consists of the following rules: COND3(false, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, y1) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(false, y0, 0) -> COND1(or(gr(y0, 0), false), y0, 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (53) TransformationProof (EQUIVALENT) By narrowing [LPAR04] the rule COND3(false, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, y1) at position [0] we obtained the following new rules [LPAR04]: (COND3(false, 0, 0) -> COND1(or(false, false), 0, 0),COND3(false, 0, 0) -> COND1(or(false, false), 0, 0)) (COND3(false, 0, s(x0)) -> COND1(or(false, true), 0, s(x0)),COND3(false, 0, s(x0)) -> COND1(or(false, true), 0, s(x0))) ---------------------------------------- (54) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(false, y0, 0) -> COND1(or(gr(y0, 0), false), y0, 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND3(false, 0, 0) -> COND1(or(false, false), 0, 0) COND3(false, 0, s(x0)) -> COND1(or(false, true), 0, s(x0)) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (55) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 2 less nodes. ---------------------------------------- (56) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, y0, 0) -> COND1(or(gr(y0, 0), false), y0, 0) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (57) TransformationProof (EQUIVALENT) By narrowing [LPAR04] the rule COND3(false, y0, 0) -> COND1(or(gr(y0, 0), false), y0, 0) at position [0] we obtained the following new rules [LPAR04]: (COND3(false, 0, 0) -> COND1(or(false, false), 0, 0),COND3(false, 0, 0) -> COND1(or(false, false), 0, 0)) (COND3(false, s(x0), 0) -> COND1(or(true, false), s(x0), 0),COND3(false, s(x0), 0) -> COND1(or(true, false), s(x0), 0)) ---------------------------------------- (58) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(false, y0, 0) -> COND3(false, y0, 0) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND3(false, 0, 0) -> COND1(or(false, false), 0, 0) COND3(false, s(x0), 0) -> COND1(or(true, false), s(x0), 0) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (59) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. ---------------------------------------- (60) Obligation: Q DP problem: The TRS P consists of the following rules: COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), 0) -> COND1(or(true, false), s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (61) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule COND3(false, s(x0), 0) -> COND1(or(true, false), s(x0), 0) at position [0] we obtained the following new rules [LPAR04]: (COND3(false, s(x0), 0) -> COND1(true, s(x0), 0),COND3(false, s(x0), 0) -> COND1(true, s(x0), 0)) ---------------------------------------- (62) Obligation: Q DP problem: The TRS P consists of the following rules: COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (63) TransformationProof (EQUIVALENT) By narrowing [LPAR04] the rule COND2(true, y0, 0) -> COND1(or(gr(y0, 0), false), p(y0), 0) at position [0] we obtained the following new rules [LPAR04]: (COND2(true, 0, 0) -> COND1(or(false, false), p(0), 0),COND2(true, 0, 0) -> COND1(or(false, false), p(0), 0)) (COND2(true, s(x0), 0) -> COND1(or(true, false), p(s(x0)), 0),COND2(true, s(x0), 0) -> COND1(or(true, false), p(s(x0)), 0)) ---------------------------------------- (64) Obligation: Q DP problem: The TRS P consists of the following rules: COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(true, 0, 0) -> COND1(or(false, false), p(0), 0) COND2(true, s(x0), 0) -> COND1(or(true, false), p(s(x0)), 0) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (65) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. ---------------------------------------- (66) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND2(true, s(x0), 0) -> COND1(or(true, false), p(s(x0)), 0) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (67) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule COND2(true, s(x0), 0) -> COND1(or(true, false), p(s(x0)), 0) at position [0] we obtained the following new rules [LPAR04]: (COND2(true, s(x0), 0) -> COND1(true, p(s(x0)), 0),COND2(true, s(x0), 0) -> COND1(true, p(s(x0)), 0)) ---------------------------------------- (68) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND2(true, s(x0), 0) -> COND1(true, p(s(x0)), 0) The TRS R consists of the following rules: gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(true, x) -> true or(x, true) -> true p(0) -> 0 p(s(x)) -> x The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (69) 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. ---------------------------------------- (70) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND2(true, s(x0), 0) -> COND1(true, p(s(x0)), 0) The TRS R consists of the following rules: p(s(x)) -> x p(0) -> 0 gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(x, true) -> true The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (71) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule COND2(true, s(x0), 0) -> COND1(true, p(s(x0)), 0) at position [1] we obtained the following new rules [LPAR04]: (COND2(true, s(x0), 0) -> COND1(true, x0, 0),COND2(true, s(x0), 0) -> COND1(true, x0, 0)) ---------------------------------------- (72) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) The TRS R consists of the following rules: p(s(x)) -> x p(0) -> 0 gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(x, true) -> true The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (73) TransformationProof (EQUIVALENT) By narrowing [LPAR04] the rule COND2(true, y0, s(x0)) -> COND1(true, p(y0), s(x0)) at position [1] we obtained the following new rules [LPAR04]: (COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)),COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1))) (COND2(true, 0, s(y1)) -> COND1(true, 0, s(y1)),COND2(true, 0, s(y1)) -> COND1(true, 0, s(y1))) ---------------------------------------- (74) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND2(true, 0, s(y1)) -> COND1(true, 0, s(y1)) The TRS R consists of the following rules: p(s(x)) -> x p(0) -> 0 gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(x, true) -> true The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (75) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. ---------------------------------------- (76) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) The TRS R consists of the following rules: p(s(x)) -> x p(0) -> 0 gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(x, true) -> true The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (77) TransformationProof (EQUIVALENT) By narrowing [LPAR04] the rule COND3(true, 0, y1) -> COND1(or(false, gr(y1, 0)), 0, p(y1)) at position [0] we obtained the following new rules [LPAR04]: (COND3(true, 0, 0) -> COND1(or(false, false), 0, p(0)),COND3(true, 0, 0) -> COND1(or(false, false), 0, p(0))) (COND3(true, 0, s(x0)) -> COND1(or(false, true), 0, p(s(x0))),COND3(true, 0, s(x0)) -> COND1(or(false, true), 0, p(s(x0)))) ---------------------------------------- (78) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(true, 0, 0) -> COND1(or(false, false), 0, p(0)) COND3(true, 0, s(x0)) -> COND1(or(false, true), 0, p(s(x0))) The TRS R consists of the following rules: p(s(x)) -> x p(0) -> 0 gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(x, true) -> true The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (79) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. ---------------------------------------- (80) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(true, 0, s(x0)) -> COND1(or(false, true), 0, p(s(x0))) The TRS R consists of the following rules: p(s(x)) -> x p(0) -> 0 gr(0, x) -> false gr(s(x), 0) -> true or(false, false) -> false or(x, true) -> true The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (81) 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. ---------------------------------------- (82) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(true, 0, s(x0)) -> COND1(or(false, true), 0, p(s(x0))) The TRS R consists of the following rules: or(x, true) -> true p(s(x)) -> x p(0) -> 0 The set Q consists of the following terms: gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (83) 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]. gr(0, x0) gr(s(x0), 0) gr(s(x0), s(x1)) ---------------------------------------- (84) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(true, 0, s(x0)) -> COND1(or(false, true), 0, p(s(x0))) The TRS R consists of the following rules: or(x, true) -> true p(s(x)) -> x p(0) -> 0 The set Q consists of the following terms: or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (85) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule COND3(true, 0, s(x0)) -> COND1(or(false, true), 0, p(s(x0))) at position [0] we obtained the following new rules [LPAR04]: (COND3(true, 0, s(x0)) -> COND1(true, 0, p(s(x0))),COND3(true, 0, s(x0)) -> COND1(true, 0, p(s(x0)))) ---------------------------------------- (86) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(true, 0, s(x0)) -> COND1(true, 0, p(s(x0))) The TRS R consists of the following rules: or(x, true) -> true p(s(x)) -> x p(0) -> 0 The set Q consists of the following terms: or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (87) 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. ---------------------------------------- (88) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(true, 0, s(x0)) -> COND1(true, 0, p(s(x0))) The TRS R consists of the following rules: p(s(x)) -> x p(0) -> 0 The set Q consists of the following terms: or(false, false) or(true, x0) or(x0, true) p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (89) 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]. or(false, false) or(true, x0) or(x0, true) ---------------------------------------- (90) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(true, 0, s(x0)) -> COND1(true, 0, p(s(x0))) The TRS R consists of the following rules: p(s(x)) -> x p(0) -> 0 The set Q consists of the following terms: p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (91) TransformationProof (EQUIVALENT) By rewriting [LPAR04] the rule COND3(true, 0, s(x0)) -> COND1(true, 0, p(s(x0))) at position [2] we obtained the following new rules [LPAR04]: (COND3(true, 0, s(x0)) -> COND1(true, 0, x0),COND3(true, 0, s(x0)) -> COND1(true, 0, x0)) ---------------------------------------- (92) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, y0, 0) -> COND3(false, y0, 0) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(true, 0, s(x0)) -> COND1(true, 0, x0) The TRS R consists of the following rules: p(s(x)) -> x p(0) -> 0 The set Q consists of the following terms: p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (93) TransformationProof (EQUIVALENT) By instantiating [LPAR04] the rule COND2(false, y0, 0) -> COND3(false, y0, 0) we obtained the following new rules [LPAR04]: (COND2(false, 0, 0) -> COND3(false, 0, 0),COND2(false, 0, 0) -> COND3(false, 0, 0)) ---------------------------------------- (94) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, 0, y1) -> COND2(false, 0, y1) COND3(false, s(x0), y1) -> COND1(true, s(x0), y1) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(false, s(x0), 0) -> COND1(true, s(x0), 0) COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(true, 0, s(x0)) -> COND1(true, 0, x0) COND2(false, 0, 0) -> COND3(false, 0, 0) The TRS R consists of the following rules: p(s(x)) -> x p(0) -> 0 The set Q consists of the following terms: p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (95) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 3 less nodes. ---------------------------------------- (96) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(true, 0, s(x0)) -> COND1(true, 0, x0) The TRS R consists of the following rules: p(s(x)) -> x p(0) -> 0 The set Q consists of the following terms: p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (97) TransformationProof (EQUIVALENT) By instantiating [LPAR04] the rule COND2(false, y0, s(x0)) -> COND3(true, y0, s(x0)) we obtained the following new rules [LPAR04]: (COND2(false, 0, s(x1)) -> COND3(true, 0, s(x1)),COND2(false, 0, s(x1)) -> COND3(true, 0, s(x1))) ---------------------------------------- (98) Obligation: Q DP problem: The TRS P consists of the following rules: COND3(true, s(x0), y1) -> COND1(true, s(x0), p(y1)) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND3(true, 0, s(x0)) -> COND1(true, 0, x0) COND2(false, 0, s(x1)) -> COND3(true, 0, s(x1)) The TRS R consists of the following rules: p(s(x)) -> x p(0) -> 0 The set Q consists of the following terms: p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (99) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. ---------------------------------------- (100) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, 0, s(x1)) -> COND3(true, 0, s(x1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(true, 0, s(x0)) -> COND1(true, 0, x0) The TRS R consists of the following rules: p(s(x)) -> x p(0) -> 0 The set Q consists of the following terms: p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (101) 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. ---------------------------------------- (102) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, 0, s(x1)) -> COND3(true, 0, s(x1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(true, 0, s(x0)) -> COND1(true, 0, x0) R is empty. The set Q consists of the following terms: p(0) p(s(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (103) 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]. p(0) p(s(x0)) ---------------------------------------- (104) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, 0, s(x1)) -> COND3(true, 0, s(x1)) COND3(true, y0, s(x0)) -> COND1(true, y0, x0) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(true, 0, s(x0)) -> COND1(true, 0, x0) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (105) TransformationProof (EQUIVALENT) By instantiating [LPAR04] the rule COND3(true, y0, s(x0)) -> COND1(true, y0, x0) we obtained the following new rules [LPAR04]: (COND3(true, 0, s(z0)) -> COND1(true, 0, z0),COND3(true, 0, s(x0)) -> COND1(true, 0, x0)) ---------------------------------------- (106) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND1(true, 0, y1) -> COND2(false, 0, y1) COND2(false, 0, s(x1)) -> COND3(true, 0, s(x1)) COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) COND3(true, 0, s(x0)) -> COND1(true, 0, x0) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (107) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. ---------------------------------------- (108) Complex Obligation (AND) ---------------------------------------- (109) Obligation: Q DP problem: The TRS P consists of the following rules: COND2(false, 0, s(x1)) -> COND3(true, 0, s(x1)) COND3(true, 0, s(x0)) -> COND1(true, 0, x0) COND1(true, 0, y1) -> COND2(false, 0, y1) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (110) 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: *COND3(true, 0, s(x0)) -> COND1(true, 0, x0) The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3 *COND1(true, 0, y1) -> COND2(false, 0, y1) The graph contains the following edges 2 >= 2, 3 >= 3 *COND2(false, 0, s(x1)) -> COND3(true, 0, s(x1)) The graph contains the following edges 2 >= 2, 3 >= 3 ---------------------------------------- (111) YES ---------------------------------------- (112) Obligation: Q DP problem: The TRS P consists of the following rules: COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) COND2(true, s(x0), y1) -> COND1(true, x0, y1) COND2(true, s(x0), 0) -> COND1(true, x0, 0) COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (113) 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: *COND1(true, s(x0), y1) -> COND2(true, s(x0), y1) The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3 *COND2(true, s(x0), y1) -> COND1(true, x0, y1) The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3 *COND2(true, s(x0), 0) -> COND1(true, x0, 0) The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3 *COND2(true, s(x0), s(y1)) -> COND1(true, x0, s(y1)) The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3 ---------------------------------------- (114) YES