TSTP Solution File: KLE133+1 by Twee---2.4.2

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Twee---2.4.2
% Problem  : KLE133+1 : TPTP v8.1.2. Released v4.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof

% Computer : n032.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  : 300s
% DateTime : Thu Aug 31 05:35:59 EDT 2023

% Result   : Theorem 0.09s 0.37s
% Output   : Proof 0.14s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.08/0.09  % Problem  : KLE133+1 : TPTP v8.1.2. Released v4.0.0.
% 0.08/0.10  % Command  : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof
% 0.09/0.30  % Computer : n032.cluster.edu
% 0.09/0.30  % Model    : x86_64 x86_64
% 0.09/0.30  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.09/0.30  % Memory   : 8042.1875MB
% 0.09/0.30  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.09/0.30  % CPULimit : 300
% 0.09/0.30  % WCLimit  : 300
% 0.09/0.30  % DateTime : Tue Aug 29 11:36:01 EDT 2023
% 0.09/0.30  % CPUTime  : 
% 0.09/0.37  Command-line arguments: --set-join --lhs-weight 1 --no-flatten-goal --complete-subsets --goal-heuristic
% 0.09/0.37  
% 0.09/0.37  % SZS status Theorem
% 0.09/0.37  
% 0.09/0.38  % SZS output start Proof
% 0.09/0.38  Take the following subset of the input axioms:
% 0.09/0.38    fof(additive_commutativity, axiom, ![A, B]: addition(A, B)=addition(B, A)).
% 0.09/0.39    fof(additive_identity, axiom, ![A2]: addition(A2, zero)=A2).
% 0.09/0.39    fof(divergence1, axiom, ![X0]: forward_diamond(X0, divergence(X0))=divergence(X0)).
% 0.09/0.39    fof(domain1, axiom, ![X0_2]: multiplication(antidomain(X0_2), X0_2)=zero).
% 0.14/0.39    fof(domain3, axiom, ![X0_2]: addition(antidomain(antidomain(X0_2)), antidomain(X0_2))=one).
% 0.14/0.39    fof(domain4, axiom, ![X0_2]: domain(X0_2)=antidomain(antidomain(X0_2))).
% 0.14/0.39    fof(domain_difference, axiom, ![X1, X0_2]: domain_difference(X0_2, X1)=multiplication(domain(X0_2), antidomain(X1))).
% 0.14/0.39    fof(forward_diamond, axiom, ![X1_2, X0_2]: forward_diamond(X0_2, X1_2)=domain(multiplication(X0_2, domain(X1_2)))).
% 0.14/0.39    fof(goals, conjecture, ![X0_2]: ((![X1_2]: addition(domain(X1_2), forward_diamond(star(X0_2), domain_difference(domain(X1_2), forward_diamond(X0_2, domain(X1_2)))))=forward_diamond(star(X0_2), domain_difference(domain(X1_2), forward_diamond(X0_2, domain(X1_2)))) & ![X2]: forward_diamond(X0_2, forward_diamond(X0_2, domain(X2)))=forward_diamond(X0_2, domain(X2))) => ![X3]: addition(forward_diamond(X0_2, domain(X3)), forward_diamond(star(X0_2), domain_difference(domain(X3), forward_diamond(X0_2, domain(X3)))))=forward_diamond(star(X0_2), domain_difference(domain(X3), forward_diamond(X0_2, domain(X3)))))).
% 0.14/0.39    fof(left_annihilation, axiom, ![A2]: multiplication(zero, A2)=zero).
% 0.14/0.39    fof(multiplicative_left_identity, axiom, ![A2]: multiplication(one, A2)=A2).
% 0.14/0.39    fof(multiplicative_right_identity, axiom, ![A2]: multiplication(A2, one)=A2).
% 0.14/0.39    fof(right_annihilation, axiom, ![A2]: multiplication(A2, zero)=zero).
% 0.14/0.39  
% 0.14/0.39  Now clausify the problem and encode Horn clauses using encoding 3 of
% 0.14/0.39  http://www.cse.chalmers.se/~nicsma/papers/horn.pdf.
% 0.14/0.39  We repeatedly replace C & s=t => u=v by the two clauses:
% 0.14/0.39    fresh(y, y, x1...xn) = u
% 0.14/0.39    C => fresh(s, t, x1...xn) = v
% 0.14/0.39  where fresh is a fresh function symbol and x1..xn are the free
% 0.14/0.39  variables of u and v.
% 0.14/0.39  A predicate p(X) is encoded as p(X)=true (this is sound, because the
% 0.14/0.39  input problem has no model of domain size 1).
% 0.14/0.39  
% 0.14/0.39  The encoding turns the above axioms into the following unit equations and goals:
% 0.14/0.39  
% 0.14/0.39  Axiom 1 (domain4): domain(X) = antidomain(antidomain(X)).
% 0.14/0.39  Axiom 2 (multiplicative_right_identity): multiplication(X, one) = X.
% 0.14/0.39  Axiom 3 (right_annihilation): multiplication(X, zero) = zero.
% 0.14/0.39  Axiom 4 (multiplicative_left_identity): multiplication(one, X) = X.
% 0.14/0.39  Axiom 5 (left_annihilation): multiplication(zero, X) = zero.
% 0.14/0.39  Axiom 6 (additive_commutativity): addition(X, Y) = addition(Y, X).
% 0.14/0.39  Axiom 7 (additive_identity): addition(X, zero) = X.
% 0.14/0.39  Axiom 8 (divergence1): forward_diamond(X, divergence(X)) = divergence(X).
% 0.14/0.39  Axiom 9 (domain1): multiplication(antidomain(X), X) = zero.
% 0.14/0.39  Axiom 10 (domain_difference): domain_difference(X, Y) = multiplication(domain(X), antidomain(Y)).
% 0.14/0.39  Axiom 11 (forward_diamond): forward_diamond(X, Y) = domain(multiplication(X, domain(Y))).
% 0.14/0.39  Axiom 12 (goals_1): forward_diamond(x0, forward_diamond(x0, domain(X))) = forward_diamond(x0, domain(X)).
% 0.14/0.39  Axiom 13 (domain3): addition(antidomain(antidomain(X)), antidomain(X)) = one.
% 0.14/0.39  Axiom 14 (goals): addition(domain(X), forward_diamond(star(x0), domain_difference(domain(X), forward_diamond(x0, domain(X))))) = forward_diamond(star(x0), domain_difference(domain(X), forward_diamond(x0, domain(X)))).
% 0.14/0.39  
% 0.14/0.39  Lemma 15: addition(antidomain(X), domain(X)) = one.
% 0.14/0.39  Proof:
% 0.14/0.39    addition(antidomain(X), domain(X))
% 0.14/0.39  = { by axiom 6 (additive_commutativity) R->L }
% 0.14/0.39    addition(domain(X), antidomain(X))
% 0.14/0.39  = { by axiom 1 (domain4) }
% 0.14/0.39    addition(antidomain(antidomain(X)), antidomain(X))
% 0.14/0.39  = { by axiom 13 (domain3) }
% 0.14/0.39    one
% 0.14/0.39  
% 0.14/0.39  Lemma 16: forward_diamond(zero, X) = domain(zero).
% 0.14/0.39  Proof:
% 0.14/0.39    forward_diamond(zero, X)
% 0.14/0.39  = { by axiom 11 (forward_diamond) }
% 0.14/0.39    domain(multiplication(zero, domain(X)))
% 0.14/0.39  = { by axiom 5 (left_annihilation) }
% 0.14/0.39    domain(zero)
% 0.14/0.39  
% 0.14/0.39  Lemma 17: domain(zero) = divergence(zero).
% 0.14/0.39  Proof:
% 0.14/0.39    domain(zero)
% 0.14/0.39  = { by lemma 16 R->L }
% 0.14/0.39    forward_diamond(zero, divergence(zero))
% 0.14/0.39  = { by axiom 8 (divergence1) }
% 0.14/0.39    divergence(zero)
% 0.14/0.39  
% 0.14/0.39  Lemma 18: antidomain(one) = zero.
% 0.14/0.39  Proof:
% 0.14/0.39    antidomain(one)
% 0.14/0.39  = { by axiom 2 (multiplicative_right_identity) R->L }
% 0.14/0.39    multiplication(antidomain(one), one)
% 0.14/0.39  = { by axiom 9 (domain1) }
% 0.14/0.39    zero
% 0.14/0.39  
% 0.14/0.39  Lemma 19: addition(zero, X) = X.
% 0.14/0.39  Proof:
% 0.14/0.39    addition(zero, X)
% 0.14/0.39  = { by axiom 6 (additive_commutativity) R->L }
% 0.14/0.39    addition(X, zero)
% 0.14/0.39  = { by axiom 7 (additive_identity) }
% 0.14/0.39    X
% 0.14/0.39  
% 0.14/0.39  Lemma 20: domain(one) = one.
% 0.14/0.39  Proof:
% 0.14/0.39    domain(one)
% 0.14/0.39  = { by lemma 19 R->L }
% 0.14/0.39    addition(zero, domain(one))
% 0.14/0.39  = { by lemma 18 R->L }
% 0.14/0.39    addition(antidomain(one), domain(one))
% 0.14/0.39  = { by lemma 15 }
% 0.14/0.39    one
% 0.14/0.39  
% 0.14/0.39  Lemma 21: antidomain(zero) = one.
% 0.14/0.39  Proof:
% 0.14/0.39    antidomain(zero)
% 0.14/0.39  = { by lemma 18 R->L }
% 0.14/0.39    antidomain(antidomain(one))
% 0.14/0.39  = { by axiom 1 (domain4) R->L }
% 0.14/0.39    domain(one)
% 0.14/0.39  = { by lemma 20 }
% 0.14/0.39    one
% 0.14/0.39  
% 0.14/0.39  Lemma 22: divergence(zero) = zero.
% 0.14/0.39  Proof:
% 0.14/0.39    divergence(zero)
% 0.14/0.39  = { by lemma 17 R->L }
% 0.14/0.39    domain(zero)
% 0.14/0.39  = { by axiom 1 (domain4) }
% 0.14/0.39    antidomain(antidomain(zero))
% 0.14/0.39  = { by lemma 21 }
% 0.14/0.39    antidomain(one)
% 0.14/0.39  = { by lemma 18 }
% 0.14/0.39    zero
% 0.14/0.39  
% 0.14/0.39  Lemma 23: forward_diamond(X, zero) = zero.
% 0.14/0.39  Proof:
% 0.14/0.39    forward_diamond(X, zero)
% 0.14/0.39  = { by lemma 22 R->L }
% 0.14/0.39    forward_diamond(X, divergence(zero))
% 0.14/0.39  = { by lemma 17 R->L }
% 0.14/0.39    forward_diamond(X, domain(zero))
% 0.14/0.39  = { by lemma 16 R->L }
% 0.14/0.39    forward_diamond(X, forward_diamond(zero, zero))
% 0.14/0.39  = { by axiom 11 (forward_diamond) }
% 0.14/0.39    domain(multiplication(X, domain(forward_diamond(zero, zero))))
% 0.14/0.39  = { by axiom 11 (forward_diamond) }
% 0.14/0.39    domain(multiplication(X, domain(domain(multiplication(zero, domain(zero))))))
% 0.14/0.39  = { by axiom 4 (multiplicative_left_identity) R->L }
% 0.14/0.39    domain(multiplication(X, domain(multiplication(one, domain(multiplication(zero, domain(zero)))))))
% 0.14/0.39  = { by axiom 11 (forward_diamond) R->L }
% 0.14/0.39    domain(multiplication(X, forward_diamond(one, multiplication(zero, domain(zero)))))
% 0.14/0.39  = { by lemma 17 }
% 0.14/0.39    domain(multiplication(X, forward_diamond(one, multiplication(zero, divergence(zero)))))
% 0.14/0.39  = { by lemma 22 }
% 0.14/0.39    domain(multiplication(X, forward_diamond(one, multiplication(zero, zero))))
% 0.14/0.39  = { by axiom 3 (right_annihilation) }
% 0.14/0.39    domain(multiplication(X, forward_diamond(one, zero)))
% 0.14/0.39  = { by lemma 20 R->L }
% 0.14/0.39    domain(multiplication(X, forward_diamond(domain(one), zero)))
% 0.14/0.39  = { by lemma 21 R->L }
% 0.14/0.39    domain(multiplication(X, forward_diamond(domain(antidomain(zero)), zero)))
% 0.14/0.39  = { by axiom 1 (domain4) }
% 0.14/0.39    domain(multiplication(X, forward_diamond(antidomain(antidomain(antidomain(zero))), zero)))
% 0.14/0.39  = { by axiom 1 (domain4) R->L }
% 0.14/0.39    domain(multiplication(X, forward_diamond(antidomain(domain(zero)), zero)))
% 0.14/0.39  = { by axiom 11 (forward_diamond) }
% 0.14/0.39    domain(multiplication(X, domain(multiplication(antidomain(domain(zero)), domain(zero)))))
% 0.14/0.39  = { by axiom 9 (domain1) }
% 0.14/0.39    domain(multiplication(X, domain(zero)))
% 0.14/0.39  = { by lemma 17 }
% 0.14/0.39    domain(multiplication(X, divergence(zero)))
% 0.14/0.39  = { by lemma 22 }
% 0.14/0.39    domain(multiplication(X, zero))
% 0.14/0.39  = { by axiom 3 (right_annihilation) }
% 0.14/0.39    domain(zero)
% 0.14/0.39  = { by lemma 17 }
% 0.14/0.39    divergence(zero)
% 0.14/0.39  = { by lemma 22 }
% 0.14/0.39    zero
% 0.14/0.39  
% 0.14/0.39  Lemma 24: domain_difference(X, X) = zero.
% 0.14/0.39  Proof:
% 0.14/0.39    domain_difference(X, X)
% 0.14/0.39  = { by axiom 10 (domain_difference) }
% 0.14/0.39    multiplication(domain(X), antidomain(X))
% 0.14/0.39  = { by axiom 1 (domain4) }
% 0.14/0.39    multiplication(antidomain(antidomain(X)), antidomain(X))
% 0.14/0.39  = { by axiom 9 (domain1) }
% 0.14/0.39    zero
% 0.14/0.39  
% 0.14/0.39  Lemma 25: forward_diamond(X, one) = domain(X).
% 0.14/0.39  Proof:
% 0.14/0.39    forward_diamond(X, one)
% 0.14/0.39  = { by axiom 11 (forward_diamond) }
% 0.14/0.39    domain(multiplication(X, domain(one)))
% 0.14/0.39  = { by lemma 20 }
% 0.14/0.39    domain(multiplication(X, one))
% 0.14/0.39  = { by axiom 2 (multiplicative_right_identity) }
% 0.14/0.39    domain(X)
% 0.14/0.39  
% 0.14/0.39  Lemma 26: forward_diamond(x0, domain(x0)) = domain(x0).
% 0.14/0.39  Proof:
% 0.14/0.39    forward_diamond(x0, domain(x0))
% 0.14/0.39  = { by lemma 25 R->L }
% 0.14/0.39    forward_diamond(x0, forward_diamond(x0, one))
% 0.14/0.39  = { by lemma 20 R->L }
% 0.14/0.39    forward_diamond(x0, forward_diamond(x0, domain(one)))
% 0.14/0.39  = { by axiom 12 (goals_1) }
% 0.14/0.39    forward_diamond(x0, domain(one))
% 0.14/0.39  = { by lemma 20 }
% 0.14/0.39    forward_diamond(x0, one)
% 0.14/0.39  = { by lemma 25 }
% 0.14/0.39    domain(x0)
% 0.14/0.39  
% 0.14/0.39  Lemma 27: x0 = zero.
% 0.14/0.39  Proof:
% 0.14/0.39    x0
% 0.14/0.39  = { by axiom 4 (multiplicative_left_identity) R->L }
% 0.14/0.39    multiplication(one, x0)
% 0.14/0.39  = { by lemma 15 R->L }
% 0.14/0.39    multiplication(addition(antidomain(x0), domain(x0)), x0)
% 0.14/0.39  = { by axiom 7 (additive_identity) R->L }
% 0.14/0.39    multiplication(addition(antidomain(x0), addition(domain(x0), zero)), x0)
% 0.14/0.39  = { by lemma 23 R->L }
% 0.14/0.39    multiplication(addition(antidomain(x0), addition(domain(x0), forward_diamond(star(x0), zero))), x0)
% 0.14/0.39  = { by lemma 24 R->L }
% 0.14/0.39    multiplication(addition(antidomain(x0), addition(domain(x0), forward_diamond(star(x0), domain_difference(domain(x0), domain(x0))))), x0)
% 0.14/0.39  = { by lemma 26 R->L }
% 0.14/0.39    multiplication(addition(antidomain(x0), addition(domain(x0), forward_diamond(star(x0), domain_difference(domain(x0), forward_diamond(x0, domain(x0)))))), x0)
% 0.14/0.39  = { by axiom 14 (goals) }
% 0.14/0.39    multiplication(addition(antidomain(x0), forward_diamond(star(x0), domain_difference(domain(x0), forward_diamond(x0, domain(x0))))), x0)
% 0.14/0.39  = { by lemma 26 }
% 0.14/0.39    multiplication(addition(antidomain(x0), forward_diamond(star(x0), domain_difference(domain(x0), domain(x0)))), x0)
% 0.14/0.39  = { by lemma 24 }
% 0.14/0.39    multiplication(addition(antidomain(x0), forward_diamond(star(x0), zero)), x0)
% 0.14/0.39  = { by lemma 23 }
% 0.14/0.39    multiplication(addition(antidomain(x0), zero), x0)
% 0.14/0.39  = { by axiom 7 (additive_identity) }
% 0.14/0.39    multiplication(antidomain(x0), x0)
% 0.14/0.39  = { by axiom 9 (domain1) }
% 0.14/0.39    zero
% 0.14/0.39  
% 0.14/0.39  Goal 1 (goals_2): addition(forward_diamond(x0, domain(x3)), forward_diamond(star(x0), domain_difference(domain(x3), forward_diamond(x0, domain(x3))))) = forward_diamond(star(x0), domain_difference(domain(x3), forward_diamond(x0, domain(x3)))).
% 0.14/0.39  Proof:
% 0.14/0.39    addition(forward_diamond(x0, domain(x3)), forward_diamond(star(x0), domain_difference(domain(x3), forward_diamond(x0, domain(x3)))))
% 0.14/0.39  = { by lemma 27 }
% 0.14/0.39    addition(forward_diamond(zero, domain(x3)), forward_diamond(star(x0), domain_difference(domain(x3), forward_diamond(x0, domain(x3)))))
% 0.14/0.39  = { by lemma 27 }
% 0.14/0.39    addition(forward_diamond(zero, domain(x3)), forward_diamond(star(zero), domain_difference(domain(x3), forward_diamond(x0, domain(x3)))))
% 0.14/0.39  = { by lemma 27 }
% 0.14/0.39    addition(forward_diamond(zero, domain(x3)), forward_diamond(star(zero), domain_difference(domain(x3), forward_diamond(zero, domain(x3)))))
% 0.14/0.39  = { by lemma 16 }
% 0.14/0.39    addition(domain(zero), forward_diamond(star(zero), domain_difference(domain(x3), forward_diamond(zero, domain(x3)))))
% 0.14/0.39  = { by lemma 16 }
% 0.14/0.39    addition(domain(zero), forward_diamond(star(zero), domain_difference(domain(x3), domain(zero))))
% 0.14/0.39  = { by lemma 17 }
% 0.14/0.39    addition(divergence(zero), forward_diamond(star(zero), domain_difference(domain(x3), domain(zero))))
% 0.14/0.39  = { by lemma 17 }
% 0.14/0.39    addition(divergence(zero), forward_diamond(star(zero), domain_difference(domain(x3), divergence(zero))))
% 0.14/0.39  = { by lemma 22 }
% 0.14/0.39    addition(zero, forward_diamond(star(zero), domain_difference(domain(x3), divergence(zero))))
% 0.14/0.39  = { by lemma 22 }
% 0.14/0.39    addition(zero, forward_diamond(star(zero), domain_difference(domain(x3), zero)))
% 0.14/0.39  = { by lemma 19 }
% 0.14/0.39    forward_diamond(star(zero), domain_difference(domain(x3), zero))
% 0.14/0.39  = { by lemma 22 R->L }
% 0.14/0.39    forward_diamond(star(zero), domain_difference(domain(x3), divergence(zero)))
% 0.14/0.39  = { by lemma 17 R->L }
% 0.14/0.39    forward_diamond(star(zero), domain_difference(domain(x3), domain(zero)))
% 0.14/0.39  = { by lemma 16 R->L }
% 0.14/0.39    forward_diamond(star(zero), domain_difference(domain(x3), forward_diamond(zero, domain(x3))))
% 0.14/0.39  = { by lemma 27 R->L }
% 0.14/0.39    forward_diamond(star(x0), domain_difference(domain(x3), forward_diamond(zero, domain(x3))))
% 0.14/0.39  = { by lemma 27 R->L }
% 0.14/0.39    forward_diamond(star(x0), domain_difference(domain(x3), forward_diamond(x0, domain(x3))))
% 0.14/0.39  % SZS output end Proof
% 0.14/0.39  
% 0.14/0.39  RESULT: Theorem (the conjecture is true).
%------------------------------------------------------------------------------