TSTP Solution File: RNG001-1 by Twee---2.4.2

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Twee---2.4.2
% Problem  : RNG001-1 : TPTP v8.1.2. Released v1.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 : n027.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 13:58:41 EDT 2023

% Result   : Unsatisfiable 9.72s 1.63s
% Output   : Proof 9.72s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem  : RNG001-1 : TPTP v8.1.2. Released v1.0.0.
% 0.00/0.13  % Command  : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof
% 0.16/0.34  % Computer : n027.cluster.edu
% 0.16/0.34  % Model    : x86_64 x86_64
% 0.16/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.16/0.34  % Memory   : 8042.1875MB
% 0.16/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.16/0.34  % CPULimit : 300
% 0.16/0.34  % WCLimit  : 300
% 0.16/0.34  % DateTime : Sun Aug 27 02:56:20 EDT 2023
% 0.16/0.34  % CPUTime  : 
% 9.72/1.63  Command-line arguments: --flip-ordering --lhs-weight 1 --depth-weight 60 --distributivity-heuristic
% 9.72/1.63  
% 9.72/1.63  % SZS status Unsatisfiable
% 9.72/1.63  
% 9.72/1.64  % SZS output start Proof
% 9.72/1.64  Take the following subset of the input axioms:
% 9.72/1.64    fof(addition_is_well_defined, axiom, ![X, Y, U, V]: (~sum(X, Y, U) | (~sum(X, Y, V) | U=V))).
% 9.72/1.64    fof(additive_identity1, axiom, ![X2]: sum(additive_identity, X2, X2)).
% 9.72/1.64    fof(additive_identity2, axiom, ![X2]: sum(X2, additive_identity, X2)).
% 9.72/1.64    fof(associativity_of_addition1, axiom, ![Z, W, X2, Y2, U2, V5]: (~sum(X2, Y2, U2) | (~sum(Y2, Z, V5) | (~sum(U2, Z, W) | sum(X2, V5, W))))).
% 9.72/1.64    fof(closure_of_addition, axiom, ![X2, Y2]: sum(X2, Y2, add(X2, Y2))).
% 9.72/1.64    fof(closure_of_multiplication, axiom, ![X2, Y2]: product(X2, Y2, multiply(X2, Y2))).
% 9.72/1.64    fof(distributivity1, axiom, ![V1, V2, V3, V4, X2, Y2, Z2]: (~product(X2, Y2, V1) | (~product(X2, Z2, V2) | (~sum(Y2, Z2, V3) | (~product(X2, V3, V4) | sum(V1, V2, V4)))))).
% 9.72/1.64    fof(distributivity2, axiom, ![X2, Y2, Z2, V1_2, V2_2, V3_2, V4_2]: (~product(X2, Y2, V1_2) | (~product(X2, Z2, V2_2) | (~sum(Y2, Z2, V3_2) | (~sum(V1_2, V2_2, V4_2) | product(X2, V3_2, V4_2)))))).
% 9.72/1.64    fof(left_inverse, axiom, ![X2]: sum(additive_inverse(X2), X2, additive_identity)).
% 9.72/1.64    fof(prove_a_times_0_is_0, negated_conjecture, ~product(a, additive_identity, additive_identity)).
% 9.72/1.64    fof(right_inverse, axiom, ![X2]: sum(X2, additive_inverse(X2), additive_identity)).
% 9.72/1.64  
% 9.72/1.64  Now clausify the problem and encode Horn clauses using encoding 3 of
% 9.72/1.64  http://www.cse.chalmers.se/~nicsma/papers/horn.pdf.
% 9.72/1.64  We repeatedly replace C & s=t => u=v by the two clauses:
% 9.72/1.64    fresh(y, y, x1...xn) = u
% 9.72/1.64    C => fresh(s, t, x1...xn) = v
% 9.72/1.64  where fresh is a fresh function symbol and x1..xn are the free
% 9.72/1.64  variables of u and v.
% 9.72/1.64  A predicate p(X) is encoded as p(X)=true (this is sound, because the
% 9.72/1.64  input problem has no model of domain size 1).
% 9.72/1.64  
% 9.72/1.64  The encoding turns the above axioms into the following unit equations and goals:
% 9.72/1.64  
% 9.72/1.64  Axiom 1 (additive_identity2): sum(X, additive_identity, X) = true.
% 9.72/1.64  Axiom 2 (additive_identity1): sum(additive_identity, X, X) = true.
% 9.72/1.64  Axiom 3 (right_inverse): sum(X, additive_inverse(X), additive_identity) = true.
% 9.72/1.64  Axiom 4 (left_inverse): sum(additive_inverse(X), X, additive_identity) = true.
% 9.72/1.64  Axiom 5 (addition_is_well_defined): fresh3(X, X, Y, Z) = Z.
% 9.72/1.64  Axiom 6 (closure_of_addition): sum(X, Y, add(X, Y)) = true.
% 9.72/1.64  Axiom 7 (closure_of_multiplication): product(X, Y, multiply(X, Y)) = true.
% 9.72/1.64  Axiom 8 (associativity_of_addition1): fresh33(X, X, Y, Z, W) = true.
% 9.72/1.64  Axiom 9 (distributivity1): fresh25(X, X, Y, Z, W) = true.
% 9.72/1.64  Axiom 10 (distributivity2): fresh21(X, X, Y, Z, W) = true.
% 9.72/1.64  Axiom 11 (addition_is_well_defined): fresh4(X, X, Y, Z, W, V) = W.
% 9.72/1.64  Axiom 12 (distributivity2): fresh19(X, X, Y, Z, W, V, U) = product(Y, V, U).
% 9.72/1.64  Axiom 13 (associativity_of_addition1): fresh9(X, X, Y, Z, W, V, U) = sum(Y, V, U).
% 9.72/1.64  Axiom 14 (associativity_of_addition1): fresh32(X, X, Y, Z, W, V, U, T) = fresh33(sum(Y, Z, W), true, Y, U, T).
% 9.72/1.64  Axiom 15 (distributivity1): fresh23(X, X, Y, Z, W, V, U, T) = sum(Z, V, T).
% 9.72/1.64  Axiom 16 (distributivity1): fresh24(X, X, Y, Z, W, V, U, T, S) = fresh25(sum(Z, V, T), true, W, U, S).
% 9.72/1.64  Axiom 17 (distributivity2): fresh20(X, X, Y, Z, W, V, U, T, S) = fresh21(sum(Z, V, T), true, Y, T, S).
% 9.72/1.64  Axiom 18 (addition_is_well_defined): fresh4(sum(X, Y, Z), true, X, Y, W, Z) = fresh3(sum(X, Y, W), true, W, Z).
% 9.72/1.64  Axiom 19 (distributivity2): fresh18(X, X, Y, Z, W, V, U, T, S) = fresh19(sum(W, U, S), true, Y, Z, V, T, S).
% 9.72/1.64  Axiom 20 (associativity_of_addition1): fresh32(sum(X, Y, Z), true, W, V, X, Y, U, Z) = fresh9(sum(V, Y, U), true, W, V, X, U, Z).
% 9.72/1.64  Axiom 21 (distributivity1): fresh22(X, X, Y, Z, W, V, U, T, S) = fresh23(product(Y, Z, W), true, Z, W, V, U, T, S).
% 9.72/1.64  Axiom 22 (distributivity1): fresh22(product(X, Y, Z), true, X, W, V, U, T, Y, Z) = fresh24(product(X, U, T), true, X, W, V, U, T, Y, Z).
% 9.72/1.64  Axiom 23 (distributivity2): fresh18(product(X, Y, Z), true, X, W, V, Y, Z, U, T) = fresh20(product(X, W, V), true, X, W, V, Y, Z, U, T).
% 9.72/1.64  
% 9.72/1.64  Lemma 24: fresh25(sum(X, Y, Z), true, multiply(W, X), multiply(W, Y), multiply(W, Z)) = sum(multiply(W, X), multiply(W, Y), multiply(W, Z)).
% 9.72/1.64  Proof:
% 9.72/1.64    fresh25(sum(X, Y, Z), true, multiply(W, X), multiply(W, Y), multiply(W, Z))
% 9.72/1.64  = { by axiom 16 (distributivity1) R->L }
% 9.72/1.64    fresh24(true, true, W, X, multiply(W, X), Y, multiply(W, Y), Z, multiply(W, Z))
% 9.72/1.64  = { by axiom 7 (closure_of_multiplication) R->L }
% 9.72/1.64    fresh24(product(W, Y, multiply(W, Y)), true, W, X, multiply(W, X), Y, multiply(W, Y), Z, multiply(W, Z))
% 9.72/1.64  = { by axiom 22 (distributivity1) R->L }
% 9.72/1.64    fresh22(product(W, Z, multiply(W, Z)), true, W, X, multiply(W, X), Y, multiply(W, Y), Z, multiply(W, Z))
% 9.72/1.64  = { by axiom 7 (closure_of_multiplication) }
% 9.72/1.64    fresh22(true, true, W, X, multiply(W, X), Y, multiply(W, Y), Z, multiply(W, Z))
% 9.72/1.64  = { by axiom 21 (distributivity1) }
% 9.72/1.64    fresh23(product(W, X, multiply(W, X)), true, X, multiply(W, X), Y, multiply(W, Y), Z, multiply(W, Z))
% 9.72/1.64  = { by axiom 7 (closure_of_multiplication) }
% 9.72/1.64    fresh23(true, true, X, multiply(W, X), Y, multiply(W, Y), Z, multiply(W, Z))
% 9.72/1.64  = { by axiom 15 (distributivity1) }
% 9.72/1.64    sum(multiply(W, X), multiply(W, Y), multiply(W, Z))
% 9.72/1.64  
% 9.72/1.64  Lemma 25: fresh3(sum(X, additive_identity, Y), true, Y, X) = Y.
% 9.72/1.64  Proof:
% 9.72/1.64    fresh3(sum(X, additive_identity, Y), true, Y, X)
% 9.72/1.64  = { by axiom 18 (addition_is_well_defined) R->L }
% 9.72/1.64    fresh4(sum(X, additive_identity, X), true, X, additive_identity, Y, X)
% 9.72/1.64  = { by axiom 1 (additive_identity2) }
% 9.72/1.64    fresh4(true, true, X, additive_identity, Y, X)
% 9.72/1.64  = { by axiom 11 (addition_is_well_defined) }
% 9.72/1.64    Y
% 9.72/1.64  
% 9.72/1.64  Lemma 26: multiply(X, additive_identity) = additive_identity.
% 9.72/1.64  Proof:
% 9.72/1.64    multiply(X, additive_identity)
% 9.72/1.64  = { by axiom 5 (addition_is_well_defined) R->L }
% 9.72/1.64    fresh3(true, true, additive_identity, multiply(X, additive_identity))
% 9.72/1.64  = { by axiom 8 (associativity_of_addition1) R->L }
% 9.72/1.64    fresh3(fresh33(true, true, multiply(X, additive_identity), additive_identity, additive_identity), true, additive_identity, multiply(X, additive_identity))
% 9.72/1.64  = { by axiom 9 (distributivity1) R->L }
% 9.72/1.64    fresh3(fresh33(fresh25(true, true, multiply(X, additive_identity), multiply(X, additive_identity), multiply(X, additive_identity)), true, multiply(X, additive_identity), additive_identity, additive_identity), true, additive_identity, multiply(X, additive_identity))
% 9.72/1.64  = { by axiom 1 (additive_identity2) R->L }
% 9.72/1.64    fresh3(fresh33(fresh25(sum(additive_identity, additive_identity, additive_identity), true, multiply(X, additive_identity), multiply(X, additive_identity), multiply(X, additive_identity)), true, multiply(X, additive_identity), additive_identity, additive_identity), true, additive_identity, multiply(X, additive_identity))
% 9.72/1.64  = { by lemma 24 }
% 9.72/1.64    fresh3(fresh33(sum(multiply(X, additive_identity), multiply(X, additive_identity), multiply(X, additive_identity)), true, multiply(X, additive_identity), additive_identity, additive_identity), true, additive_identity, multiply(X, additive_identity))
% 9.72/1.64  = { by axiom 14 (associativity_of_addition1) R->L }
% 9.72/1.65    fresh3(fresh32(true, true, multiply(X, additive_identity), multiply(X, additive_identity), multiply(X, additive_identity), additive_inverse(multiply(X, additive_identity)), additive_identity, additive_identity), true, additive_identity, multiply(X, additive_identity))
% 9.72/1.65  = { by axiom 3 (right_inverse) R->L }
% 9.72/1.65    fresh3(fresh32(sum(multiply(X, additive_identity), additive_inverse(multiply(X, additive_identity)), additive_identity), true, multiply(X, additive_identity), multiply(X, additive_identity), multiply(X, additive_identity), additive_inverse(multiply(X, additive_identity)), additive_identity, additive_identity), true, additive_identity, multiply(X, additive_identity))
% 9.72/1.65  = { by axiom 20 (associativity_of_addition1) }
% 9.72/1.65    fresh3(fresh9(sum(multiply(X, additive_identity), additive_inverse(multiply(X, additive_identity)), additive_identity), true, multiply(X, additive_identity), multiply(X, additive_identity), multiply(X, additive_identity), additive_identity, additive_identity), true, additive_identity, multiply(X, additive_identity))
% 9.72/1.65  = { by axiom 3 (right_inverse) }
% 9.72/1.65    fresh3(fresh9(true, true, multiply(X, additive_identity), multiply(X, additive_identity), multiply(X, additive_identity), additive_identity, additive_identity), true, additive_identity, multiply(X, additive_identity))
% 9.72/1.65  = { by axiom 13 (associativity_of_addition1) }
% 9.72/1.65    fresh3(sum(multiply(X, additive_identity), additive_identity, additive_identity), true, additive_identity, multiply(X, additive_identity))
% 9.72/1.65  = { by lemma 25 }
% 9.72/1.65    additive_identity
% 9.72/1.65  
% 9.72/1.65  Lemma 27: add(X, additive_inverse(X)) = additive_identity.
% 9.72/1.65  Proof:
% 9.72/1.65    add(X, additive_inverse(X))
% 9.72/1.65  = { by axiom 11 (addition_is_well_defined) R->L }
% 9.72/1.65    fresh4(true, true, X, additive_inverse(X), add(X, additive_inverse(X)), additive_identity)
% 9.72/1.65  = { by axiom 3 (right_inverse) R->L }
% 9.72/1.65    fresh4(sum(X, additive_inverse(X), additive_identity), true, X, additive_inverse(X), add(X, additive_inverse(X)), additive_identity)
% 9.72/1.65  = { by axiom 18 (addition_is_well_defined) }
% 9.72/1.65    fresh3(sum(X, additive_inverse(X), add(X, additive_inverse(X))), true, add(X, additive_inverse(X)), additive_identity)
% 9.72/1.65  = { by axiom 6 (closure_of_addition) }
% 9.72/1.65    fresh3(true, true, add(X, additive_inverse(X)), additive_identity)
% 9.72/1.65  = { by axiom 5 (addition_is_well_defined) }
% 9.72/1.65    additive_identity
% 9.72/1.65  
% 9.72/1.65  Lemma 28: add(multiply(X, Y), multiply(X, Z)) = multiply(X, add(Y, Z)).
% 9.72/1.65  Proof:
% 9.72/1.65    add(multiply(X, Y), multiply(X, Z))
% 9.72/1.65  = { by axiom 5 (addition_is_well_defined) R->L }
% 9.72/1.65    fresh3(true, true, multiply(X, add(Y, Z)), add(multiply(X, Y), multiply(X, Z)))
% 9.72/1.65  = { by axiom 9 (distributivity1) R->L }
% 9.72/1.65    fresh3(fresh25(true, true, multiply(X, Y), multiply(X, Z), multiply(X, add(Y, Z))), true, multiply(X, add(Y, Z)), add(multiply(X, Y), multiply(X, Z)))
% 9.72/1.65  = { by axiom 6 (closure_of_addition) R->L }
% 9.72/1.65    fresh3(fresh25(sum(Y, Z, add(Y, Z)), true, multiply(X, Y), multiply(X, Z), multiply(X, add(Y, Z))), true, multiply(X, add(Y, Z)), add(multiply(X, Y), multiply(X, Z)))
% 9.72/1.65  = { by lemma 24 }
% 9.72/1.65    fresh3(sum(multiply(X, Y), multiply(X, Z), multiply(X, add(Y, Z))), true, multiply(X, add(Y, Z)), add(multiply(X, Y), multiply(X, Z)))
% 9.72/1.65  = { by axiom 18 (addition_is_well_defined) R->L }
% 9.72/1.65    fresh4(sum(multiply(X, Y), multiply(X, Z), add(multiply(X, Y), multiply(X, Z))), true, multiply(X, Y), multiply(X, Z), multiply(X, add(Y, Z)), add(multiply(X, Y), multiply(X, Z)))
% 9.72/1.65  = { by axiom 6 (closure_of_addition) }
% 9.72/1.65    fresh4(true, true, multiply(X, Y), multiply(X, Z), multiply(X, add(Y, Z)), add(multiply(X, Y), multiply(X, Z)))
% 9.72/1.65  = { by axiom 11 (addition_is_well_defined) }
% 9.72/1.65    multiply(X, add(Y, Z))
% 9.72/1.65  
% 9.72/1.65  Goal 1 (prove_a_times_0_is_0): product(a, additive_identity, additive_identity) = true.
% 9.72/1.65  Proof:
% 9.72/1.65    product(a, additive_identity, additive_identity)
% 9.72/1.65  = { by lemma 25 R->L }
% 9.72/1.65    product(a, fresh3(sum(additive_inverse(additive_identity), additive_identity, additive_identity), true, additive_identity, additive_inverse(additive_identity)), additive_identity)
% 9.72/1.65  = { by axiom 4 (left_inverse) }
% 9.72/1.65    product(a, fresh3(true, true, additive_identity, additive_inverse(additive_identity)), additive_identity)
% 9.72/1.65  = { by axiom 5 (addition_is_well_defined) }
% 9.72/1.65    product(a, additive_inverse(additive_identity), additive_identity)
% 9.72/1.65  = { by lemma 26 R->L }
% 9.72/1.65    product(a, additive_inverse(additive_identity), multiply(a, additive_identity))
% 9.72/1.65  = { by lemma 27 R->L }
% 9.72/1.65    product(a, additive_inverse(additive_identity), multiply(a, add(additive_identity, additive_inverse(additive_identity))))
% 9.72/1.65  = { by lemma 28 R->L }
% 9.72/1.65    product(a, additive_inverse(additive_identity), add(multiply(a, additive_identity), multiply(a, additive_inverse(additive_identity))))
% 9.72/1.65  = { by axiom 12 (distributivity2) R->L }
% 9.72/1.65    fresh19(true, true, a, additive_identity, additive_inverse(additive_identity), additive_inverse(additive_identity), add(multiply(a, additive_identity), multiply(a, additive_inverse(additive_identity))))
% 9.72/1.65  = { by axiom 6 (closure_of_addition) R->L }
% 9.72/1.65    fresh19(sum(multiply(a, additive_identity), multiply(a, additive_inverse(additive_identity)), add(multiply(a, additive_identity), multiply(a, additive_inverse(additive_identity)))), true, a, additive_identity, additive_inverse(additive_identity), additive_inverse(additive_identity), add(multiply(a, additive_identity), multiply(a, additive_inverse(additive_identity))))
% 9.72/1.65  = { by axiom 19 (distributivity2) R->L }
% 9.72/1.65    fresh18(true, true, a, additive_identity, multiply(a, additive_identity), additive_inverse(additive_identity), multiply(a, additive_inverse(additive_identity)), additive_inverse(additive_identity), add(multiply(a, additive_identity), multiply(a, additive_inverse(additive_identity))))
% 9.72/1.65  = { by axiom 7 (closure_of_multiplication) R->L }
% 9.72/1.65    fresh18(product(a, additive_inverse(additive_identity), multiply(a, additive_inverse(additive_identity))), true, a, additive_identity, multiply(a, additive_identity), additive_inverse(additive_identity), multiply(a, additive_inverse(additive_identity)), additive_inverse(additive_identity), add(multiply(a, additive_identity), multiply(a, additive_inverse(additive_identity))))
% 9.72/1.65  = { by axiom 23 (distributivity2) }
% 9.72/1.65    fresh20(product(a, additive_identity, multiply(a, additive_identity)), true, a, additive_identity, multiply(a, additive_identity), additive_inverse(additive_identity), multiply(a, additive_inverse(additive_identity)), additive_inverse(additive_identity), add(multiply(a, additive_identity), multiply(a, additive_inverse(additive_identity))))
% 9.72/1.65  = { by axiom 7 (closure_of_multiplication) }
% 9.72/1.65    fresh20(true, true, a, additive_identity, multiply(a, additive_identity), additive_inverse(additive_identity), multiply(a, additive_inverse(additive_identity)), additive_inverse(additive_identity), add(multiply(a, additive_identity), multiply(a, additive_inverse(additive_identity))))
% 9.72/1.65  = { by lemma 28 }
% 9.72/1.65    fresh20(true, true, a, additive_identity, multiply(a, additive_identity), additive_inverse(additive_identity), multiply(a, additive_inverse(additive_identity)), additive_inverse(additive_identity), multiply(a, add(additive_identity, additive_inverse(additive_identity))))
% 9.72/1.65  = { by lemma 27 }
% 9.72/1.65    fresh20(true, true, a, additive_identity, multiply(a, additive_identity), additive_inverse(additive_identity), multiply(a, additive_inverse(additive_identity)), additive_inverse(additive_identity), multiply(a, additive_identity))
% 9.72/1.65  = { by lemma 26 }
% 9.72/1.65    fresh20(true, true, a, additive_identity, multiply(a, additive_identity), additive_inverse(additive_identity), multiply(a, additive_inverse(additive_identity)), additive_inverse(additive_identity), additive_identity)
% 9.72/1.65  = { by axiom 17 (distributivity2) }
% 9.72/1.65    fresh21(sum(additive_identity, additive_inverse(additive_identity), additive_inverse(additive_identity)), true, a, additive_inverse(additive_identity), additive_identity)
% 9.72/1.65  = { by axiom 2 (additive_identity1) }
% 9.72/1.65    fresh21(true, true, a, additive_inverse(additive_identity), additive_identity)
% 9.72/1.65  = { by axiom 10 (distributivity2) }
% 9.72/1.65    true
% 9.72/1.65  % SZS output end Proof
% 9.72/1.65  
% 9.72/1.65  RESULT: Unsatisfiable (the axioms are contradictory).
%------------------------------------------------------------------------------