TSTP Solution File: BOO010-4 by Moca---0.1

View Problem - Process Solution

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

% Computer : n018.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 : Thu Jul 14 23:46:21 EDT 2022

% Result   : Unsatisfiable 4.35s 4.50s
% Output   : Proof 4.35s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.10/0.12  % Problem  : BOO010-4 : TPTP v8.1.0. Released v1.1.0.
% 0.10/0.13  % Command  : moca.sh %s
% 0.13/0.34  % Computer : n018.cluster.edu
% 0.13/0.34  % Model    : x86_64 x86_64
% 0.13/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.13/0.34  % Memory   : 8042.1875MB
% 0.13/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.13/0.34  % CPULimit : 300
% 0.13/0.34  % WCLimit  : 600
% 0.13/0.34  % DateTime : Thu Jun  2 00:21:44 EDT 2022
% 0.13/0.34  % CPUTime  : 
% 4.35/4.50  % SZS status Unsatisfiable
% 4.35/4.50  % SZS output start Proof
% 4.35/4.50  The input problem is unsatisfiable because
% 4.35/4.50  
% 4.35/4.50  [1] the following set of Horn clauses is unsatisfiable:
% 4.35/4.50  
% 4.35/4.50  	add(X, Y) = add(Y, X)
% 4.35/4.50  	multiply(X, Y) = multiply(Y, X)
% 4.35/4.50  	add(X, multiply(Y, Z)) = multiply(add(X, Y), add(X, Z))
% 4.35/4.50  	multiply(X, add(Y, Z)) = add(multiply(X, Y), multiply(X, Z))
% 4.35/4.50  	add(X, additive_identity) = X
% 4.35/4.50  	multiply(X, multiplicative_identity) = X
% 4.35/4.50  	add(X, inverse(X)) = multiplicative_identity
% 4.35/4.50  	multiply(X, inverse(X)) = additive_identity
% 4.35/4.50  	add(a, multiply(a, b)) = a ==> \bottom
% 4.35/4.50  
% 4.35/4.50  This holds because
% 4.35/4.50  
% 4.35/4.50  [2] the following E entails the following G (Claessen-Smallbone's transformation (2018)):
% 4.35/4.50  
% 4.35/4.50  E:
% 4.35/4.50  	add(X, Y) = add(Y, X)
% 4.35/4.50  	add(X, additive_identity) = X
% 4.35/4.50  	add(X, inverse(X)) = multiplicative_identity
% 4.35/4.50  	add(X, multiply(Y, Z)) = multiply(add(X, Y), add(X, Z))
% 4.35/4.50  	f1(a) = false__
% 4.35/4.50  	f1(add(a, multiply(a, b))) = true__
% 4.35/4.50  	multiply(X, Y) = multiply(Y, X)
% 4.35/4.50  	multiply(X, add(Y, Z)) = add(multiply(X, Y), multiply(X, Z))
% 4.35/4.50  	multiply(X, inverse(X)) = additive_identity
% 4.35/4.50  	multiply(X, multiplicative_identity) = X
% 4.35/4.50  G:
% 4.35/4.50  	true__ = false__
% 4.35/4.50  
% 4.35/4.50  This holds because
% 4.35/4.50  
% 4.35/4.50  [3] E entails the following ordered TRS and the lhs and rhs of G join by the TRS:
% 4.35/4.50  
% 4.35/4.50  	add(X, Y) = add(Y, X)
% 4.35/4.50  	multiply(X, Y) = multiply(Y, X)
% 4.35/4.50  	add(X, additive_identity) -> X
% 4.35/4.50  	add(X, inverse(X)) -> inverse(additive_identity)
% 4.35/4.50  	add(Y0, add(Y1, Y0)) -> add(Y0, Y1)
% 4.35/4.50  	add(Y0, inverse(additive_identity)) -> inverse(additive_identity)
% 4.35/4.50  	add(Y0, inverse(inverse(Y0))) -> Y0
% 4.35/4.50  	add(Y0, multiply(Y0, Y1)) -> Y0
% 4.35/4.50  	add(Y0, multiply(Y1, Y0)) -> Y0
% 4.35/4.50  	add(Y1, Y1) -> Y1
% 4.35/4.50  	add(add(Y0, multiply(Y0, Y1)), multiply(inverse(Y1), Y0)) -> Y0
% 4.35/4.50  	add(add(Y0, multiply(Y1, Y0)), multiply(inverse(Y1), Y0)) -> Y0
% 4.35/4.50  	add(additive_identity, Y0) -> Y0
% 4.35/4.50  	add(inverse(additive_identity), Y0) -> inverse(additive_identity)
% 4.35/4.50  	add(multiply(Y0, Y1), multiply(Y0, inverse(Y1))) -> Y0
% 4.35/4.50  	add(multiply(Y0, Y1), multiply(inverse(Y1), Y0)) -> Y0
% 4.35/4.50  	add(multiply(Y1, Y0), multiply(Y0, inverse(Y1))) -> Y0
% 4.35/4.50  	add(multiply(inverse(Y1), Y0), add(Y0, multiply(Y0, Y1))) -> Y0
% 4.35/4.50  	f1(a) -> false__
% 4.35/4.50  	f1(add(a, multiply(a, b))) -> true__
% 4.35/4.50  	inverse(inverse(Y0)) -> Y0
% 4.35/4.50  	inverse(inverse(additive_identity)) -> additive_identity
% 4.35/4.50  	multiplicative_identity -> inverse(additive_identity)
% 4.35/4.50  	multiply(X, add(Y, Z)) -> add(multiply(X, Y), multiply(X, Z))
% 4.35/4.50  	multiply(X, inverse(X)) -> additive_identity
% 4.35/4.50  	multiply(X0, multiply(X0, X1)) -> multiply(X0, X1)
% 4.35/4.50  	multiply(Y0, Y0) -> Y0
% 4.35/4.50  	multiply(Y0, add(Y1, Y0)) -> Y0
% 4.35/4.50  	multiply(Y0, additive_identity) -> additive_identity
% 4.35/4.50  	multiply(Y0, inverse(additive_identity)) -> Y0
% 4.35/4.50  	multiply(Y0, inverse(inverse(Y0))) -> Y0
% 4.35/4.50  	multiply(Y0, multiply(Y1, Y0)) -> multiply(Y0, Y1)
% 4.35/4.50  	multiply(Y1, inverse(inverse(Y1))) -> inverse(inverse(Y1))
% 4.35/4.50  	multiply(add(X, Y), add(X, Z)) -> add(X, multiply(Y, Z))
% 4.35/4.50  	multiply(add(Y0, Y0), add(Y0, Y1)) -> add(multiply(Y0, Y1), Y0)
% 4.35/4.50  	multiply(add(Y0, Y1), add(Y0, inverse(Y1))) -> Y0
% 4.35/4.50  	multiply(add(Y0, Y1), add(Y0, multiplicative_identity)) -> add(Y0, Y1)
% 4.35/4.50  	multiply(add(Y0, Y1), add(inverse(Y1), Y0)) -> Y0
% 4.35/4.50  	multiply(add(Y1, Y0), add(Y0, inverse(Y1))) -> Y0
% 4.35/4.50  	multiply(additive_identity, Y1) -> additive_identity
% 4.35/4.50  	multiply(inverse(additive_identity), Y0) -> Y0
% 4.35/4.50  	true__ -> false__
% 4.35/4.50  with the LPO induced by
% 4.35/4.50  	b > multiply > add > multiplicative_identity > additive_identity > inverse > a > f1 > true__ > false__
% 4.35/4.50  
% 4.35/4.50  % SZS output end Proof
% 4.35/4.50  
%------------------------------------------------------------------------------