%------------------------------------------------------------------------------ % File : cvc5---1.3.4 % Problem : TIM020_1 : TPTP v9.3.0. Released v9.3.0. % Transfm : none % Format : tptp:raw % Command : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM % 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 : Wed Jun 3 09:15:38 AM UTC 2026 % Result : Theorem 2.11s 2.33s % Output : Proof 2.11s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.13 % Problem : TIM020_1 : TPTP v9.3.0. Released v9.3.0. % 0.12/0.14 % Command : /export/starexec/sandbox2/solver/bin/do_cvc5 /export/starexec/sandbox2/benchmark/theBenchmark.p 300 THM % 0.18/0.35 % Computer : n027.cluster.edu % 0.18/0.35 % Model : x86_64 x86_64 % 0.18/0.35 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.18/0.35 % Memory : 8042.1875MB % 0.18/0.35 % OS : Linux 3.10.0-693.el7.x86_64 % 0.18/0.35 % CPULimit : 300 % 0.18/0.35 % WCLimit : 300 % 0.18/0.35 % DateTime : Wed Jun 3 01:13:36 EDT 2026 % 0.18/0.35 % CPUTime : % 0.28/0.53 %----Proving TF0_ARI % 2.11/2.33 --- Run --finite-model-find --decision=internal at 45... % 2.11/2.33 --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 60... % 2.11/2.33 % SZS status Theorem % 2.11/2.33 % SZS output start Proof % 2.11/2.33 ( % 2.11/2.33 (declare-sort tptp.time 0) % 2.11/2.33 (declare-sort tptp.date 0) % 2.11/2.33 (declare-sort tptp.day_name 0) % 2.11/2.33 (declare-const tptp.is_leap_year (-> Int Bool)) % 2.11/2.33 (declare-const tptp.zeller_prep (-> Int Int Int Int Int Int Bool)) % 2.11/2.33 (declare-const tptp.nth_weekday_date (-> Int tptp.day_name Int Int tptp.date Bool)) % 2.11/2.33 (declare-const tptp.calc_nth_offset (-> Int Int Int Bool)) % 2.11/2.33 (declare-const tptp.sunday tptp.day_name) % 2.11/2.33 (declare-const tptp.is_days_in_year (-> Int Int Bool)) % 2.11/2.33 (declare-const tptp.is_days_in_month (-> Int Int Int Bool)) % 2.11/2.33 (declare-const tptp.map_name_to_int (-> tptp.day_name Int Bool)) % 2.11/2.33 (declare-const tptp.thursday tptp.day_name) % 2.11/2.33 (declare-const tptp.valid_day (-> Int Bool)) % 2.11/2.33 (declare-const tptp.monday tptp.day_name) % 2.11/2.33 (declare-const tptp.calc_date (-> Int Int Int tptp.date Bool)) % 2.11/2.33 (declare-const tptp.map_iso (-> Int tptp.day_name Bool)) % 2.11/2.33 (declare-const tptp.ymd (-> Int Int Int tptp.date)) % 2.11/2.33 (declare-const tptp.weekday (-> tptp.date tptp.day_name Bool)) % 2.11/2.33 (declare-const tptp.friday tptp.day_name) % 2.11/2.33 (declare-const tptp.normalize_time (-> Int Int Int Int Int Int Int Bool)) % 2.11/2.33 (declare-const tptp.wednesday tptp.day_name) % 2.11/2.33 (declare-const tptp.calc_datetime (-> Int Int Int Int Int Int Int Int tptp.time Bool)) % 2.11/2.33 (declare-const tptp.saturday tptp.day_name) % 2.11/2.33 (declare-const tptp.tuesday tptp.day_name) % 2.11/2.33 (declare-const tptp.dt (-> Int Int Int Int Int tptp.time)) % 2.11/2.33 (define @t1 () (@var "D" Int)) % 2.11/2.33 (define @t2 () (> @t1 0)) % 2.11/2.33 (define @t3 () (and @t2 (<= @t1 31))) % 2.11/2.33 (define @t4 () (tptp.valid_day @t1)) % 2.11/2.33 (define @t5 () (= @t4 @t3)) % 2.11/2.33 (define @t6 () (@list @t1)) % 2.11/2.33 (define @t7 () (forall @t6 @t5)) % 2.11/2.33 (define @t8 () (tptp.ymd 2025 1 1)) % 2.11/2.33 (define @t9 () (tptp.calc_date 32 12 2024 @t8)) % 2.11/2.33 (define @t10 () (@var "DD" Int)) % 2.11/2.33 (define @t11 () (@var "EM" Int)) % 2.11/2.33 (define @t12 () (@var "EH" Int)) % 2.11/2.33 (define @t13 () (@var "AM" Int)) % 2.11/2.33 (define @t14 () (@var "AH" Int)) % 2.11/2.33 (define @t15 () (@var "SM" Int)) % 2.11/2.33 (define @t16 () (@var "SH" Int)) % 2.11/2.33 (define @t17 () (to_real 24)) % 2.11/2.33 (define @t18 () (@var "TotalH" Int)) % 2.11/2.33 (define @t19 () (to_real @t18)) % 2.11/2.33 (define @t20 () (/ @t19 @t17)) % 2.11/2.33 (define @t21 () (ite (>= @t17 0/1) (to_int @t20) (- (to_int (- @t20))))) % 2.11/2.33 (define @t22 () (@var "NormM" Int)) % 2.11/2.33 (define @t23 () (@var "CarryH" Int)) % 2.11/2.33 (define @t24 () (to_real 60)) % 2.11/2.33 (define @t25 () (@var "TotalM" Int)) % 2.11/2.33 (define @t26 () (to_real @t25)) % 2.11/2.33 (define @t27 () (/ @t26 @t24)) % 2.11/2.33 (define @t28 () (ite (>= @t24 0/1) (to_int @t27) (- (to_int (- @t27))))) % 2.11/2.33 (define @t29 () (@var "ResMin" Int)) % 2.11/2.33 (define @t30 () (@var "ResH" Int)) % 2.11/2.33 (define @t31 () (@var "ResD" Int)) % 2.11/2.33 (define @t32 () (@var "ResM" Int)) % 2.11/2.33 (define @t33 () (@var "ResY" Int)) % 2.11/2.33 (define @t34 () (@var "AD" Int)) % 2.11/2.33 (define @t35 () (@var "Min" Int)) % 2.11/2.33 (define @t36 () (@var "H" Int)) % 2.11/2.33 (define @t37 () (@var "M" Int)) % 2.11/2.33 (define @t38 () (@var "Y" Int)) % 2.11/2.33 (define @t39 () (@var "TimeDayDelta" Int)) % 2.11/2.33 (define @t40 () (@var "Res" tptp.date)) % 2.11/2.33 (define @t41 () (tptp.calc_date @t1 @t37 @t38 @t40)) % 2.11/2.33 (define @t42 () (+ @t38 400)) % 2.11/2.33 (define @t43 () (> @t1 200)) % 2.11/2.33 (define @t44 () (= @t37 1)) % 2.11/2.33 (define @t45 () (@list @t1 @t37 @t38 @t40)) % 2.11/2.33 (define @t46 () (+ @t1 36524)) % 2.11/2.33 (define @t47 () (- @t38 10)) % 2.11/2.33 (define @t48 () (tptp.calc_date (+ @t1 3652) 1 @t47 @t40)) % 2.11/2.33 (define @t49 () (to_real 4)) % 2.11/2.33 (define @t50 () (to_real @t47)) % 2.11/2.33 (define @t51 () (/ @t50 @t49)) % 2.11/2.33 (define @t52 () (>= @t49 0/1)) % 2.11/2.33 (define @t53 () (to_int (- @t50 (* (to_real (ite @t52 (to_int @t51) (- (to_int (- @t51))))) @t49)))) % 2.11/2.33 (define @t54 () (- 3652)) % 2.11/2.33 (define @t55 () (<= @t1 @t54)) % 2.11/2.33 (define @t56 () (=> (tptp.calc_date (- @t1 1461) 1 (+ @t38 4) @t40) @t41)) % 2.11/2.33 (define @t57 () (> @t1 1461)) % 2.11/2.33 (define @t58 () (@var "NextW_Name" tptp.day_name)) % 2.11/2.33 (define @t59 () (+ @t37 1)) % 2.11/2.33 (define @t60 () (@var "NextW_Int" Int)) % 2.11/2.33 (define @t61 () (to_real 7)) % 2.11/2.33 (define @t62 () (@var "DaysInM" Int)) % 2.11/2.33 (define @t63 () (@var "W_Int" Int)) % 2.11/2.33 (define @t64 () (to_real (+ @t63 @t62))) % 2.11/2.33 (define @t65 () (/ @t64 @t61)) % 2.11/2.33 (define @t66 () (>= @t61 0/1)) % 2.11/2.33 (define @t67 () (@var "W_Name" tptp.day_name)) % 2.11/2.33 (define @t68 () (tptp.ymd @t38 @t37 1)) % 2.11/2.33 (define @t69 () (- @t1 36524)) % 2.11/2.33 (define @t70 () (> @t1 36524)) % 2.11/2.33 (define @t71 () (to_real @t38)) % 2.11/2.33 (define @t72 () (/ @t71 @t49)) % 2.11/2.33 (define @t73 () (to_int (- @t71 (* (to_real (ite @t52 (to_int @t72) (- (to_int (- @t72))))) @t49)))) % 2.11/2.33 (define @t74 () (= @t73 0)) % 2.11/2.33 (define @t75 () (@var "Limit" Int)) % 2.11/2.33 (define @t76 () (- @t1 @t75)) % 2.11/2.33 (define @t77 () (=> (tptp.calc_date @t76 1 (+ @t38 1) @t40) @t41)) % 2.11/2.33 (define @t78 () (> @t1 @t75)) % 2.11/2.33 (define @t79 () (@list @t1 @t37 @t38 @t75 @t40)) % 2.11/2.33 (define @t80 () (@list @t38)) % 2.11/2.33 (define @t81 () (to_real 400)) % 2.11/2.33 (define @t82 () (/ @t71 @t81)) % 2.11/2.33 (define @t83 () (= (to_int (- @t71 (* (to_real (ite (>= @t81 0/1) (to_int @t82) (- (to_int (- @t82))))) @t81))) 0)) % 2.11/2.33 (define @t84 () (to_real 100)) % 2.11/2.33 (define @t85 () (/ @t71 @t84)) % 2.11/2.33 (define @t86 () (>= @t84 0/1)) % 2.11/2.33 (define @t87 () (ite @t86 (to_int @t85) (- (to_int (- @t85))))) % 2.11/2.33 (define @t88 () (to_int (- @t71 (* (to_real @t87) @t84)))) % 2.11/2.33 (define @t89 () (= @t88 0)) % 2.11/2.33 (define @t90 () (tptp.ymd @t38 @t37 @t1)) % 2.11/2.33 (define @t91 () (tptp.is_days_in_month @t37 @t38 @t75)) % 2.11/2.33 (define @t92 () (= @t37 12)) % 2.11/2.33 (define @t93 () (- @t37 1)) % 2.11/2.33 (define @t94 () (+ @t1 @t75)) % 2.11/2.33 (define @t95 () (not @t44)) % 2.11/2.33 (define @t96 () (<= @t1 0)) % 2.11/2.33 (define @t97 () (- @t38 1)) % 2.11/2.33 (define @t98 () (@var "S" Int)) % 2.11/2.33 (define @t99 () (@var "T" Int)) % 2.11/2.33 (define @t100 () (to_real (+ (- @t99 @t98) 7))) % 2.11/2.33 (define @t101 () (/ @t100 @t61)) % 2.11/2.33 (define @t102 () (@var "O" Int)) % 2.11/2.33 (define @t103 () (@var "FinalDay" Int)) % 2.11/2.33 (define @t104 () (@var "DName" tptp.day_name)) % 2.11/2.33 (define @t105 () (@var "N" Int)) % 2.11/2.33 (define @t106 () (@var "Offset" Int)) % 2.11/2.33 (define @t107 () (@var "TargetDayInt" Int)) % 2.11/2.33 (define @t108 () (@var "StartDayInt" Int)) % 2.11/2.33 (define @t109 () (@var "StartDayName" tptp.day_name)) % 2.11/2.33 (define @t110 () (@var "N2" tptp.day_name)) % 2.11/2.33 (define @t111 () (@var "N1" tptp.day_name)) % 2.11/2.33 (define @t112 () (@var "Dt" tptp.date)) % 2.11/2.33 (define @t113 () (@var "I2" Int)) % 2.11/2.33 (define @t114 () (@var "I1" Int)) % 2.11/2.33 (define @t115 () (@var "Nm" tptp.day_name)) % 2.11/2.33 (define @t116 () (to_real @t97)) % 2.11/2.33 (define @t117 () (/ @t116 @t84)) % 2.11/2.33 (define @t118 () (ite @t86 (to_int @t117) (- (to_int (- @t117))))) % 2.11/2.33 (define @t119 () (= @t37 2)) % 2.11/2.33 (define @t120 () (@list @t37 @t38)) % 2.11/2.33 (define @t121 () (@var "Name" tptp.day_name)) % 2.11/2.33 (define @t122 () (@var "Term2" Int)) % 2.11/2.33 (define @t123 () (to_real @t122)) % 2.11/2.33 (define @t124 () (/ @t123 @t61)) % 2.11/2.33 (define @t125 () (to_real (+ (to_int (- @t123 (* (to_real (ite @t66 (to_int @t124) (- (to_int (- @t124))))) @t61))) 7))) % 2.11/2.33 (define @t126 () (/ @t125 @t61)) % 2.11/2.33 (define @t127 () (@var "J" Int)) % 2.11/2.33 (define @t128 () (/ (to_real @t127) @t49)) % 2.11/2.33 (define @t129 () (@var "K" Int)) % 2.11/2.33 (define @t130 () (/ (to_real @t129) @t49)) % 2.11/2.33 (define @t131 () (@var "Term1" Int)) % 2.11/2.33 (define @t132 () (to_real 5)) % 2.11/2.33 (define @t133 () (@var "ZM" Int)) % 2.11/2.33 (define @t134 () (/ (to_real (* 13 (+ @t133 1))) @t132)) % 2.11/2.33 (define @t135 () (@var "ZY" Int)) % 2.11/2.33 (define @t136 () (= @t38 2025)) % 2.11/2.33 (define @t137 () (not @t136)) % 2.11/2.33 (define @t138 () (tptp.calc_date @t1 1 @t38 @t40)) % 2.11/2.33 (define @t139 () (tptp.is_leap_year @t97)) % 2.11/2.33 (define @t140 () (@list @t1 @t38 @t40)) % 2.11/2.33 (define @t141 () (@var "W" tptp.day_name)) % 2.11/2.33 (define @t142 () (@var "Res2" tptp.date)) % 2.11/2.33 (define @t143 () (@var "Res1" tptp.date)) % 2.11/2.33 (define @t144 () (@var "D4" Int)) % 2.11/2.33 (define @t145 () (tptp.ymd @t38 @t37 @t144)) % 2.11/2.33 (define @t146 () (@var "D5" Int)) % 2.11/2.33 (define @t147 () (= @t1 1)) % 2.11/2.33 (define @t148 () (+ 31 1)) % 2.11/2.33 (define @t149 () (tptp.calc_date @t148 12 2024 @t90)) % 2.11/2.33 (define @t150 () (and @t149 @t136 @t44 @t147 @t4)) % 2.11/2.33 (define @t151 () (@list @t38 @t37 @t1)) % 2.11/2.33 (define @t152 () (exists @t151 @t150)) % 2.11/2.33 (define @t153 () (not @t152)) % 2.11/2.33 (define @t154 () (>= @t1 @t148)) % 2.11/2.33 (define @t155 () (>= @t1 1)) % 2.11/2.33 (define @t156 () (+ 0 1)) % 2.11/2.33 (define @t157 () (>= @t1 @t156)) % 2.11/2.33 (define @t158 () (tptp.valid_day 1)) % 2.11/2.33 (define @t159 () (not @t158)) % 2.11/2.33 (define @t160 () (not @t9)) % 2.11/2.33 (define @t161 () (or @t160 @t159)) % 2.11/2.33 (define @t162 () (= 1 1)) % 2.11/2.33 (define @t163 () (not @t162)) % 2.11/2.33 (define @t164 () (or @t160 @t163 @t159)) % 2.11/2.33 (define @t165 () (not @t4)) % 2.11/2.33 (define @t166 () (not @t147)) % 2.11/2.33 (define @t167 () (not (tptp.calc_date 32 12 2024 (tptp.ymd 2025 1 @t1)))) % 2.11/2.33 (define @t168 () (or @t166 @t167 @t166 @t165)) % 2.11/2.33 (define @t169 () (or @t167 @t166 @t165)) % 2.11/2.33 (define @t170 () (or @t167 @t163 @t166 @t165)) % 2.11/2.33 (define @t171 () (not (tptp.calc_date 32 12 2024 (tptp.ymd 2025 @t37 @t1)))) % 2.11/2.33 (define @t172 () (or @t95 @t171 @t95 @t166 @t165)) % 2.11/2.33 (define @t173 () (@list @t37)) % 2.11/2.33 (define @t174 () (or @t171 @t95 @t166 @t165)) % 2.11/2.33 (define @t175 () (forall @t173 @t174)) % 2.11/2.33 (define @t176 () (forall @t6 @t175)) % 2.11/2.33 (define @t177 () (forall (@list @t1 @t37) @t174)) % 2.11/2.33 (define @t178 () (@list @t37 @t1)) % 2.11/2.33 (define @t179 () (= 2025 2025)) % 2.11/2.33 (define @t180 () (not @t179)) % 2.11/2.33 (define @t181 () (or @t171 @t180 @t95 @t166 @t165)) % 2.11/2.33 (define @t182 () (tptp.calc_date 32 12 2024 @t90)) % 2.11/2.33 (define @t183 () (not @t182)) % 2.11/2.33 (define @t184 () (or @t137 @t183 @t137 @t95 @t166 @t165)) % 2.11/2.33 (define @t185 () (or @t183 @t137 @t95 @t166 @t165)) % 2.11/2.33 (define @t186 () (forall @t80 @t185)) % 2.11/2.33 (define @t187 () (forall @t178 @t186)) % 2.11/2.33 (define @t188 () (forall (@list @t37 @t1 @t38) @t185)) % 2.11/2.33 (define @t189 () (and @t182 @t136 @t44 @t147 @t4)) % 2.11/2.33 (define @t190 () (forall @t151 (not @t189))) % 2.11/2.33 (define @t191 () (not @t190)) % 2.11/2.33 (define @t192 () (>= 1 32)) % 2.11/2.33 (define @t193 () (not @t192)) % 2.11/2.33 (define @t194 () (>= 1 1)) % 2.11/2.33 (define @t195 () (and @t194 @t193)) % 2.11/2.33 (define @t196 () (= @t158 @t195)) % 2.11/2.33 (define @t197 () (forall @t6 (= @t4 (and @t155 (not (>= @t1 32)))))) % 2.11/2.33 (assume @p1 @t7) % 2.11/2.33 (assume @p2 (tptp.weekday (tptp.ymd 2024 1 1) tptp.monday)) % 2.11/2.33 (assume @p3 (tptp.weekday (tptp.ymd 2024 2 1) tptp.thursday)) % 2.11/2.33 (assume @p4 (tptp.weekday (tptp.ymd 2024 3 1) tptp.friday)) % 2.11/2.33 (assume @p5 (tptp.weekday (tptp.ymd 2024 4 1) tptp.monday)) % 2.11/2.33 (assume @p6 (tptp.weekday (tptp.ymd 2024 5 1) tptp.wednesday)) % 2.11/2.33 (assume @p7 (tptp.weekday @t8 tptp.wednesday)) % 2.11/2.33 (assume @p8 (tptp.weekday (tptp.ymd 2025 2 1) tptp.saturday)) % 2.11/2.33 (assume @p9 (tptp.weekday (tptp.ymd 2025 3 1) tptp.saturday)) % 2.11/2.33 (assume @p10 (tptp.weekday (tptp.ymd 2025 11 1) tptp.saturday)) % 2.11/2.33 (assume @p11 (tptp.weekday (tptp.ymd 1776 1 1) tptp.monday)) % 2.11/2.33 (assume @p12 (tptp.weekday (tptp.ymd 1969 1 1) tptp.wednesday)) % 2.11/2.33 (assume @p13 (tptp.weekday (tptp.ymd 1985 1 1) tptp.tuesday)) % 2.11/2.33 (assume @p14 (tptp.weekday (tptp.ymd 1600 1 1) tptp.saturday)) % 2.11/2.33 (assume @p15 (tptp.calc_date 0 3 2024 (tptp.ymd 2024 2 29))) % 2.11/2.33 (assume @p16 (tptp.calc_date 0 3 2025 (tptp.ymd 2025 2 28))) % 2.11/2.33 (assume @p17 (tptp.calc_date 0 1 2025 (tptp.ymd 2024 12 31))) % 2.11/2.33 (assume @p18 (tptp.calc_date 0 1 2024 (tptp.ymd 2023 12 31))) % 2.11/2.33 (assume @p19 @t9) % 2.11/2.33 (assume @p20 (forall (@list @t16 @t15 @t14 @t13 @t12 @t11 @t10 @t25 @t22 @t23 @t18) (=> (and (= @t25 (+ @t15 @t13)) (= @t22 (to_int (- @t26 (* (to_real @t28) @t24)))) (= @t23 @t28) (= @t18 (+ @t16 (+ @t14 @t23))) (= @t12 (to_int (- @t19 (* (to_real @t21) @t17)))) (= @t11 @t22) (= @t10 @t21)) (tptp.normalize_time @t16 @t15 @t14 @t13 @t12 @t11 @t10)))) % 2.11/2.33 (assume @p21 (forall (@list @t38 @t37 @t1 @t36 @t35 @t34 @t14 @t13 @t33 @t32 @t31 @t30 @t29 @t39) (=> (and (tptp.normalize_time @t36 @t35 @t14 @t13 @t30 @t29 @t39) (tptp.calc_date (+ @t1 (+ @t34 @t39)) @t37 @t38 (tptp.ymd @t33 @t32 @t31))) (tptp.calc_datetime @t38 @t37 @t1 @t36 @t35 @t34 @t14 @t13 (tptp.dt @t33 @t32 @t31 @t30 @t29))))) % 2.11/2.33 (assume @p22 (forall @t45 (=> (and @t44 (> @t1 146097) @t43) (=> (tptp.calc_date (- @t1 146097) 1 @t42 @t40) @t41)))) % 2.11/2.33 (assume @p23 (forall @t45 (=> (and @t44 (<= @t1 (- 146097))) (=> (tptp.calc_date (+ @t1 146097) 1 (- @t38 400) @t40) @t41)))) % 2.11/2.33 (assume @p24 (forall @t45 (=> (and @t44 (<= @t1 (- 36524))) (=> (tptp.calc_date @t46 1 (- @t38 100) @t40) @t41)))) % 2.11/2.33 (assume @p25 (forall @t45 (=> (and @t44 @t55 (or (= @t53 1) (= @t53 2))) (=> @t48 @t41)))) % 2.11/2.33 (assume @p26 (forall @t45 (=> (and @t44 (<= @t1 (- 3653)) (or (= @t53 0) (= @t53 3))) (=> (tptp.calc_date (+ @t1 3653) 1 @t47 @t40) @t41)))) % 2.11/2.33 (assume @p27 (forall @t45 (=> (and @t44 @t57 @t43 (> @t38 2000) (< @t38 2095)) @t56))) % 2.11/2.33 (assume @p28 (forall (@list @t38 @t37 @t67 @t63 @t62 @t60 @t58) (=> (and (tptp.weekday @t68 @t67) (tptp.is_days_in_month @t37 @t38 @t62) (tptp.map_name_to_int @t67 @t63) (= @t60 (to_int (- @t64 (* (to_real (ite @t66 (to_int @t65) (- (to_int (- @t65))))) @t61)))) (tptp.map_iso @t60 @t58)) (tptp.weekday (tptp.ymd @t38 @t59 1) @t58)))) % 2.11/2.33 (assume @p29 (forall @t45 (=> (and @t44 @t70 @t43) (=> (tptp.calc_date @t69 1 (+ @t38 100) @t40) @t41)))) % 2.11/2.33 (assume @p30 (forall @t6 (=> (> @t1 100000) @t70))) % 2.11/2.33 (assume @p31 (forall @t6 (=> (> @t1 400000) (> (- @t1 365240) 3652)))) % 2.11/2.33 (assume @p32 (forall @t6 (=> (> @t1 40000) (> @t69 1461)))) % 2.11/2.33 (assume @p33 (forall @t6 (=> (< @t1 (- 41000)) (< @t46 @t54)))) % 2.11/2.33 (assume @p34 (forall @t45 (=> (and @t44 (> @t1 3653) @t43 (or @t74 (= @t73 3))) (=> (tptp.calc_date (- @t1 3653) 1 (+ @t38 10) @t40) @t41)))) % 2.11/2.33 (assume @p35 (forall @t45 (=> (and @t44 @t57 @t43 @t74) @t56))) % 2.11/2.33 (assume @p36 (forall @t79 (=> (and @t44 (tptp.is_days_in_year @t38 @t75) @t78 @t43) @t77))) % 2.11/2.33 (assume @p37 (forall @t80 (tptp.is_days_in_month 1 @t38 31))) % 2.11/2.33 (assume @p38 (forall @t80 (and (=> (and @t74 (or (not @t89) @t83)) (tptp.is_days_in_month 2 @t38 29)) (=> (or (not @t74) (and @t89 (not @t83))) (tptp.is_days_in_month 2 @t38 28))))) % 2.11/2.33 (assume @p39 (forall @t80 (tptp.is_days_in_month 3 @t38 31))) % 2.11/2.33 (assume @p40 (forall @t80 (tptp.is_days_in_month 4 @t38 30))) % 2.11/2.33 (assume @p41 (forall @t80 (tptp.is_days_in_month 5 @t38 31))) % 2.11/2.33 (assume @p42 (forall @t80 (tptp.is_days_in_month 6 @t38 30))) % 2.11/2.33 (assume @p43 (forall @t80 (tptp.is_days_in_month 7 @t38 31))) % 2.11/2.33 (assume @p44 (forall @t80 (tptp.is_days_in_month 8 @t38 31))) % 2.11/2.33 (assume @p45 (forall @t80 (tptp.is_days_in_month 9 @t38 30))) % 2.11/2.33 (assume @p46 (forall @t80 (tptp.is_days_in_month 10 @t38 31))) % 2.11/2.33 (assume @p47 (forall @t80 (tptp.is_days_in_month 11 @t38 30))) % 2.11/2.33 (assume @p48 (forall @t80 (tptp.is_days_in_month 12 @t38 31))) % 2.11/2.33 (assume @p49 (forall (@list @t1 @t37 @t38 @t75) (=> (and @t91 @t2 (<= @t1 @t75)) (tptp.calc_date @t1 @t37 @t38 @t90)))) % 2.11/2.33 (assume @p50 (forall @t79 (=> (and @t91 @t78 (not @t92)) (=> (tptp.calc_date @t76 @t59 @t38 @t40) @t41)))) % 2.11/2.33 (assume @p51 (forall @t79 (=> (and @t91 @t78 @t92) @t77))) % 2.11/2.33 (assume @p52 (forall @t79 (=> (and @t96 @t95) (=> (and (tptp.is_days_in_month @t93 @t38 @t75) (tptp.calc_date @t94 @t93 @t38 @t40)) @t41)))) % 2.11/2.33 (assume @p53 (forall @t79 (=> (and @t96 @t44) (=> (and (tptp.is_days_in_month 12 @t97 @t75) (tptp.calc_date @t94 12 @t97 @t40)) @t41)))) % 2.11/2.33 (assume @p54 (tptp.map_name_to_int tptp.saturday 0)) % 2.11/2.33 (assume @p55 (tptp.map_name_to_int tptp.sunday 1)) % 2.11/2.33 (assume @p56 (tptp.map_name_to_int tptp.monday 2)) % 2.11/2.33 (assume @p57 (tptp.map_name_to_int tptp.tuesday 3)) % 2.11/2.33 (assume @p58 (tptp.map_name_to_int tptp.wednesday 4)) % 2.11/2.33 (assume @p59 (tptp.map_name_to_int tptp.thursday 5)) % 2.11/2.33 (assume @p60 (tptp.map_name_to_int tptp.friday 6)) % 2.11/2.33 (assume @p61 (forall (@list @t98 @t99 @t102) (= (tptp.calc_nth_offset @t98 @t99 @t102) (and (<= 0 @t98) (<= @t98 6) (<= 0 @t99) (<= @t99 6) (<= 0 @t102) (<= @t102 6) (= @t102 (to_int (- @t100 (* (to_real (ite @t66 (to_int @t101) (- (to_int (- @t101))))) @t61)))))))) % 2.11/2.33 (assume @p62 (forall (@list @t105 @t104 @t37 @t38 @t109 @t108 @t107 @t106 @t103) (=> (and (tptp.weekday @t68 @t109) (tptp.map_name_to_int @t109 @t108) (tptp.map_name_to_int @t104 @t107) (tptp.calc_nth_offset @t108 @t107 @t106) (= @t103 (+ 1 (+ @t106 (* (- @t105 1) 7))))) (tptp.nth_weekday_date @t105 @t104 @t37 @t38 (tptp.ymd @t38 @t37 @t103))))) % 2.11/2.33 (assume @p63 (forall (@list @t112 @t111 @t110) (=> (and (tptp.weekday @t112 @t111) (tptp.weekday @t112 @t110)) (= @t111 @t110)))) % 2.11/2.33 (assume @p64 (forall (@list @t115 @t114 @t113) (=> (and (tptp.map_name_to_int @t115 @t114) (tptp.map_name_to_int @t115 @t113)) (= @t114 @t113)))) % 2.11/2.33 (assume @p65 (forall @t120 (=> (or @t44 @t119) (tptp.zeller_prep @t37 @t38 (+ @t37 12) @t97 (to_int (- @t116 (* (to_real @t118) @t84))) @t118)))) % 2.11/2.33 (assume @p66 (forall @t120 (=> (and @t95 (not @t119)) (tptp.zeller_prep @t37 @t38 @t37 @t38 @t88 @t87)))) % 2.11/2.33 (assume @p67 (forall (@list @t38 @t37 @t1 @t121 @t133 @t135 @t129 @t127 @t131 @t122 @t36) (=> (and (> @t38 1582) (not (= @t38 2024)) @t137 (not (= @t38 1776)) (not (= @t38 1969)) (not (= @t38 1985)) (tptp.zeller_prep @t37 @t38 @t133 @t135 @t129 @t127) (= @t131 (ite (>= @t132 0/1) (to_int @t134) (- (to_int (- @t134))))) (= @t122 (+ @t1 (+ @t131 (+ @t129 (+ (ite @t52 (to_int @t130) (- (to_int (- @t130)))) (+ (ite @t52 (to_int @t128) (- (to_int (- @t128)))) (* 5 @t127))))))) (= @t36 (to_int (- @t125 (* (to_real (ite @t66 (to_int @t126) (- (to_int (- @t126))))) @t61)))) (tptp.map_iso @t36 @t121)) (tptp.weekday @t90 @t121)))) % 2.11/2.33 (assume @p68 (tptp.map_iso 0 tptp.saturday)) % 2.11/2.33 (assume @p69 (tptp.map_iso 1 tptp.sunday)) % 2.11/2.33 (assume @p70 (tptp.map_iso 2 tptp.monday)) % 2.11/2.33 (assume @p71 (tptp.map_iso 3 tptp.tuesday)) % 2.11/2.33 (assume @p72 (tptp.map_iso 4 tptp.wednesday)) % 2.11/2.33 (assume @p73 (tptp.map_iso 5 tptp.thursday)) % 2.11/2.33 (assume @p74 (tptp.map_iso 6 tptp.friday)) % 2.11/2.33 (assume @p75 (tptp.is_days_in_year 2024 366)) % 2.11/2.33 (assume @p76 (tptp.is_days_in_year 2025 365)) % 2.11/2.33 (assume @p77 (tptp.is_days_in_year 2026 365)) % 2.11/2.33 (assume @p78 (tptp.is_days_in_year 2027 365)) % 2.11/2.33 (assume @p79 (tptp.is_days_in_year 2028 366)) % 2.11/2.33 (assume @p80 (tptp.calc_date 1461 1 2025 (tptp.ymd 2028 12 31))) % 2.11/2.33 (assume @p81 (tptp.is_days_in_month 2 1776 29)) % 2.11/2.33 (assume @p82 (tptp.is_days_in_month 2 2024 29)) % 2.11/2.33 (assume @p83 (forall @t140 (=> (and (<= @t1 (- 365)) (not @t139)) (=> (tptp.calc_date (+ @t1 365) 1 @t97 @t40) @t138)))) % 2.11/2.33 (assume @p84 (forall @t140 (=> (and (<= @t1 (- 366)) @t139) (=> (tptp.calc_date (+ @t1 366) 1 @t97 @t40) @t138)))) % 2.11/2.33 (assume @p85 (forall @t140 (=> @t55 (=> @t48 @t138)))) % 2.11/2.33 (assume @p86 (forall (@list @t38 @t37 @t1 @t141 @t143 @t142) (=> (and (tptp.calc_date @t1 @t37 @t38 @t143) (tptp.calc_date @t1 @t37 @t42 @t142)) (= (tptp.weekday @t143 @t141) (tptp.weekday @t142 @t141))))) % 2.11/2.33 (assume @p87 (forall (@list @t104 @t37 @t38 @t144 @t146) (=> (and (tptp.nth_weekday_date 4 @t104 @t37 @t38 @t145) (tptp.nth_weekday_date 5 @t104 @t37 @t38 (tptp.ymd @t38 @t37 @t146)) (tptp.is_days_in_month @t37 @t38 @t144) (not (tptp.is_days_in_month @t37 @t38 @t146))) (tptp.nth_weekday_date 5 @t104 @t37 @t38 @t145)))) % 2.11/2.33 (assume @p88 @t153) % 2.11/2.33 (assume @p89 true) % 2.11/2.33 (step @p90 :rule evaluate :args (@t148)) % 2.11/2.33 (step @p91 :rule refl :args (@t1)) % 2.11/2.33 (step @p92 :rule cong :premises (@p91 @p90) :args (@t154)) % 2.11/2.33 (step @p93 :rule cong :premises (@p92) :args ((not @t154))) % 2.11/2.33 (step @p94 :rule arith-leq-norm :args (@t1 31)) % 2.11/2.33 (step @p95 :rule trans :premises (@p94 @p93)) % 2.11/2.33 (step @p96 :rule bool-double-not-elim :args (@t155)) % 2.11/2.33 (step @p97 :rule evaluate :args (@t156)) % 2.11/2.33 (step @p98 :rule cong :premises (@p91 @p97) :args (@t157)) % 2.11/2.33 (step @p99 :rule cong :premises (@p98) :args ((not @t157))) % 2.11/2.33 (step @p100 :rule arith-leq-norm :args (@t1 0)) % 2.11/2.33 (step @p101 :rule trans :premises (@p100 @p99)) % 2.11/2.33 (step @p102 :rule cong :premises (@p101) :args ((not @t96))) % 2.11/2.33 (step @p103 :rule trans :premises (@p102 @p96)) % 2.11/2.33 (step @p104 :rule arith-elim-leq :args (@t1 0)) % 2.11/2.33 (step @p105 :rule symm :premises (@p104)) % 2.11/2.33 (step @p106 :rule cong :premises (@p105) :args ((not (>= 0 @t1)))) % 2.11/2.33 (step @p107 :rule arith-elim-gt :args (@t1 0)) % 2.11/2.33 (step @p108 :rule trans :premises (@p107 @p106)) % 2.11/2.33 (step @p109 :rule trans :premises (@p108 @p103)) % 2.11/2.33 (step @p110 :rule nary_cong :premises (@p109 @p95) :args (@t3)) % 2.11/2.33 (step @p111 :rule refl :args (@t4)) % 2.11/2.33 (step @p112 :rule cong :premises (@p111 @p110) :args (@t5)) % 2.11/2.33 (step @p113 :rule cong :premises (@p112) :args (@t7)) % 2.11/2.33 (step @p114 :rule eq_resolve :premises (@p1 @p113)) % 2.11/2.33 (step @p115 :rule bool-double-not-elim :args (@t161)) % 2.11/2.33 (step @p116 :rule aci_norm :args ((= (or @t160 false @t159) @t161))) % 2.11/2.33 (step @p117 :rule refl :args (@t159)) % 2.11/2.33 (step @p118 :rule evaluate :args ((not true))) % 2.11/2.33 (step @p119 :rule evaluate :args (@t162)) % 2.11/2.33 (step @p120 :rule cong :premises (@p119) :args (@t163)) % 2.11/2.33 (step @p121 :rule trans :premises (@p120 @p118)) % 2.11/2.33 (step @p122 :rule refl :args (@t160)) % 2.11/2.33 (step @p123 :rule nary_cong :premises (@p122 @p121 @p117) :args (@t164)) % 2.11/2.33 (step @p124 :rule trans :premises (@p123 @p116)) % 2.11/2.33 (step @p125 :rule quant-var-elim-eq :args ((= (forall @t6 @t168) @t164))) % 2.11/2.33 (step @p126 :rule aci_norm :args ((= @t169 @t168))) % 2.11/2.33 (step @p127 :rule cong :premises (@p126) :args ((forall @t6 @t169))) % 2.11/2.33 (step @p128 :rule trans :premises (@p127 @p125)) % 2.11/2.33 (step @p129 :rule trans :premises (@p128 @p124)) % 2.11/2.33 (step @p130 :rule aci_norm :args ((= (or @t167 false @t166 @t165) @t169))) % 2.11/2.33 (step @p131 :rule refl :args (@t165)) % 2.11/2.33 (step @p132 :rule refl :args (@t166)) % 2.11/2.33 (step @p133 :rule refl :args (@t167)) % 2.11/2.33 (step @p134 :rule nary_cong :premises (@p133 @p121 @p132 @p131) :args (@t170)) % 2.11/2.33 (step @p135 :rule trans :premises (@p134 @p130)) % 2.11/2.33 (step @p136 :rule cong :premises (@p135) :args ((forall @t6 @t170))) % 2.11/2.33 (step @p137 :rule trans :premises (@p136 @p129)) % 2.11/2.33 (step @p138 :rule quant-var-elim-eq :args ((= (forall @t173 @t172) @t170))) % 2.11/2.33 (step @p139 :rule aci_norm :args ((= @t174 @t172))) % 2.11/2.33 (step @p140 :rule cong :premises (@p139) :args (@t175)) % 2.11/2.33 (step @p141 :rule trans :premises (@p140 @p138)) % 2.11/2.33 (step @p142 :rule cong :premises (@p141) :args (@t176)) % 2.11/2.33 (step @p143 :rule quant-merge-prenex :args ((= @t176 @t177))) % 2.11/2.33 (step @p144 :rule symm :premises (@p143)) % 2.11/2.33 (step @p145 :rule quant_var_reordering :args ((= (forall @t178 @t174) @t177))) % 2.11/2.33 (step @p146 :rule trans :premises (@p145 @p144 @p142)) % 2.11/2.33 (step @p147 :rule trans :premises (@p146 @p137)) % 2.11/2.33 (step @p148 :rule aci_norm :args ((= (or @t171 false @t95 @t166 @t165) @t174))) % 2.11/2.33 (step @p149 :rule refl :args (@t95)) % 2.11/2.33 (step @p150 :rule evaluate :args (@t179)) % 2.11/2.33 (step @p151 :rule cong :premises (@p150) :args (@t180)) % 2.11/2.33 (step @p152 :rule trans :premises (@p151 @p118)) % 2.11/2.33 (step @p153 :rule refl :args (@t171)) % 2.11/2.33 (step @p154 :rule nary_cong :premises (@p153 @p152 @p149 @p132 @p131) :args (@t181)) % 2.11/2.33 (step @p155 :rule trans :premises (@p154 @p148)) % 2.11/2.33 (step @p156 :rule cong :premises (@p155) :args ((forall @t178 @t181))) % 2.11/2.33 (step @p157 :rule trans :premises (@p156 @p147)) % 2.11/2.33 (step @p158 :rule quant-var-elim-eq :args ((= (forall @t80 @t184) @t181))) % 2.11/2.33 (step @p159 :rule aci_norm :args ((= @t185 @t184))) % 2.11/2.33 (step @p160 :rule cong :premises (@p159) :args (@t186)) % 2.11/2.33 (step @p161 :rule trans :premises (@p160 @p158)) % 2.11/2.33 (step @p162 :rule cong :premises (@p161) :args (@t187)) % 2.11/2.33 (step @p163 :rule quant-merge-prenex :args ((= @t187 @t188))) % 2.11/2.33 (step @p164 :rule symm :premises (@p163)) % 2.11/2.33 (step @p165 :rule quant_var_reordering :args ((= (forall @t151 @t185) @t188))) % 2.11/2.33 (step @p166 :rule trans :premises (@p165 @p164 @p162)) % 2.11/2.33 (step @p167 :rule trans :premises (@p166 @p157)) % 2.11/2.33 (step @p168 :rule aci_norm :args ((= (or @t183 (or @t137 (or @t95 (or @t166 @t165)))) @t185))) % 2.11/2.33 (step @p169 :rule bool-and-de-morgan :args (@t147 @t4 true)) % 2.11/2.33 (step @p170 :rule refl :args (@t95)) % 2.11/2.33 (step @p171 :rule nary_cong :premises (@p170 @p169) :args ((or @t95 (not (and @t147 @t4))))) % 2.11/2.33 (step @p172 :rule bool-and-de-morgan :args (@t44 @t147 (and @t4))) % 2.11/2.33 (step @p173 :rule trans :premises (@p172 @p171)) % 2.11/2.33 (step @p174 :rule refl :args (@t137)) % 2.11/2.33 (step @p175 :rule nary_cong :premises (@p174 @p173) :args ((or @t137 (not (and @t44 @t147 @t4))))) % 2.11/2.33 (step @p176 :rule bool-and-de-morgan :args (@t136 @t44 (and @t147 @t4))) % 2.11/2.33 (step @p177 :rule trans :premises (@p176 @p175)) % 2.11/2.33 (step @p178 :rule refl :args (@t183)) % 2.11/2.33 (step @p179 :rule nary_cong :premises (@p178 @p177) :args ((or @t183 (not (and @t136 @t44 @t147 @t4))))) % 2.11/2.33 (step @p180 :rule bool-and-de-morgan :args (@t182 @t136 (and @t44 @t147 @t4))) % 2.11/2.33 (step @p181 :rule trans :premises (@p180 @p179)) % 2.11/2.33 (step @p182 :rule trans :premises (@p181 @p168)) % 2.11/2.33 (step @p183 :rule cong :premises (@p182) :args (@t190)) % 2.11/2.33 (step @p184 :rule trans :premises (@p183 @p167)) % 2.11/2.33 (step @p185 :rule cong :premises (@p184) :args (@t191)) % 2.11/2.33 (step @p186 :rule exists-elim :args ((= (exists @t151 @t189) @t191))) % 2.11/2.33 (step @p187 :rule trans :premises (@p186 @p185)) % 2.11/2.33 (step @p188 :rule refl :args (@t147)) % 2.11/2.33 (step @p189 :rule refl :args (@t44)) % 2.11/2.33 (step @p190 :rule refl :args (@t136)) % 2.11/2.33 (step @p191 :rule refl :args (@t90)) % 2.11/2.33 (step @p192 :rule refl :args (2024)) % 2.11/2.33 (step @p193 :rule refl :args (12)) % 2.11/2.33 (step @p194 :rule cong :premises (@p90 @p193 @p192 @p191) :args (@t149)) % 2.11/2.33 (step @p195 :rule nary_cong :premises (@p194 @p190 @p189 @p188 @p111) :args (@t150)) % 2.11/2.33 (step @p196 :rule cong :premises (@p195) :args (@t152)) % 2.11/2.33 (step @p197 :rule trans :premises (@p196 @p187)) % 2.11/2.33 (step @p198 :rule cong :premises (@p197) :args (@t153)) % 2.11/2.33 (step @p199 :rule trans :premises (@p198 @p115)) % 2.11/2.33 (step @p200 :rule eq_resolve :premises (@p88 @p199)) % 2.11/2.33 (step @p201 :rule chain_m_resolution :premises (@p200 @p19) :args (@t159 (@list false) (@list @t9))) % 2.11/2.33 (step @p202 :rule bool-eq-true :args (@t158)) % 2.11/2.33 (step @p203 :rule evaluate :args ((and true true))) % 2.11/2.33 (step @p204 :rule evaluate :args ((not false))) % 2.11/2.33 (step @p205 :rule evaluate :args (@t192)) % 2.11/2.33 (step @p206 :rule cong :premises (@p205) :args (@t193)) % 2.11/2.33 (step @p207 :rule trans :premises (@p206 @p204)) % 2.11/2.33 (step @p208 :rule evaluate :args (@t194)) % 2.11/2.33 (step @p209 :rule nary_cong :premises (@p208 @p207) :args (@t195)) % 2.11/2.33 (step @p210 :rule trans :premises (@p209 @p203)) % 2.11/2.33 (step @p211 :rule refl :args (@t158)) % 2.11/2.33 (step @p212 :rule cong :premises (@p211 @p210) :args (@t196)) % 2.11/2.34 (step @p213 :rule trans :premises (@p212 @p202)) % 2.11/2.34 (step @p214 :rule refl :args (@t197)) % 2.11/2.34 (step @p215 :rule cong :premises (@p214 @p213) :args ((=> @t197 @t196))) % 2.11/2.34 (assume-push @p224 @t197) % 2.11/2.34 (step @p217 :rule instantiate :premises (@p114) :args ((@list 1))) % 2.11/2.34 (step-pop @p225 :rule scope :premises (@p217)) % 2.11/2.34 (step @p218 :rule process_scope :premises (@p225) :args (@t196)) % 2.11/2.34 (step @p220 :rule eq_resolve :premises (@p218 @p215)) % 2.11/2.34 (step @p221 :rule implies_elim :premises (@p220)) % 2.11/2.34 (step @p222 :rule reordering :premises (@p221) :args ((or @t158 (not @t197)))) % 2.11/2.34 (step @p223 false :rule chain_m_resolution :premises (@p222 @p201 @p114) :args (false (@list true false) (@list @t158 @t197))) % 2.11/2.34 ) % 2.11/2.34 % SZS output end Proof % 2.11/2.34 % cvc5 exiting %------------------------------------------------------------------------------