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

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Twee---2.4.2
% Problem  : SWV041+1 : TPTP v8.1.2. Bugfixed v3.3.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 : n009.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 23:02:19 EDT 2023

% Result   : Theorem 1.49s 0.60s
% Output   : Proof 1.49s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.06/0.12  % Problem  : SWV041+1 : TPTP v8.1.2. Bugfixed v3.3.0.
% 0.06/0.13  % Command  : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof
% 0.13/0.34  % Computer : n009.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  : 300
% 0.13/0.34  % DateTime : Tue Aug 29 08:19:20 EDT 2023
% 0.13/0.35  % CPUTime  : 
% 1.49/0.60  Command-line arguments: --ground-connectedness --complete-subsets
% 1.49/0.60  
% 1.49/0.60  % SZS status Theorem
% 1.49/0.60  
% 1.49/0.61  % SZS output start Proof
% 1.49/0.61  Take the following subset of the input axioms:
% 1.49/0.61    fof(finite_domain_0, axiom, ![X]: ((leq(n0, X) & leq(X, n0)) => X=n0)).
% 1.49/0.61    fof(gauss_init_0077, conjecture, (geq(minus(n330, n1), n0) & geq(minus(n410, n1), n0)) => ![A]: ((leq(n0, A) & leq(A, n2)) => ![B]: ((leq(n0, B) & leq(B, minus(n0, n1))) => a_select3(tptp_const_array2(dim(n0, n3), dim(n0, n2), uninit), B, A)=init))).
% 1.49/0.61    fof(irreflexivity_gt, axiom, ![X2]: ~gt(X2, X2)).
% 1.49/0.61    fof(leq_succ, axiom, ![Y, X2]: (leq(X2, Y) => leq(X2, succ(Y)))).
% 1.49/0.61    fof(leq_succ_gt_equiv, axiom, ![X2, Y2]: (leq(X2, Y2) <=> gt(succ(Y2), X2))).
% 1.49/0.61    fof(matrix_symm_joseph_update, axiom, ![C, N, M, D, E, F, A2, B2]: ((![I, J]: ((leq(n0, I) & (leq(I, M) & (leq(n0, J) & leq(J, M)))) => a_select3(D, I, J)=a_select3(D, J, I)) & (![I2, J2]: ((leq(n0, I2) & (leq(I2, N) & (leq(n0, J2) & leq(J2, N)))) => a_select3(A2, I2, J2)=a_select3(A2, J2, I2)) & ![I2, J2]: ((leq(n0, I2) & (leq(I2, N) & (leq(n0, J2) & leq(J2, N)))) => a_select3(F, I2, J2)=a_select3(F, J2, I2)))) => ![I2, J2]: ((leq(n0, I2) & (leq(I2, N) & (leq(n0, J2) & leq(J2, N)))) => a_select3(tptp_madd(A2, tptp_mmul(B2, tptp_mmul(tptp_madd(tptp_mmul(C, tptp_mmul(D, trans(C))), tptp_mmul(E, tptp_mmul(F, trans(E)))), trans(B2)))), I2, J2)=a_select3(tptp_madd(A2, tptp_mmul(B2, tptp_mmul(tptp_madd(tptp_mmul(C, tptp_mmul(D, trans(C))), tptp_mmul(E, tptp_mmul(F, trans(E)))), trans(B2)))), J2, I2)))).
% 1.49/0.61    fof(pred_minus_1, axiom, ![X2]: minus(X2, n1)=pred(X2)).
% 1.49/0.61    fof(succ_pred, axiom, ![X2]: succ(pred(X2))=X2).
% 1.49/0.61    fof(sum_plus_base, axiom, ![Body]: sum(n0, tptp_minus_1, Body)=n0).
% 1.49/0.61    fof(sum_plus_base_float, axiom, ![Body2]: tptp_float_0_0=sum(n0, tptp_minus_1, Body2)).
% 1.49/0.61    fof(ttrue, axiom, true).
% 1.49/0.61  
% 1.49/0.61  Now clausify the problem and encode Horn clauses using encoding 3 of
% 1.49/0.61  http://www.cse.chalmers.se/~nicsma/papers/horn.pdf.
% 1.49/0.61  We repeatedly replace C & s=t => u=v by the two clauses:
% 1.49/0.61    fresh(y, y, x1...xn) = u
% 1.49/0.61    C => fresh(s, t, x1...xn) = v
% 1.49/0.61  where fresh is a fresh function symbol and x1..xn are the free
% 1.49/0.61  variables of u and v.
% 1.49/0.61  A predicate p(X) is encoded as p(X)=true (this is sound, because the
% 1.49/0.61  input problem has no model of domain size 1).
% 1.49/0.61  
% 1.49/0.61  The encoding turns the above axioms into the following unit equations and goals:
% 1.49/0.61  
% 1.49/0.61  Axiom 1 (ttrue): true = true3.
% 1.49/0.61  Axiom 2 (pred_minus_1): minus(X, n1) = pred(X).
% 1.49/0.61  Axiom 3 (succ_pred): succ(pred(X)) = X.
% 1.49/0.61  Axiom 4 (gauss_init_0077_1): leq(n0, b) = true3.
% 1.49/0.61  Axiom 5 (sum_plus_base_float): tptp_float_0_0 = sum(n0, tptp_minus_1, X).
% 1.49/0.61  Axiom 6 (sum_plus_base): sum(n0, tptp_minus_1, X) = n0.
% 1.49/0.61  Axiom 7 (finite_domain_0): fresh(X, X, Y) = Y.
% 1.49/0.61  Axiom 8 (finite_domain_0): fresh39(X, X, Y) = n0.
% 1.49/0.61  Axiom 9 (leq_succ): fresh32(X, X, Y, Z) = true3.
% 1.49/0.61  Axiom 10 (leq_succ_gt_equiv_1): fresh29(X, X, Y, Z) = true3.
% 1.49/0.61  Axiom 11 (gauss_init_0077_3): leq(b, minus(n0, n1)) = true3.
% 1.49/0.61  Axiom 12 (finite_domain_0): fresh(leq(n0, X), true3, X) = fresh39(leq(X, n0), true3, X).
% 1.49/0.61  Axiom 13 (leq_succ): fresh32(leq(X, Y), true3, X, Y) = leq(X, succ(Y)).
% 1.49/0.61  Axiom 14 (leq_succ_gt_equiv_1): fresh29(leq(X, Y), true3, X, Y) = gt(succ(Y), X).
% 1.49/0.61  
% 1.49/0.61  Lemma 15: n0 = tptp_float_0_0.
% 1.49/0.61  Proof:
% 1.49/0.61    n0
% 1.49/0.61  = { by axiom 6 (sum_plus_base) R->L }
% 1.49/0.61    sum(n0, tptp_minus_1, X)
% 1.49/0.61  = { by axiom 5 (sum_plus_base_float) R->L }
% 1.49/0.61    tptp_float_0_0
% 1.49/0.61  
% 1.49/0.61  Lemma 16: leq(b, pred(tptp_float_0_0)) = true.
% 1.49/0.61  Proof:
% 1.49/0.61    leq(b, pred(tptp_float_0_0))
% 1.49/0.61  = { by lemma 15 R->L }
% 1.49/0.61    leq(b, pred(n0))
% 1.49/0.61  = { by axiom 2 (pred_minus_1) R->L }
% 1.49/0.61    leq(b, minus(n0, n1))
% 1.49/0.61  = { by axiom 11 (gauss_init_0077_3) }
% 1.49/0.61    true3
% 1.49/0.61  = { by axiom 1 (ttrue) R->L }
% 1.49/0.61    true
% 1.49/0.61  
% 1.49/0.61  Goal 1 (irreflexivity_gt): gt(X, X) = true3.
% 1.49/0.61  The goal is true when:
% 1.49/0.61    X = tptp_float_0_0
% 1.49/0.61  
% 1.49/0.61  Proof:
% 1.49/0.61    gt(tptp_float_0_0, tptp_float_0_0)
% 1.49/0.61  = { by lemma 15 R->L }
% 1.49/0.61    gt(tptp_float_0_0, n0)
% 1.49/0.61  = { by axiom 8 (finite_domain_0) R->L }
% 1.49/0.61    gt(tptp_float_0_0, fresh39(true, true, b))
% 1.49/0.61  = { by axiom 1 (ttrue) }
% 1.49/0.61    gt(tptp_float_0_0, fresh39(true3, true, b))
% 1.49/0.61  = { by axiom 9 (leq_succ) R->L }
% 1.49/0.61    gt(tptp_float_0_0, fresh39(fresh32(true, true, b, pred(tptp_float_0_0)), true, b))
% 1.49/0.61  = { by lemma 16 R->L }
% 1.49/0.61    gt(tptp_float_0_0, fresh39(fresh32(leq(b, pred(tptp_float_0_0)), true, b, pred(tptp_float_0_0)), true, b))
% 1.49/0.61  = { by axiom 1 (ttrue) }
% 1.49/0.61    gt(tptp_float_0_0, fresh39(fresh32(leq(b, pred(tptp_float_0_0)), true3, b, pred(tptp_float_0_0)), true, b))
% 1.49/0.61  = { by axiom 13 (leq_succ) }
% 1.49/0.61    gt(tptp_float_0_0, fresh39(leq(b, succ(pred(tptp_float_0_0))), true, b))
% 1.49/0.61  = { by axiom 3 (succ_pred) }
% 1.49/0.61    gt(tptp_float_0_0, fresh39(leq(b, tptp_float_0_0), true, b))
% 1.49/0.61  = { by axiom 1 (ttrue) }
% 1.49/0.61    gt(tptp_float_0_0, fresh39(leq(b, tptp_float_0_0), true3, b))
% 1.49/0.61  = { by lemma 15 R->L }
% 1.49/0.61    gt(tptp_float_0_0, fresh39(leq(b, n0), true3, b))
% 1.49/0.61  = { by axiom 12 (finite_domain_0) R->L }
% 1.49/0.61    gt(tptp_float_0_0, fresh(leq(n0, b), true3, b))
% 1.49/0.61  = { by lemma 15 }
% 1.49/0.61    gt(tptp_float_0_0, fresh(leq(tptp_float_0_0, b), true3, b))
% 1.49/0.61  = { by axiom 1 (ttrue) R->L }
% 1.49/0.61    gt(tptp_float_0_0, fresh(leq(tptp_float_0_0, b), true, b))
% 1.49/0.61  = { by lemma 15 R->L }
% 1.49/0.61    gt(tptp_float_0_0, fresh(leq(n0, b), true, b))
% 1.49/0.61  = { by axiom 4 (gauss_init_0077_1) }
% 1.49/0.61    gt(tptp_float_0_0, fresh(true3, true, b))
% 1.49/0.61  = { by axiom 1 (ttrue) R->L }
% 1.49/0.61    gt(tptp_float_0_0, fresh(true, true, b))
% 1.49/0.61  = { by axiom 7 (finite_domain_0) }
% 1.49/0.61    gt(tptp_float_0_0, b)
% 1.49/0.61  = { by axiom 3 (succ_pred) R->L }
% 1.49/0.61    gt(succ(pred(tptp_float_0_0)), b)
% 1.49/0.61  = { by axiom 14 (leq_succ_gt_equiv_1) R->L }
% 1.49/0.61    fresh29(leq(b, pred(tptp_float_0_0)), true3, b, pred(tptp_float_0_0))
% 1.49/0.61  = { by axiom 1 (ttrue) R->L }
% 1.49/0.61    fresh29(leq(b, pred(tptp_float_0_0)), true, b, pred(tptp_float_0_0))
% 1.49/0.61  = { by lemma 16 }
% 1.49/0.61    fresh29(true, true, b, pred(tptp_float_0_0))
% 1.49/0.61  = { by axiom 10 (leq_succ_gt_equiv_1) }
% 1.49/0.61    true3
% 1.49/0.61  = { by axiom 1 (ttrue) R->L }
% 1.49/0.61    true
% 1.49/0.61  = { by axiom 1 (ttrue) }
% 1.49/0.61    true3
% 1.49/0.61  % SZS output end Proof
% 1.49/0.61  
% 1.49/0.61  RESULT: Theorem (the conjecture is true).
%------------------------------------------------------------------------------