We consider the following Problem:
Strict Trs:
{ prime(0()) -> false()
, prime(s(0())) -> false()
, prime(s(s(x))) -> prime1(s(s(x)), s(x))
, prime1(x, 0()) -> false()
, prime1(x, s(0())) -> true()
, prime1(x, s(s(y))) -> and(not(divp(s(s(y)), x)), prime1(x, s(y)))
, divp(x, y) -> =(rem(x, y), 0())}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
We consider the following Problem:
Strict Trs:
{ prime(0()) -> false()
, prime(s(0())) -> false()
, prime(s(s(x))) -> prime1(s(s(x)), s(x))
, prime1(x, 0()) -> false()
, prime1(x, s(0())) -> true()
, prime1(x, s(s(y))) -> and(not(divp(s(s(y)), x)), prime1(x, s(y)))
, divp(x, y) -> =(rem(x, y), 0())}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component:
{ prime(0()) -> false()
, prime(s(0())) -> false()
, prime1(x, 0()) -> false()
, prime1(x, s(0())) -> true()}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(prime) = {}, Uargs(s) = {}, Uargs(prime1) = {},
Uargs(and) = {1, 2}, Uargs(not) = {1}, Uargs(divp) = {},
Uargs(=) = {}, Uargs(rem) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
prime(x1) = [0 0] x1 + [1]
[0 0] [1]
0() = [0]
[0]
false() = [0]
[0]
s(x1) = [0 0] x1 + [0]
[0 0] [0]
prime1(x1, x2) = [0 0] x1 + [1 0] x2 + [1]
[0 0] [1 0] [1]
true() = [0]
[0]
and(x1, x2) = [1 0] x1 + [1 0] x2 + [0]
[0 0] [1 0] [0]
not(x1) = [1 0] x1 + [0]
[0 0] [0]
divp(x1, x2) = [0 0] x1 + [0 0] x2 + [0]
[0 0] [0 0] [0]
=(x1, x2) = [0 0] x1 + [0 0] x2 + [1]
[0 0] [0 0] [1]
rem(x1, x2) = [0 0] x1 + [0 0] x2 + [0]
[0 0] [0 0] [0]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{ prime(s(s(x))) -> prime1(s(s(x)), s(x))
, prime1(x, s(s(y))) -> and(not(divp(s(s(y)), x)), prime1(x, s(y)))
, divp(x, y) -> =(rem(x, y), 0())}
Weak Trs:
{ prime(0()) -> false()
, prime(s(0())) -> false()
, prime1(x, 0()) -> false()
, prime1(x, s(0())) -> true()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {prime(s(s(x))) -> prime1(s(s(x)), s(x))}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(prime) = {}, Uargs(s) = {}, Uargs(prime1) = {},
Uargs(and) = {1, 2}, Uargs(not) = {1}, Uargs(divp) = {},
Uargs(=) = {}, Uargs(rem) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
prime(x1) = [0 0] x1 + [1]
[0 0] [1]
0() = [0]
[0]
false() = [0]
[0]
s(x1) = [0 0] x1 + [0]
[0 0] [0]
prime1(x1, x2) = [0 0] x1 + [0 0] x2 + [0]
[0 0] [0 0] [1]
true() = [0]
[0]
and(x1, x2) = [1 0] x1 + [1 0] x2 + [0]
[0 0] [0 0] [0]
not(x1) = [1 0] x1 + [0]
[0 0] [0]
divp(x1, x2) = [0 0] x1 + [0 0] x2 + [0]
[0 0] [0 0] [0]
=(x1, x2) = [0 0] x1 + [0 0] x2 + [1]
[0 0] [0 0] [1]
rem(x1, x2) = [0 0] x1 + [0 0] x2 + [0]
[0 0] [0 0] [0]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{ prime1(x, s(s(y))) ->
and(not(divp(s(s(y)), x)), prime1(x, s(y)))
, divp(x, y) -> =(rem(x, y), 0())}
Weak Trs:
{ prime(s(s(x))) -> prime1(s(s(x)), s(x))
, prime(0()) -> false()
, prime(s(0())) -> false()
, prime1(x, 0()) -> false()
, prime1(x, s(0())) -> true()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component: {divp(x, y) -> =(rem(x, y), 0())}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(prime) = {}, Uargs(s) = {}, Uargs(prime1) = {},
Uargs(and) = {1, 2}, Uargs(not) = {1}, Uargs(divp) = {},
Uargs(=) = {}, Uargs(rem) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
prime(x1) = [0 0] x1 + [1]
[0 0] [1]
0() = [0]
[0]
false() = [0]
[0]
s(x1) = [0 0] x1 + [0]
[0 0] [0]
prime1(x1, x2) = [1 0] x1 + [0 0] x2 + [1]
[0 0] [0 0] [1]
true() = [0]
[0]
and(x1, x2) = [1 0] x1 + [1 0] x2 + [0]
[0 0] [0 0] [1]
not(x1) = [1 0] x1 + [1]
[0 0] [0]
divp(x1, x2) = [0 0] x1 + [0 0] x2 + [1]
[0 0] [0 0] [2]
=(x1, x2) = [0 0] x1 + [0 0] x2 + [0]
[0 0] [0 0] [1]
rem(x1, x2) = [0 0] x1 + [0 0] x2 + [0]
[0 0] [0 0] [0]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Strict Trs:
{prime1(x, s(s(y))) -> and(not(divp(s(s(y)), x)), prime1(x, s(y)))}
Weak Trs:
{ divp(x, y) -> =(rem(x, y), 0())
, prime(s(s(x))) -> prime1(s(s(x)), s(x))
, prime(0()) -> false()
, prime(s(0())) -> false()
, prime1(x, 0()) -> false()
, prime1(x, s(0())) -> true()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(?,O(n^1))
Proof:
The weightgap principle applies, where following rules are oriented strictly:
TRS Component:
{prime1(x, s(s(y))) -> and(not(divp(s(s(y)), x)), prime1(x, s(y)))}
Interpretation of nonconstant growth:
-------------------------------------
The following argument positions are usable:
Uargs(prime) = {}, Uargs(s) = {}, Uargs(prime1) = {},
Uargs(and) = {1, 2}, Uargs(not) = {1}, Uargs(divp) = {},
Uargs(=) = {}, Uargs(rem) = {}
We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
Interpretation Functions:
prime(x1) = [0 3] x1 + [1]
[0 0] [1]
0() = [0]
[1]
false() = [0]
[0]
s(x1) = [0 0] x1 + [0]
[0 1] [2]
prime1(x1, x2) = [0 0] x1 + [0 3] x2 + [0]
[0 0] [0 0] [1]
true() = [0]
[0]
and(x1, x2) = [1 0] x1 + [1 2] x2 + [0]
[0 0] [0 0] [1]
not(x1) = [1 1] x1 + [0]
[0 0] [0]
divp(x1, x2) = [0 0] x1 + [0 0] x2 + [0]
[0 0] [0 0] [1]
=(x1, x2) = [0 0] x1 + [0 0] x2 + [0]
[0 0] [0 0] [1]
rem(x1, x2) = [0 0] x1 + [0 0] x2 + [0]
[0 0] [0 0] [0]
The strictly oriented rules are moved into the weak component.
We consider the following Problem:
Weak Trs:
{ prime1(x, s(s(y))) ->
and(not(divp(s(s(y)), x)), prime1(x, s(y)))
, divp(x, y) -> =(rem(x, y), 0())
, prime(s(s(x))) -> prime1(s(s(x)), s(x))
, prime(0()) -> false()
, prime(s(0())) -> false()
, prime1(x, 0()) -> false()
, prime1(x, s(0())) -> true()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(O(1),O(1))
Proof:
We consider the following Problem:
Weak Trs:
{ prime1(x, s(s(y))) ->
and(not(divp(s(s(y)), x)), prime1(x, s(y)))
, divp(x, y) -> =(rem(x, y), 0())
, prime(s(s(x))) -> prime1(s(s(x)), s(x))
, prime(0()) -> false()
, prime(s(0())) -> false()
, prime1(x, 0()) -> false()
, prime1(x, s(0())) -> true()}
StartTerms: basic terms
Strategy: innermost
Certificate: YES(O(1),O(1))
Proof:
Empty rules are trivially bounded
Hurray, we answered YES(?,O(n^1))