%------------------------------------------------------------------------------ % File : Moca---0.1 % Problem : GRP458-1 : TPTP v8.1.0. Released v2.6.0. % Transfm : none % Format : tptp:raw % Command : moca.sh %s % Computer : n024.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:55:35 EDT 2022 % Result : Unsatisfiable 1.30s 1.44s % Output : Proof 1.30s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.03/0.13 % Problem : GRP458-1 : TPTP v8.1.0. Released v2.6.0. % 0.03/0.14 % Command : moca.sh %s % 0.15/0.36 % Computer : n024.cluster.edu % 0.15/0.36 % Model : x86_64 x86_64 % 0.15/0.36 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.15/0.36 % Memory : 8042.1875MB % 0.15/0.36 % OS : Linux 3.10.0-693.el7.x86_64 % 0.15/0.36 % CPULimit : 300 % 0.15/0.36 % WCLimit : 600 % 0.15/0.36 % DateTime : Tue Jun 14 03:51:18 EDT 2022 % 0.15/0.36 % CPUTime : % 1.30/1.44 % SZS status Unsatisfiable % 1.30/1.44 % SZS output start Proof % 1.30/1.44 The input problem is unsatisfiable because % 1.30/1.44 % 1.30/1.44 [1] the following set of Horn clauses is unsatisfiable: % 1.30/1.44 % 1.30/1.44 divide(divide(divide(A, A), divide(A, divide(B, divide(divide(identity, A), C)))), C) = B % 1.30/1.44 multiply(A, B) = divide(A, divide(identity, B)) % 1.30/1.44 inverse(A) = divide(identity, A) % 1.30/1.44 identity = divide(A, A) % 1.30/1.44 multiply(identity, a2) = a2 ==> \bottom % 1.30/1.44 % 1.30/1.44 This holds because % 1.30/1.44 % 1.30/1.44 [2] the following E entails the following G (Claessen-Smallbone's transformation (2018)): % 1.30/1.44 % 1.30/1.44 E: % 1.30/1.44 divide(divide(divide(A, A), divide(A, divide(B, divide(divide(identity, A), C)))), C) = B % 1.30/1.44 f1(a2) = false__ % 1.30/1.44 f1(multiply(identity, a2)) = true__ % 1.30/1.44 identity = divide(A, A) % 1.30/1.44 inverse(A) = divide(identity, A) % 1.30/1.44 multiply(A, B) = divide(A, divide(identity, B)) % 1.30/1.44 G: % 1.30/1.44 true__ = false__ % 1.30/1.44 % 1.30/1.44 This holds because % 1.30/1.44 % 1.30/1.44 [3] E entails the following ordered TRS and the lhs and rhs of G join by the TRS: % 1.30/1.44 % 1.30/1.44 % 1.30/1.44 divide(A, A) -> identity % 1.30/1.44 divide(X0, inverse(divide(inverse(X0), identity))) -> identity % 1.30/1.44 divide(Y0, identity) -> Y0 % 1.30/1.44 divide(divide(Y0, X0), inverse(X0)) -> Y0 % 1.30/1.44 divide(divide(Y0, inverse(Y1)), Y1) -> Y0 % 1.30/1.44 divide(divide(divide(A, A), divide(A, divide(B, divide(divide(identity, A), C)))), C) -> B % 1.30/1.44 divide(divide(inverse(identity), inverse(divide(Y1, divide(inverse(identity), Y2)))), Y2) -> Y1 % 1.30/1.44 divide(divide(inverse(identity), inverse(divide(Y1, inverse(Y2)))), Y2) -> Y1 % 1.30/1.44 divide(identity, A) -> inverse(A) % 1.30/1.44 divide(inverse(Y0), inverse(divide(Y0, identity))) -> identity % 1.30/1.44 divide(inverse(divide(Y0, Y1)), inverse(Y0)) -> Y1 % 1.30/1.44 divide(inverse(divide(Y0, divide(Y1, divide(inverse(Y0), Y2)))), Y2) -> Y1 % 1.30/1.44 divide(inverse(divide(Y0, divide(Y1, identity))), inverse(Y0)) -> Y1 % 1.30/1.44 divide(inverse(divide(Y0, identity)), Y2) -> divide(inverse(Y0), Y2) % 1.30/1.44 divide(inverse(divide(Y0, inverse(divide(inverse(Y0), Y2)))), Y2) -> identity % 1.30/1.44 divide(inverse(divide(inverse(X0), Y1)), X0) -> Y1 % 1.30/1.44 divide(inverse(divide(inverse(X0), inverse(divide(X0, Y1)))), Y1) -> identity % 1.30/1.44 divide(inverse(inverse(X0)), divide(X0, identity)) -> identity % 1.30/1.44 divide(inverse(inverse(Y0)), identity) -> Y0 % 1.30/1.44 divide(inverse(inverse(divide(X0, identity))), Y1) -> divide(inverse(inverse(X0)), Y1) % 1.30/1.44 divide(inverse(inverse(divide(Y0, X0))), inverse(divide(X0, identity))) -> Y0 % 1.30/1.44 divide(inverse(inverse(divide(Y0, inverse(Y1)))), Y1) -> Y0 % 1.30/1.44 divide(inverse(inverse(divide(Y1, identity))), identity) -> Y1 % 1.30/1.44 divide(inverse(inverse(inverse(X0))), inverse(divide(X0, identity))) -> identity % 1.30/1.44 divide(inverse(inverse(inverse(inverse(Y1)))), Y1) -> identity % 1.30/1.44 f1(a2) -> false__ % 1.30/1.44 f1(inverse(inverse(a2))) -> true__ % 1.30/1.44 f1(multiply(identity, a2)) -> true__ % 1.30/1.44 inverse(divide(Y0, divide(Y1, inverse(Y0)))) -> Y1 % 1.30/1.44 inverse(identity) -> identity % 1.30/1.44 inverse(inverse(X0)) -> X0 % 1.30/1.44 inverse(inverse(divide(Y1, identity))) -> Y1 % 1.30/1.44 multiply(A, B) -> divide(A, divide(identity, B)) % 1.30/1.44 true__ -> false__ % 1.30/1.44 with the LPO induced by % 1.30/1.44 a2 > f1 > multiply > divide > identity > inverse > true__ > false__ % 1.30/1.44 % 1.30/1.44 % SZS output end Proof % 1.30/1.44 %------------------------------------------------------------------------------