TSTP Solution File: DAT057_1 by cvc5---1.0.5
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : cvc5---1.0.5
% Problem : DAT057_1 : TPTP v8.2.0. Released v5.5.0.
% Transfm : none
% Format : tptp:raw
% Command : do_cvc5 %s %d
% Computer : n023.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 : Wed May 29 16:42:56 EDT 2024
% Result : Theorem 0.19s 0.51s
% Output : Proof 0.19s
% Verified :
% SZS Type : -
% Comments :
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.06/0.14 % Problem : DAT057_1 : TPTP v8.2.0. Released v5.5.0.
% 0.06/0.15 % Command : do_cvc5 %s %d
% 0.13/0.36 % Computer : n023.cluster.edu
% 0.13/0.36 % Model : x86_64 x86_64
% 0.13/0.36 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.13/0.36 % Memory : 8042.1875MB
% 0.13/0.36 % OS : Linux 3.10.0-693.el7.x86_64
% 0.13/0.36 % CPULimit : 300
% 0.13/0.36 % WCLimit : 300
% 0.13/0.36 % DateTime : Mon May 27 17:31:09 EDT 2024
% 0.13/0.36 % CPUTime :
% 0.19/0.50 %----Proving TF0_ARI
% 0.19/0.51 --- Run --finite-model-find --decision=internal at 15...
% 0.19/0.51 % SZS status Theorem for /export/starexec/sandbox/tmp/tmp.VmeeafsaDf/cvc5---1.0.5_15887.smt2
% 0.19/0.51 % SZS output start Proof for /export/starexec/sandbox/tmp/tmp.VmeeafsaDf/cvc5---1.0.5_15887.smt2
% 0.19/0.51 (assume a0 (forall ((M Int)) (= (tptp.get tptp.mkarray M) tptp.none)))
% 0.19/0.51 (assume a1 (forall ((Ar tptp.array) (M Int) (D tptp.data)) (= (tptp.get (tptp.put Ar M D) M) D)))
% 0.19/0.51 (assume a2 (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (=> (not (= M N)) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)))))
% 0.19/0.51 (assume a3 (forall ((D2 tptp.data) (Ar tptp.array) (M Int) (D1 tptp.data)) (= (tptp.put (tptp.put Ar M D2) M D1) (tptp.put Ar M D1))))
% 0.19/0.51 (assume a4 (forall ((Ar tptp.array) (Ar0 tptp.array)) (= (= Ar Ar0) (forall ((N Int)) (= (tptp.get Ar N) (tptp.get Ar0 N))))))
% 0.19/0.51 (assume a5 (not (forall ((D tptp.data) (Ar tptp.array) (M Int) (N Int)) (or (= (tptp.get (tptp.put Ar M D) N) (tptp.get Ar N)) (= M N)))))
% 0.19/0.51 (assume a6 true)
% 0.19/0.51 (step t1 (cl (= (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (or (= N M) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)))) (forall ((D tptp.data) (Ar tptp.array) (M Int) (N Int)) (or (= (tptp.get (tptp.put Ar M D) N) (tptp.get Ar N)) (= M N))))) :rule hole :args ((= (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (or (= N M) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)))) (forall ((D tptp.data) (Ar tptp.array) (M Int) (N Int)) (or (= (tptp.get (tptp.put Ar M D) N) (tptp.get Ar N)) (= M N)))) 13))
% 0.19/0.51 (step t2 (cl (= (forall ((D tptp.data) (Ar tptp.array) (M Int) (N Int)) (or (= (tptp.get (tptp.put Ar M D) N) (tptp.get Ar N)) (= M N))) (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (or (= N M) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)))))) :rule symm :premises (t1))
% 0.19/0.51 (step t3 (cl (forall ((D tptp.data) (Ar tptp.array) (M Int) (N Int)) (or (= (tptp.get (tptp.put Ar M D) N) (tptp.get Ar N)) (= M N))) (not (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (or (= N M) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)))))) :rule equiv2 :premises (t2))
% 0.19/0.52 (step t4 (cl (not (= (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (=> (not (= M N)) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)))) (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (or (= N M) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)))))) (not (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (=> (not (= M N)) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M))))) (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (or (= N M) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M))))) :rule equiv_pos2)
% 0.19/0.52 (anchor :step t5 :args ((N Int) (:= N N) (D tptp.data) (:= D D) (Ar tptp.array) (:= Ar Ar) (M Int) (:= M M)))
% 0.19/0.52 (step t5.t1 (cl (= N N)) :rule refl)
% 0.19/0.52 (step t5.t2 (cl (= D D)) :rule refl)
% 0.19/0.52 (step t5.t3 (cl (= Ar Ar)) :rule refl)
% 0.19/0.52 (step t5.t4 (cl (= M M)) :rule refl)
% 0.19/0.52 (step t5.t5 (cl (= (= M N) (= N M))) :rule all_simplify)
% 0.19/0.52 (step t5.t6 (cl (= (not (= M N)) (not (= N M)))) :rule cong :premises (t5.t5))
% 0.19/0.52 (step t5.t7 (cl (= (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)))) :rule refl)
% 0.19/0.52 (step t5.t8 (cl (= (=> (not (= M N)) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M))) (=> (not (= N M)) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M))))) :rule cong :premises (t5.t6 t5.t7))
% 0.19/0.52 (step t5 (cl (= (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (=> (not (= M N)) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)))) (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (=> (not (= N M)) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)))))) :rule bind)
% 0.19/0.52 (step t6 (cl (= (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (=> (not (= N M)) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)))) (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (or (= N M) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)))))) :rule all_simplify)
% 0.19/0.52 (step t7 (cl (= (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (=> (not (= M N)) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)))) (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (or (= N M) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M)))))) :rule trans :premises (t5 t6))
% 0.19/0.52 (step t8 (cl (forall ((N Int) (D tptp.data) (Ar tptp.array) (M Int)) (or (= N M) (= (tptp.get (tptp.put Ar N D) M) (tptp.get Ar M))))) :rule resolution :premises (t4 t7 a2))
% 0.19/0.52 (step t9 (cl (forall ((D tptp.data) (Ar tptp.array) (M Int) (N Int)) (or (= (tptp.get (tptp.put Ar M D) N) (tptp.get Ar N)) (= M N)))) :rule resolution :premises (t3 t8))
% 0.19/0.52 (step t10 (cl) :rule resolution :premises (a5 t9))
% 0.19/0.52
% 0.19/0.52 % SZS output end Proof for /export/starexec/sandbox/tmp/tmp.VmeeafsaDf/cvc5---1.0.5_15887.smt2
% 0.19/0.52 % cvc5---1.0.5 exiting
% 0.19/0.52 % cvc5---1.0.5 exiting
%------------------------------------------------------------------------------