YES(?,O(n^1)) * Step 1: TrivialSCCs WORST_CASE(?,O(n^1)) + Considered Problem: Rules: 0. evaleasy2start(A) -> evaleasy2entryin(A) True (1,1) 1. evaleasy2entryin(A) -> evaleasy2bb1in(A) True (?,1) 2. evaleasy2bb1in(A) -> evaleasy2bbin(A) [A >= 1] (?,1) 3. evaleasy2bb1in(A) -> evaleasy2returnin(A) [0 >= A] (?,1) 4. evaleasy2bbin(A) -> evaleasy2bb1in(-1 + A) [-1 + A >= 0] (?,1) 5. evaleasy2returnin(A) -> evaleasy2stop(A) [-1*A >= 0] (?,1) Signature: {(evaleasy2bb1in,1) ;(evaleasy2bbin,1) ;(evaleasy2entryin,1) ;(evaleasy2returnin,1) ;(evaleasy2start,1) ;(evaleasy2stop,1)} Flow Graph: [0->{1},1->{2,3},2->{4},3->{5},4->{2,3},5->{}] + Applied Processor: TrivialSCCs + Details: All trivial SCCs of the transition graph admit timebound 1. * Step 2: PolyRank WORST_CASE(?,O(n^1)) + Considered Problem: Rules: 0. evaleasy2start(A) -> evaleasy2entryin(A) True (1,1) 1. evaleasy2entryin(A) -> evaleasy2bb1in(A) True (1,1) 2. evaleasy2bb1in(A) -> evaleasy2bbin(A) [A >= 1] (?,1) 3. evaleasy2bb1in(A) -> evaleasy2returnin(A) [0 >= A] (1,1) 4. evaleasy2bbin(A) -> evaleasy2bb1in(-1 + A) [-1 + A >= 0] (?,1) 5. evaleasy2returnin(A) -> evaleasy2stop(A) [-1*A >= 0] (1,1) Signature: {(evaleasy2bb1in,1) ;(evaleasy2bbin,1) ;(evaleasy2entryin,1) ;(evaleasy2returnin,1) ;(evaleasy2start,1) ;(evaleasy2stop,1)} Flow Graph: [0->{1},1->{2,3},2->{4},3->{5},4->{2,3},5->{}] + Applied Processor: PolyRank {useFarkas = True, withSizebounds = [], shape = Linear} + Details: We apply a polynomial interpretation of shape linear: p(evaleasy2bb1in) = x1 p(evaleasy2bbin) = x1 p(evaleasy2entryin) = x1 p(evaleasy2returnin) = x1 p(evaleasy2start) = x1 p(evaleasy2stop) = x1 Following rules are strictly oriented: [-1 + A >= 0] ==> evaleasy2bbin(A) = A > -1 + A = evaleasy2bb1in(-1 + A) Following rules are weakly oriented: True ==> evaleasy2start(A) = A >= A = evaleasy2entryin(A) True ==> evaleasy2entryin(A) = A >= A = evaleasy2bb1in(A) [A >= 1] ==> evaleasy2bb1in(A) = A >= A = evaleasy2bbin(A) [0 >= A] ==> evaleasy2bb1in(A) = A >= A = evaleasy2returnin(A) [-1*A >= 0] ==> evaleasy2returnin(A) = A >= A = evaleasy2stop(A) * Step 3: KnowledgePropagation WORST_CASE(?,O(n^1)) + Considered Problem: Rules: 0. evaleasy2start(A) -> evaleasy2entryin(A) True (1,1) 1. evaleasy2entryin(A) -> evaleasy2bb1in(A) True (1,1) 2. evaleasy2bb1in(A) -> evaleasy2bbin(A) [A >= 1] (?,1) 3. evaleasy2bb1in(A) -> evaleasy2returnin(A) [0 >= A] (1,1) 4. evaleasy2bbin(A) -> evaleasy2bb1in(-1 + A) [-1 + A >= 0] (A,1) 5. evaleasy2returnin(A) -> evaleasy2stop(A) [-1*A >= 0] (1,1) Signature: {(evaleasy2bb1in,1) ;(evaleasy2bbin,1) ;(evaleasy2entryin,1) ;(evaleasy2returnin,1) ;(evaleasy2start,1) ;(evaleasy2stop,1)} Flow Graph: [0->{1},1->{2,3},2->{4},3->{5},4->{2,3},5->{}] + Applied Processor: KnowledgePropagation + Details: We propagate bounds from predecessors. * Step 4: PolyRank WORST_CASE(?,O(n^1)) + Considered Problem: Rules: 0. evaleasy2start(A) -> evaleasy2entryin(A) True (1,1) 1. evaleasy2entryin(A) -> evaleasy2bb1in(A) True (1,1) 2. evaleasy2bb1in(A) -> evaleasy2bbin(A) [A >= 1] (1 + A,1) 3. evaleasy2bb1in(A) -> evaleasy2returnin(A) [0 >= A] (1,1) 4. evaleasy2bbin(A) -> evaleasy2bb1in(-1 + A) [-1 + A >= 0] (A,1) 5. evaleasy2returnin(A) -> evaleasy2stop(A) [-1*A >= 0] (1,1) Signature: {(evaleasy2bb1in,1) ;(evaleasy2bbin,1) ;(evaleasy2entryin,1) ;(evaleasy2returnin,1) ;(evaleasy2start,1) ;(evaleasy2stop,1)} Flow Graph: [0->{1},1->{2,3},2->{4},3->{5},4->{2,3},5->{}] + Applied Processor: PolyRank {useFarkas = True, withSizebounds = [], shape = Linear} + Details: The problem is already solved. YES(?,O(n^1))