TSTP Solution File: CSR004+2 by cvc5---1.0.5

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cvc5---1.0.5
% Problem  : CSR004+2 : TPTP v8.2.0. Bugfixed v3.1.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : do_cvc5 %s %d

% Computer : n005.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:38:59 EDT 2024

% Result   : Theorem 0.21s 0.54s
% Output   : Proof 0.21s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.11/0.13  % Problem    : CSR004+2 : TPTP v8.2.0. Bugfixed v3.1.0.
% 0.11/0.14  % Command    : do_cvc5 %s %d
% 0.14/0.35  % Computer : n005.cluster.edu
% 0.14/0.35  % Model    : x86_64 x86_64
% 0.14/0.35  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.14/0.35  % Memory   : 8042.1875MB
% 0.14/0.35  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.14/0.35  % CPULimit   : 300
% 0.14/0.35  % WCLimit    : 300
% 0.14/0.35  % DateTime   : Sun May 26 13:50:39 EDT 2024
% 0.14/0.35  % CPUTime    : 
% 0.21/0.50  %----Proving TF0_NAR, FOF, or CNF
% 0.21/0.54  --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 10...
% 0.21/0.54  % SZS status Theorem for /export/starexec/sandbox2/tmp/tmp.BquZCiUb1l/cvc5---1.0.5_18399.smt2
% 0.21/0.54  % SZS output start Proof for /export/starexec/sandbox2/tmp/tmp.BquZCiUb1l/cvc5---1.0.5_18399.smt2
% 0.21/0.54  (assume a0 (forall ((Time1 $$unsorted) (Fluent $$unsorted) (Time2 $$unsorted)) (= (tptp.stoppedIn Time1 Fluent Time2) (exists ((Event $$unsorted) (Time $$unsorted)) (and (tptp.happens Event Time) (tptp.less Time1 Time) (tptp.less Time Time2) (tptp.terminates Event Fluent Time))))))
% 0.21/0.54  (assume a1 (forall ((Time1 $$unsorted) (Time2 $$unsorted) (Fluent $$unsorted)) (= (tptp.startedIn Time1 Fluent Time2) (exists ((Event $$unsorted) (Time $$unsorted)) (and (tptp.happens Event Time) (tptp.less Time1 Time) (tptp.less Time Time2) (tptp.initiates Event Fluent Time))))))
% 0.21/0.54  (assume a2 (forall ((Event $$unsorted) (Time $$unsorted) (Fluent $$unsorted) (Fluent2 $$unsorted) (Offset $$unsorted)) (=> (and (tptp.happens Event Time) (tptp.initiates Event Fluent Time) (tptp.less tptp.n0 Offset) (tptp.trajectory Fluent Time Fluent2 Offset) (not (tptp.stoppedIn Time Fluent (tptp.plus Time Offset)))) (tptp.holdsAt Fluent2 (tptp.plus Time Offset)))))
% 0.21/0.54  (assume a3 (forall ((Event $$unsorted) (Time1 $$unsorted) (Fluent1 $$unsorted) (Time2 $$unsorted) (Fluent2 $$unsorted)) (=> (and (tptp.happens Event Time1) (tptp.terminates Event Fluent1 Time1) (tptp.less tptp.n0 Time2) (tptp.antitrajectory Fluent1 Time1 Fluent2 Time2) (not (tptp.startedIn Time1 Fluent1 (tptp.plus Time1 Time2)))) (tptp.holdsAt Fluent2 (tptp.plus Time1 Time2)))))
% 0.21/0.54  (assume a4 (forall ((Fluent $$unsorted) (Time $$unsorted)) (=> (and (tptp.holdsAt Fluent Time) (not (tptp.releasedAt Fluent (tptp.plus Time tptp.n1))) (not (exists ((Event $$unsorted)) (and (tptp.happens Event Time) (tptp.terminates Event Fluent Time))))) (tptp.holdsAt Fluent (tptp.plus Time tptp.n1)))))
% 0.21/0.54  (assume a5 (forall ((Fluent $$unsorted) (Time $$unsorted)) (=> (and (not (tptp.holdsAt Fluent Time)) (not (tptp.releasedAt Fluent (tptp.plus Time tptp.n1))) (not (exists ((Event $$unsorted)) (and (tptp.happens Event Time) (tptp.initiates Event Fluent Time))))) (not (tptp.holdsAt Fluent (tptp.plus Time tptp.n1))))))
% 0.21/0.54  (assume a6 (forall ((Fluent $$unsorted) (Time $$unsorted)) (=> (and (tptp.releasedAt Fluent Time) (not (exists ((Event $$unsorted)) (and (tptp.happens Event Time) (or (tptp.initiates Event Fluent Time) (tptp.terminates Event Fluent Time)))))) (tptp.releasedAt Fluent (tptp.plus Time tptp.n1)))))
% 0.21/0.54  (assume a7 (forall ((Fluent $$unsorted) (Time $$unsorted)) (=> (and (not (tptp.releasedAt Fluent Time)) (not (exists ((Event $$unsorted)) (and (tptp.happens Event Time) (tptp.releases Event Fluent Time))))) (not (tptp.releasedAt Fluent (tptp.plus Time tptp.n1))))))
% 0.21/0.54  (assume a8 (forall ((Event $$unsorted) (Time $$unsorted) (Fluent $$unsorted)) (=> (and (tptp.happens Event Time) (tptp.initiates Event Fluent Time)) (tptp.holdsAt Fluent (tptp.plus Time tptp.n1)))))
% 0.21/0.54  (assume a9 (forall ((Event $$unsorted) (Time $$unsorted) (Fluent $$unsorted)) (=> (and (tptp.happens Event Time) (tptp.terminates Event Fluent Time)) (not (tptp.holdsAt Fluent (tptp.plus Time tptp.n1))))))
% 0.21/0.54  (assume a10 (forall ((Event $$unsorted) (Time $$unsorted) (Fluent $$unsorted)) (=> (and (tptp.happens Event Time) (tptp.releases Event Fluent Time)) (tptp.releasedAt Fluent (tptp.plus Time tptp.n1)))))
% 0.21/0.54  (assume a11 (forall ((Event $$unsorted) (Time $$unsorted) (Fluent $$unsorted)) (=> (and (tptp.happens Event Time) (or (tptp.initiates Event Fluent Time) (tptp.terminates Event Fluent Time))) (not (tptp.releasedAt Fluent (tptp.plus Time tptp.n1))))))
% 0.21/0.54  (assume a12 (forall ((Event $$unsorted) (Fluent $$unsorted) (Time $$unsorted)) (= (tptp.initiates Event Fluent Time) (or (and (= Event tptp.tapOn) (= Fluent tptp.filling)) (and (= Event tptp.overflow) (= Fluent tptp.spilling)) (exists ((Height $$unsorted)) (and (tptp.holdsAt (tptp.waterLevel Height) Time) (= Event tptp.tapOff) (= Fluent (tptp.waterLevel Height)))) (exists ((Height $$unsorted)) (and (tptp.holdsAt (tptp.waterLevel Height) Time) (= Event tptp.overflow) (= Fluent (tptp.waterLevel Height))))))))
% 0.21/0.54  (assume a13 (forall ((Event $$unsorted) (Fluent $$unsorted) (Time $$unsorted)) (= (tptp.terminates Event Fluent Time) (or (and (= Event tptp.tapOff) (= Fluent tptp.filling)) (and (= Event tptp.overflow) (= Fluent tptp.filling))))))
% 0.21/0.54  (assume a14 (forall ((Event $$unsorted) (Fluent $$unsorted) (Time $$unsorted)) (= (tptp.releases Event Fluent Time) (exists ((Height $$unsorted)) (and (= Event tptp.tapOn) (= Fluent (tptp.waterLevel Height)))))))
% 0.21/0.54  (assume a15 (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= Event tptp.tapOn) (= Time tptp.n0)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= Event tptp.overflow))))))
% 0.21/0.54  (assume a16 (forall ((Height1 $$unsorted) (Time $$unsorted) (Height2 $$unsorted) (Offset $$unsorted)) (=> (and (tptp.holdsAt (tptp.waterLevel Height1) Time) (= Height2 (tptp.plus Height1 Offset))) (tptp.trajectory tptp.filling Time (tptp.waterLevel Height2) Offset))))
% 0.21/0.54  (assume a17 (forall ((Time $$unsorted) (Height1 $$unsorted) (Height2 $$unsorted)) (=> (and (tptp.holdsAt (tptp.waterLevel Height1) Time) (tptp.holdsAt (tptp.waterLevel Height2) Time)) (= Height1 Height2))))
% 0.21/0.54  (assume a18 (not (= tptp.tapOff tptp.tapOn)))
% 0.21/0.54  (assume a19 (not (= tptp.tapOff tptp.overflow)))
% 0.21/0.54  (assume a20 (not (= tptp.overflow tptp.tapOn)))
% 0.21/0.54  (assume a21 (forall ((X $$unsorted)) (not (= tptp.filling (tptp.waterLevel X)))))
% 0.21/0.54  (assume a22 (forall ((X $$unsorted)) (not (= tptp.spilling (tptp.waterLevel X)))))
% 0.21/0.54  (assume a23 (not (= tptp.filling tptp.spilling)))
% 0.21/0.54  (assume a24 (forall ((X $$unsorted) (Y $$unsorted)) (= (= (tptp.waterLevel X) (tptp.waterLevel Y)) (= X Y))))
% 0.21/0.54  (assume a25 (= (tptp.plus tptp.n0 tptp.n0) tptp.n0))
% 0.21/0.54  (assume a26 (= (tptp.plus tptp.n0 tptp.n1) tptp.n1))
% 0.21/0.54  (assume a27 (= (tptp.plus tptp.n0 tptp.n2) tptp.n2))
% 0.21/0.54  (assume a28 (= (tptp.plus tptp.n0 tptp.n3) tptp.n3))
% 0.21/0.54  (assume a29 (= (tptp.plus tptp.n1 tptp.n1) tptp.n2))
% 0.21/0.54  (assume a30 (= (tptp.plus tptp.n1 tptp.n2) tptp.n3))
% 0.21/0.54  (assume a31 (= (tptp.plus tptp.n1 tptp.n3) tptp.n4))
% 0.21/0.54  (assume a32 (= (tptp.plus tptp.n2 tptp.n2) tptp.n4))
% 0.21/0.54  (assume a33 (= (tptp.plus tptp.n2 tptp.n3) tptp.n5))
% 0.21/0.54  (assume a34 (= (tptp.plus tptp.n3 tptp.n3) tptp.n6))
% 0.21/0.54  (assume a35 (forall ((X $$unsorted) (Y $$unsorted)) (= (tptp.plus X Y) (tptp.plus Y X))))
% 0.21/0.54  (assume a36 (forall ((X $$unsorted) (Y $$unsorted)) (= (tptp.less_or_equal X Y) (or (tptp.less X Y) (= X Y)))))
% 0.21/0.54  (assume a37 (not (exists ((X $$unsorted)) (tptp.less X tptp.n0))))
% 0.21/0.54  (assume a38 (forall ((X $$unsorted)) (= (tptp.less X tptp.n1) (tptp.less_or_equal X tptp.n0))))
% 0.21/0.54  (assume a39 (forall ((X $$unsorted)) (= (tptp.less X tptp.n2) (tptp.less_or_equal X tptp.n1))))
% 0.21/0.54  (assume a40 (forall ((X $$unsorted)) (= (tptp.less X tptp.n3) (tptp.less_or_equal X tptp.n2))))
% 0.21/0.54  (assume a41 (forall ((X $$unsorted)) (= (tptp.less X tptp.n4) (tptp.less_or_equal X tptp.n3))))
% 0.21/0.54  (assume a42 (forall ((X $$unsorted)) (= (tptp.less X tptp.n5) (tptp.less_or_equal X tptp.n4))))
% 0.21/0.54  (assume a43 (forall ((X $$unsorted)) (= (tptp.less X tptp.n6) (tptp.less_or_equal X tptp.n5))))
% 0.21/0.54  (assume a44 (forall ((X $$unsorted)) (= (tptp.less X tptp.n7) (tptp.less_or_equal X tptp.n6))))
% 0.21/0.54  (assume a45 (forall ((X $$unsorted)) (= (tptp.less X tptp.n8) (tptp.less_or_equal X tptp.n7))))
% 0.21/0.54  (assume a46 (forall ((X $$unsorted)) (= (tptp.less X tptp.n9) (tptp.less_or_equal X tptp.n8))))
% 0.21/0.54  (assume a47 (forall ((X $$unsorted) (Y $$unsorted)) (= (tptp.less X Y) (and (not (tptp.less Y X)) (not (= Y X))))))
% 0.21/0.54  (assume a48 (tptp.holdsAt (tptp.waterLevel tptp.n0) tptp.n0))
% 0.21/0.54  (assume a49 (not (tptp.holdsAt tptp.filling tptp.n0)))
% 0.21/0.54  (assume a50 (not (tptp.holdsAt tptp.spilling tptp.n0)))
% 0.21/0.54  (assume a51 (forall ((Height $$unsorted)) (not (tptp.releasedAt (tptp.waterLevel Height) tptp.n0))))
% 0.21/0.54  (assume a52 (not (tptp.releasedAt tptp.filling tptp.n0)))
% 0.21/0.54  (assume a53 (not (tptp.releasedAt tptp.spilling tptp.n0)))
% 0.21/0.54  (assume a54 (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3))
% 0.21/0.54  (assume a55 (tptp.holdsAt tptp.filling tptp.n3))
% 0.21/0.54  (assume a56 (not (tptp.happens tptp.overflow tptp.n3)))
% 0.21/0.54  (assume a57 true)
% 0.21/0.54  (step t1 (cl (not (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3))))) (tptp.happens tptp.overflow tptp.n3) (not (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3))))) :rule equiv_pos1)
% 0.21/0.54  (step t2 (cl (tptp.happens tptp.overflow tptp.n3) (not (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3)))) (not (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3)))))) :rule reordering :premises (t1))
% 0.21/0.54  (step t3 (cl (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3))) (not (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3)))) :rule or_neg)
% 0.21/0.54  (step t4 (cl (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3)) (not (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3)) (not (tptp.holdsAt tptp.filling tptp.n3))) :rule and_neg)
% 0.21/0.54  (step t5 (cl (not (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3)) (not (tptp.holdsAt tptp.filling tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3))) :rule reordering :premises (t4))
% 0.21/0.54  (step t6 (cl (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3))) :rule resolution :premises (t5 a54 a55))
% 0.21/0.54  (step t7 (cl (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3)))) :rule resolution :premises (t3 t6))
% 0.21/0.54  (step t8 (cl (not (= (=> (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow))))) (=> (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3))))))) (not (=> (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow)))))) (=> (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3)))))) :rule equiv_pos2)
% 0.21/0.54  (step t9 (cl (= (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))))) :rule refl)
% 0.21/0.54  (step t10 (cl (= (tptp.happens tptp.overflow tptp.n3) (tptp.happens tptp.overflow tptp.n3))) :rule refl)
% 0.21/0.54  (step t11 (cl (= (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)))) :rule refl)
% 0.21/0.54  (step t12 (cl (= (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3))) :rule refl)
% 0.21/0.54  (step t13 (cl (= (tptp.holdsAt tptp.filling tptp.n3) (tptp.holdsAt tptp.filling tptp.n3))) :rule refl)
% 0.21/0.54  (step t14 (cl (= (= tptp.overflow tptp.overflow) true)) :rule all_simplify)
% 0.21/0.54  (step t15 (cl (= (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) true))) :rule cong :premises (t12 t13 t14))
% 0.21/0.54  (step t16 (cl (= (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) true) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3)))) :rule all_simplify)
% 0.21/0.54  (step t17 (cl (= (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3)))) :rule trans :premises (t15 t16))
% 0.21/0.54  (step t18 (cl (= (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow))) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3))))) :rule cong :premises (t11 t17))
% 0.21/0.54  (step t19 (cl (= (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow)))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3)))))) :rule cong :premises (t10 t18))
% 0.21/0.54  (step t20 (cl (= (=> (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow))))) (=> (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3))))))) :rule cong :premises (t9 t19))
% 0.21/0.54  (step t21 (cl (=> (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow))))) (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event)))))) :rule implies_neg1)
% 0.21/0.54  (anchor :step t22)
% 0.21/0.54  (assume t22.a0 (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))))
% 0.21/0.54  (step t22.t1 (cl (or (not (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event)))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow)))))) :rule forall_inst :args ((:= Event tptp.overflow) (:= Time tptp.n3)))
% 0.21/0.54  (step t22.t2 (cl (not (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event)))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow))))) :rule or :premises (t22.t1))
% 0.21/0.54  (step t22.t3 (cl (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow))))) :rule resolution :premises (t22.t2 t22.a0))
% 0.21/0.54  (step t22 (cl (not (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event)))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow))))) :rule subproof :discharge (t22.a0))
% 0.21/0.54  (step t23 (cl (=> (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow))))) :rule resolution :premises (t21 t22))
% 0.21/0.54  (step t24 (cl (=> (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow))))) (not (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow)))))) :rule implies_neg2)
% 0.21/0.54  (step t25 (cl (=> (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow))))) (=> (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow)))))) :rule resolution :premises (t23 t24))
% 0.21/0.54  (step t26 (cl (=> (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3) (= tptp.overflow tptp.overflow)))))) :rule contraction :premises (t25))
% 0.21/0.54  (step t27 (cl (=> (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3)))))) :rule resolution :premises (t8 t20 t26))
% 0.21/0.54  (step t28 (cl (not (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event)))))) (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3))))) :rule implies :premises (t27))
% 0.21/0.54  (step t29 (cl (not (= (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= Event tptp.tapOn) (= Time tptp.n0)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= Event tptp.overflow))))) (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))))) (not (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= Event tptp.tapOn) (= Time tptp.n0)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= Event tptp.overflow)))))) (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event)))))) :rule equiv_pos2)
% 0.21/0.54  (anchor :step t30 :args ((Event $$unsorted) (:= Event Event) (Time $$unsorted) (:= Time Time)))
% 0.21/0.54  (step t30.t1 (cl (= Event Event)) :rule refl)
% 0.21/0.54  (step t30.t2 (cl (= Time Time)) :rule refl)
% 0.21/0.54  (step t30.t3 (cl (= (tptp.happens Event Time) (tptp.happens Event Time))) :rule refl)
% 0.21/0.54  (step t30.t4 (cl (= (= Event tptp.tapOn) (= tptp.tapOn Event))) :rule all_simplify)
% 0.21/0.54  (step t30.t5 (cl (= (= Time tptp.n0) (= tptp.n0 Time))) :rule all_simplify)
% 0.21/0.54  (step t30.t6 (cl (= (and (= Event tptp.tapOn) (= Time tptp.n0)) (and (= tptp.tapOn Event) (= tptp.n0 Time)))) :rule cong :premises (t30.t4 t30.t5))
% 0.21/0.54  (step t30.t7 (cl (= (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt (tptp.waterLevel tptp.n3) Time))) :rule refl)
% 0.21/0.54  (step t30.t8 (cl (= (tptp.holdsAt tptp.filling Time) (tptp.holdsAt tptp.filling Time))) :rule refl)
% 0.21/0.54  (step t30.t9 (cl (= (= Event tptp.overflow) (= tptp.overflow Event))) :rule all_simplify)
% 0.21/0.54  (step t30.t10 (cl (= (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= Event tptp.overflow)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event)))) :rule cong :premises (t30.t7 t30.t8 t30.t9))
% 0.21/0.54  (step t30.t11 (cl (= (or (and (= Event tptp.tapOn) (= Time tptp.n0)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= Event tptp.overflow))) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))) :rule cong :premises (t30.t6 t30.t10))
% 0.21/0.55  (step t30.t12 (cl (= (= (tptp.happens Event Time) (or (and (= Event tptp.tapOn) (= Time tptp.n0)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= Event tptp.overflow)))) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event)))))) :rule cong :premises (t30.t3 t30.t11))
% 0.21/0.55  (step t30 (cl (= (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= Event tptp.tapOn) (= Time tptp.n0)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= Event tptp.overflow))))) (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event))))))) :rule bind)
% 0.21/0.55  (step t31 (cl (forall ((Event $$unsorted) (Time $$unsorted)) (= (tptp.happens Event Time) (or (and (= tptp.tapOn Event) (= tptp.n0 Time)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) Time) (tptp.holdsAt tptp.filling Time) (= tptp.overflow Event)))))) :rule resolution :premises (t29 t30 a15))
% 0.21/0.55  (step t32 (cl (= (tptp.happens tptp.overflow tptp.n3) (or (and (= tptp.tapOn tptp.overflow) (= tptp.n0 tptp.n3)) (and (tptp.holdsAt (tptp.waterLevel tptp.n3) tptp.n3) (tptp.holdsAt tptp.filling tptp.n3))))) :rule resolution :premises (t28 t31))
% 0.21/0.55  (step t33 (cl) :rule resolution :premises (t2 t7 t32 a56))
% 0.21/0.55  
% 0.21/0.55  % SZS output end Proof for /export/starexec/sandbox2/tmp/tmp.BquZCiUb1l/cvc5---1.0.5_18399.smt2
% 0.21/0.55  % cvc5---1.0.5 exiting
% 0.21/0.55  % cvc5---1.0.5 exiting
%------------------------------------------------------------------------------