%------------------------------------------------------------------------------ % File : Moca---0.1 % Problem : GRP548-1 : TPTP v8.1.0. Bugfixed v2.7.0. % Transfm : none % Format : tptp:raw % Command : moca.sh %s % Computer : n008.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 : Sat Jul 16 10:56:11 EDT 2022 % Result : Unsatisfiable 12.96s 13.06s % Output : Proof 12.96s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.08/0.12 % Problem : GRP548-1 : TPTP v8.1.0. Bugfixed v2.7.0. % 0.08/0.13 % Command : moca.sh %s % 0.12/0.34 % Computer : n008.cluster.edu % 0.12/0.34 % Model : x86_64 x86_64 % 0.12/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.12/0.34 % Memory : 8042.1875MB % 0.12/0.34 % OS : Linux 3.10.0-693.el7.x86_64 % 0.12/0.34 % CPULimit : 300 % 0.12/0.34 % WCLimit : 600 % 0.12/0.34 % DateTime : Tue Jun 14 09:28:07 EDT 2022 % 0.12/0.34 % CPUTime : % 12.96/13.06 % SZS status Unsatisfiable % 12.96/13.06 % SZS output start Proof % 12.96/13.06 The input problem is unsatisfiable because % 12.96/13.06 % 12.96/13.06 [1] the following set of Horn clauses is unsatisfiable: % 12.96/13.06 % 12.96/13.06 divide(divide(identity, divide(A, B)), divide(divide(B, C), A)) = C % 12.96/13.06 multiply(A, B) = divide(A, divide(identity, B)) % 12.96/13.06 inverse(A) = divide(identity, A) % 12.96/13.06 identity = divide(A, A) % 12.96/13.06 multiply(a, b) = multiply(b, a) ==> \bottom % 12.96/13.06 % 12.96/13.06 This holds because % 12.96/13.06 % 12.96/13.06 [2] the following E entails the following G (Claessen-Smallbone's transformation (2018)): % 12.96/13.06 % 12.96/13.06 E: % 12.96/13.06 divide(divide(identity, divide(A, B)), divide(divide(B, C), A)) = C % 12.96/13.06 f1(multiply(a, b)) = true__ % 12.96/13.06 f1(multiply(b, a)) = false__ % 12.96/13.06 identity = divide(A, A) % 12.96/13.06 inverse(A) = divide(identity, A) % 12.96/13.06 multiply(A, B) = divide(A, divide(identity, B)) % 12.96/13.06 G: % 12.96/13.06 true__ = false__ % 12.96/13.06 % 12.96/13.06 This holds because % 12.96/13.06 % 12.96/13.06 [3] E entails the following ordered TRS and the lhs and rhs of G join by the TRS: % 12.96/13.06 % 12.96/13.06 divide(X0, Y1) = divide(divide(identity, Y1), divide(identity, X0)) % 12.96/13.06 divide(X1, divide(Y1, divide(identity, X1))) = divide(identity, Y1) % 12.96/13.06 divide(Y0, divide(identity, X1)) = divide(X1, divide(identity, Y0)) % 12.96/13.06 divide(divide(X1, X0), Y1) = divide(divide(identity, Y1), divide(X0, X1)) % 12.96/13.06 divide(divide(identity, X0), X1) = divide(divide(identity, X1), X0) % 12.96/13.06 divide(identity, divide(X1, Y0)) = divide(Y0, X1) % 12.96/13.06 divide(A, A) -> identity % 12.96/13.06 divide(Y0, divide(Y0, Y1)) -> Y1 % 12.96/13.06 divide(Y0, divide(divide(identity, Y1), divide(identity, Y0))) -> Y1 % 12.96/13.06 divide(Y0, divide(identity, divide(Y1, Y0))) -> Y1 % 12.96/13.06 divide(Y0, identity) -> Y0 % 12.96/13.06 divide(divide(X0, X1), X0) -> divide(identity, X1) % 12.96/13.06 divide(divide(X0, X1), divide(identity, divide(X1, X0))) -> identity % 12.96/13.06 divide(divide(X1, X0), divide(Y1, divide(X0, X1))) -> divide(identity, Y1) % 12.96/13.06 divide(divide(Y0, divide(X0, X1)), divide(X1, X0)) -> Y0 % 12.96/13.06 divide(divide(Y1, X1), divide(identity, X1)) -> Y1 % 12.96/13.06 divide(divide(false__, divide(Y0, divide(identity, false__))), divide(identity, Y0)) -> identity % 12.96/13.06 divide(divide(identity, Y0), divide(X0, Y0)) -> divide(identity, X0) % 12.96/13.06 divide(divide(identity, Y0), divide(divide(identity, Y1), Y0)) -> Y1 % 12.96/13.06 divide(divide(identity, Y1), divide(identity, divide(Y1, X1))) -> divide(identity, X1) % 12.96/13.06 divide(divide(identity, divide(A, B)), divide(divide(B, C), A)) -> C % 12.96/13.06 divide(divide(identity, divide(Y0, Y1)), divide(Y1, Y0)) -> identity % 12.96/13.06 divide(divide(identity, divide(Y0, Y1)), divide(identity, Y0)) -> Y1 % 12.96/13.06 divide(divide(identity, divide(divide(identity, Y0), Y1)), Y0) -> Y1 % 12.96/13.06 divide(divide(identity, divide(divide(identity, Y1), X1)), X1) -> Y1 % 12.96/13.06 divide(false__, multiply(divide(X1, Y0), false__)) -> divide(Y0, X1) % 12.96/13.06 divide(identity, divide(divide(identity, X1), Y0)) -> divide(X1, divide(identity, Y0)) % 12.96/13.06 divide(identity, divide(divide(identity, X1), divide(Y1, X1))) -> Y1 % 12.96/13.06 divide(identity, divide(divide(identity, X1), divide(identity, X0))) -> divide(X1, X0) % 12.96/13.06 divide(inverse(divide(divide(Y1, Y2), Y1)), identity) -> Y2 % 12.96/13.06 divide(inverse(identity), divide(divide(Y1, Y2), Y1)) -> Y2 % 12.96/13.06 f1(divide(a, divide(identity, b))) -> true__ % 12.96/13.06 f1(divide(b, divide(identity, a))) -> false__ % 12.96/13.06 f1(divide(identity, divide(divide(identity, b), a))) -> true__ % 12.96/13.06 inverse(A) -> divide(identity, A) % 12.96/13.06 inverse(divide(divide(Y0, Y1), Y0)) -> Y1 % 12.96/13.06 multiply(A, B) -> divide(A, divide(identity, B)) % 12.96/13.06 multiply(divide(false__, multiply(Y1, false__)), Y1) -> identity % 12.96/13.06 true__ -> false__ % 12.96/13.06 with the LPO induced by % 12.96/13.06 a > b > f1 > multiply > inverse > divide > identity > true__ > false__ % 12.96/13.06 % 12.96/13.06 % SZS output end Proof % 12.96/13.06 %------------------------------------------------------------------------------