0 QTRS
↳1 Overlay + Local Confluence (⇔)
↳2 QTRS
↳3 DependencyPairsProof (⇔)
↳4 QDP
↳5 DependencyGraphProof (⇔)
↳6 QDP
↳7 QDPOrderProof (⇔)
↳8 QDP
↳9 PisEmptyProof (⇔)
↳10 TRUE
or(true, y) → true
or(x, true) → true
or(false, false) → false
mem(x, nil) → false
mem(x, set(y)) → =(x, y)
mem(x, union(y, z)) → or(mem(x, y), mem(x, z))
or(true, y) → true
or(x, true) → true
or(false, false) → false
mem(x, nil) → false
mem(x, set(y)) → =(x, y)
mem(x, union(y, z)) → or(mem(x, y), mem(x, z))
or(true, x0)
or(x0, true)
or(false, false)
mem(x0, nil)
mem(x0, set(x1))
mem(x0, union(x1, x2))
MEM(x, union(y, z)) → OR(mem(x, y), mem(x, z))
MEM(x, union(y, z)) → MEM(x, y)
MEM(x, union(y, z)) → MEM(x, z)
or(true, y) → true
or(x, true) → true
or(false, false) → false
mem(x, nil) → false
mem(x, set(y)) → =(x, y)
mem(x, union(y, z)) → or(mem(x, y), mem(x, z))
or(true, x0)
or(x0, true)
or(false, false)
mem(x0, nil)
mem(x0, set(x1))
mem(x0, union(x1, x2))
MEM(x, union(y, z)) → MEM(x, z)
MEM(x, union(y, z)) → MEM(x, y)
or(true, y) → true
or(x, true) → true
or(false, false) → false
mem(x, nil) → false
mem(x, set(y)) → =(x, y)
mem(x, union(y, z)) → or(mem(x, y), mem(x, z))
or(true, x0)
or(x0, true)
or(false, false)
mem(x0, nil)
mem(x0, set(x1))
mem(x0, union(x1, x2))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
MEM(x, union(y, z)) → MEM(x, z)
MEM(x, union(y, z)) → MEM(x, y)
[MEM1, union2, mem, =] > [or, true, false, nil]
MEM1: multiset
union2: multiset
or: multiset
true: multiset
false: multiset
mem: []
nil: multiset
=: []
or(true, y) → true
or(x, true) → true
or(false, false) → false
mem(x, nil) → false
mem(x, set(y)) → =(x, y)
mem(x, union(y, z)) → or(mem(x, y), mem(x, z))
or(true, y) → true
or(x, true) → true
or(false, false) → false
mem(x, nil) → false
mem(x, set(y)) → =(x, y)
mem(x, union(y, z)) → or(mem(x, y), mem(x, z))
or(true, x0)
or(x0, true)
or(false, false)
mem(x0, nil)
mem(x0, set(x1))
mem(x0, union(x1, x2))