%------------------------------------------------------------------------------ % File : cvc5---1.3.4 % Problem : SEU483^1 : TPTP v9.2.1. Bugfixed v3.7.0. % Transfm : none % Format : tptp:raw % Command : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM % Computer : n002.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 08:51:55 AM UTC 2026 % Result : Theorem 169.69s 170.05s % Output : Proof 169.69s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.11/0.13 % Problem : SEU483^1 : TPTP v9.2.1. Bugfixed v3.7.0. % 0.11/0.14 % Command : /export/starexec/sandbox/solver/bin/do_cvc5 /export/starexec/sandbox/benchmark/theBenchmark.p 300 THM % 0.16/0.35 % Computer : n002.cluster.edu % 0.16/0.35 % Model : x86_64 x86_64 % 0.16/0.35 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.16/0.35 % Memory : 8042.1875MB % 0.16/0.35 % OS : Linux 3.10.0-693.el7.x86_64 % 0.16/0.35 % CPULimit : 300 % 0.16/0.35 % WCLimit : 300 % 0.16/0.35 % DateTime : Tue Jun 2 17:37:48 EDT 2026 % 0.16/0.35 % CPUTime : % 0.27/0.52 %----Proving TH0 % 169.69/170.05 --- Run --mbqi --mbqi-enum --mbqi-enum-choice-grammar --mbqi-enum-global-syms-grammar --sygus-grammar-ho-partial --no-cegqi --no-sygus-inst at 90s... % 169.69/170.05 --- Run --mbqi --mbqi-enum --mbqi-enum-choice-grammar --mbqi-enum-global-syms-grammar --sygus-grammar-ho-partial --mbqi-enum-choice-grammar-all --no-cegqi --no-sygus-inst at 30s... % 169.69/170.05 --- Run --mbqi --mbqi-enum --mbqi-enum-choice-grammar --mbqi-enum-global-syms-grammar --sygus-grammar-ho-partial --no-mbqi-nested-check --no-cegqi --no-sygus-inst at 30s... % 169.69/170.05 --- Run --ho-elim --full-saturate-quant at 18s... % 169.69/170.05 --- Run --ho-elim --no-e-matching --full-saturate-quant at 12s... % 169.69/170.05 % SZS status Theorem % 169.69/170.05 % SZS output start Proof % 169.69/170.05 ( % 169.69/170.05 (declare-sort $$unsorted 0) % 169.69/170.05 (define tptp.subrel () (let ((_let_1 (@var "Y" $$unsorted))) (let ((_let_2 (@var "X" $$unsorted))) (let ((_let_3 (@var "S" (-> $$unsorted $$unsorted Bool)))) (let ((_let_4 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_4 _let_3) (forall (@list _let_2 _let_1) (=> (_ (_ _let_4 _let_2) _let_1) (_ (_ _let_3 _let_2) _let_1))))))))) % 169.69/170.05 (define tptp.inv () (let ((_let_1 (@var "X" $$unsorted))) (let ((_let_2 (@var "Y" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_3 _let_1 _let_2) (_ (_ _let_3 _let_2) _let_1)))))) % 169.69/170.05 (define tptp.idem () (let ((_let_1 (@var "R" (-> $$unsorted $$unsorted Bool)))) (let ((_let_2 (@var "F" (-> (-> $$unsorted $$unsorted Bool) $$unsorted $$unsorted Bool)))) (let ((_let_3 (_ _let_2 _let_1))) (lambda (@list _let_2) (forall (@list _let_1) (= (_ _let_2 _let_3) _let_3))))))) % 169.69/170.05 (define tptp.infl () (let ((_let_1 (@var "R" (-> $$unsorted $$unsorted Bool)))) (let ((_let_2 (@var "F" (-> (-> $$unsorted $$unsorted Bool) $$unsorted $$unsorted Bool)))) (lambda (@list _let_2) (forall (@list _let_1) (_ (_ tptp.subrel _let_1) (_ _let_2 _let_1))))))) % 169.69/170.05 (define tptp.mono () (let ((_let_1 (@var "S" (-> $$unsorted $$unsorted Bool)))) (let ((_let_2 (@var "F" (-> (-> $$unsorted $$unsorted Bool) $$unsorted $$unsorted Bool)))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_2) (forall (@list _let_3 _let_1) (=> (_ (_ tptp.subrel _let_3) _let_1) (_ (_ tptp.subrel (_ _let_2 _let_3)) (_ _let_2 _let_1))))))))) % 169.69/170.05 (define tptp.refl () (let ((_let_1 (@var "X" $$unsorted))) (let ((_let_2 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_2) (forall (@list _let_1) (_ (_ _let_2 _let_1) _let_1)))))) % 169.69/170.05 (define tptp.irrefl () (let ((_let_1 (@var "X" $$unsorted))) (let ((_let_2 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_2) (forall (@list _let_1) (not (_ (_ _let_2 _let_1) _let_1))))))) % 169.69/170.05 (define tptp.rc () (let ((_let_1 (@var "Y" $$unsorted))) (let ((_let_2 (@var "X" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_3 _let_2 _let_1) (or (= _let_2 _let_1) (_ (_ _let_3 _let_2) _let_1))))))) % 169.69/170.05 (define tptp.symm () (let ((_let_1 (@var "X" $$unsorted))) (let ((_let_2 (@var "Y" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_3) (forall (@list _let_1 _let_2) (=> (_ (_ _let_3 _let_1) _let_2) (_ (_ _let_3 _let_2) _let_1)))))))) % 169.69/170.05 (define tptp.antisymm () (let ((_let_1 (@var "Y" $$unsorted))) (let ((_let_2 (@var "X" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_3) (forall (@list _let_2 _let_1) (=> (and (_ (_ _let_3 _let_2) _let_1) (_ (_ _let_3 _let_1) _let_2)) (= _let_2 _let_1)))))))) % 169.69/170.05 (define tptp.asymm () (let ((_let_1 (@var "X" $$unsorted))) (let ((_let_2 (@var "Y" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_3) (forall (@list _let_1 _let_2) (=> (_ (_ _let_3 _let_1) _let_2) (not (_ (_ _let_3 _let_2) _let_1))))))))) % 169.69/170.05 (define tptp.sc () (let ((_let_1 (@var "Y" $$unsorted))) (let ((_let_2 (@var "X" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_3 _let_2 _let_1) (or (_ (_ _let_3 _let_1) _let_2) (_ (_ _let_3 _let_2) _let_1))))))) % 169.69/170.05 (define tptp.trans () (let ((_let_1 (@var "Z" $$unsorted))) (let ((_let_2 (@var "X" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (let ((_let_4 (_ _let_3 _let_2))) (let ((_let_5 (@var "Y" $$unsorted))) (lambda (@list _let_3) (forall (@list _let_2 _let_5 _let_1) (=> (and (_ _let_4 _let_5) (_ (_ _let_3 _let_5) _let_1)) (_ _let_4 _let_1)))))))))) % 169.69/170.05 (define tptp.tc () (let ((_let_1 (@var "Y" $$unsorted))) (let ((_let_2 (@var "X" $$unsorted))) (let ((_let_3 (@var "S" (-> $$unsorted $$unsorted Bool)))) (let ((_let_4 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_4 _let_2 _let_1) (forall (@list _let_3) (=> (and (_ tptp.trans _let_3) (_ (_ tptp.subrel _let_4) _let_3)) (_ (_ _let_3 _let_2) _let_1))))))))) % 169.69/170.05 (define tptp.trc () (let ((_let_1 (@var "__flatten_var_1" $$unsorted))) (let ((_let_2 (@var "__flatten_var_0" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_3 _let_2 _let_1) (_ (_ (_ tptp.rc (_ tptp.tc _let_3)) _let_2) _let_1)))))) % 169.69/170.05 (define tptp.trsc () (let ((_let_1 (@var "__flatten_var_1" $$unsorted))) (let ((_let_2 (@var "__flatten_var_0" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_3 _let_2 _let_1) (_ (_ (_ tptp.sc (_ tptp.rc (_ tptp.tc _let_3))) _let_2) _let_1)))))) % 169.69/170.05 (define tptp.po () (let ((_let_1 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_1) (and (_ tptp.refl _let_1) (_ tptp.antisymm _let_1) (_ tptp.trans _let_1))))) % 169.69/170.05 (define tptp.so () (let ((_let_1 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_1) (and (_ tptp.asymm _let_1) (_ tptp.trans _let_1))))) % 169.69/170.05 (define tptp.total () (let ((_let_1 (@var "X" $$unsorted))) (let ((_let_2 (@var "Y" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_3) (forall (@list _let_1 _let_2) (or (= _let_1 _let_2) (_ (_ _let_3 _let_1) _let_2) (_ (_ _let_3 _let_2) _let_1)))))))) % 169.69/170.05 (define tptp.term () (let ((_let_1 (@var "Y" $$unsorted))) (let ((_let_2 (@var "X" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (let ((_let_4 (@var "A" (-> $$unsorted Bool)))) (let ((_let_5 (_ _let_4 _let_2))) (let ((_let_6 (@list _let_2))) (lambda (@list _let_3) (forall (@list _let_4) (=> (exists _let_6 _let_5) (exists _let_6 (and _let_5 (forall (@list _let_1) (=> (_ _let_4 _let_1) (not (_ (_ _let_3 _let_2) _let_1)))))))))))))))) % 169.69/170.05 (define tptp.ind () (let ((_let_1 (@var "X" $$unsorted))) (let ((_let_2 (@var "P" (-> $$unsorted Bool)))) (let ((_let_3 (_ _let_2 _let_1))) (let ((_let_4 (@list _let_1))) (let ((_let_5 (@var "Y" $$unsorted))) (let ((_let_6 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_6) (forall (@list _let_2) (=> (forall _let_4 (=> (forall (@list _let_5) (=> (_ (_ (_ tptp.tc _let_6) _let_1) _let_5) (_ _let_2 _let_5))) _let_3)) (forall _let_4 _let_3))))))))))) % 169.69/170.05 (define tptp.innf () (let ((_let_1 (@var "Y" $$unsorted))) (let ((_let_2 (@var "X" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_3 _let_2) (not (exists (@list _let_1) (_ (_ _let_3 _let_2) _let_1)))))))) % 169.69/170.05 (define tptp.nfof () (let ((_let_1 (@var "X" $$unsorted))) (let ((_let_2 (@var "R" (-> $$unsorted $$unsorted Bool)))) (let ((_let_3 (@var "Y" $$unsorted))) (lambda (@list _let_2 _let_1 _let_3) (and (_ (_ (_ tptp.trc _let_2) _let_3) _let_1) (_ (_ tptp.innf _let_2) _let_1))))))) % 169.69/170.05 (define tptp.norm () (let ((_let_1 (@var "X" $$unsorted))) (let ((_let_2 (@var "Y" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_3) (forall (@list _let_1) (exists (@list _let_2) (_ (_ (_ tptp.nfof _let_3) _let_2) _let_1)))))))) % 169.69/170.05 (define tptp.join () (let ((_let_1 (@var "Z" $$unsorted))) (let ((_let_2 (@var "Y" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (let ((_let_4 (_ tptp.trc _let_3))) (let ((_let_5 (@var "X" $$unsorted))) (lambda (@list _let_3 _let_5 _let_2) (exists (@list _let_1) (and (_ (_ _let_4 _let_5) _let_1) (_ (_ _let_4 _let_2) _let_1)))))))))) % 169.69/170.05 (define tptp.lconfl () (let ((_let_1 (@var "Y" $$unsorted))) (let ((_let_2 (@var "Z" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (let ((_let_4 (@var "X" $$unsorted))) (let ((_let_5 (_ _let_3 _let_4))) (lambda (@list _let_3) (forall (@list _let_4 _let_1 _let_2) (=> (and (_ _let_5 _let_2) (_ _let_5 _let_1)) (_ (_ (_ tptp.join _let_3) _let_2) _let_1)))))))))) % 169.69/170.05 (define tptp.sconfl () (let ((_let_1 (@var "Y" $$unsorted))) (let ((_let_2 (@var "Z" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (let ((_let_4 (@var "X" $$unsorted))) (lambda (@list _let_3) (forall (@list _let_4 _let_1 _let_2) (=> (and (_ (_ _let_3 _let_4) _let_2) (_ (_ (_ tptp.trc _let_3) _let_4) _let_1)) (_ (_ (_ tptp.join _let_3) _let_2) _let_1))))))))) % 169.69/170.05 (define tptp.confl () (let ((_let_1 (@var "Y" $$unsorted))) (let ((_let_2 (@var "Z" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (let ((_let_4 (@var "X" $$unsorted))) (let ((_let_5 (_ (_ tptp.trc _let_3) _let_4))) (lambda (@list _let_3) (forall (@list _let_4 _let_1 _let_2) (=> (and (_ _let_5 _let_2) (_ _let_5 _let_1)) (_ (_ (_ tptp.join _let_3) _let_2) _let_1)))))))))) % 169.69/170.05 (define tptp.cr () (let ((_let_1 (@var "Y" $$unsorted))) (let ((_let_2 (@var "X" $$unsorted))) (let ((_let_3 (@var "R" (-> $$unsorted $$unsorted Bool)))) (lambda (@list _let_3) (forall (@list _let_2 _let_1) (=> (_ (_ (_ tptp.trsc _let_3) _let_2) _let_1) (_ (_ (_ tptp.join _let_3) _let_2) _let_1)))))))) % 169.69/170.05 (define @t1 () (@var "R" (-> $$unsorted $$unsorted Bool))) % 169.69/170.05 (define @t2 () (not (_ tptp.term @t1))) % 169.69/170.05 (define @t3 () (=> (_ tptp.symm @t1) @t2)) % 169.69/170.05 (define @t4 () (@var "Y" $$unsorted)) % 169.69/170.05 (define @t5 () (@var "X" $$unsorted)) % 169.69/170.05 (define @t6 () (_ @t1 @t5)) % 169.69/170.05 (define @t7 () (_ @t6 @t4)) % 169.69/170.05 (define @t8 () (@list @t5 @t4)) % 169.69/170.05 (define @t9 () (exists @t8 @t7)) % 169.69/170.05 (define @t10 () (=> @t9 @t3)) % 169.69/170.05 (define @t11 () (@list @t1)) % 169.69/170.05 (define @t12 () (forall @t11 @t10)) % 169.69/170.05 (define @t13 () (not @t12)) % 169.69/170.05 (define @t14 () (@var "S" (-> $$unsorted $$unsorted Bool))) % 169.69/170.05 (define @t15 () (_ (_ @t14 @t5) @t4)) % 169.69/170.05 (define @t16 () (@list @t1 @t14)) % 169.69/170.05 (define @t17 () (lambda @t16 (forall @t8 (=> @t7 @t15)))) % 169.69/170.05 (define @t18 () (_ @t1 @t4)) % 169.69/170.05 (define @t19 () (_ @t18 @t5)) % 169.69/170.05 (define @t20 () (@list @t1 @t5 @t4)) % 169.69/170.05 (define @t21 () (lambda @t20 @t19)) % 169.69/170.05 (define @t22 () (@var "F" (-> (-> $$unsorted $$unsorted Bool) $$unsorted $$unsorted Bool))) % 169.69/170.05 (define @t23 () (_ @t22 @t1)) % 169.69/170.05 (define @t24 () (@list @t22)) % 169.69/170.05 (define @t25 () (lambda @t24 (forall @t11 (= (_ @t22 @t23) @t23)))) % 169.69/170.05 (define @t26 () (_ tptp.subrel @t1)) % 169.69/170.05 (define @t27 () (lambda @t24 (forall @t11 (_ @t26 @t23)))) % 169.69/170.05 (define @t28 () (_ @t26 @t14)) % 169.69/170.05 (define @t29 () (lambda @t24 (forall @t16 (=> @t28 (_ (_ tptp.subrel @t23) (_ @t22 @t14)))))) % 169.69/170.05 (define @t30 () (_ @t6 @t5)) % 169.69/170.05 (define @t31 () (@list @t5)) % 169.69/170.05 (define @t32 () (lambda @t11 (forall @t31 @t30))) % 169.69/170.05 (define @t33 () (lambda @t11 (forall @t31 (not @t30)))) % 169.69/170.05 (define @t34 () (= @t5 @t4)) % 169.69/170.05 (define @t35 () (lambda @t20 (or @t34 @t7))) % 169.69/170.05 (define @t36 () (forall @t8 (=> @t7 @t19))) % 169.69/170.05 (define @t37 () (lambda @t11 @t36)) % 169.69/170.05 (define @t38 () (lambda @t11 (forall @t8 (=> (and @t7 @t19) @t34)))) % 169.69/170.05 (define @t39 () (lambda @t11 (forall @t8 (=> @t7 (not @t19))))) % 169.69/170.05 (define @t40 () (lambda @t20 (or @t19 @t7))) % 169.69/170.05 (define @t41 () (@var "Z" $$unsorted)) % 169.69/170.05 (define @t42 () (_ @t6 @t41)) % 169.69/170.05 (define @t43 () (@list @t5 @t4 @t41)) % 169.69/170.05 (define @t44 () (lambda @t11 (forall @t43 (=> (and @t7 (_ @t18 @t41)) @t42)))) % 169.69/170.05 (define @t45 () (lambda @t20 (forall (@list @t14) (=> (and (_ tptp.trans @t14) @t28) @t15)))) % 169.69/170.05 (define @t46 () (@var "__flatten_var_1" $$unsorted)) % 169.69/170.05 (define @t47 () (@var "__flatten_var_0" $$unsorted)) % 169.69/170.05 (define @t48 () (_ tptp.tc @t1)) % 169.69/170.05 (define @t49 () (_ tptp.rc @t48)) % 169.69/170.05 (define @t50 () (@list @t1 @t47 @t46)) % 169.69/170.05 (define @t51 () (lambda @t50 (_ (_ @t49 @t47) @t46))) % 169.69/170.05 (define @t52 () (lambda @t50 (_ (_ (_ tptp.sc @t49) @t47) @t46))) % 169.69/170.05 (define @t53 () (_ tptp.trans @t1)) % 169.69/170.05 (define @t54 () (lambda @t11 (and (_ tptp.refl @t1) (_ tptp.antisymm @t1) @t53))) % 169.69/170.05 (define @t55 () (lambda @t11 (and (_ tptp.asymm @t1) @t53))) % 169.69/170.05 (define @t56 () (lambda @t11 (forall @t8 (or @t34 @t7 @t19)))) % 169.69/170.05 (define @t57 () (not @t7)) % 169.69/170.05 (define @t58 () (@var "A" (-> $$unsorted Bool))) % 169.69/170.05 (define @t59 () (_ @t58 @t4)) % 169.69/170.05 (define @t60 () (@list @t4)) % 169.69/170.05 (define @t61 () (forall @t60 (=> @t59 @t57))) % 169.69/170.05 (define @t62 () (_ @t58 @t5)) % 169.69/170.05 (define @t63 () (and @t62 @t61)) % 169.69/170.05 (define @t64 () (exists @t31 @t63)) % 169.69/170.05 (define @t65 () (exists @t31 @t62)) % 169.69/170.05 (define @t66 () (=> @t65 @t64)) % 169.69/170.05 (define @t67 () (@list @t58)) % 169.69/170.05 (define @t68 () (forall @t67 @t66)) % 169.69/170.05 (define @t69 () (lambda @t11 @t68)) % 169.69/170.05 (define @t70 () (@var "P" (-> $$unsorted Bool))) % 169.69/170.05 (define @t71 () (_ @t70 @t5)) % 169.69/170.05 (define @t72 () (lambda @t11 (forall (@list @t70) (=> (forall @t31 (=> (forall @t60 (=> (_ (_ @t48 @t5) @t4) (_ @t70 @t4))) @t71)) (forall @t31 @t71))))) % 169.69/170.05 (define @t73 () (lambda (@list @t1 @t5) (not (exists @t60 @t7)))) % 169.69/170.05 (define @t74 () (_ tptp.trc @t1)) % 169.69/170.05 (define @t75 () (_ @t74 @t4)) % 169.69/170.05 (define @t76 () (lambda @t20 (and (_ @t75 @t5) (_ (_ tptp.innf @t1) @t5)))) % 169.69/170.05 (define @t77 () (lambda @t11 (forall @t31 (exists @t60 (_ (_ (_ tptp.nfof @t1) @t4) @t5))))) % 169.69/170.05 (define @t78 () (_ @t74 @t5)) % 169.69/170.05 (define @t79 () (_ @t78 @t41)) % 169.69/170.05 (define @t80 () (lambda @t20 (exists (@list @t41) (and @t79 (_ @t75 @t41))))) % 169.69/170.05 (define @t81 () (_ tptp.join @t1)) % 169.69/170.05 (define @t82 () (_ (_ @t81 @t41) @t4)) % 169.69/170.05 (define @t83 () (lambda @t11 (forall @t43 (=> (and @t42 @t7) @t82)))) % 169.69/170.05 (define @t84 () (_ @t78 @t4)) % 169.69/170.05 (define @t85 () (lambda @t11 (forall @t43 (=> (and @t42 @t84) @t82)))) % 169.69/170.05 (define @t86 () (lambda @t11 (forall @t43 (=> (and @t79 @t84) @t82)))) % 169.69/170.05 (define @t87 () (lambda @t11 (forall @t8 (=> (_ (_ (_ tptp.trsc @t1) @t5) @t4) (_ (_ @t81 @t5) @t4))))) % 169.69/170.05 (define @t88 () (@var "BOUND_VARIABLE_8862" (@ho-elim-sort (-> $$unsorted $$unsorted Bool)))) % 169.69/170.05 (define @t89 () (@const 0 (-> (@ho-elim-sort (-> $$unsorted $$unsorted Bool)) $$unsorted (@ho-elim-sort (-> $$unsorted Bool))))) % 169.69/170.05 (define @t90 () (@const 1 (-> (@ho-elim-sort (-> $$unsorted Bool)) $$unsorted Bool))) % 169.69/170.05 (define @t91 () (not (_ @t90 (_ @t89 @t88 @t5) @t4))) % 169.69/170.05 (define @t92 () (@var "BOUND_VARIABLE_8871" (@ho-elim-sort (-> $$unsorted Bool)))) % 169.69/170.05 (define @t93 () (not (_ @t90 @t92 @t4))) % 169.69/170.05 (define @t94 () (not (_ @t90 @t92 @t5))) % 169.69/170.05 (define @t95 () (@var "BOUND_VARIABLE_7976" $$unsorted)) % 169.69/170.05 (define @t96 () (not (_ @t90 @t92 @t95))) % 169.69/170.05 (define @t97 () (@list @t92 @t95)) % 169.69/170.05 (define @t98 () (@var "BOUND_VARIABLE_8853" $$unsorted)) % 169.69/170.05 (define @t99 () (@var "BOUND_VARIABLE_8851" $$unsorted)) % 169.69/170.05 (define @t100 () (forall (@list @t88 @t99 @t98) (or (not (_ @t90 (_ @t89 @t88 @t99) @t98)) (not (forall @t8 (or @t91 (_ @t90 (_ @t89 @t88 @t4) @t5)))) (not (forall @t97 (or @t96 (not (forall @t31 (or @t94 (not (forall @t60 (or @t93 @t91)))))))))))) % 169.69/170.05 (define @t101 () (_ @t1 @t5 @t4)) % 169.69/170.05 (define @t102 () (not @t101)) % 169.69/170.05 (define @t103 () (_ @t58 @t4)) % 169.69/170.05 (define @t104 () (forall @t60 (or (not @t103) @t102))) % 169.69/170.05 (define @t105 () (not @t104)) % 169.69/170.05 (define @t106 () (_ @t58 @t5)) % 169.69/170.05 (define @t107 () (not @t106)) % 169.69/170.05 (define @t108 () (not (forall @t31 (or @t107 @t105)))) % 169.69/170.05 (define @t109 () (not (_ @t58 @t95))) % 169.69/170.05 (define @t110 () (or @t109 @t108)) % 169.69/170.05 (define @t111 () (forall (@list @t58 @t95) @t110)) % 169.69/170.05 (define @t112 () (not @t111)) % 169.69/170.05 (define @t113 () (_ @t1 @t4 @t5)) % 169.69/170.05 (define @t114 () (forall @t8 (or @t102 @t113))) % 169.69/170.05 (define @t115 () (not @t114)) % 169.69/170.05 (define @t116 () (not (_ @t1 @t99 @t98))) % 169.69/170.05 (define @t117 () (or @t116 @t115 @t112)) % 169.69/170.05 (define @t118 () (forall (@list @t1 @t99 @t98) @t117)) % 169.69/170.05 (define @t119 () (@list @t99 @t98)) % 169.69/170.05 (define @t120 () (forall @t119 @t117)) % 169.69/170.05 (define @t121 () (forall @t119 @t116)) % 169.69/170.05 (define @t122 () (or @t121 @t115 @t112)) % 169.69/170.05 (define @t123 () (forall @t8 @t102)) % 169.69/170.05 (define @t124 () (or @t123 @t115 @t112)) % 169.69/170.05 (define @t125 () (=> @t114 @t112)) % 169.69/170.05 (define @t126 () (not @t123)) % 169.69/170.05 (define @t127 () (_ (lambda @t11 @t111) @t1)) % 169.69/170.05 (define @t128 () (not @t127)) % 169.69/170.05 (define @t129 () (_ (lambda @t11 @t114) @t1)) % 169.69/170.05 (define @t130 () (=> @t129 @t128)) % 169.69/170.05 (define @t131 () (forall @t8 @t57)) % 169.69/170.05 (define @t132 () (not @t131)) % 169.69/170.05 (define @t133 () (=> @t9 @t130)) % 169.69/170.05 (define @t134 () (forall @t11 @t133)) % 169.69/170.05 (define @t135 () (@list @t95)) % 169.69/170.05 (define @t136 () (forall @t135 @t110)) % 169.69/170.05 (define @t137 () (forall @t135 @t109)) % 169.69/170.05 (define @t138 () (or @t137 @t108)) % 169.69/170.05 (define @t139 () (forall @t31 @t107)) % 169.69/170.05 (define @t140 () (not @t139)) % 169.69/170.05 (define @t141 () (not @t62)) % 169.69/170.05 (define @t142 () (or @t141 @t105)) % 169.69/170.05 (define @t143 () (and @t62 @t104)) % 169.69/170.05 (define @t144 () (forall @t31 (not @t143))) % 169.69/170.05 (define @t145 () (not @t144)) % 169.69/170.05 (define @t146 () (not @t59)) % 169.69/170.05 (define @t147 () (or @t146 @t57)) % 169.69/170.05 (define @t148 () (forall @t31 @t141)) % 169.69/170.05 (define @t149 () (not @t148)) % 169.69/170.05 (define @t150 () (or @t57 @t19)) % 169.69/170.05 (define @t151 () (@quantifiers_skolemize @t100 2)) % 169.69/170.05 (define @t152 () (@quantifiers_skolemize @t100 1)) % 169.69/170.05 (define @t153 () (@quantifiers_skolemize @t100 0)) % 169.69/170.05 (define @t154 () (_ @t89 @t153 @t152)) % 169.69/170.05 (define @t155 () (_ @t90 @t154 @t151)) % 169.69/170.05 (define @t156 () (not (_ @t90 (_ @t89 @t153 @t5) @t4))) % 169.69/170.05 (define @t157 () (forall @t97 (or @t96 (not (forall @t31 (or @t94 (not (forall @t60 (or @t93 @t156))))))))) % 169.69/170.05 (define @t158 () (not @t157)) % 169.69/170.05 (define @t159 () (forall @t8 (or @t156 (_ @t90 (_ @t89 @t153 @t4) @t5)))) % 169.69/170.05 (define @t160 () (not @t159)) % 169.69/170.05 (define @t161 () (not @t155)) % 169.69/170.05 (define @t162 () (or @t161 @t160 @t158)) % 169.69/170.05 (define @t163 () (@list true)) % 169.69/170.05 (define @t164 () (@list @t162)) % 169.69/170.05 (define @t165 () (@var "ii" $$unsorted)) % 169.69/170.05 (define @t166 () (@var "u" (@ho-elim-sort (-> $$unsorted Bool)))) % 169.69/170.05 (define @t167 () (@var "e" Bool)) % 169.69/170.05 (define @t168 () (@var "i" $$unsorted)) % 169.69/170.05 (define @t169 () (@var "v" (@ho-elim-sort (-> $$unsorted Bool)))) % 169.69/170.05 (define @t170 () (_ @t90 @t169 @t165)) % 169.69/170.05 (define @t171 () (@list @t165)) % 169.69/170.05 (define @t172 () (@list @t169)) % 169.69/170.05 (define @t173 () (forall (@list @t166 @t167 @t168) (not (forall @t172 (not (forall @t171 (= @t170 (ite (= @t168 @t165) @t167 (_ @t90 @t166 @t165))))))))) % 169.69/170.05 (define @t174 () (_ @t90 @t154 @t165)) % 169.69/170.05 (define @t175 () (ite (= @t152 @t165) @t155 @t174)) % 169.69/170.05 (define @t176 () (= @t170 @t175)) % 169.69/170.05 (define @t177 () (forall @t171 @t176)) % 169.69/170.05 (define @t178 () (not @t177)) % 169.69/170.05 (define @t179 () (forall @t172 @t178)) % 169.69/170.05 (define @t180 () (not @t179)) % 169.69/170.05 (define @t181 () (ite (= @t165 @t152) @t155 @t174)) % 169.69/170.05 (define @t182 () (forall @t172 (not (forall @t171 (= @t170 @t181))))) % 169.69/170.05 (define @t183 () (not @t182)) % 169.69/170.05 (define @t184 () (@list false)) % 169.69/170.05 (define @t185 () (@quantifiers_skolemize @t182 0)) % 169.69/170.05 (define @t186 () (_ @t90 @t185 @t165)) % 169.69/170.05 (define @t187 () (forall @t171 (= @t181 @t186))) % 169.69/170.05 (define @t188 () (forall @t171 (= @t186 @t181))) % 169.69/170.05 (define @t189 () (not (not @t188))) % 169.69/170.05 (define @t190 () (not (_ @t90 @t185 @t4))) % 169.69/170.05 (define @t191 () (forall @t31 (or (not (_ @t90 @t185 @t5)) (not (forall @t60 (or @t190 @t156)))))) % 169.69/170.05 (define @t192 () (@quantifiers_skolemize @t191 0)) % 169.69/170.05 (define @t193 () (_ @t90 @t154 @t192)) % 169.69/170.05 (define @t194 () (ite (= @t192 @t152) @t155 @t193)) % 169.69/170.05 (define @t195 () (_ @t90 @t185 @t192)) % 169.69/170.05 (define @t196 () (= @t194 @t195)) % 169.69/170.05 (define @t197 () (= @t152 @t192)) % 169.69/170.05 (define @t198 () (ite @t197 @t155 @t193)) % 169.69/170.05 (define @t199 () (= @t195 @t198)) % 169.69/170.05 (define @t200 () (@list @t187)) % 169.69/170.05 (define @t201 () (_ @t90 @t185 @t152)) % 169.69/170.05 (define @t202 () (_ @t90 @t154 @t152)) % 169.69/170.05 (define @t203 () (ite (= @t152 @t152) @t155 @t202)) % 169.69/170.05 (define @t204 () (= @t203 @t201)) % 169.69/170.05 (define @t205 () (@list @t152)) % 169.69/170.05 (define @t206 () (= @t155 @t201)) % 169.69/170.05 (define @t207 () (@list false false)) % 169.69/170.05 (define @t208 () (not @t191)) % 169.69/170.05 (define @t209 () (not @t201)) % 169.69/170.05 (define @t210 () (or @t209 @t208)) % 169.69/170.05 (define @t211 () (_ @t89 @t153 @t192)) % 169.69/170.05 (define @t212 () (forall @t60 (or @t190 (not (_ @t90 @t211 @t4))))) % 169.69/170.05 (define @t213 () (not @t212)) % 169.69/170.05 (define @t214 () (not @t195)) % 169.69/170.05 (define @t215 () (or @t214 @t213)) % 169.69/170.05 (define @t216 () (@list @t215)) % 169.69/170.05 (define @t217 () (_ @t90 @t211 @t152)) % 169.69/170.05 (define @t218 () (not @t217)) % 169.69/170.05 (define @t219 () (or @t209 @t218)) % 169.69/170.05 (define @t220 () (not @t193)) % 169.69/170.05 (define @t221 () (or @t220 @t217)) % 169.69/170.05 (define @t222 () (@list true false)) % 169.69/170.05 (define @t223 () (_ @t90 @t211 @t151)) % 169.69/170.05 (define @t224 () (@list @t151)) % 169.69/170.05 (define @t225 () (_ @t90 @t185 @t151)) % 169.69/170.05 (define @t226 () (= @t151 @t152)) % 169.69/170.05 (define @t227 () (= (ite @t226 @t155 @t155) @t225)) % 169.69/170.05 (define @t228 () (= @t155 @t225)) % 169.69/170.05 (define @t229 () (not @t223)) % 169.69/170.05 (define @t230 () (not @t225)) % 169.69/170.05 (define @t231 () (or @t230 @t229)) % 169.69/170.05 (assume @p1 @t13) % 169.69/170.05 (assume @p2 true) % 169.69/170.05 (step @p3 (= tptp.subrel @t17) :rule refl :args (@t17)) % 169.69/170.05 (step @p4 (= tptp.inv @t21) :rule refl :args (@t21)) % 169.69/170.05 (step @p5 (= tptp.idem @t25) :rule refl :args (@t25)) % 169.69/170.05 (step @p6 (= tptp.infl @t27) :rule refl :args (@t27)) % 169.69/170.05 (step @p7 (= tptp.mono @t29) :rule refl :args (@t29)) % 169.69/170.05 (step @p8 (= tptp.refl @t32) :rule refl :args (@t32)) % 169.69/170.05 (step @p9 (= tptp.irrefl @t33) :rule refl :args (@t33)) % 169.69/170.05 (step @p10 (= tptp.rc @t35) :rule refl :args (@t35)) % 169.69/170.05 (step @p11 (= tptp.symm @t37) :rule refl :args (@t37)) % 169.69/170.05 (step @p12 (= tptp.antisymm @t38) :rule refl :args (@t38)) % 169.69/170.05 (step @p13 (= tptp.asymm @t39) :rule refl :args (@t39)) % 169.69/170.05 (step @p14 (= tptp.sc @t40) :rule refl :args (@t40)) % 169.69/170.05 (step @p15 (= tptp.trans @t44) :rule refl :args (@t44)) % 169.69/170.05 (step @p16 (= tptp.tc @t45) :rule refl :args (@t45)) % 169.69/170.05 (step @p17 (= tptp.trc @t51) :rule refl :args (@t51)) % 169.69/170.05 (step @p18 (= tptp.trsc @t52) :rule refl :args (@t52)) % 169.69/170.05 (step @p19 (= tptp.po @t54) :rule refl :args (@t54)) % 169.69/170.05 (step @p20 (= tptp.so @t55) :rule refl :args (@t55)) % 169.69/170.05 (step @p21 (= tptp.total @t56) :rule refl :args (@t56)) % 169.69/170.05 (step @p22 (= tptp.term @t69) :rule refl :args (@t69)) % 169.69/170.05 (step @p23 (= tptp.ind @t72) :rule refl :args (@t72)) % 169.69/170.05 (step @p24 (= tptp.innf @t73) :rule refl :args (@t73)) % 169.69/170.05 (step @p25 (= tptp.nfof @t76) :rule refl :args (@t76)) % 169.69/170.05 (step @p26 (= tptp.norm @t77) :rule refl :args (@t77)) % 169.69/170.05 (step @p27 (= tptp.join @t80) :rule refl :args (@t80)) % 169.69/170.05 (step @p28 (= tptp.lconfl @t83) :rule refl :args (@t83)) % 169.69/170.05 (step @p29 (= tptp.sconfl @t85) :rule refl :args (@t85)) % 169.69/170.05 (step @p30 (= tptp.confl @t86) :rule refl :args (@t86)) % 169.69/170.05 (step @p31 (= tptp.cr @t87) :rule refl :args (@t87)) % 169.69/170.05 (step @p32 :rule evaluate :args ((= false true))) % 169.69/170.05 ; WARNING: add trust step for TRUST % 169.69/170.05 ; trust TRUST PREPROCESS_HO_ELIM % 169.69/170.05 (step @p33 :rule trust :premises () :args ((= (not @t118) (not @t100)))) % 169.69/170.05 (step @p34 :rule quant-merge-prenex :args ((= (forall @t11 @t120) @t118))) % 169.69/170.05 (step @p35 :rule refl :args (@t112)) % 169.69/170.05 (step @p36 :rule refl :args (@t115)) % 169.69/170.05 (step @p37 :rule alpha_equiv :args (@t121 (@list @t99 @t98) (@list @t5 @t4))) % 169.69/170.05 (step @p38 :rule nary_cong :premises (@p37 @p36 @p35) :args (@t122)) % 169.69/170.05 (step @p39 :rule quant-miniscope-or :args ((= @t120 @t122))) % 169.69/170.05 (step @p40 :rule trans :premises (@p39 @p38)) % 169.69/170.05 (step @p41 :rule symm :premises (@p40)) % 169.69/170.05 (step @p42 :rule cong :premises (@p41) :args ((forall @t11 @t124))) % 169.69/170.05 (step @p43 :rule trans :premises (@p42 @p34)) % 169.69/170.05 (step @p44 :rule aci_norm :args ((= (or @t123 (or @t115 @t112)) @t124))) % 169.69/170.05 (step @p45 :rule bool-impl-elim :args (@t114 @t112)) % 169.69/170.05 (step @p46 :rule refl :args (@t123)) % 169.69/170.05 (step @p47 :rule nary_cong :premises (@p46 @p45) :args ((or @t123 @t125))) % 169.69/170.05 (step @p48 :rule trans :premises (@p47 @p44)) % 169.69/170.05 (step @p49 :rule refl :args (@t125)) % 169.69/170.05 (step @p50 :rule bool-double-not-elim :args (@t123)) % 169.69/170.05 (step @p51 :rule nary_cong :premises (@p50 @p49) :args ((or (not @t126) @t125))) % 169.69/170.05 (step @p52 :rule bool-impl-elim :args (@t126 @t125)) % 169.69/170.05 (step @p53 :rule trans :premises (@p52 @p51)) % 169.69/170.05 (step @p54 :rule trans :premises (@p53 @p48)) % 169.69/170.05 (step @p55 :rule cong :premises (@p54) :args ((forall @t11 (=> @t126 @t125)))) % 169.69/170.05 (step @p56 :rule trans :premises (@p55 @p43)) % 169.69/170.05 (step @p57 :rule beta-reduce :args ((= @t127 @t111))) % 169.69/170.05 (step @p58 :rule cong :premises (@p57) :args (@t128)) % 169.69/170.05 (step @p59 :rule beta-reduce :args ((= @t129 @t114))) % 169.69/170.05 (step @p60 :rule cong :premises (@p59 @p58) :args (@t130)) % 169.69/170.05 (step @p61 :rule refl :args (@t101)) % 169.69/170.05 (step @p62 :rule refl :args (@t7)) % 169.69/170.05 (step @p63 :rule cong :premises (@p62 @p61) :args ((= @t7 @t101))) % 169.69/170.05 (step @p64 :rule symm :premises (@p63)) % 169.69/170.05 (step @p65 :rule eq_resolve :premises (@p62 @p64)) % 169.69/170.05 (step @p66 :rule cong :premises (@p65) :args (@t57)) % 169.69/170.05 (step @p67 :rule cong :premises (@p66) :args (@t131)) % 169.69/170.05 (step @p68 :rule cong :premises (@p67) :args (@t132)) % 169.69/170.05 (step @p69 :rule exists-elim :args ((= @t9 @t132))) % 169.69/170.05 (step @p70 :rule trans :premises (@p69 @p68)) % 169.69/170.05 (step @p71 :rule cong :premises (@p70 @p60) :args (@t133)) % 169.69/170.05 (step @p72 :rule cong :premises (@p71) :args (@t134)) % 169.69/170.05 (step @p73 :rule trans :premises (@p72 @p56)) % 169.69/170.05 (step @p74 :rule cong :premises (@p73) :args ((not @t134))) % 169.69/170.05 (step @p75 :rule refl :args (@t1)) % 169.69/170.05 (step @p76 :rule quant-merge-prenex :args ((= (forall @t67 @t136) @t111))) % 169.69/170.05 (step @p77 :rule refl :args (@t108)) % 169.69/170.05 (step @p78 :rule alpha_equiv :args (@t137 (@list @t95) (@list @t5))) % 169.69/170.05 (step @p79 :rule nary_cong :premises (@p78 @p77) :args (@t138)) % 169.69/170.05 (step @p80 :rule quant-miniscope-or :args ((= @t136 @t138))) % 169.69/170.05 (step @p81 :rule trans :premises (@p80 @p79)) % 169.69/170.05 (step @p82 :rule symm :premises (@p81)) % 169.69/170.05 (step @p83 :rule cong :premises (@p82) :args ((forall @t67 (or @t139 @t108)))) % 169.69/170.05 (step @p84 :rule trans :premises (@p83 @p76)) % 169.69/170.05 (step @p85 :rule bool-double-not-elim :args (@t139)) % 169.69/170.05 (step @p86 :rule nary_cong :premises (@p85 @p77) :args ((or (not @t140) @t108))) % 169.69/170.05 (step @p87 :rule bool-impl-elim :args (@t140 @t108)) % 169.69/170.05 (step @p88 :rule trans :premises (@p87 @p86)) % 169.69/170.05 (step @p89 :rule cong :premises (@p88) :args ((forall @t67 (=> @t140 @t108)))) % 169.69/170.05 (step @p90 :rule trans :premises (@p89 @p84)) % 169.69/170.05 (step @p91 :rule refl :args (@t105)) % 169.69/170.05 (step @p92 :rule refl :args (@t106)) % 169.69/170.05 (step @p93 :rule refl :args (@t62)) % 169.69/170.05 (step @p94 :rule cong :premises (@p93 @p92) :args ((= @t62 @t106))) % 169.69/170.05 (step @p95 :rule symm :premises (@p94)) % 169.69/170.05 (step @p96 :rule eq_resolve :premises (@p93 @p95)) % 169.69/170.05 (step @p97 :rule cong :premises (@p96) :args (@t141)) % 169.69/170.05 (step @p98 :rule nary_cong :premises (@p97 @p91) :args (@t142)) % 169.69/170.05 (step @p99 :rule cong :premises (@p98) :args ((forall @t31 @t142))) % 169.69/170.05 (step @p100 :rule bool-and-de-morgan :args (@t62 @t104 true)) % 169.69/170.05 (step @p101 :rule cong :premises (@p100) :args (@t144)) % 169.69/170.05 (step @p102 :rule trans :premises (@p101 @p99)) % 169.69/170.05 (step @p103 :rule cong :premises (@p102) :args (@t145)) % 169.69/170.05 (step @p104 :rule exists-elim :args ((= (exists @t31 @t143) @t145))) % 169.69/170.05 (step @p105 :rule trans :premises (@p104 @p103)) % 169.69/170.05 (step @p106 :rule refl :args (@t103)) % 169.69/170.05 (step @p107 :rule refl :args (@t59)) % 169.69/170.05 (step @p108 :rule cong :premises (@p107 @p106) :args ((= @t59 @t103))) % 169.69/170.05 (step @p109 :rule symm :premises (@p108)) % 169.69/170.05 (step @p110 :rule eq_resolve :premises (@p107 @p109)) % 169.69/170.05 (step @p111 :rule cong :premises (@p110) :args (@t146)) % 169.69/170.05 (step @p112 :rule nary_cong :premises (@p111 @p66) :args (@t147)) % 169.69/170.05 (step @p113 :rule cong :premises (@p112) :args ((forall @t60 @t147))) % 169.69/170.05 (step @p114 :rule bool-impl-elim :args (@t59 @t57)) % 169.69/170.05 (step @p115 :rule cong :premises (@p114) :args (@t61)) % 169.69/170.05 (step @p116 :rule trans :premises (@p115 @p113)) % 169.69/170.05 (step @p117 :rule refl :args (@t62)) % 169.69/170.05 (step @p118 :rule nary_cong :premises (@p117 @p116) :args (@t63)) % 169.69/170.05 (step @p119 :rule cong :premises (@p118) :args (@t64)) % 169.69/170.05 (step @p120 :rule trans :premises (@p119 @p105)) % 169.69/170.05 (step @p121 :rule cong :premises (@p97) :args (@t148)) % 169.69/170.05 (step @p122 :rule cong :premises (@p121) :args (@t149)) % 169.69/170.05 (step @p123 :rule exists-elim :args ((= @t65 @t149))) % 169.69/170.05 (step @p124 :rule trans :premises (@p123 @p122)) % 169.69/170.05 (step @p125 :rule cong :premises (@p124 @p120) :args (@t66)) % 169.69/170.05 (step @p126 :rule cong :premises (@p125) :args (@t68)) % 169.69/170.05 (step @p127 :rule trans :premises (@p126 @p90)) % 169.69/170.05 (step @p128 :rule cong :premises (@p127) :args (@t69)) % 169.69/170.05 (step @p129 :rule trans :premises (@p22 @p128)) % 169.69/170.05 (step @p130 :rule ho_cong :premises (@p129 @p75)) % 169.69/170.05 (step @p131 :rule cong :premises (@p130) :args (@t2)) % 169.69/170.05 (step @p132 :rule refl :args (@t113)) % 169.69/170.05 (step @p133 :rule refl :args (@t19)) % 169.69/170.05 (step @p134 :rule cong :premises (@p133 @p132) :args ((= @t19 @t113))) % 169.69/170.05 (step @p135 :rule symm :premises (@p134)) % 169.69/170.05 (step @p136 :rule eq_resolve :premises (@p133 @p135)) % 169.69/170.05 (step @p137 :rule nary_cong :premises (@p66 @p136) :args (@t150)) % 169.69/170.05 (step @p138 :rule cong :premises (@p137) :args ((forall @t8 @t150))) % 169.69/170.05 (step @p139 :rule bool-impl-elim :args (@t7 @t19)) % 169.69/170.05 (step @p140 :rule cong :premises (@p139) :args (@t36)) % 169.69/170.05 (step @p141 :rule trans :premises (@p140 @p138)) % 169.69/170.05 (step @p142 :rule cong :premises (@p141) :args (@t37)) % 169.69/170.05 (step @p143 :rule trans :premises (@p11 @p142)) % 169.69/170.05 (step @p144 :rule ho_cong :premises (@p143 @p75)) % 169.69/170.05 (step @p145 :rule cong :premises (@p144 @p131) :args (@t3)) % 169.69/170.05 (step @p146 :rule refl :args (@t9)) % 169.69/170.05 (step @p147 :rule cong :premises (@p146 @p145) :args (@t10)) % 169.69/170.05 (step @p148 :rule cong :premises (@p147) :args (@t12)) % 169.69/170.05 (step @p149 :rule cong :premises (@p148) :args (@t13)) % 169.69/170.05 (step @p150 :rule trans :premises (@p149 @p74)) % 169.69/170.05 (step @p151 :rule trans :premises (@p150 @p33)) % 169.69/170.05 (step @p152 :rule eq_resolve :premises (@p1 @p151)) % 169.69/170.05 (step @p153 :rule skolemize :premises (@p152)) % 169.69/170.05 (step @p154 :rule bool-double-not-elim :args (@t155)) % 169.69/170.05 (step @p155 :rule refl :args (@t162)) % 169.69/170.05 (step @p156 :rule nary_cong :premises (@p155 @p154) :args ((or @t162 (not @t161)))) % 169.69/170.05 (step @p157 :rule cnf_or_neg :args (@t162 0)) % 169.69/170.05 (step @p158 :rule eq_resolve :premises (@p157 @p156)) % 169.69/170.05 (step @p159 :rule reordering :premises (@p158) :args ((or @t155 @t162))) % 169.69/170.05 (step @p160 :rule chain_m_resolution :premises (@p159 @p153) :args (@t155 @t163 @t164)) % 169.69/170.05 (step @p161 :rule true_intro :premises (@p160)) % 169.69/170.05 (step @p162 :rule refl :args (@t151)) % 169.69/170.05 ; trust TRUST PREPROCESS_HO_ELIM_LEMMA % 169.69/170.05 (step @p163 :rule trust :premises () :args (@t173)) % 169.69/170.05 (step @p164 :rule refl :args (@t174)) % 169.69/170.05 (step @p165 :rule refl :args (@t155)) % 169.69/170.05 (step @p166 :rule eq-symm :args (@t152 @t165)) % 169.69/170.05 (step @p167 :rule cong :premises (@p166 @p165 @p164) :args (@t175)) % 169.69/170.05 (step @p168 :rule refl :args (@t170)) % 169.69/170.05 (step @p169 :rule cong :premises (@p168 @p167) :args (@t176)) % 169.69/170.05 (step @p170 :rule cong :premises (@p169) :args (@t177)) % 169.69/170.05 (step @p171 :rule cong :premises (@p170) :args (@t178)) % 169.69/170.05 (step @p172 :rule cong :premises (@p171) :args (@t179)) % 169.69/170.05 (step @p173 :rule cong :premises (@p172) :args (@t180)) % 169.69/170.05 (step @p174 :rule refl :args (@t173)) % 169.69/170.05 (step @p175 :rule cong :premises (@p174 @p173) :args ((=> @t173 @t180))) % 169.69/170.05 (assume-push @p303 @t173) % 169.69/170.05 (step @p177 :rule instantiate :premises (@p163) :args ((@list @t154 @t155 @t152))) % 169.69/170.05 (step-pop @p304 :rule scope :premises (@p177)) % 169.69/170.05 (step @p178 :rule process_scope :premises (@p304) :args (@t180)) % 169.69/170.05 (step @p180 :rule eq_resolve :premises (@p178 @p175)) % 169.69/170.05 (step @p181 :rule implies_elim :premises (@p180)) % 169.69/170.05 (step @p182 :rule chain_m_resolution :premises (@p181 @p163) :args (@t183 @t184 (@list @t173))) % 169.69/170.05 (step @p183 :rule refl :args (@t187)) % 169.69/170.05 (step @p184 :rule bool-double-not-elim :args (@t182)) % 169.69/170.05 (step @p185 :rule nary_cong :premises (@p184 @p183) :args ((or (not @t183) @t187))) % 169.69/170.05 (step @p186 :rule eq-symm :args (@t186 @t181)) % 169.69/170.05 (step @p187 :rule cong :premises (@p186) :args (@t188)) % 169.69/170.05 (step @p188 :rule bool-double-not-elim :args (@t188)) % 169.69/170.05 (step @p189 :rule trans :premises (@p188 @p187)) % 169.69/170.05 (step @p190 :rule refl :args (@t183)) % 169.69/170.05 (step @p191 :rule cong :premises (@p190 @p189) :args ((=> @t183 @t189))) % 169.69/170.05 (assume-push @p305 @t183) % 169.69/170.05 (step @p193 :rule skolemize :premises (@p182)) % 169.69/170.05 (step-pop @p306 :rule scope :premises (@p193)) % 169.69/170.05 (step @p194 :rule process_scope :premises (@p306) :args (@t189)) % 169.69/170.05 (step @p196 :rule eq_resolve :premises (@p194 @p191)) % 169.69/170.05 (step @p197 :rule implies_elim :premises (@p196)) % 169.69/170.05 (step @p198 :rule eq_resolve :premises (@p197 @p185)) % 169.69/170.05 (step @p199 :rule chain_m_resolution :premises (@p198 @p182) :args (@t187 @t163 (@list @t182))) % 169.69/170.05 (step @p200 :rule refl :args (@t193)) % 169.69/170.05 (step @p201 :rule eq-symm :args (@t192 @t152)) % 169.69/170.05 (step @p202 :rule cong :premises (@p201 @p165 @p200) :args (@t194)) % 169.69/170.05 (step @p203 :rule refl :args (@t195)) % 169.69/170.05 (step @p204 :rule cong :premises (@p203 @p202) :args ((= @t195 @t194))) % 169.69/170.05 (step @p205 :rule eq-symm :args (@t194 @t195)) % 169.69/170.05 (step @p206 :rule trans :premises (@p205 @p204)) % 169.69/170.05 (step @p207 :rule cong :premises (@p183 @p206) :args ((=> @t187 @t196))) % 169.69/170.05 (assume-push @p307 @t187) % 169.69/170.05 (step @p209 :rule instantiate :premises (@p199) :args ((@list @t192))) % 169.69/170.05 (step-pop @p308 :rule scope :premises (@p209)) % 169.69/170.05 (step @p210 :rule process_scope :premises (@p308) :args (@t196)) % 169.69/170.05 (step @p212 :rule eq_resolve :premises (@p210 @p207)) % 169.69/170.05 (step @p213 :rule implies_elim :premises (@p212)) % 169.69/170.05 (step @p214 :rule chain_m_resolution :premises (@p213 @p199) :args (@t199 @t184 @t200)) % 169.69/170.05 (step @p215 :rule bool-double-not-elim :args (@t157)) % 169.69/170.05 (step @p216 :rule nary_cong :premises (@p155 @p215) :args ((or @t162 (not @t158)))) % 169.69/170.05 (step @p217 :rule cnf_or_neg :args (@t162 2)) % 169.69/170.05 (step @p218 :rule eq_resolve :premises (@p217 @p216)) % 169.69/170.05 (step @p219 :rule reordering :premises (@p218) :args ((or @t157 @t162))) % 169.69/170.05 (step @p220 :rule chain_m_resolution :premises (@p219 @p153) :args (@t157 @t163 @t164)) % 169.69/170.05 (step @p221 :rule instantiate :premises (@p220) :args ((@list @t185 @t152))) % 169.69/170.05 (step @p222 :rule refl :args (@t201)) % 169.69/170.05 (step @p223 :rule ite-true-cond :args (@t155 @t202)) % 169.69/170.05 (step @p224 :rule refl :args (@t202)) % 169.69/170.05 (step @p225 :rule eq-refl :args (@t152)) % 169.69/170.05 (step @p226 :rule cong :premises (@p225 @p165 @p224) :args (@t203)) % 169.69/170.05 (step @p227 :rule trans :premises (@p226 @p223)) % 169.69/170.05 (step @p228 :rule cong :premises (@p227 @p222) :args (@t204)) % 169.69/170.05 (step @p229 :rule cong :premises (@p183 @p228) :args ((=> @t187 @t204))) % 169.69/170.05 (assume-push @p309 @t187) % 169.69/170.05 (step @p231 :rule instantiate :premises (@p199) :args (@t205)) % 169.69/170.05 (step-pop @p310 :rule scope :premises (@p231)) % 169.69/170.05 (step @p232 :rule process_scope :premises (@p310) :args (@t204)) % 169.69/170.05 (step @p234 :rule eq_resolve :premises (@p232 @p229)) % 169.69/170.05 (step @p235 :rule implies_elim :premises (@p234)) % 169.69/170.05 (step @p236 :rule chain_m_resolution :premises (@p235 @p199) :args (@t206 @t184 @t200)) % 169.69/170.05 (step @p237 :rule cnf_equiv_pos1 :args (@t206)) % 169.69/170.05 (step @p238 :rule reordering :premises (@p237) :args ((or @t161 @t201 (not @t206)))) % 169.69/170.05 (step @p239 :rule chain_m_resolution :premises (@p238 @p160 @p236) :args (@t201 @t207 (@list @t155 @t206))) % 169.69/170.05 (step @p240 :rule cnf_or_pos :args (@t210)) % 169.69/170.05 (step @p241 :rule reordering :premises (@p240) :args ((or @t209 @t208 (not @t210)))) % 169.69/170.05 (step @p242 :rule chain_m_resolution :premises (@p241 @p239 @p221) :args (@t208 @t207 (@list @t201 @t210))) % 169.69/170.05 (step @p243 :rule skolemize :premises (@p242)) % 169.69/170.05 (step @p244 :rule bool-double-not-elim :args (@t195)) % 169.69/170.05 (step @p245 :rule refl :args (@t215)) % 169.69/170.05 (step @p246 :rule nary_cong :premises (@p245 @p244) :args ((or @t215 (not @t214)))) % 169.69/170.05 (step @p247 :rule cnf_or_neg :args (@t215 0)) % 169.69/170.05 (step @p248 :rule eq_resolve :premises (@p247 @p246)) % 169.69/170.05 (step @p249 :rule reordering :premises (@p248) :args ((or @t195 @t215))) % 169.69/170.05 (step @p250 :rule chain_m_resolution :premises (@p249 @p243) :args (@t195 @t163 @t216)) % 169.69/170.05 (step @p251 :rule cnf_equiv_pos1 :args (@t199)) % 169.69/170.05 (step @p252 :rule reordering :premises (@p251) :args ((or @t214 @t198 (not @t199)))) % 169.69/170.05 (step @p253 :rule chain_m_resolution :premises (@p252 @p250 @p214) :args (@t198 @t207 (@list @t195 @t199))) % 169.69/170.05 (step @p254 :rule bool-double-not-elim :args (@t159)) % 169.69/170.05 (step @p255 :rule nary_cong :premises (@p155 @p254) :args ((or @t162 (not @t160)))) % 169.69/170.05 (step @p256 :rule cnf_or_neg :args (@t162 1)) % 169.69/170.05 (step @p257 :rule eq_resolve :premises (@p256 @p255)) % 169.69/170.05 (step @p258 :rule reordering :premises (@p257) :args ((or @t159 @t162))) % 169.69/170.05 (step @p259 :rule chain_m_resolution :premises (@p258 @p153) :args (@t159 @t163 @t164)) % 169.69/170.05 (step @p260 :rule instantiate :premises (@p259) :args ((@list @t152 @t192))) % 169.69/170.05 (step @p261 :rule bool-double-not-elim :args (@t212)) % 169.69/170.05 (step @p262 :rule nary_cong :premises (@p245 @p261) :args ((or @t215 (not @t213)))) % 169.69/170.05 (step @p263 :rule cnf_or_neg :args (@t215 1)) % 169.69/170.05 (step @p264 :rule eq_resolve :premises (@p263 @p262)) % 169.69/170.05 (step @p265 :rule reordering :premises (@p264) :args ((or @t212 @t215))) % 169.69/170.05 (step @p266 :rule chain_m_resolution :premises (@p265 @p243) :args (@t212 @t163 @t216)) % 169.69/170.05 (step @p267 :rule instantiate :premises (@p266) :args (@t205)) % 169.69/170.05 (step @p268 :rule cnf_or_pos :args (@t219)) % 169.69/170.05 (step @p269 :rule reordering :premises (@p268) :args ((or @t209 @t218 (not @t219)))) % 169.69/170.05 (step @p270 :rule chain_m_resolution :premises (@p269 @p239 @p267) :args (@t218 @t207 (@list @t201 @t219))) % 169.69/170.05 (step @p271 :rule cnf_or_pos :args (@t221)) % 169.69/170.05 (step @p272 :rule reordering :premises (@p271) :args ((or @t217 @t220 (not @t221)))) % 169.69/170.05 (step @p273 :rule chain_m_resolution :premises (@p272 @p270 @p260) :args (@t220 @t222 (@list @t217 @t221))) % 169.69/170.05 (step @p274 :rule cnf_ite_pos2 :args (@t198)) % 169.69/170.05 (step @p275 :rule reordering :premises (@p274) :args ((or @t193 @t197 (not @t198)))) % 169.69/170.05 (step @p276 :rule chain_m_resolution :premises (@p275 @p273 @p253) :args (@t197 @t222 (@list @t193 @t198))) % 169.69/170.05 (step @p277 :rule symm :premises (@p276)) % 169.69/170.05 (step @p278 :rule refl :args (@t153)) % 169.69/170.05 (step @p279 :rule cong :premises (@p278 @p277) :args (@t211)) % 169.69/170.05 (step @p280 :rule cong :premises (@p279 @p162) :args (@t223)) % 169.69/170.05 (step @p281 :rule instantiate :premises (@p266) :args (@t224)) % 169.69/170.05 (step @p282 :rule refl :args (@t225)) % 169.69/170.05 (step @p283 :rule ite-eq-branch :args (@t226 @t155)) % 169.69/170.05 (step @p284 :rule cong :premises (@p283 @p282) :args (@t227)) % 169.69/170.05 (step @p285 :rule cong :premises (@p183 @p284) :args ((=> @t187 @t227))) % 169.69/170.05 (assume-push @p311 @t187) % 169.69/170.05 (step @p287 :rule instantiate :premises (@p199) :args (@t224)) % 169.69/170.05 (step-pop @p312 :rule scope :premises (@p287)) % 169.69/170.05 (step @p288 :rule process_scope :premises (@p312) :args (@t227)) % 169.69/170.05 (step @p290 :rule eq_resolve :premises (@p288 @p285)) % 169.69/170.05 (step @p291 :rule implies_elim :premises (@p290)) % 169.69/170.05 (step @p292 :rule chain_m_resolution :premises (@p291 @p199) :args (@t228 @t184 @t200)) % 169.69/170.05 (step @p293 :rule cnf_equiv_pos1 :args (@t228)) % 169.69/170.05 (step @p294 :rule reordering :premises (@p293) :args ((or @t161 @t225 (not @t228)))) % 169.69/170.05 (step @p295 :rule chain_m_resolution :premises (@p294 @p160 @p292) :args (@t225 @t207 (@list @t155 @t228))) % 169.69/170.06 (step @p296 :rule cnf_or_pos :args (@t231)) % 169.69/170.06 (step @p297 :rule reordering :premises (@p296) :args ((or @t230 @t229 (not @t231)))) % 169.69/170.06 (step @p298 :rule chain_m_resolution :premises (@p297 @p295 @p281) :args (@t229 @t207 (@list @t225 @t231))) % 169.69/170.06 (step @p299 :rule false_intro :premises (@p298)) % 169.69/170.06 (step @p300 :rule symm :premises (@p299)) % 169.69/170.06 (step @p301 :rule trans :premises (@p300 @p280 @p161)) % 169.69/170.06 (step @p302 false :rule eq_resolve :premises (@p301 @p32)) % 169.69/170.06 ) % 169.69/170.06 % SZS output end Proof % 169.69/170.06 % cvc5 exiting %------------------------------------------------------------------------------