%------------------------------------------------------------------------------ % 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 %------------------------------------------------------------------------------