26.59/8.07 WORST_CASE(Omega(n^1), O(n^1)) 26.59/8.08 proof of /export/starexec/sandbox/benchmark/theBenchmark.xml 26.59/8.08 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 26.59/8.08 26.59/8.08 26.59/8.08 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, n^1). 26.59/8.08 26.59/8.08 (0) CpxTRS 26.59/8.08 (1) DependencyGraphProof [UPPER BOUND(ID), 0 ms] 26.59/8.08 (2) CpxTRS 26.59/8.08 (3) NestedDefinedSymbolProof [UPPER BOUND(ID), 3 ms] 26.59/8.08 (4) CpxTRS 26.59/8.08 (5) RelTrsToTrsProof [UPPER BOUND(ID), 0 ms] 26.59/8.08 (6) CpxTRS 26.59/8.08 (7) CpxTrsMatchBoundsProof [FINISHED, 0 ms] 26.59/8.08 (8) BOUNDS(1, n^1) 26.59/8.08 (9) RelTrsToDecreasingLoopProblemProof [LOWER BOUND(ID), 0 ms] 26.59/8.08 (10) TRS for Loop Detection 26.59/8.08 (11) DecreasingLoopProof [LOWER BOUND(ID), 0 ms] 26.59/8.08 (12) BEST 26.59/8.08 (13) proven lower bound 26.59/8.08 (14) LowerBoundPropagationProof [FINISHED, 0 ms] 26.59/8.08 (15) BOUNDS(n^1, INF) 26.59/8.08 (16) TRS for Loop Detection 26.59/8.08 26.59/8.08 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (0) 26.59/8.08 Obligation: 26.59/8.08 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, n^1). 26.59/8.08 26.59/8.08 26.59/8.08 The TRS R consists of the following rules: 26.59/8.08 26.59/8.08 rec(rec(x)) -> sent(rec(x)) 26.59/8.08 rec(sent(x)) -> sent(rec(x)) 26.59/8.08 rec(no(x)) -> sent(rec(x)) 26.59/8.08 rec(bot) -> up(sent(bot)) 26.59/8.08 rec(up(x)) -> up(rec(x)) 26.59/8.08 sent(up(x)) -> up(sent(x)) 26.59/8.08 no(up(x)) -> up(no(x)) 26.59/8.08 top(rec(up(x))) -> top(check(rec(x))) 26.59/8.08 top(sent(up(x))) -> top(check(rec(x))) 26.59/8.08 top(no(up(x))) -> top(check(rec(x))) 26.59/8.08 check(up(x)) -> up(check(x)) 26.59/8.08 check(sent(x)) -> sent(check(x)) 26.59/8.08 check(rec(x)) -> rec(check(x)) 26.59/8.08 check(no(x)) -> no(check(x)) 26.59/8.08 check(no(x)) -> no(x) 26.59/8.08 26.59/8.08 S is empty. 26.59/8.08 Rewrite Strategy: FULL 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (1) DependencyGraphProof (UPPER BOUND(ID)) 26.59/8.08 The following rules are not reachable from basic terms in the dependency graph and can be removed: 26.59/8.08 26.59/8.08 top(rec(up(x))) -> top(check(rec(x))) 26.59/8.08 top(sent(up(x))) -> top(check(rec(x))) 26.59/8.08 top(no(up(x))) -> top(check(rec(x))) 26.59/8.08 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (2) 26.59/8.08 Obligation: 26.59/8.08 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(1, n^1). 26.59/8.08 26.59/8.08 26.59/8.08 The TRS R consists of the following rules: 26.59/8.08 26.59/8.08 rec(rec(x)) -> sent(rec(x)) 26.59/8.08 rec(sent(x)) -> sent(rec(x)) 26.59/8.08 rec(no(x)) -> sent(rec(x)) 26.59/8.08 rec(bot) -> up(sent(bot)) 26.59/8.08 rec(up(x)) -> up(rec(x)) 26.59/8.08 sent(up(x)) -> up(sent(x)) 26.59/8.08 no(up(x)) -> up(no(x)) 26.59/8.08 check(up(x)) -> up(check(x)) 26.59/8.08 check(sent(x)) -> sent(check(x)) 26.59/8.08 check(rec(x)) -> rec(check(x)) 26.59/8.08 check(no(x)) -> no(check(x)) 26.59/8.08 check(no(x)) -> no(x) 26.59/8.08 26.59/8.08 S is empty. 26.59/8.08 Rewrite Strategy: FULL 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (3) NestedDefinedSymbolProof (UPPER BOUND(ID)) 26.59/8.08 The TRS does not nest defined symbols. 26.59/8.08 Hence, the left-hand sides of the following rules are not basic-reachable and can be removed: 26.59/8.08 rec(rec(x)) -> sent(rec(x)) 26.59/8.08 rec(sent(x)) -> sent(rec(x)) 26.59/8.08 rec(no(x)) -> sent(rec(x)) 26.59/8.08 check(sent(x)) -> sent(check(x)) 26.59/8.08 check(rec(x)) -> rec(check(x)) 26.59/8.08 check(no(x)) -> no(check(x)) 26.59/8.08 check(no(x)) -> no(x) 26.59/8.08 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (4) 26.59/8.08 Obligation: 26.59/8.08 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(1, n^1). 26.59/8.08 26.59/8.08 26.59/8.08 The TRS R consists of the following rules: 26.59/8.08 26.59/8.08 rec(bot) -> up(sent(bot)) 26.59/8.08 rec(up(x)) -> up(rec(x)) 26.59/8.08 sent(up(x)) -> up(sent(x)) 26.59/8.08 no(up(x)) -> up(no(x)) 26.59/8.08 check(up(x)) -> up(check(x)) 26.59/8.08 26.59/8.08 S is empty. 26.59/8.08 Rewrite Strategy: FULL 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (5) RelTrsToTrsProof (UPPER BOUND(ID)) 26.59/8.08 transformed relative TRS to TRS 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (6) 26.59/8.08 Obligation: 26.59/8.08 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(1, n^1). 26.59/8.08 26.59/8.08 26.59/8.08 The TRS R consists of the following rules: 26.59/8.08 26.59/8.08 rec(bot) -> up(sent(bot)) 26.59/8.08 rec(up(x)) -> up(rec(x)) 26.59/8.08 sent(up(x)) -> up(sent(x)) 26.59/8.08 no(up(x)) -> up(no(x)) 26.59/8.08 check(up(x)) -> up(check(x)) 26.59/8.08 26.59/8.08 S is empty. 26.59/8.08 Rewrite Strategy: FULL 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (7) CpxTrsMatchBoundsProof (FINISHED) 26.59/8.08 A linear upper bound on the runtime complexity of the TRS R could be shown with a Match Bound [MATCHBOUNDS1,MATCHBOUNDS2] of 1. 26.59/8.08 The certificate found is represented by the following graph. 26.59/8.08 26.59/8.08 "[20, 21, 22, 23, 24, 25, 26, 27] 26.59/8.08 {(20,21,[rec_1|0, sent_1|0, no_1|0, check_1|0]), (20,22,[up_1|1]), (20,24,[up_1|1]), (20,25,[up_1|1]), (20,26,[up_1|1]), (20,27,[up_1|1]), (21,21,[bot|0, up_1|0]), (22,23,[sent_1|1]), (23,21,[bot|1]), (24,21,[rec_1|1]), (24,22,[up_1|1]), (24,24,[up_1|1]), (25,21,[sent_1|1]), (25,25,[up_1|1]), (26,21,[no_1|1]), (26,26,[up_1|1]), (27,21,[check_1|1]), (27,27,[up_1|1])}" 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (8) 26.59/8.08 BOUNDS(1, n^1) 26.59/8.08 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (9) RelTrsToDecreasingLoopProblemProof (LOWER BOUND(ID)) 26.59/8.08 Transformed a relative TRS into a decreasing-loop problem. 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (10) 26.59/8.08 Obligation: 26.59/8.08 Analyzing the following TRS for decreasing loops: 26.59/8.08 26.59/8.08 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, n^1). 26.59/8.08 26.59/8.08 26.59/8.08 The TRS R consists of the following rules: 26.59/8.08 26.59/8.08 rec(rec(x)) -> sent(rec(x)) 26.59/8.08 rec(sent(x)) -> sent(rec(x)) 26.59/8.08 rec(no(x)) -> sent(rec(x)) 26.59/8.08 rec(bot) -> up(sent(bot)) 26.59/8.08 rec(up(x)) -> up(rec(x)) 26.59/8.08 sent(up(x)) -> up(sent(x)) 26.59/8.08 no(up(x)) -> up(no(x)) 26.59/8.08 top(rec(up(x))) -> top(check(rec(x))) 26.59/8.08 top(sent(up(x))) -> top(check(rec(x))) 26.59/8.08 top(no(up(x))) -> top(check(rec(x))) 26.59/8.08 check(up(x)) -> up(check(x)) 26.59/8.08 check(sent(x)) -> sent(check(x)) 26.59/8.08 check(rec(x)) -> rec(check(x)) 26.59/8.08 check(no(x)) -> no(check(x)) 26.59/8.08 check(no(x)) -> no(x) 26.59/8.08 26.59/8.08 S is empty. 26.59/8.08 Rewrite Strategy: FULL 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (11) DecreasingLoopProof (LOWER BOUND(ID)) 26.59/8.08 The following loop(s) give(s) rise to the lower bound Omega(n^1): 26.59/8.08 26.59/8.08 The rewrite sequence 26.59/8.08 26.59/8.08 rec(up(x)) ->^+ up(rec(x)) 26.59/8.08 26.59/8.08 gives rise to a decreasing loop by considering the right hand sides subterm at position [0]. 26.59/8.08 26.59/8.08 The pumping substitution is [x / up(x)]. 26.59/8.08 26.59/8.08 The result substitution is [ ]. 26.59/8.08 26.59/8.08 26.59/8.08 26.59/8.08 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (12) 26.59/8.08 Complex Obligation (BEST) 26.59/8.08 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (13) 26.59/8.08 Obligation: 26.59/8.08 Proved the lower bound n^1 for the following obligation: 26.59/8.08 26.59/8.08 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, n^1). 26.59/8.08 26.59/8.08 26.59/8.08 The TRS R consists of the following rules: 26.59/8.08 26.59/8.08 rec(rec(x)) -> sent(rec(x)) 26.59/8.08 rec(sent(x)) -> sent(rec(x)) 26.59/8.08 rec(no(x)) -> sent(rec(x)) 26.59/8.08 rec(bot) -> up(sent(bot)) 26.59/8.08 rec(up(x)) -> up(rec(x)) 26.59/8.08 sent(up(x)) -> up(sent(x)) 26.59/8.08 no(up(x)) -> up(no(x)) 26.59/8.08 top(rec(up(x))) -> top(check(rec(x))) 26.59/8.08 top(sent(up(x))) -> top(check(rec(x))) 26.59/8.08 top(no(up(x))) -> top(check(rec(x))) 26.59/8.08 check(up(x)) -> up(check(x)) 26.59/8.08 check(sent(x)) -> sent(check(x)) 26.59/8.08 check(rec(x)) -> rec(check(x)) 26.59/8.08 check(no(x)) -> no(check(x)) 26.59/8.08 check(no(x)) -> no(x) 26.59/8.08 26.59/8.08 S is empty. 26.59/8.08 Rewrite Strategy: FULL 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (14) LowerBoundPropagationProof (FINISHED) 26.59/8.08 Propagated lower bound. 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (15) 26.59/8.08 BOUNDS(n^1, INF) 26.59/8.08 26.59/8.08 ---------------------------------------- 26.59/8.08 26.59/8.08 (16) 26.59/8.08 Obligation: 26.59/8.08 Analyzing the following TRS for decreasing loops: 26.59/8.08 26.59/8.08 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(n^1, n^1). 26.59/8.08 26.59/8.08 26.59/8.08 The TRS R consists of the following rules: 26.59/8.08 26.59/8.08 rec(rec(x)) -> sent(rec(x)) 26.59/8.08 rec(sent(x)) -> sent(rec(x)) 26.59/8.08 rec(no(x)) -> sent(rec(x)) 26.59/8.08 rec(bot) -> up(sent(bot)) 26.59/8.08 rec(up(x)) -> up(rec(x)) 26.59/8.08 sent(up(x)) -> up(sent(x)) 26.59/8.08 no(up(x)) -> up(no(x)) 26.59/8.08 top(rec(up(x))) -> top(check(rec(x))) 26.59/8.08 top(sent(up(x))) -> top(check(rec(x))) 26.59/8.08 top(no(up(x))) -> top(check(rec(x))) 26.59/8.08 check(up(x)) -> up(check(x)) 26.59/8.08 check(sent(x)) -> sent(check(x)) 26.59/8.08 check(rec(x)) -> rec(check(x)) 26.59/8.08 check(no(x)) -> no(check(x)) 26.59/8.08 check(no(x)) -> no(x) 26.59/8.08 26.59/8.08 S is empty. 26.59/8.08 Rewrite Strategy: FULL 26.83/8.14 EOF