Spaces
Explore
Communities
Statistics
Reports
Cluster
Status
Help
TRS Stand 20472 pair #381712623
details
property
value
status
complete
benchmark
log2.xml
ran by
Akihisa Yamada
cpu timeout
1200 seconds
wallclock timeout
300 seconds
memory limit
137438953472 bytes
execution host
n055.star.cs.uiowa.edu
space
CiME_04
run statistics
property
value
solver
Wanda
configuration
FirstOrder
runtime (wallclock)
0.555384159088 seconds
cpu usage
0.542761823
max memory
1.5597568E7
stage attributes
key
value
output-size
23030
starexec-result
YES
output
/export/starexec/sandbox2/solver/bin/starexec_run_FirstOrder /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- YES We consider the system theBenchmark. We are asked to determine termination of the following first-order TRS. !940 : [] --> o !minus : [o * o] --> o !plus : [o * o] --> o 0 : [o] --> o 1 : [o] --> o false : [] --> o ge : [o * o] --> o if : [o * o * o] --> o log : [o] --> o log!450 : [o] --> o not : [o] --> o true : [] --> o 0(!940) => !940 !plus(!940, X) => X !plus(X, !940) => X !plus(0(X), 0(Y)) => 0(!plus(X, Y)) !plus(0(X), 1(Y)) => 1(!plus(X, Y)) !plus(1(X), 0(Y)) => 1(!plus(X, Y)) !plus(1(X), 1(Y)) => 0(!plus(!plus(X, Y), 1(!940))) !plus(!plus(X, Y), Z) => !plus(X, !plus(Y, Z)) !minus(!940, X) => !940 !minus(X, !940) => X !minus(0(X), 0(Y)) => 0(!minus(X, Y)) !minus(0(X), 1(Y)) => 1(!minus(!minus(X, Y), 1(!940))) !minus(1(X), 0(Y)) => 1(!minus(X, Y)) !minus(1(X), 1(Y)) => 0(!minus(X, Y)) not(true) => false not(false) => true if(true, X, Y) => X if(false, X, Y) => Y ge(0(X), 0(Y)) => ge(X, Y) ge(0(X), 1(Y)) => not(ge(Y, X)) ge(1(X), 0(Y)) => ge(X, Y) ge(1(X), 1(Y)) => ge(X, Y) ge(X, !940) => true ge(!940, 0(X)) => ge(!940, X) ge(!940, 1(X)) => false log(X) => !minus(log!450(X), 1(!940)) log!450(!940) => !940 log!450(1(X)) => !plus(log!450(X), 1(!940)) log!450(0(X)) => if(ge(X, 1(!940)), !plus(log!450(X), 1(!940)), !940) We use rule removal, following [Kop12, Theorem 2.23]. This gives the following requirements (possibly using Theorems 2.25 and 2.26 in [Kop12]): 0(!940) >? !940 !plus(!940, X) >? X !plus(X, !940) >? X !plus(0(X), 0(Y)) >? 0(!plus(X, Y)) !plus(0(X), 1(Y)) >? 1(!plus(X, Y)) !plus(1(X), 0(Y)) >? 1(!plus(X, Y)) !plus(1(X), 1(Y)) >? 0(!plus(!plus(X, Y), 1(!940))) !plus(!plus(X, Y), Z) >? !plus(X, !plus(Y, Z)) !minus(!940, X) >? !940 !minus(X, !940) >? X !minus(0(X), 0(Y)) >? 0(!minus(X, Y)) !minus(0(X), 1(Y)) >? 1(!minus(!minus(X, Y), 1(!940))) !minus(1(X), 0(Y)) >? 1(!minus(X, Y)) !minus(1(X), 1(Y)) >? 0(!minus(X, Y)) not(true) >? false not(false) >? true if(true, X, Y) >? X if(false, X, Y) >? Y ge(0(X), 0(Y)) >? ge(X, Y) ge(0(X), 1(Y)) >? not(ge(Y, X)) ge(1(X), 0(Y)) >? ge(X, Y) ge(1(X), 1(Y)) >? ge(X, Y) ge(X, !940) >? true ge(!940, 0(X)) >? ge(!940, X) ge(!940, 1(X)) >? false log(X) >? !minus(log!450(X), 1(!940)) log!450(!940) >? !940 log!450(1(X)) >? !plus(log!450(X), 1(!940)) log!450(0(X)) >? if(ge(X, 1(!940)), !plus(log!450(X), 1(!940)), !940) We orient these requirements with a polynomial interpretation in the natural numbers. The following interpretation satisfies the requirements: !940 = 0 !minus = \y0y1.y0 + y1 !plus = \y0y1.y0 + y1 0 = \y0.2y0 1 = \y0.2y0 false = 0 ge = \y0y1.y0 + y1 if = \y0y1y2.y0 + y1 + y2
popout
output may be truncated. 'popout' for the full output.
job log
popout
actions
all output
return to TRS Stand 20472