*** 1 Progress [(O(1),O(n^1))] *** Considered Problem: Strict DP Rules: Strict TRS Rules: f(0(),y,0(),u) -> true() f(0(),y,s(z),u) -> false() f(s(x),0(),z,u) -> f(x,u,minus(z,s(x)),u) f(s(x),s(y),z,u) -> if(le(x,y),f(s(x),minus(y,x),z,u),f(x,u,z,u)) perfectp(0()) -> false() perfectp(s(x)) -> f(x,s(0()),s(x),s(x)) Weak DP Rules: Weak TRS Rules: Signature: {f/4,perfectp/1} / {0/0,false/0,if/3,le/2,minus/2,s/1,true/0} Obligation: Full basic terms: {f,perfectp}/{0,false,if,le,minus,s,true} Applied Processor: WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny} Proof: The weightgap principle applies using the following nonconstant growth matrix-interpretation: We apply a matrix interpretation of kind constructor based matrix interpretation: The following argument positions are considered usable: uargs(if) = {3} Following symbols are considered usable: {} TcT has computed the following interpretation: p(0) = [1] p(f) = [6] x4 + [6] p(false) = [0] p(if) = [1] x1 + [1] x3 + [4] p(le) = [0] p(minus) = [4] p(perfectp) = [8] x1 + [4] p(s) = [0] p(true) = [1] Following rules are strictly oriented: f(0(),y,0(),u) = [6] u + [6] > [1] = true() f(0(),y,s(z),u) = [6] u + [6] > [0] = false() perfectp(0()) = [12] > [0] = false() Following rules are (at-least) weakly oriented: f(s(x),0(),z,u) = [6] u + [6] >= [6] u + [6] = f(x,u,minus(z,s(x)),u) f(s(x),s(y),z,u) = [6] u + [6] >= [6] u + [10] = if(le(x,y) ,f(s(x),minus(y,x),z,u) ,f(x,u,z,u)) perfectp(s(x)) = [4] >= [6] = f(x,s(0()),s(x),s(x)) Further, it can be verified that all rules not oriented are covered by the weightgap condition. *** 1.1 Progress [(O(1),O(n^1))] *** Considered Problem: Strict DP Rules: Strict TRS Rules: f(s(x),0(),z,u) -> f(x,u,minus(z,s(x)),u) f(s(x),s(y),z,u) -> if(le(x,y),f(s(x),minus(y,x),z,u),f(x,u,z,u)) perfectp(s(x)) -> f(x,s(0()),s(x),s(x)) Weak DP Rules: Weak TRS Rules: f(0(),y,0(),u) -> true() f(0(),y,s(z),u) -> false() perfectp(0()) -> false() Signature: {f/4,perfectp/1} / {0/0,false/0,if/3,le/2,minus/2,s/1,true/0} Obligation: Full basic terms: {f,perfectp}/{0,false,if,le,minus,s,true} Applied Processor: WeightGap {wgDimension = 1, wgDegree = 1, wgKind = Algebraic, wgUArgs = UArgs, wgOn = WgOnAny} Proof: The weightgap principle applies using the following nonconstant growth matrix-interpretation: We apply a matrix interpretation of kind constructor based matrix interpretation: The following argument positions are considered usable: uargs(if) = {3} Following symbols are considered usable: {} TcT has computed the following interpretation: p(0) = [0] p(f) = [4] x3 + [8] p(false) = [1] p(if) = [1] x3 + [12] p(le) = [1] x2 + [0] p(minus) = [1] x1 + [5] p(perfectp) = [8] x1 + [8] p(s) = [1] p(true) = [1] Following rules are strictly oriented: perfectp(s(x)) = [16] > [12] = f(x,s(0()),s(x),s(x)) Following rules are (at-least) weakly oriented: f(0(),y,0(),u) = [8] >= [1] = true() f(0(),y,s(z),u) = [12] >= [1] = false() f(s(x),0(),z,u) = [4] z + [8] >= [4] z + [28] = f(x,u,minus(z,s(x)),u) f(s(x),s(y),z,u) = [4] z + [8] >= [4] z + [20] = if(le(x,y) ,f(s(x),minus(y,x),z,u) ,f(x,u,z,u)) perfectp(0()) = [8] >= [1] = false() Further, it can be verified that all rules not oriented are covered by the weightgap condition. *** 1.1.1 Progress [(O(1),O(n^1))] *** Considered Problem: Strict DP Rules: Strict TRS Rules: f(s(x),0(),z,u) -> f(x,u,minus(z,s(x)),u) f(s(x),s(y),z,u) -> if(le(x,y),f(s(x),minus(y,x),z,u),f(x,u,z,u)) Weak DP Rules: Weak TRS Rules: f(0(),y,0(),u) -> true() f(0(),y,s(z),u) -> false() perfectp(0()) -> false() perfectp(s(x)) -> f(x,s(0()),s(x),s(x)) Signature: {f/4,perfectp/1} / {0/0,false/0,if/3,le/2,minus/2,s/1,true/0} Obligation: Full basic terms: {f,perfectp}/{0,false,if,le,minus,s,true} Applied Processor: NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Just any strict-rules, greedy = NoGreedy} Proof: We apply a matrix interpretation of kind constructor based matrix interpretation: The following argument positions are considered usable: uargs(if) = {3} Following symbols are considered usable: {} TcT has computed the following interpretation: p(0) = [0] p(f) = [8] x1 + [1] x3 + [8] p(false) = [2] p(if) = [1] x3 + [8] p(le) = [1] x2 + [1] p(minus) = [12] p(perfectp) = [12] x1 + [2] p(s) = [1] x1 + [2] p(true) = [8] Following rules are strictly oriented: f(s(x),0(),z,u) = [8] x + [1] z + [24] > [8] x + [20] = f(x,u,minus(z,s(x)),u) f(s(x),s(y),z,u) = [8] x + [1] z + [24] > [8] x + [1] z + [16] = if(le(x,y) ,f(s(x),minus(y,x),z,u) ,f(x,u,z,u)) Following rules are (at-least) weakly oriented: f(0(),y,0(),u) = [8] >= [8] = true() f(0(),y,s(z),u) = [1] z + [10] >= [2] = false() perfectp(0()) = [2] >= [2] = false() perfectp(s(x)) = [12] x + [26] >= [9] x + [10] = f(x,s(0()),s(x),s(x)) *** 1.1.1.1 Progress [(O(1),O(1))] *** Considered Problem: Strict DP Rules: Strict TRS Rules: Weak DP Rules: Weak TRS Rules: f(0(),y,0(),u) -> true() f(0(),y,s(z),u) -> false() f(s(x),0(),z,u) -> f(x,u,minus(z,s(x)),u) f(s(x),s(y),z,u) -> if(le(x,y),f(s(x),minus(y,x),z,u),f(x,u,z,u)) perfectp(0()) -> false() perfectp(s(x)) -> f(x,s(0()),s(x),s(x)) Signature: {f/4,perfectp/1} / {0/0,false/0,if/3,le/2,minus/2,s/1,true/0} Obligation: Full basic terms: {f,perfectp}/{0,false,if,le,minus,s,true} Applied Processor: EmptyProcessor Proof: The problem is already closed. The intended complexity is O(1).