/export/starexec/sandbox/solver/bin/starexec_run_standard /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox/benchmark/theBenchmark.xml # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty Outermost Termination of the given OTRS could be proven: (0) OTRS (1) Raffelsieper-Zantema-Transformation [SOUND, 0 ms] (2) QTRS (3) QTRSRRRProof [EQUIVALENT, 52 ms] (4) QTRS (5) AAECC Innermost [EQUIVALENT, 0 ms] (6) QTRS (7) DependencyPairsProof [EQUIVALENT, 0 ms] (8) QDP (9) DependencyGraphProof [EQUIVALENT, 0 ms] (10) AND (11) QDP (12) UsableRulesProof [EQUIVALENT, 0 ms] (13) QDP (14) QReductionProof [EQUIVALENT, 0 ms] (15) QDP (16) QDPSizeChangeProof [EQUIVALENT, 0 ms] (17) YES (18) QDP (19) UsableRulesProof [EQUIVALENT, 0 ms] (20) QDP (21) QReductionProof [EQUIVALENT, 0 ms] (22) QDP (23) QDPSizeChangeProof [EQUIVALENT, 0 ms] (24) YES (25) QDP (26) UsableRulesProof [EQUIVALENT, 0 ms] (27) QDP (28) QReductionProof [EQUIVALENT, 0 ms] (29) QDP (30) RFCMatchBoundsDPProof [EQUIVALENT, 0 ms] (31) YES ---------------------------------------- (0) Obligation: Term rewrite system R: The TRS R consists of the following rules: f(g(x)) -> x g(b) -> f(g(b)) Outermost Strategy. ---------------------------------------- (1) Raffelsieper-Zantema-Transformation (SOUND) We applied the Raffelsieper-Zantema transformation to transform the outermost TRS to a standard TRS. ---------------------------------------- (2) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: down(f(g(x))) -> up(x) down(g(b)) -> up(f(g(b))) top(up(x)) -> top(down(x)) down(f(f(y3))) -> f_flat(down(f(y3))) down(f(b)) -> f_flat(down(b)) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(g(f(y6))) -> g_flat(down(f(y6))) down(g(g(y7))) -> g_flat(down(g(y7))) down(g(fresh_constant)) -> g_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) g_flat(up(x_1)) -> up(g(x_1)) Q is empty. ---------------------------------------- (3) QTRSRRRProof (EQUIVALENT) Used ordering: Polynomial interpretation [POLO]: POL(b) = 0 POL(down(x_1)) = 2 + 2*x_1 POL(f(x_1)) = x_1 POL(f_flat(x_1)) = x_1 POL(fresh_constant) = 1 POL(g(x_1)) = 1 + 2*x_1 POL(g_flat(x_1)) = 2*x_1 POL(top(x_1)) = x_1 POL(up(x_1)) = 2 + 2*x_1 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: down(f(g(x))) -> up(x) ---------------------------------------- (4) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: down(g(b)) -> up(f(g(b))) top(up(x)) -> top(down(x)) down(f(f(y3))) -> f_flat(down(f(y3))) down(f(b)) -> f_flat(down(b)) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(g(f(y6))) -> g_flat(down(f(y6))) down(g(g(y7))) -> g_flat(down(g(y7))) down(g(fresh_constant)) -> g_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) g_flat(up(x_1)) -> up(g(x_1)) Q is empty. ---------------------------------------- (5) AAECC Innermost (EQUIVALENT) We have applied [NOC,AAECCNOC] to switch to innermost. The TRS R 1 is down(f(f(y3))) -> f_flat(down(f(y3))) down(f(b)) -> f_flat(down(b)) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(g(f(y6))) -> g_flat(down(f(y6))) down(g(g(y7))) -> g_flat(down(g(y7))) down(g(fresh_constant)) -> g_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) g_flat(up(x_1)) -> up(g(x_1)) down(g(b)) -> up(f(g(b))) The TRS R 2 is top(up(x)) -> top(down(x)) The signature Sigma is {top_1} ---------------------------------------- (6) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: down(g(b)) -> up(f(g(b))) top(up(x)) -> top(down(x)) down(f(f(y3))) -> f_flat(down(f(y3))) down(f(b)) -> f_flat(down(b)) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(g(f(y6))) -> g_flat(down(f(y6))) down(g(g(y7))) -> g_flat(down(g(y7))) down(g(fresh_constant)) -> g_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) g_flat(up(x_1)) -> up(g(x_1)) The set Q consists of the following terms: down(g(b)) top(up(x0)) down(f(f(x0))) down(f(b)) down(f(fresh_constant)) down(g(f(x0))) down(g(g(x0))) down(g(fresh_constant)) f_flat(up(x0)) g_flat(up(x0)) ---------------------------------------- (7) DependencyPairsProof (EQUIVALENT) Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem. ---------------------------------------- (8) 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(f(y3))) -> F_FLAT(down(f(y3))) DOWN(f(f(y3))) -> DOWN(f(y3)) DOWN(f(b)) -> F_FLAT(down(b)) DOWN(f(b)) -> DOWN(b) DOWN(f(fresh_constant)) -> F_FLAT(down(fresh_constant)) DOWN(f(fresh_constant)) -> DOWN(fresh_constant) DOWN(g(f(y6))) -> G_FLAT(down(f(y6))) DOWN(g(f(y6))) -> DOWN(f(y6)) DOWN(g(g(y7))) -> G_FLAT(down(g(y7))) DOWN(g(g(y7))) -> DOWN(g(y7)) DOWN(g(fresh_constant)) -> G_FLAT(down(fresh_constant)) DOWN(g(fresh_constant)) -> DOWN(fresh_constant) The TRS R consists of the following rules: down(g(b)) -> up(f(g(b))) top(up(x)) -> top(down(x)) down(f(f(y3))) -> f_flat(down(f(y3))) down(f(b)) -> f_flat(down(b)) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(g(f(y6))) -> g_flat(down(f(y6))) down(g(g(y7))) -> g_flat(down(g(y7))) down(g(fresh_constant)) -> g_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) g_flat(up(x_1)) -> up(g(x_1)) The set Q consists of the following terms: down(g(b)) top(up(x0)) down(f(f(x0))) down(f(b)) down(f(fresh_constant)) down(g(f(x0))) down(g(g(x0))) down(g(fresh_constant)) f_flat(up(x0)) g_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (9) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs with 11 less nodes. ---------------------------------------- (10) Complex Obligation (AND) ---------------------------------------- (11) Obligation: Q DP problem: The TRS P consists of the following rules: DOWN(f(f(y3))) -> DOWN(f(y3)) The TRS R consists of the following rules: down(g(b)) -> up(f(g(b))) top(up(x)) -> top(down(x)) down(f(f(y3))) -> f_flat(down(f(y3))) down(f(b)) -> f_flat(down(b)) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(g(f(y6))) -> g_flat(down(f(y6))) down(g(g(y7))) -> g_flat(down(g(y7))) down(g(fresh_constant)) -> g_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) g_flat(up(x_1)) -> up(g(x_1)) The set Q consists of the following terms: down(g(b)) top(up(x0)) down(f(f(x0))) down(f(b)) down(f(fresh_constant)) down(g(f(x0))) down(g(g(x0))) down(g(fresh_constant)) f_flat(up(x0)) g_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (12) 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. ---------------------------------------- (13) Obligation: Q DP problem: The TRS P consists of the following rules: DOWN(f(f(y3))) -> DOWN(f(y3)) R is empty. The set Q consists of the following terms: down(g(b)) top(up(x0)) down(f(f(x0))) down(f(b)) down(f(fresh_constant)) down(g(f(x0))) down(g(g(x0))) down(g(fresh_constant)) f_flat(up(x0)) g_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (14) 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(g(b)) top(up(x0)) down(f(f(x0))) down(f(b)) down(f(fresh_constant)) down(g(f(x0))) down(g(g(x0))) down(g(fresh_constant)) f_flat(up(x0)) g_flat(up(x0)) ---------------------------------------- (15) Obligation: Q DP problem: The TRS P consists of the following rules: DOWN(f(f(y3))) -> DOWN(f(y3)) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (16) 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(f(f(y3))) -> DOWN(f(y3)) The graph contains the following edges 1 > 1 ---------------------------------------- (17) YES ---------------------------------------- (18) Obligation: Q DP problem: The TRS P consists of the following rules: DOWN(g(g(y7))) -> DOWN(g(y7)) The TRS R consists of the following rules: down(g(b)) -> up(f(g(b))) top(up(x)) -> top(down(x)) down(f(f(y3))) -> f_flat(down(f(y3))) down(f(b)) -> f_flat(down(b)) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(g(f(y6))) -> g_flat(down(f(y6))) down(g(g(y7))) -> g_flat(down(g(y7))) down(g(fresh_constant)) -> g_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) g_flat(up(x_1)) -> up(g(x_1)) The set Q consists of the following terms: down(g(b)) top(up(x0)) down(f(f(x0))) down(f(b)) down(f(fresh_constant)) down(g(f(x0))) down(g(g(x0))) down(g(fresh_constant)) f_flat(up(x0)) g_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (19) 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. ---------------------------------------- (20) Obligation: Q DP problem: The TRS P consists of the following rules: DOWN(g(g(y7))) -> DOWN(g(y7)) R is empty. The set Q consists of the following terms: down(g(b)) top(up(x0)) down(f(f(x0))) down(f(b)) down(f(fresh_constant)) down(g(f(x0))) down(g(g(x0))) down(g(fresh_constant)) f_flat(up(x0)) g_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (21) 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(g(b)) top(up(x0)) down(f(f(x0))) down(f(b)) down(f(fresh_constant)) down(g(f(x0))) down(g(g(x0))) down(g(fresh_constant)) f_flat(up(x0)) g_flat(up(x0)) ---------------------------------------- (22) Obligation: Q DP problem: The TRS P consists of the following rules: DOWN(g(g(y7))) -> DOWN(g(y7)) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (23) 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(g(g(y7))) -> DOWN(g(y7)) The graph contains the following edges 1 > 1 ---------------------------------------- (24) YES ---------------------------------------- (25) 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(g(b)) -> up(f(g(b))) top(up(x)) -> top(down(x)) down(f(f(y3))) -> f_flat(down(f(y3))) down(f(b)) -> f_flat(down(b)) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(g(f(y6))) -> g_flat(down(f(y6))) down(g(g(y7))) -> g_flat(down(g(y7))) down(g(fresh_constant)) -> g_flat(down(fresh_constant)) f_flat(up(x_1)) -> up(f(x_1)) g_flat(up(x_1)) -> up(g(x_1)) The set Q consists of the following terms: down(g(b)) top(up(x0)) down(f(f(x0))) down(f(b)) down(f(fresh_constant)) down(g(f(x0))) down(g(g(x0))) down(g(fresh_constant)) f_flat(up(x0)) g_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (26) 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. ---------------------------------------- (27) 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(g(b)) -> up(f(g(b))) down(f(f(y3))) -> f_flat(down(f(y3))) down(f(b)) -> f_flat(down(b)) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(g(f(y6))) -> g_flat(down(f(y6))) down(g(g(y7))) -> g_flat(down(g(y7))) down(g(fresh_constant)) -> g_flat(down(fresh_constant)) g_flat(up(x_1)) -> up(g(x_1)) f_flat(up(x_1)) -> up(f(x_1)) The set Q consists of the following terms: down(g(b)) top(up(x0)) down(f(f(x0))) down(f(b)) down(f(fresh_constant)) down(g(f(x0))) down(g(g(x0))) down(g(fresh_constant)) f_flat(up(x0)) g_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (28) 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)) ---------------------------------------- (29) 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(g(b)) -> up(f(g(b))) down(f(f(y3))) -> f_flat(down(f(y3))) down(f(b)) -> f_flat(down(b)) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(g(f(y6))) -> g_flat(down(f(y6))) down(g(g(y7))) -> g_flat(down(g(y7))) down(g(fresh_constant)) -> g_flat(down(fresh_constant)) g_flat(up(x_1)) -> up(g(x_1)) f_flat(up(x_1)) -> up(f(x_1)) The set Q consists of the following terms: down(g(b)) down(f(f(x0))) down(f(b)) down(f(fresh_constant)) down(g(f(x0))) down(g(g(x0))) down(g(fresh_constant)) f_flat(up(x0)) g_flat(up(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (30) RFCMatchBoundsDPProof (EQUIVALENT) Finiteness of the DP problem can be shown by a matchbound of 3. As the DP problem is minimal we only have to initialize the certificate graph by the rules of P: TOP(up(x)) -> TOP(down(x)) To find matches we regarded all rules of R and P: down(g(b)) -> up(f(g(b))) down(f(f(y3))) -> f_flat(down(f(y3))) down(f(b)) -> f_flat(down(b)) down(f(fresh_constant)) -> f_flat(down(fresh_constant)) down(g(f(y6))) -> g_flat(down(f(y6))) down(g(g(y7))) -> g_flat(down(g(y7))) down(g(fresh_constant)) -> g_flat(down(fresh_constant)) g_flat(up(x_1)) -> up(g(x_1)) f_flat(up(x_1)) -> up(f(x_1)) TOP(up(x)) -> TOP(down(x)) The certificate found is represented by the following graph. The certificate consists of the following enumerated nodes: 445, 446, 447, 448, 449, 450, 451, 452, 454, 455, 456, 457, 459, 460 Node 445 is start node and node 446 is final node. Those nodes are connected through the following edges: * 445 to 447 labelled TOP_1(0)* 445 to 454 labelled TOP_1(1)* 446 to 446 labelled #_1(0)* 447 to 446 labelled down_1(0)* 447 to 448 labelled up_1(1)* 447 to 451 labelled f_flat_1(1), g_flat_1(1)* 447 to 455 labelled up_1(2)* 448 to 449 labelled f_1(1)* 449 to 450 labelled g_1(1)* 450 to 446 labelled b(1)* 451 to 452 labelled down_1(1)* 451 to 451 labelled f_flat_1(1), g_flat_1(1)* 451 to 448 labelled up_1(1)* 451 to 455 labelled up_1(2)* 452 to 446 labelled f_1(1), b(1), fresh_constant(1), g_1(1)* 454 to 448 labelled down_1(1)* 454 to 455 labelled down_1(1)* 454 to 456 labelled f_flat_1(2), g_flat_1(2)* 455 to 448 labelled f_1(2), g_1(2)* 455 to 455 labelled f_1(2), g_1(2)* 456 to 457 labelled down_1(2)* 456 to 456 labelled f_flat_1(2), g_flat_1(2)* 456 to 459 labelled f_flat_1(3), g_flat_1(3)* 457 to 449 labelled f_1(2)* 457 to 448 labelled f_1(2), g_1(2)* 457 to 455 labelled f_1(2), g_1(2)* 459 to 460 labelled down_1(3)* 459 to 456 labelled f_flat_1(2), g_flat_1(2)* 459 to 459 labelled f_flat_1(3), g_flat_1(3)* 460 to 448 labelled f_1(3), g_1(3)* 460 to 455 labelled f_1(3), g_1(3) ---------------------------------------- (31) YES