3.32/1.54 WORST_CASE(?, O(1)) 3.32/1.55 proof of /export/starexec/sandbox/benchmark/theBenchmark.xml 3.32/1.55 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 3.32/1.55 3.32/1.55 3.32/1.55 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(1, 1). 3.32/1.55 3.32/1.55 (0) CpxTRS 3.32/1.55 (1) NarrowingOnBasicTermsTerminatesProof [FINISHED, 0 ms] 3.32/1.55 (2) BOUNDS(1, 1) 3.32/1.55 3.32/1.55 3.32/1.55 ---------------------------------------- 3.32/1.55 3.32/1.55 (0) 3.32/1.55 Obligation: 3.32/1.55 The Runtime Complexity (full) of the given CpxTRS could be proven to be BOUNDS(1, 1). 3.32/1.55 3.32/1.55 3.32/1.55 The TRS R consists of the following rules: 3.32/1.55 3.32/1.55 fst(0, Z) -> nil 3.32/1.55 fst(s, cons(Y)) -> cons(Y) 3.32/1.55 from(X) -> cons(X) 3.32/1.55 add(0, X) -> X 3.32/1.55 add(s, Y) -> s 3.32/1.55 len(nil) -> 0 3.32/1.55 len(cons(X)) -> s 3.32/1.55 3.32/1.55 S is empty. 3.32/1.55 Rewrite Strategy: FULL 3.32/1.55 ---------------------------------------- 3.32/1.55 3.32/1.55 (1) NarrowingOnBasicTermsTerminatesProof (FINISHED) 3.32/1.55 Constant runtime complexity proven by termination of constructor-based narrowing. 3.32/1.55 3.32/1.55 The maximal most general narrowing sequences give rise to the following rewrite sequences: 3.32/1.55 3.32/1.55 len(cons(x0)) ->^* s 3.32/1.55 3.32/1.55 len(nil) ->^* 0 3.32/1.55 3.32/1.55 from(x0) ->^* cons(x0) 3.32/1.55 3.32/1.55 add(s, x0) ->^* s 3.32/1.55 3.32/1.55 fst(s, cons(x0)) ->^* cons(x0) 3.32/1.55 3.32/1.55 fst(0, x0) ->^* nil 3.32/1.55 3.32/1.55 3.32/1.55 3.32/1.55 3.32/1.55 ---------------------------------------- 3.32/1.55 3.32/1.55 (2) 3.32/1.55 BOUNDS(1, 1) 3.32/1.59 EOF