WORST_CASE(?,O(n^2)) * Step 1: LocalSizeboundsProc WORST_CASE(?,O(n^2)) + Considered Problem: Rules: 0. f4(A,B,C) -> f4(A,1 + B,C) [A >= 1 + B] (?,1) 1. f4(A,B,C) -> f4(1 + A,0,C) [C >= 2 + A && B >= A] (?,1) 2. f0(A,B,C) -> f4(0,0,C) [C >= 1] (1,1) Signature: {(f0,3);(f4,3)} Flow Graph: [0->{0,1},1->{0,1},2->{0,1}] + Applied Processor: LocalSizeboundsProc + Details: LocalSizebounds generated; rvgraph (<0,0,A>, A, .= 0) (<0,0,B>, 1 + B, .+ 1) (<0,0,C>, C, .= 0) (<1,0,A>, 1 + A + C, .* 1) (<1,0,B>, 0, .= 0) (<1,0,C>, C, .= 0) (<2,0,A>, 0, .= 0) (<2,0,B>, 0, .= 0) (<2,0,C>, C, .= 0) * Step 2: SizeboundsProc WORST_CASE(?,O(n^2)) + Considered Problem: Rules: 0. f4(A,B,C) -> f4(A,1 + B,C) [A >= 1 + B] (?,1) 1. f4(A,B,C) -> f4(1 + A,0,C) [C >= 2 + A && B >= A] (?,1) 2. f0(A,B,C) -> f4(0,0,C) [C >= 1] (1,1) Signature: {(f0,3);(f4,3)} Flow Graph: [0->{0,1},1->{0,1},2->{0,1}] Sizebounds: (<0,0,A>, ?) (<0,0,B>, ?) (<0,0,C>, ?) (<1,0,A>, ?) (<1,0,B>, ?) (<1,0,C>, ?) (<2,0,A>, ?) (<2,0,B>, ?) (<2,0,C>, ?) + Applied Processor: SizeboundsProc + Details: Sizebounds computed: (<0,0,A>, C) (<0,0,B>, C) (<0,0,C>, C) (<1,0,A>, C) (<1,0,B>, 0) (<1,0,C>, C) (<2,0,A>, 0) (<2,0,B>, 0) (<2,0,C>, C) * Step 3: UnsatPaths WORST_CASE(?,O(n^2)) + Considered Problem: Rules: 0. f4(A,B,C) -> f4(A,1 + B,C) [A >= 1 + B] (?,1) 1. f4(A,B,C) -> f4(1 + A,0,C) [C >= 2 + A && B >= A] (?,1) 2. f0(A,B,C) -> f4(0,0,C) [C >= 1] (1,1) Signature: {(f0,3);(f4,3)} Flow Graph: [0->{0,1},1->{0,1},2->{0,1}] Sizebounds: (<0,0,A>, C) (<0,0,B>, C) (<0,0,C>, C) (<1,0,A>, C) (<1,0,B>, 0) (<1,0,C>, C) (<2,0,A>, 0) (<2,0,B>, 0) (<2,0,C>, C) + Applied Processor: UnsatPaths + Details: We remove following edges from the transition graph: [(2,0)] * Step 4: PolyRank WORST_CASE(?,O(n^2)) + Considered Problem: Rules: 0. f4(A,B,C) -> f4(A,1 + B,C) [A >= 1 + B] (?,1) 1. f4(A,B,C) -> f4(1 + A,0,C) [C >= 2 + A && B >= A] (?,1) 2. f0(A,B,C) -> f4(0,0,C) [C >= 1] (1,1) Signature: {(f0,3);(f4,3)} Flow Graph: [0->{0,1},1->{0,1},2->{1}] Sizebounds: (<0,0,A>, C) (<0,0,B>, C) (<0,0,C>, C) (<1,0,A>, C) (<1,0,B>, 0) (<1,0,C>, C) (<2,0,A>, 0) (<2,0,B>, 0) (<2,0,C>, C) + Applied Processor: PolyRank {useFarkas = True, withSizebounds = [], shape = Linear} + Details: We apply a polynomial interpretation of shape linear: p(f0) = x3 p(f4) = -1 + -1*x1 + x3 The following rules are strictly oriented: [C >= 2 + A && B >= A] ==> f4(A,B,C) = -1 + -1*A + C > -2 + -1*A + C = f4(1 + A,0,C) [C >= 1] ==> f0(A,B,C) = C > -1 + C = f4(0,0,C) The following rules are weakly oriented: [A >= 1 + B] ==> f4(A,B,C) = -1 + -1*A + C >= -1 + -1*A + C = f4(A,1 + B,C) * Step 5: PolyRank WORST_CASE(?,O(n^2)) + Considered Problem: Rules: 0. f4(A,B,C) -> f4(A,1 + B,C) [A >= 1 + B] (?,1) 1. f4(A,B,C) -> f4(1 + A,0,C) [C >= 2 + A && B >= A] (C,1) 2. f0(A,B,C) -> f4(0,0,C) [C >= 1] (1,1) Signature: {(f0,3);(f4,3)} Flow Graph: [0->{0,1},1->{0,1},2->{1}] Sizebounds: (<0,0,A>, C) (<0,0,B>, C) (<0,0,C>, C) (<1,0,A>, C) (<1,0,B>, 0) (<1,0,C>, C) (<2,0,A>, 0) (<2,0,B>, 0) (<2,0,C>, C) + Applied Processor: PolyRank {useFarkas = True, withSizebounds = [0], shape = Linear} + Details: We apply a polynomial interpretation of shape linear: p(f4) = x1 + -1*x2 The following rules are strictly oriented: [A >= 1 + B] ==> f4(A,B,C) = A + -1*B > -1 + A + -1*B = f4(A,1 + B,C) The following rules are weakly oriented: We use the following global sizebounds: (<0,0,A>, C) (<0,0,B>, C) (<0,0,C>, C) (<1,0,A>, C) (<1,0,B>, 0) (<1,0,C>, C) (<2,0,A>, 0) (<2,0,B>, 0) (<2,0,C>, C) * Step 6: KnowledgePropagation WORST_CASE(?,O(n^2)) + Considered Problem: Rules: 0. f4(A,B,C) -> f4(A,1 + B,C) [A >= 1 + B] (C^2,1) 1. f4(A,B,C) -> f4(1 + A,0,C) [C >= 2 + A && B >= A] (C,1) 2. f0(A,B,C) -> f4(0,0,C) [C >= 1] (1,1) Signature: {(f0,3);(f4,3)} Flow Graph: [0->{0,1},1->{0,1},2->{1}] Sizebounds: (<0,0,A>, C) (<0,0,B>, C) (<0,0,C>, C) (<1,0,A>, C) (<1,0,B>, 0) (<1,0,C>, C) (<2,0,A>, 0) (<2,0,B>, 0) (<2,0,C>, C) + Applied Processor: KnowledgePropagation + Details: The problem is already solved. WORST_CASE(?,O(n^2))