1120.17/291.51 WORST_CASE(Omega(n^1), ?) 1120.38/291.55 proof of /export/starexec/sandbox/benchmark/theBenchmark.xml 1120.38/291.55 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 1120.38/291.55 1120.38/291.55 1120.38/291.55 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, INF). 1120.38/291.55 1120.38/291.55 (0) CpxTRS 1120.38/291.55 (1) RelTrsToDecreasingLoopProblemProof [LOWER BOUND(ID), 0 ms] 1120.38/291.55 (2) TRS for Loop Detection 1120.38/291.55 (3) DecreasingLoopProof [LOWER BOUND(ID), 0 ms] 1120.38/291.55 (4) BEST 1120.38/291.55 (5) proven lower bound 1120.38/291.55 (6) LowerBoundPropagationProof [FINISHED, 0 ms] 1120.38/291.55 (7) BOUNDS(n^1, INF) 1120.38/291.55 (8) TRS for Loop Detection 1120.38/291.55 1120.38/291.55 1120.38/291.55 ---------------------------------------- 1120.38/291.55 1120.38/291.55 (0) 1120.38/291.55 Obligation: 1120.38/291.55 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, INF). 1120.38/291.55 1120.38/291.55 1120.38/291.55 The TRS R consists of the following rules: 1120.38/291.55 1120.38/291.55 g(A) -> A 1120.38/291.55 g(B) -> A 1120.38/291.55 g(B) -> B 1120.38/291.55 g(C) -> A 1120.38/291.55 g(C) -> B 1120.38/291.55 g(C) -> C 1120.38/291.55 foldB(t, 0) -> t 1120.38/291.55 foldB(t, s(n)) -> f(foldB(t, n), B) 1120.38/291.55 foldC(t, 0) -> t 1120.38/291.55 foldC(t, s(n)) -> f(foldC(t, n), C) 1120.38/291.55 f(t, x) -> f'(t, g(x)) 1120.38/291.55 f'(triple(a, b, c), C) -> triple(a, b, s(c)) 1120.38/291.55 f'(triple(a, b, c), B) -> f(triple(a, b, c), A) 1120.38/291.55 f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b)) 1120.38/291.55 f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c) 1120.38/291.55 fold(t, x, 0) -> t 1120.38/291.55 fold(t, x, s(n)) -> f(fold(t, x, n), x) 1120.38/291.55 1120.38/291.55 S is empty. 1120.38/291.55 Rewrite Strategy: FULL 1120.38/291.55 ---------------------------------------- 1120.38/291.55 1120.38/291.55 (1) RelTrsToDecreasingLoopProblemProof (LOWER BOUND(ID)) 1120.38/291.55 Transformed a relative TRS into a decreasing-loop problem. 1120.38/291.55 ---------------------------------------- 1120.38/291.55 1120.38/291.55 (2) 1120.38/291.55 Obligation: 1120.38/291.55 Analyzing the following TRS for decreasing loops: 1120.38/291.55 1120.38/291.55 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, INF). 1120.38/291.55 1120.38/291.55 1120.38/291.55 The TRS R consists of the following rules: 1120.38/291.55 1120.38/291.55 g(A) -> A 1120.38/291.55 g(B) -> A 1120.38/291.55 g(B) -> B 1120.38/291.55 g(C) -> A 1120.38/291.55 g(C) -> B 1120.38/291.55 g(C) -> C 1120.38/291.55 foldB(t, 0) -> t 1120.38/291.55 foldB(t, s(n)) -> f(foldB(t, n), B) 1120.38/291.55 foldC(t, 0) -> t 1120.38/291.55 foldC(t, s(n)) -> f(foldC(t, n), C) 1120.38/291.55 f(t, x) -> f'(t, g(x)) 1120.38/291.55 f'(triple(a, b, c), C) -> triple(a, b, s(c)) 1120.38/291.55 f'(triple(a, b, c), B) -> f(triple(a, b, c), A) 1120.38/291.55 f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b)) 1120.38/291.55 f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c) 1120.38/291.55 fold(t, x, 0) -> t 1120.38/291.55 fold(t, x, s(n)) -> f(fold(t, x, n), x) 1120.38/291.55 1120.38/291.55 S is empty. 1120.38/291.55 Rewrite Strategy: FULL 1120.38/291.55 ---------------------------------------- 1120.38/291.55 1120.38/291.55 (3) DecreasingLoopProof (LOWER BOUND(ID)) 1120.38/291.55 The following loop(s) give(s) rise to the lower bound Omega(n^1): 1120.38/291.55 1120.38/291.55 The rewrite sequence 1120.38/291.55 1120.38/291.55 foldC(t, s(n)) ->^+ f(foldC(t, n), C) 1120.38/291.55 1120.38/291.55 gives rise to a decreasing loop by considering the right hand sides subterm at position [0]. 1120.38/291.55 1120.38/291.55 The pumping substitution is [n / s(n)]. 1120.38/291.55 1120.38/291.55 The result substitution is [ ]. 1120.38/291.55 1120.38/291.55 1120.38/291.55 1120.38/291.55 1120.38/291.55 ---------------------------------------- 1120.38/291.55 1120.38/291.55 (4) 1120.38/291.55 Complex Obligation (BEST) 1120.38/291.55 1120.38/291.55 ---------------------------------------- 1120.38/291.55 1120.38/291.55 (5) 1120.38/291.55 Obligation: 1120.38/291.55 Proved the lower bound n^1 for the following obligation: 1120.38/291.55 1120.38/291.55 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, INF). 1120.38/291.55 1120.38/291.55 1120.38/291.55 The TRS R consists of the following rules: 1120.38/291.55 1120.38/291.55 g(A) -> A 1120.38/291.55 g(B) -> A 1120.38/291.55 g(B) -> B 1120.38/291.55 g(C) -> A 1120.38/291.55 g(C) -> B 1120.38/291.55 g(C) -> C 1120.38/291.55 foldB(t, 0) -> t 1120.38/291.55 foldB(t, s(n)) -> f(foldB(t, n), B) 1120.38/291.55 foldC(t, 0) -> t 1120.38/291.56 foldC(t, s(n)) -> f(foldC(t, n), C) 1120.38/291.56 f(t, x) -> f'(t, g(x)) 1120.38/291.56 f'(triple(a, b, c), C) -> triple(a, b, s(c)) 1120.38/291.56 f'(triple(a, b, c), B) -> f(triple(a, b, c), A) 1120.38/291.56 f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b)) 1120.38/291.56 f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c) 1120.38/291.56 fold(t, x, 0) -> t 1120.38/291.56 fold(t, x, s(n)) -> f(fold(t, x, n), x) 1120.38/291.56 1120.38/291.56 S is empty. 1120.38/291.56 Rewrite Strategy: FULL 1120.38/291.56 ---------------------------------------- 1120.38/291.56 1120.38/291.56 (6) LowerBoundPropagationProof (FINISHED) 1120.38/291.56 Propagated lower bound. 1120.38/291.56 ---------------------------------------- 1120.38/291.56 1120.38/291.56 (7) 1120.38/291.56 BOUNDS(n^1, INF) 1120.38/291.56 1120.38/291.56 ---------------------------------------- 1120.38/291.56 1120.38/291.56 (8) 1120.38/291.56 Obligation: 1120.38/291.56 Analyzing the following TRS for decreasing loops: 1120.38/291.56 1120.38/291.56 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, INF). 1120.38/291.56 1120.38/291.56 1120.38/291.56 The TRS R consists of the following rules: 1120.38/291.56 1120.38/291.56 g(A) -> A 1120.38/291.56 g(B) -> A 1120.38/291.56 g(B) -> B 1120.38/291.56 g(C) -> A 1120.38/291.56 g(C) -> B 1120.38/291.56 g(C) -> C 1120.38/291.56 foldB(t, 0) -> t 1120.38/291.56 foldB(t, s(n)) -> f(foldB(t, n), B) 1120.38/291.56 foldC(t, 0) -> t 1120.38/291.56 foldC(t, s(n)) -> f(foldC(t, n), C) 1120.38/291.56 f(t, x) -> f'(t, g(x)) 1120.38/291.56 f'(triple(a, b, c), C) -> triple(a, b, s(c)) 1120.38/291.56 f'(triple(a, b, c), B) -> f(triple(a, b, c), A) 1120.38/291.56 f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b)) 1120.38/291.56 f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c) 1120.38/291.56 fold(t, x, 0) -> t 1120.38/291.56 fold(t, x, s(n)) -> f(fold(t, x, n), x) 1120.38/291.56 1120.38/291.56 S is empty. 1120.38/291.56 Rewrite Strategy: FULL 1120.38/291.63 EOF