Spaces
Explore
Communities
Statistics
Reports
Cluster
Status
Help
Logic Progr 19030 pair #381919882
details
property
value
status
complete
benchmark
svcomp-ex3b-c.pl
ran by
Akihisa Yamada
cpu timeout
1200 seconds
wallclock timeout
300 seconds
memory limit
137438953472 bytes
execution host
n042.star.cs.uiowa.edu
space
AProVE_numeric
run statistics
property
value
solver
AProVE
configuration
standard
runtime (wallclock)
1.90147209167 seconds
cpu usage
3.992310736
max memory
2.58514944E8
stage attributes
key
value
output-size
14711
starexec-result
YES
output
/export/starexec/sandbox/solver/bin/starexec_run_standard /export/starexec/sandbox/benchmark/theBenchmark.pl /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox/benchmark/theBenchmark.pl # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty Left Termination of the query pattern test_fun(g,g) w.r.t. the given Prolog program could successfully be proven: (0) Prolog (1) UndefinedPredicateHandlerProof [SOUND, 0 ms] (2) Prolog (3) PrologToPiTRSProof [SOUND, 0 ms] (4) PiTRS (5) DependencyPairsProof [EQUIVALENT, 0 ms] (6) PiDP (7) DependencyGraphProof [EQUIVALENT, 0 ms] (8) TRUE ---------------------------------------- (0) Obligation: Clauses: test_fun(X, Y) :- loop(X, Y, 0). loop(X, Y, C) :- ','(>(X, 1), ','(<(X, Y), ','(is(X1, *(X, X)), ','(is(C1, +(C, 1)), loop(X1, C1))))). loop(X, Y, C) :- =<(X, 1). loop(X, Y, C) :- >=(X, 100). Query: test_fun(g,g) ---------------------------------------- (1) UndefinedPredicateHandlerProof (SOUND) Added facts for all undefined predicates [PROLOG]. ---------------------------------------- (2) Obligation: Clauses: test_fun(X, Y) :- loop(X, Y, 0). loop(X, Y, C) :- ','(>(X, 1), ','(<(X, Y), ','(is(X1, *(X, X)), ','(is(C1, +(C, 1)), loop(X1, C1))))). loop(X, Y, C) :- =<(X, 1). loop(X, Y, C) :- >=(X, 100). >(X0, X1). <(X0, X1). is(X0, X1). loop(X0, X1). =<(X0, X1). >=(X0, X1). Query: test_fun(g,g) ---------------------------------------- (3) PrologToPiTRSProof (SOUND) We use the technique of [TOCL09]. With regard to the inferred argument filtering the predicates were used in the following modes: test_fun_in_2: (b,b) loop_in_3: (b,b,b) Transforming Prolog into the following Term Rewriting System: Pi-finite rewrite system: The TRS R consists of the following rules: test_fun_in_gg(X, Y) -> U1_gg(X, Y, loop_in_ggg(X, Y, 0)) loop_in_ggg(X, Y, C) -> U2_ggg(X, Y, C, >_in_gg(X, 1)) >_in_gg(X0, X1) -> >_out_gg(X0, X1) U2_ggg(X, Y, C, >_out_gg(X, 1)) -> U3_ggg(X, Y, C, <_in_gg(X, Y)) <_in_gg(X0, X1) -> <_out_gg(X0, X1) U3_ggg(X, Y, C, <_out_gg(X, Y)) -> U4_ggg(X, Y, C, is_in_ag(X1, *(X, X))) is_in_ag(X0, X1) -> is_out_ag(X0, X1) U4_ggg(X, Y, C, is_out_ag(X1, *(X, X))) -> U5_ggg(X, Y, C, X1, is_in_ag(C1, +(C, 1))) U5_ggg(X, Y, C, X1, is_out_ag(C1, +(C, 1))) -> U6_ggg(X, Y, C, loop_in_aa(X1, C1)) loop_in_aa(X0, X1) -> loop_out_aa(X0, X1) U6_ggg(X, Y, C, loop_out_aa(X1, C1)) -> loop_out_ggg(X, Y, C) loop_in_ggg(X, Y, C) -> U7_ggg(X, Y, C, =<_in_gg(X, 1)) =<_in_gg(X0, X1) -> =<_out_gg(X0, X1) U7_ggg(X, Y, C, =<_out_gg(X, 1)) -> loop_out_ggg(X, Y, C) loop_in_ggg(X, Y, C) -> U8_ggg(X, Y, C, >=_in_gg(X, 100)) >=_in_gg(X0, X1) -> >=_out_gg(X0, X1) U8_ggg(X, Y, C, >=_out_gg(X, 100)) -> loop_out_ggg(X, Y, C) U1_gg(X, Y, loop_out_ggg(X, Y, 0)) -> test_fun_out_gg(X, Y) The argument filtering Pi contains the following mapping: test_fun_in_gg(x1, x2) = test_fun_in_gg(x1, x2)
popout
output may be truncated. 'popout' for the full output.
job log
popout
actions
all output
return to Logic Progr 19030