YES

The TRS could be proven terminating. The proof took 172 ms.

The following DP Processors were used


Problem 1 was processed with processor DependencyGraph (32ms).
 | – Problem 2 was processed with processor PolynomialLinearRange4iUR (110ms).
 | – Problem 3 was processed with processor SubtermCriterion (1ms).

Problem 1: DependencyGraph



Dependency Pair Problem

Dependency Pairs

and#(x, or(y, z))and#(x, z)not#(or(x, y))and#(not(x), not(y))
not#(and(x, y))not#(x)and#(or(y, z), x)and#(x, y)
not#(or(x, y))not#(x)and#(x, or(y, z))and#(x, y)
not#(and(x, y))not#(y)and#(or(y, z), x)and#(x, z)
not#(or(x, y))not#(y)

Rewrite Rules

not(not(x))xnot(or(x, y))and(not(x), not(y))
not(and(x, y))or(not(x), not(y))and(x, or(y, z))or(and(x, y), and(x, z))
and(or(y, z), x)or(and(x, y), and(x, z))

Original Signature

Termination of terms over the following signature is verified: not, or, and

Strategy


The following SCCs where found

and#(x, or(y, z)) → and#(x, z)and#(or(y, z), x) → and#(x, y)
and#(x, or(y, z)) → and#(x, y)and#(or(y, z), x) → and#(x, z)

not#(and(x, y)) → not#(x)not#(or(x, y)) → not#(x)
not#(and(x, y)) → not#(y)not#(or(x, y)) → not#(y)

Problem 2: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

and#(x, or(y, z))and#(x, z)and#(or(y, z), x)and#(x, y)
and#(x, or(y, z))and#(x, y)and#(or(y, z), x)and#(x, z)

Rewrite Rules

not(not(x))xnot(or(x, y))and(not(x), not(y))
not(and(x, y))or(not(x), not(y))and(x, or(y, z))or(and(x, y), and(x, z))
and(or(y, z), x)or(and(x, y), and(x, z))

Original Signature

Termination of terms over the following signature is verified: not, or, and

Strategy


Polynomial Interpretation

There are no usable rules

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

and#(x, or(y, z))and#(x, z)and#(or(y, z), x)and#(x, y)
and#(x, or(y, z))and#(x, y)and#(or(y, z), x)and#(x, z)

Problem 3: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

not#(and(x, y))not#(x)not#(or(x, y))not#(x)
not#(and(x, y))not#(y)not#(or(x, y))not#(y)

Rewrite Rules

not(not(x))xnot(or(x, y))and(not(x), not(y))
not(and(x, y))or(not(x), not(y))and(x, or(y, z))or(and(x, y), and(x, z))
and(or(y, z), x)or(and(x, y), and(x, z))

Original Signature

Termination of terms over the following signature is verified: not, or, and

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

not#(and(x, y))not#(x)not#(or(x, y))not#(x)
not#(and(x, y))not#(y)not#(or(x, y))not#(y)