TSTP Solution File: COM002-1 by Moca---0.1

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Moca---0.1
% Problem  : COM002-1 : TPTP v8.1.0. Released v1.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : moca.sh %s

% Computer : n003.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 600s
% DateTime : Fri Jul 15 01:33:12 EDT 2022

% Result   : Unsatisfiable 10.52s 10.51s
% Output   : Proof 10.52s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.06/0.11  % Problem  : COM002-1 : TPTP v8.1.0. Released v1.0.0.
% 0.06/0.12  % Command  : moca.sh %s
% 0.12/0.33  % Computer : n003.cluster.edu
% 0.12/0.33  % Model    : x86_64 x86_64
% 0.12/0.33  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.33  % Memory   : 8042.1875MB
% 0.12/0.33  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.12/0.33  % CPULimit : 300
% 0.12/0.33  % WCLimit  : 600
% 0.12/0.33  % DateTime : Thu Jun 16 18:05:42 EDT 2022
% 0.12/0.33  % CPUTime  : 
% 10.52/10.51  % SZS status Unsatisfiable
% 10.52/10.51  % SZS output start Proof
% 10.52/10.51  The input problem is unsatisfiable because
% 10.52/10.51  
% 10.52/10.51  [1] the following set of Horn clauses is unsatisfiable:
% 10.52/10.51  
% 10.52/10.51  	follows(Goal_state, Start_state) ==> succeeds(Goal_state, Start_state)
% 10.52/10.51  	succeeds(Goal_state, Intermediate_state) & succeeds(Intermediate_state, Start_state) ==> succeeds(Goal_state, Start_state)
% 10.52/10.51  	has(Start_state, goto(Label)) & labels(Label, Goal_state) ==> succeeds(Goal_state, Start_state)
% 10.52/10.51  	has(Start_state, ifthen(Condition, Goal_state)) ==> succeeds(Goal_state, Start_state)
% 10.52/10.51  	has(p1, assign(register_j, n0))
% 10.52/10.51  	follows(p2, p1)
% 10.52/10.51  	has(p2, assign(register_k, n1))
% 10.52/10.51  	labels(loop, p3)
% 10.52/10.51  	follows(p3, p2)
% 10.52/10.51  	has(p3, ifthen(equal_function(register_j, n), p4))
% 10.52/10.51  	has(p4, goto(out))
% 10.52/10.51  	follows(p5, p4)
% 10.52/10.51  	follows(p6, p3)
% 10.52/10.51  	has(p6, assign(register_k, times(n2, register_k)))
% 10.52/10.51  	follows(p7, p6)
% 10.52/10.51  	has(p7, assign(register_j, plus(register_j, n1)))
% 10.52/10.51  	follows(p8, p7)
% 10.52/10.51  	has(p8, goto(loop))
% 10.52/10.51  	succeeds(p3, p3) ==> \bottom
% 10.52/10.51  
% 10.52/10.51  This holds because
% 10.52/10.51  
% 10.52/10.51  [2] the following E entails the following G (Claessen-Smallbone's transformation (2018)):
% 10.52/10.51  
% 10.52/10.51  E:
% 10.52/10.51  	f1(follows(Goal_state, Start_state), Goal_state, Start_state) = true__
% 10.52/10.51  	f1(true__, Goal_state, Start_state) = succeeds(Goal_state, Start_state)
% 10.52/10.51  	f2(true__, Goal_state, Start_state) = succeeds(Goal_state, Start_state)
% 10.52/10.51  	f3(succeeds(Intermediate_state, Start_state), Goal_state, Intermediate_state, Start_state) = true__
% 10.52/10.51  	f3(true__, Goal_state, Intermediate_state, Start_state) = f2(succeeds(Goal_state, Intermediate_state), Goal_state, Start_state)
% 10.52/10.51  	f4(true__, Goal_state, Start_state) = succeeds(Goal_state, Start_state)
% 10.52/10.51  	f5(labels(Label, Goal_state), Start_state, Label, Goal_state) = true__
% 10.52/10.51  	f5(true__, Start_state, Label, Goal_state) = f4(has(Start_state, goto(Label)), Goal_state, Start_state)
% 10.52/10.51  	f6(has(Start_state, ifthen(Condition, Goal_state)), Goal_state, Start_state) = true__
% 10.52/10.51  	f6(true__, Goal_state, Start_state) = succeeds(Goal_state, Start_state)
% 10.52/10.51  	f7(succeeds(p3, p3)) = true__
% 10.52/10.51  	f7(true__) = false__
% 10.52/10.51  	follows(p2, p1) = true__
% 10.52/10.51  	follows(p3, p2) = true__
% 10.52/10.51  	follows(p5, p4) = true__
% 10.52/10.51  	follows(p6, p3) = true__
% 10.52/10.51  	follows(p7, p6) = true__
% 10.52/10.51  	follows(p8, p7) = true__
% 10.52/10.51  	has(p1, assign(register_j, n0)) = true__
% 10.52/10.51  	has(p2, assign(register_k, n1)) = true__
% 10.52/10.51  	has(p3, ifthen(equal_function(register_j, n), p4)) = true__
% 10.52/10.51  	has(p4, goto(out)) = true__
% 10.52/10.51  	has(p6, assign(register_k, times(n2, register_k))) = true__
% 10.52/10.51  	has(p7, assign(register_j, plus(register_j, n1))) = true__
% 10.52/10.51  	has(p8, goto(loop)) = true__
% 10.52/10.51  	labels(loop, p3) = true__
% 10.52/10.51  G:
% 10.52/10.51  	true__ = false__
% 10.52/10.51  
% 10.52/10.51  This holds because
% 10.52/10.51  
% 10.52/10.51  [3] E entails the following ordered TRS and the lhs and rhs of G join by the TRS:
% 10.52/10.51  
% 10.52/10.51  
% 10.52/10.51  	f1(follows(Goal_state, Start_state), Goal_state, Start_state) -> true__
% 10.52/10.51  	f1(true__, p2, p1) -> true__
% 10.52/10.51  	f1(true__, p3, p1) -> true__
% 10.52/10.51  	f1(true__, p3, p2) -> true__
% 10.52/10.51  	f1(true__, p3, p3) -> true__
% 10.52/10.51  	f1(true__, p3, p6) -> true__
% 10.52/10.51  	f1(true__, p3, p7) -> true__
% 10.52/10.51  	f1(true__, p3, p8) -> true__
% 10.52/10.51  	f1(true__, p4, p1) -> true__
% 10.52/10.51  	f1(true__, p4, p2) -> true__
% 10.52/10.51  	f1(true__, p4, p3) -> true__
% 10.52/10.51  	f1(true__, p4, p7) -> true__
% 10.52/10.51  	f1(true__, p4, p8) -> true__
% 10.52/10.51  	f1(true__, p5, p1) -> true__
% 10.52/10.51  	f1(true__, p5, p2) -> true__
% 10.52/10.51  	f1(true__, p5, p3) -> true__
% 10.52/10.51  	f1(true__, p5, p4) -> true__
% 10.52/10.51  	f1(true__, p5, p8) -> true__
% 10.52/10.51  	f1(true__, p6, p1) -> true__
% 10.52/10.51  	f1(true__, p6, p2) -> true__
% 10.52/10.51  	f1(true__, p6, p3) -> true__
% 10.52/10.51  	f1(true__, p6, p6) -> true__
% 10.52/10.51  	f1(true__, p6, p7) -> true__
% 10.52/10.51  	f1(true__, p6, p8) -> true__
% 10.52/10.51  	f1(true__, p7, p1) -> true__
% 10.52/10.51  	f1(true__, p7, p2) -> true__
% 10.52/10.51  	f1(true__, p7, p3) -> true__
% 10.52/10.51  	f1(true__, p7, p6) -> true__
% 10.52/10.51  	f1(true__, p7, p7) -> true__
% 10.52/10.51  	f1(true__, p7, p8) -> true__
% 10.52/10.51  	f1(true__, p8, p1) -> true__
% 10.52/10.51  	f1(true__, p8, p2) -> true__
% 10.52/10.51  	f1(true__, p8, p3) -> true__
% 10.52/10.51  	f1(true__, p8, p6) -> true__
% 10.52/10.51  	f1(true__, p8, p7) -> true__
% 10.52/10.51  	f1(true__, p8, p8) -> true__
% 10.52/10.51  	f2(f1(true__, Y2, p2), Y2, p1) -> true__
% 10.52/10.51  	f2(f1(true__, Y2, p3), Y2, p1) -> true__
% 10.52/10.51  	f2(f1(true__, Y2, p3), Y2, p2) -> true__
% 10.52/10.51  	f2(f1(true__, Y2, p3), Y2, p8) -> true__
% 10.52/10.51  	f2(f1(true__, Y2, p4), Y2, p2) -> true__
% 10.52/10.51  	f2(f1(true__, Y2, p4), Y2, p3) -> true__
% 10.52/10.51  	f2(f1(true__, Y2, p5), Y2, p4) -> true__
% 10.52/10.51  	f2(f1(true__, Y2, p6), Y2, p2) -> true__
% 10.52/10.51  	f2(f1(true__, Y2, p6), Y2, p3) -> true__
% 10.52/10.51  	f2(f1(true__, Y2, p6), Y2, p8) -> true__
% 10.52/10.51  	f2(f1(true__, Y2, p7), Y2, p3) -> true__
% 10.52/10.51  	f2(f1(true__, Y2, p7), Y2, p6) -> true__
% 10.52/10.51  	f2(f1(true__, Y2, p8), Y2, p6) -> true__
% 10.52/10.51  	f2(f1(true__, Y2, p8), Y2, p7) -> true__
% 10.52/10.51  	f2(true__, Goal_state, Start_state) -> succeeds(Goal_state, Start_state)
% 10.52/10.51  	f3(f1(true__, Y0, Y1), Y2, Y0, Y1) -> true__
% 10.52/10.51  	f3(succeeds(Intermediate_state, Start_state), Goal_state, Intermediate_state, Start_state) -> true__
% 10.52/10.51  	f3(true__, Goal_state, Intermediate_state, Start_state) -> f2(succeeds(Goal_state, Intermediate_state), Goal_state, Start_state)
% 10.52/10.51  	f4(has(Y2, goto(loop)), p3, Y2) -> true__
% 10.52/10.51  	f4(true__, Goal_state, Start_state) -> succeeds(Goal_state, Start_state)
% 10.52/10.51  	f5(labels(Label, Goal_state), Start_state, Label, Goal_state) -> true__
% 10.52/10.51  	f5(true__, Start_state, Label, Goal_state) -> f4(has(Start_state, goto(Label)), Goal_state, Start_state)
% 10.52/10.51  	f6(has(Start_state, ifthen(Condition, Goal_state)), Goal_state, Start_state) -> true__
% 10.52/10.51  	f6(true__, Goal_state, Start_state) -> succeeds(Goal_state, Start_state)
% 10.52/10.52  	f7(f1(true__, p3, p3)) -> true__
% 10.52/10.52  	f7(succeeds(p3, p3)) -> true__
% 10.52/10.52  	f7(true__) -> false__
% 10.52/10.52  	false__ -> true__
% 10.52/10.52  	follows(p2, p1) -> true__
% 10.52/10.52  	follows(p3, p2) -> true__
% 10.52/10.52  	follows(p5, p4) -> true__
% 10.52/10.52  	follows(p6, p3) -> true__
% 10.52/10.52  	follows(p7, p6) -> true__
% 10.52/10.52  	follows(p8, p7) -> true__
% 10.52/10.52  	has(p1, assign(register_j, n0)) -> true__
% 10.52/10.52  	has(p2, assign(register_k, n1)) -> true__
% 10.52/10.52  	has(p3, ifthen(equal_function(register_j, n), p4)) -> true__
% 10.52/10.52  	has(p4, goto(out)) -> true__
% 10.52/10.52  	has(p6, assign(register_k, times(n2, register_k))) -> true__
% 10.52/10.52  	has(p7, assign(register_j, plus(register_j, n1))) -> true__
% 10.52/10.52  	has(p8, goto(loop)) -> true__
% 10.52/10.52  	labels(loop, p3) -> true__
% 10.52/10.52  	succeeds(Goal_state, Start_state) -> f1(true__, Goal_state, Start_state)
% 10.52/10.52  with the LPO induced by
% 10.52/10.52  	f7 > p8 > plus > p7 > n2 > times > p6 > p5 > out > p4 > n > equal_function > p3 > loop > n1 > register_k > p2 > n0 > register_j > assign > p1 > ifthen > f3 > f5 > has > f4 > f6 > f2 > succeeds > f1 > follows > labels > goto > false__ > true__
% 10.52/10.52  
% 10.52/10.52  % SZS output end Proof
% 10.52/10.52  
%------------------------------------------------------------------------------