21.06/6.23 YES 21.45/6.35 proof of /export/starexec/sandbox/benchmark/theBenchmark.xml 21.45/6.35 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 21.45/6.35 21.45/6.35 21.45/6.35 Termination of the given RelTRS could be proven: 21.45/6.35 21.45/6.35 (0) RelTRS 21.45/6.35 (1) RelTRSRRRProof [EQUIVALENT, 56 ms] 21.45/6.35 (2) RelTRS 21.45/6.35 (3) RelTRSRRRProof [EQUIVALENT, 119 ms] 21.45/6.35 (4) RelTRS 21.45/6.35 (5) RelTRSRRRProof [EQUIVALENT, 9 ms] 21.45/6.35 (6) RelTRS 21.45/6.35 (7) RelTRSRRRProof [EQUIVALENT, 36 ms] 21.45/6.35 (8) RelTRS 21.45/6.35 (9) RelTRSRRRProof [EQUIVALENT, 54 ms] 21.45/6.35 (10) RelTRS 21.45/6.35 (11) RelTRSRRRProof [EQUIVALENT, 29 ms] 21.45/6.35 (12) RelTRS 21.45/6.35 (13) RIsEmptyProof [EQUIVALENT, 0 ms] 21.45/6.35 (14) YES 21.45/6.35 21.45/6.35 21.45/6.35 ---------------------------------------- 21.45/6.35 21.45/6.35 (0) 21.45/6.35 Obligation: 21.45/6.35 Relative term rewrite system: 21.45/6.35 The relative TRS consists of the following R rules: 21.45/6.35 21.45/6.35 t(u(x1)) -> t(c(d(x1))) 21.45/6.35 d(f(x1)) -> f(d(x1)) 21.45/6.35 d(g(x1)) -> u(g(x1)) 21.45/6.35 f(u(x1)) -> u(f(x1)) 21.45/6.35 d(n(x1)) -> d(x1) 21.45/6.35 d(o(x1)) -> d(x1) 21.45/6.35 o(u(x1)) -> u(x1) 21.45/6.35 21.45/6.35 The relative TRS consists of the following S rules: 21.45/6.35 21.45/6.35 n(u(x1)) -> u(x1) 21.45/6.35 f(x1) -> f(n(x1)) 21.45/6.35 t(x1) -> t(c(n(x1))) 21.45/6.35 c(n(x1)) -> n(c(x1)) 21.45/6.35 c(o(x1)) -> o(c(x1)) 21.45/6.35 c(o(x1)) -> o(x1) 21.45/6.35 c(f(x1)) -> f(c(x1)) 21.45/6.35 c(u(x1)) -> u(c(x1)) 21.45/6.35 c(d(x1)) -> d(c(x1)) 21.45/6.35 21.45/6.35 21.45/6.35 ---------------------------------------- 21.45/6.35 21.45/6.35 (1) RelTRSRRRProof (EQUIVALENT) 21.45/6.35 We used the following monotonic ordering for rule removal: 21.45/6.35 Polynomial interpretation [POLO]: 21.45/6.35 21.45/6.35 POL(c(x_1)) = x_1 21.45/6.35 POL(d(x_1)) = x_1 21.45/6.35 POL(f(x_1)) = x_1 21.45/6.35 POL(g(x_1)) = x_1 21.45/6.35 POL(n(x_1)) = x_1 21.45/6.35 POL(o(x_1)) = 1 + x_1 21.45/6.35 POL(t(x_1)) = x_1 21.45/6.35 POL(u(x_1)) = x_1 21.45/6.35 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.45/6.35 Rules from R: 21.45/6.35 21.45/6.35 d(o(x1)) -> d(x1) 21.45/6.35 o(u(x1)) -> u(x1) 21.45/6.35 Rules from S: 21.45/6.35 none 21.45/6.35 21.45/6.35 21.45/6.35 21.45/6.35 21.45/6.35 ---------------------------------------- 21.45/6.35 21.45/6.35 (2) 21.45/6.35 Obligation: 21.45/6.35 Relative term rewrite system: 21.45/6.35 The relative TRS consists of the following R rules: 21.45/6.35 21.45/6.35 t(u(x1)) -> t(c(d(x1))) 21.45/6.35 d(f(x1)) -> f(d(x1)) 21.45/6.35 d(g(x1)) -> u(g(x1)) 21.45/6.35 f(u(x1)) -> u(f(x1)) 21.45/6.35 d(n(x1)) -> d(x1) 21.45/6.35 21.45/6.35 The relative TRS consists of the following S rules: 21.45/6.35 21.45/6.35 n(u(x1)) -> u(x1) 21.45/6.35 f(x1) -> f(n(x1)) 21.45/6.35 t(x1) -> t(c(n(x1))) 21.45/6.35 c(n(x1)) -> n(c(x1)) 21.45/6.35 c(o(x1)) -> o(c(x1)) 21.45/6.35 c(o(x1)) -> o(x1) 21.45/6.35 c(f(x1)) -> f(c(x1)) 21.45/6.35 c(u(x1)) -> u(c(x1)) 21.45/6.35 c(d(x1)) -> d(c(x1)) 21.45/6.35 21.45/6.35 21.45/6.35 ---------------------------------------- 21.45/6.35 21.45/6.35 (3) RelTRSRRRProof (EQUIVALENT) 21.45/6.35 We used the following monotonic ordering for rule removal: 21.45/6.35 Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(t(x_1)) = [[0], [0]] + [[2, 1], [0, 0]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(u(x_1)) = [[0], [0]] + [[2, 1], [0, 2]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(c(x_1)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(d(x_1)) = [[0], [0]] + [[2, 2], [0, 2]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(f(x_1)) = [[0], [0]] + [[1, 0], [0, 1]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(g(x_1)) = [[2], [2]] + [[1, 0], [0, 0]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(n(x_1)) = [[0], [0]] + [[1, 0], [0, 1]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(o(x_1)) = [[0], [0]] + [[2, 0], [0, 0]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.45/6.35 Rules from R: 21.45/6.35 21.45/6.35 d(g(x1)) -> u(g(x1)) 21.45/6.35 Rules from S: 21.45/6.35 none 21.45/6.35 21.45/6.35 21.45/6.35 21.45/6.35 21.45/6.35 ---------------------------------------- 21.45/6.35 21.45/6.35 (4) 21.45/6.35 Obligation: 21.45/6.35 Relative term rewrite system: 21.45/6.35 The relative TRS consists of the following R rules: 21.45/6.35 21.45/6.35 t(u(x1)) -> t(c(d(x1))) 21.45/6.35 d(f(x1)) -> f(d(x1)) 21.45/6.35 f(u(x1)) -> u(f(x1)) 21.45/6.35 d(n(x1)) -> d(x1) 21.45/6.35 21.45/6.35 The relative TRS consists of the following S rules: 21.45/6.35 21.45/6.35 n(u(x1)) -> u(x1) 21.45/6.35 f(x1) -> f(n(x1)) 21.45/6.35 t(x1) -> t(c(n(x1))) 21.45/6.35 c(n(x1)) -> n(c(x1)) 21.45/6.35 c(o(x1)) -> o(c(x1)) 21.45/6.35 c(o(x1)) -> o(x1) 21.45/6.35 c(f(x1)) -> f(c(x1)) 21.45/6.35 c(u(x1)) -> u(c(x1)) 21.45/6.35 c(d(x1)) -> d(c(x1)) 21.45/6.35 21.45/6.35 21.45/6.35 ---------------------------------------- 21.45/6.35 21.45/6.35 (5) RelTRSRRRProof (EQUIVALENT) 21.45/6.35 We used the following monotonic ordering for rule removal: 21.45/6.35 Polynomial interpretation [POLO]: 21.45/6.35 21.45/6.35 POL(c(x_1)) = x_1 21.45/6.35 POL(d(x_1)) = x_1 21.45/6.35 POL(f(x_1)) = x_1 21.45/6.35 POL(n(x_1)) = x_1 21.45/6.35 POL(o(x_1)) = x_1 21.45/6.35 POL(t(x_1)) = x_1 21.45/6.35 POL(u(x_1)) = 1 + x_1 21.45/6.35 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.45/6.35 Rules from R: 21.45/6.35 21.45/6.35 t(u(x1)) -> t(c(d(x1))) 21.45/6.35 Rules from S: 21.45/6.35 none 21.45/6.35 21.45/6.35 21.45/6.35 21.45/6.35 21.45/6.35 ---------------------------------------- 21.45/6.35 21.45/6.35 (6) 21.45/6.35 Obligation: 21.45/6.35 Relative term rewrite system: 21.45/6.35 The relative TRS consists of the following R rules: 21.45/6.35 21.45/6.35 d(f(x1)) -> f(d(x1)) 21.45/6.35 f(u(x1)) -> u(f(x1)) 21.45/6.35 d(n(x1)) -> d(x1) 21.45/6.35 21.45/6.35 The relative TRS consists of the following S rules: 21.45/6.35 21.45/6.35 n(u(x1)) -> u(x1) 21.45/6.35 f(x1) -> f(n(x1)) 21.45/6.35 t(x1) -> t(c(n(x1))) 21.45/6.35 c(n(x1)) -> n(c(x1)) 21.45/6.35 c(o(x1)) -> o(c(x1)) 21.45/6.35 c(o(x1)) -> o(x1) 21.45/6.35 c(f(x1)) -> f(c(x1)) 21.45/6.35 c(u(x1)) -> u(c(x1)) 21.45/6.35 c(d(x1)) -> d(c(x1)) 21.45/6.35 21.45/6.35 21.45/6.35 ---------------------------------------- 21.45/6.35 21.45/6.35 (7) RelTRSRRRProof (EQUIVALENT) 21.45/6.35 We used the following monotonic ordering for rule removal: 21.45/6.35 Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(d(x_1)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(f(x_1)) = [[0], [0]] + [[2, 0], [0, 0]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(u(x_1)) = [[1], [0]] + [[1, 0], [0, 0]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(n(x_1)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(t(x_1)) = [[2], [2]] + [[1, 0], [0, 0]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(c(x_1)) = [[0], [2]] + [[1, 0], [0, 0]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(o(x_1)) = [[0], [0]] + [[2, 0], [0, 0]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.45/6.35 Rules from R: 21.45/6.35 21.45/6.35 f(u(x1)) -> u(f(x1)) 21.45/6.35 Rules from S: 21.45/6.35 none 21.45/6.35 21.45/6.35 21.45/6.35 21.45/6.35 21.45/6.35 ---------------------------------------- 21.45/6.35 21.45/6.35 (8) 21.45/6.35 Obligation: 21.45/6.35 Relative term rewrite system: 21.45/6.35 The relative TRS consists of the following R rules: 21.45/6.35 21.45/6.35 d(f(x1)) -> f(d(x1)) 21.45/6.35 d(n(x1)) -> d(x1) 21.45/6.35 21.45/6.35 The relative TRS consists of the following S rules: 21.45/6.35 21.45/6.35 n(u(x1)) -> u(x1) 21.45/6.35 f(x1) -> f(n(x1)) 21.45/6.35 t(x1) -> t(c(n(x1))) 21.45/6.35 c(n(x1)) -> n(c(x1)) 21.45/6.35 c(o(x1)) -> o(c(x1)) 21.45/6.35 c(o(x1)) -> o(x1) 21.45/6.35 c(f(x1)) -> f(c(x1)) 21.45/6.35 c(u(x1)) -> u(c(x1)) 21.45/6.35 c(d(x1)) -> d(c(x1)) 21.45/6.35 21.45/6.35 21.45/6.35 ---------------------------------------- 21.45/6.35 21.45/6.35 (9) RelTRSRRRProof (EQUIVALENT) 21.45/6.35 We used the following monotonic ordering for rule removal: 21.45/6.35 Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(d(x_1)) = [[2], [0]] + [[2, 2], [2, 1]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(f(x_1)) = [[1], [2]] + [[1, 0], [0, 1]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(n(x_1)) = [[0], [0]] + [[1, 0], [0, 1]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(u(x_1)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(t(x_1)) = [[2], [2]] + [[1, 0], [0, 0]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(c(x_1)) = [[0], [0]] + [[1, 0], [0, 1]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 <<< 21.45/6.35 POL(o(x_1)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 21.45/6.35 >>> 21.45/6.35 21.45/6.35 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.45/6.35 Rules from R: 21.45/6.35 21.45/6.35 d(f(x1)) -> f(d(x1)) 21.45/6.35 Rules from S: 21.45/6.35 none 21.45/6.35 21.45/6.35 21.45/6.35 21.45/6.35 21.45/6.35 ---------------------------------------- 21.45/6.35 21.45/6.35 (10) 21.45/6.35 Obligation: 21.45/6.35 Relative term rewrite system: 21.45/6.35 The relative TRS consists of the following R rules: 21.45/6.35 21.45/6.35 d(n(x1)) -> d(x1) 21.45/6.35 21.45/6.35 The relative TRS consists of the following S rules: 21.45/6.35 21.45/6.35 n(u(x1)) -> u(x1) 21.45/6.35 f(x1) -> f(n(x1)) 21.45/6.35 t(x1) -> t(c(n(x1))) 21.45/6.35 c(n(x1)) -> n(c(x1)) 21.45/6.35 c(o(x1)) -> o(c(x1)) 21.45/6.35 c(o(x1)) -> o(x1) 21.45/6.35 c(f(x1)) -> f(c(x1)) 21.45/6.35 c(u(x1)) -> u(c(x1)) 21.45/6.35 c(d(x1)) -> d(c(x1)) 21.45/6.35 21.45/6.35 21.45/6.35 ---------------------------------------- 21.45/6.35 21.45/6.35 (11) RelTRSRRRProof (EQUIVALENT) 21.45/6.36 We used the following monotonic ordering for rule removal: 21.45/6.36 Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : 21.45/6.36 21.45/6.36 <<< 21.45/6.36 POL(d(x_1)) = [[1], [0]] + [[1, 1], [0, 0]] * x_1 21.45/6.36 >>> 21.45/6.36 21.45/6.36 <<< 21.45/6.36 POL(n(x_1)) = [[0], [1]] + [[1, 0], [0, 1]] * x_1 21.45/6.36 >>> 21.45/6.36 21.45/6.36 <<< 21.45/6.36 POL(u(x_1)) = [[0], [0]] + [[2, 0], [0, 0]] * x_1 21.45/6.36 >>> 21.45/6.36 21.45/6.36 <<< 21.45/6.36 POL(f(x_1)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 21.45/6.36 >>> 21.45/6.36 21.45/6.36 <<< 21.45/6.36 POL(t(x_1)) = [[2], [2]] + [[2, 0], [0, 0]] * x_1 21.45/6.36 >>> 21.45/6.36 21.45/6.36 <<< 21.45/6.36 POL(c(x_1)) = [[0], [0]] + [[1, 0], [0, 1]] * x_1 21.45/6.36 >>> 21.45/6.36 21.45/6.36 <<< 21.45/6.36 POL(o(x_1)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 21.45/6.36 >>> 21.45/6.36 21.45/6.36 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.45/6.36 Rules from R: 21.45/6.36 21.45/6.36 d(n(x1)) -> d(x1) 21.45/6.36 Rules from S: 21.45/6.36 none 21.45/6.36 21.45/6.36 21.45/6.36 21.45/6.36 21.45/6.36 ---------------------------------------- 21.45/6.36 21.45/6.36 (12) 21.45/6.36 Obligation: 21.45/6.36 Relative term rewrite system: 21.45/6.36 R is empty. 21.45/6.36 The relative TRS consists of the following S rules: 21.45/6.36 21.45/6.36 n(u(x1)) -> u(x1) 21.45/6.36 f(x1) -> f(n(x1)) 21.45/6.36 t(x1) -> t(c(n(x1))) 21.45/6.36 c(n(x1)) -> n(c(x1)) 21.45/6.36 c(o(x1)) -> o(c(x1)) 21.45/6.36 c(o(x1)) -> o(x1) 21.45/6.36 c(f(x1)) -> f(c(x1)) 21.45/6.36 c(u(x1)) -> u(c(x1)) 21.45/6.36 c(d(x1)) -> d(c(x1)) 21.45/6.36 21.45/6.36 21.45/6.36 ---------------------------------------- 21.45/6.36 21.45/6.36 (13) RIsEmptyProof (EQUIVALENT) 21.45/6.36 The TRS R is empty. Hence, termination is trivially proven. 21.45/6.36 ---------------------------------------- 21.45/6.36 21.45/6.36 (14) 21.45/6.36 YES 21.64/9.33 EOF