TSTP Solution File: COM142+1 by cvc5---1.0.5

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cvc5---1.0.5
% Problem  : COM142+1 : TPTP v8.1.2. Released v6.4.0.
% Transfm  : none
% Format   : tptp
% Command  : do_cvc5 %s %d

% Computer : n015.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 Aug 30 18:37:18 EDT 2023

% Result   : Theorem 62.90s 63.14s
% Output   : Proof 62.90s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.13  % Problem    : COM142+1 : TPTP v8.1.2. Released v6.4.0.
% 0.00/0.15  % Command    : do_cvc5 %s %d
% 0.15/0.36  % Computer : n015.cluster.edu
% 0.15/0.36  % Model    : x86_64 x86_64
% 0.15/0.36  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.15/0.36  % Memory   : 8042.1875MB
% 0.15/0.36  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.15/0.36  % CPULimit   : 300
% 0.15/0.36  % WCLimit    : 300
% 0.15/0.36  % DateTime   : Tue Aug 29 13:35:56 EDT 2023
% 0.15/0.36  % CPUTime    : 
% 0.22/0.50  %----Proving TF0_NAR, FOF, or CNF
% 62.90/63.14  ------- convert to smt2 : /export/starexec/sandbox/tmp/tmp.McSyhy35ph/cvc5---1.0.5_1644.p...
% 62.90/63.14  ------- get file name : TPTP file name is COM142+1
% 62.90/63.14  ------- cvc5-fof : /export/starexec/sandbox/solver/bin/cvc5---1.0.5_1644.smt2...
% 62.90/63.14  --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 10...
% 62.90/63.14  --- Run --no-e-matching --full-saturate-quant at 5...
% 62.90/63.14  --- Run --no-e-matching --enum-inst-sum --full-saturate-quant at 5...
% 62.90/63.14  --- Run --finite-model-find --uf-ss=no-minimal at 5...
% 62.90/63.14  --- Run --multi-trigger-when-single --full-saturate-quant at 5...
% 62.90/63.14  --- Run --trigger-sel=max --full-saturate-quant at 5...
% 62.90/63.14  --- Run --multi-trigger-when-single --multi-trigger-priority --full-saturate-quant at 5...
% 62.90/63.14  --- Run --multi-trigger-cache --full-saturate-quant at 5...
% 62.90/63.14  --- Run --prenex-quant=none --full-saturate-quant at 5...
% 62.90/63.14  --- Run --enum-inst-interleave --decision=internal --full-saturate-quant at 5...
% 62.90/63.14  --- Run --relevant-triggers --full-saturate-quant at 5...
% 62.90/63.14  --- Run --finite-model-find --e-matching --sort-inference --uf-ss-fair at 5...
% 62.90/63.14  % SZS status Theorem for COM142+1
% 62.90/63.14  % SZS output start Proof for COM142+1
% 62.90/63.14  (
% 62.90/63.14  (let ((_let_1 (not (forall ((Vx $$unsorted) (VS $$unsorted) (VC $$unsorted) (VT $$unsorted)) (let ((_let_1 (tptp.vapp tptp.ve1app tptp.ve2app))) (=> (and (= (tptp.vlookup Vx VC) tptp.vnoType) (tptp.vtcheck VC _let_1 VT)) (tptp.vtcheck (tptp.vbind Vx VS VC) _let_1 VT))))))) (let ((_let_2 (forall ((Vx $$unsorted) (VS $$unsorted) (VC $$unsorted) (VT $$unsorted)) (=> (and (= (tptp.vlookup Vx VC) tptp.vnoType) (tptp.vtcheck VC tptp.ve2app VT)) (tptp.vtcheck (tptp.vbind Vx VS VC) tptp.ve2app VT))))) (let ((_let_3 (forall ((Vx $$unsorted) (VS $$unsorted) (VC $$unsorted) (VT $$unsorted)) (=> (and (= (tptp.vlookup Vx VC) tptp.vnoType) (tptp.vtcheck VC tptp.ve1app VT)) (tptp.vtcheck (tptp.vbind Vx VS VC) tptp.ve1app VT))))) (let ((_let_4 (forall ((Ve $$unsorted) (VT $$unsorted) (VC $$unsorted)) (=> (tptp.vtcheck VC Ve VT) (or (exists ((Vx $$unsorted)) (and (= Ve (tptp.vvar Vx)) (= (tptp.vlookup Vx VC) (tptp.vsomeType VT)))) (exists ((Vx $$unsorted) (Ve2 $$unsorted) (VT1 $$unsorted) (VT2 $$unsorted)) (and (= Ve (tptp.vabs Vx VT1 Ve2)) (= VT (tptp.varrow VT1 VT2)) (tptp.vtcheck (tptp.vbind Vx VT1 VC) Ve2 VT2))) (exists ((Ve1 $$unsorted) (Ve2 $$unsorted) (VS $$unsorted)) (and (= Ve (tptp.vapp Ve1 Ve2)) (tptp.vtcheck VC Ve1 (tptp.varrow VS VT)) (tptp.vtcheck VC Ve2 VS)))))))) (let ((_let_5 (forall ((VS $$unsorted) (VC $$unsorted) (Ve1 $$unsorted) (Ve2 $$unsorted) (VT $$unsorted)) (=> (and (tptp.vtcheck VC Ve1 (tptp.varrow VS VT)) (tptp.vtcheck VC Ve2 VS)) (tptp.vtcheck VC (tptp.vapp Ve1 Ve2) VT))))) (let ((_let_6 (= tptp.vnoExp tptp.vnoExp))) (let ((_let_7 (= tptp.vnoType tptp.vnoType))) (let ((_let_8 (= tptp.vempty tptp.vempty))) (let ((_let_9 (forall ((VVar0 $$unsorted) (VTyp0 $$unsorted) (VExp0 $$unsorted) (VExp1 $$unsorted) (VExp2 $$unsorted)) (not (= (tptp.vabs VVar0 VTyp0 VExp0) (tptp.vapp VExp1 VExp2)))))) (let ((_let_10 (forall ((VVar0 $$unsorted) (VExp0 $$unsorted) (VExp1 $$unsorted)) (not (= (tptp.vvar VVar0) (tptp.vapp VExp0 VExp1)))))) (let ((_let_11 (forall ((VExp0 $$unsorted) (VExp1 $$unsorted) (VExp2 $$unsorted) (VExp3 $$unsorted)) (let ((_let_1 (= (tptp.vapp VExp0 VExp1) (tptp.vapp VExp2 VExp3)))) (let ((_let_2 (and (= VExp0 VExp2) (= VExp1 VExp3)))) (and (=> _let_1 _let_2) (=> _let_2 _let_1))))))) (let ((_let_12 (io_tptp.varrow_22 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_118 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_36))) (let ((_let_13 (io_tptp.vtcheck_14 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_116 _let_12))) (let ((_let_14 (= i_tptp.ve1app_23 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_116))) (let ((_let_15 (io_tptp.vtcheck_14 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35 i_tptp.ve1app_23 _let_12))) (let ((_let_16 (io_tptp.vtcheck_14 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_117 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_118))) (let ((_let_17 (not _let_16))) (let ((_let_18 (not _let_13))) (let ((_let_19 (io_tptp.vapp_4 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_116 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_117))) (let ((_let_20 (io_tptp.vapp_4 i_tptp.ve1app_23 i_tptp.ve2app_24))) (let ((_let_21 (= _let_20 _let_19))) (let ((_let_22 (not _let_21))) (let ((_let_23 (or _let_22 _let_18 _let_17))) (let ((_let_24 (forall ((b_Ve1 it_4_$$unsorted) (b_Ve2 it_4_$$unsorted) (b_VS it_7_$$unsorted)) (or (not (= (io_tptp.vapp_4 b_Ve1 b_Ve2) (io_tptp.vapp_4 i_tptp.ve1app_23 i_tptp.ve2app_24))) (not (io_tptp.vtcheck_14 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35 b_Ve1 (io_tptp.varrow_22 b_VS SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_36))) (not (io_tptp.vtcheck_14 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35 b_Ve2 b_VS)))))) (let ((_let_25 (not _let_23))) (let ((_let_26 (not _let_24))) (let ((_let_27 (forall ((Vx $$unsorted) (b_Ve2 it_4_$$unsorted) (b_VT1 it_7_$$unsorted) (b_VT2 it_7_$$unsorted)) (or (not (= (io_tptp.vabs_3 Vx b_VT1 b_Ve2) (io_tptp.vapp_4 i_tptp.ve1app_23 i_tptp.ve2app_24))) (not (= (io_tptp.varrow_22 b_VT1 b_VT2) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_36)) (not (io_tptp.vtcheck_14 (io_tptp.vbind_7 Vx b_VT1 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35) b_Ve2 b_VT2)))))) (let ((_let_28 (not _let_27))) (let ((_let_29 (forall ((Vx $$unsorted)) (or (not (= (io_tptp.vvar_2 Vx) (io_tptp.vapp_4 i_tptp.ve1app_23 i_tptp.ve2app_24))) (not (= (io_tptp.vsomeType_8 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_36) (io_tptp.vlookup_13 Vx SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35))))))) (let ((_let_30 (not _let_29))) (let ((_let_31 (io_tptp.vtcheck_14 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35 _let_20 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_36))) (let ((_let_32 (not _let_31))) (let ((_let_33 (or _let_32 _let_30 _let_28 _let_26))) (let ((_let_34 (forall ((b_Ve it_4_$$unsorted) (b_VT it_7_$$unsorted) (b_VC it_67_$$unsorted)) (or (not (io_tptp.vtcheck_14 b_VC b_Ve b_VT)) (not (forall ((Vx $$unsorted)) (or (not (= b_Ve (io_tptp.vvar_2 Vx))) (not (= (io_tptp.vlookup_13 Vx b_VC) (io_tptp.vsomeType_8 b_VT)))))) (not (forall ((Vx $$unsorted) (b_Ve2 it_4_$$unsorted) (b_VT1 it_7_$$unsorted) (b_VT2 it_7_$$unsorted)) (or (not (= b_Ve (io_tptp.vabs_3 Vx b_VT1 b_Ve2))) (not (= b_VT (io_tptp.varrow_22 b_VT1 b_VT2))) (not (io_tptp.vtcheck_14 (io_tptp.vbind_7 Vx b_VT1 b_VC) b_Ve2 b_VT2))))) (not (forall ((b_Ve1 it_4_$$unsorted) (b_Ve2 it_4_$$unsorted) (b_VS it_7_$$unsorted)) (or (not (= b_Ve (io_tptp.vapp_4 b_Ve1 b_Ve2))) (not (io_tptp.vtcheck_14 b_VC b_Ve1 (io_tptp.varrow_22 b_VS b_VT))) (not (io_tptp.vtcheck_14 b_VC b_Ve2 b_VS))))))))) (let ((_let_35 (EQ_RESOLVE (ASSUME :args (_let_4)) (TRANS (MACRO_SR_EQ_INTRO :args (_let_4 SB_DEFAULT SBA_FIXPOINT)) (PREPROCESS :args ((= (forall ((Ve $$unsorted) (VT $$unsorted) (VC $$unsorted)) (or (not (tptp.vtcheck VC Ve VT)) (not (forall ((Vx $$unsorted)) (or (not (= Ve (tptp.vvar Vx))) (not (= (tptp.vlookup Vx VC) (tptp.vsomeType VT)))))) (not (forall ((Vx $$unsorted) (Ve2 $$unsorted) (VT1 $$unsorted) (VT2 $$unsorted)) (or (not (= Ve (tptp.vabs Vx VT1 Ve2))) (not (= VT (tptp.varrow VT1 VT2))) (not (tptp.vtcheck (tptp.vbind Vx VT1 VC) Ve2 VT2))))) (not (forall ((Ve1 $$unsorted) (Ve2 $$unsorted) (VS $$unsorted)) (or (not (= Ve (tptp.vapp Ve1 Ve2))) (not (tptp.vtcheck VC Ve1 (tptp.varrow VS VT))) (not (tptp.vtcheck VC Ve2 VS))))))) _let_34))))))) (let ((_let_36 (not (io_tptp.vtcheck_14 (io_tptp.vbind_7 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_112 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_114 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_113 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_115)))) (let ((_let_37 (io_tptp.varrow_22 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_114 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_115))) (let ((_let_38 (io_tptp.vabs_3 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_112 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_114 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_113))) (let ((_let_39 (= _let_20 _let_38))) (let ((_let_40 (not _let_39))) (let ((_let_41 (or _let_40 (not (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_36 _let_37)) _let_36))) (let ((_let_42 (forall ((VVar0 $$unsorted) (b_VTyp0 it_7_$$unsorted) (b_VExp0 it_4_$$unsorted) (b_VExp1 it_4_$$unsorted) (b_VExp2 it_4_$$unsorted)) (not (= (io_tptp.vabs_3 VVar0 b_VTyp0 b_VExp0) (io_tptp.vapp_4 b_VExp1 b_VExp2)))))) (let ((_let_43 (EQ_RESOLVE (ASSUME :args (_let_9)) (PREPROCESS :args ((= _let_9 _let_42)))))) (let ((_let_44 (or))) (let ((_let_45 (_let_28))) (let ((_let_46 (not (= (io_tptp.vsomeType_8 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_36) (io_tptp.vlookup_13 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_111 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35))))) (let ((_let_47 (io_tptp.vvar_2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_111))) (let ((_let_48 (= _let_20 _let_47))) (let ((_let_49 (not _let_48))) (let ((_let_50 (or _let_49 _let_46))) (let ((_let_51 (forall ((VVar0 $$unsorted) (b_VExp0 it_4_$$unsorted) (b_VExp1 it_4_$$unsorted)) (not (= (io_tptp.vvar_2 VVar0) (io_tptp.vapp_4 b_VExp0 b_VExp1)))))) (let ((_let_52 (EQ_RESOLVE (ASSUME :args (_let_10)) (PREPROCESS :args ((= _let_10 _let_51)))))) (let ((_let_53 (_let_30))) (let ((_let_54 (io_tptp.vbind_7 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_33 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_34 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35))) (let ((_let_55 (io_tptp.vtcheck_14 _let_54 _let_20 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_36))) (let ((_let_56 (= i_tptp.vnoType_10 (io_tptp.vlookup_13 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_33 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35)))) (let ((_let_57 (not _let_56))) (let ((_let_58 (or _let_57 _let_32 _let_55))) (let ((_let_59 (forall ((Vx $$unsorted) (b_VS it_7_$$unsorted) (b_VC it_67_$$unsorted) (b_VT it_7_$$unsorted)) (let ((_let_1 (io_tptp.vapp_4 i_tptp.ve1app_23 i_tptp.ve2app_24))) (or (not (= i_tptp.vnoType_10 (io_tptp.vlookup_13 Vx b_VC))) (not (io_tptp.vtcheck_14 b_VC _let_1 b_VT)) (io_tptp.vtcheck_14 (io_tptp.vbind_7 Vx b_VS b_VC) _let_1 b_VT)))))) (let ((_let_60 (not _let_58))) (let ((_let_61 (not _let_59))) (let ((_let_62 (EQ_RESOLVE (ASSUME :args (_let_1)) (TRANS (MACRO_SR_EQ_INTRO :args (_let_1 SB_DEFAULT SBA_FIXPOINT)) (PREPROCESS :args ((= (not (forall ((Vx $$unsorted) (VS $$unsorted) (VC $$unsorted) (VT $$unsorted)) (let ((_let_1 (tptp.vapp tptp.ve1app tptp.ve2app))) (or (not (= tptp.vnoType (tptp.vlookup Vx VC))) (not (tptp.vtcheck VC _let_1 VT)) (tptp.vtcheck (tptp.vbind Vx VS VC) _let_1 VT))))) _let_61))))))) (let ((_let_63 (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (IMPLIES_ELIM (SCOPE (SKOLEMIZE _let_62) :args (_let_61))) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_61) _let_59))) (REFL :args (_let_60)) :args _let_44)) _let_62 :args (_let_60 true _let_59)))) (let ((_let_64 (REFL :args (_let_58)))) (let ((_let_65 (_let_26))) (let ((_let_66 (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (IMPLIES_ELIM (EQ_RESOLVE (SCOPE (SKOLEMIZE (ASSUME :args _let_65)) :args _let_65) (REWRITE :args ((=> _let_26 (not (or (not (= _let_19 _let_20)) _let_18 _let_17))))))) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_26) _let_24))) (REFL :args (_let_25)) :args _let_44)) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_33)) :args ((or _let_32 _let_30 _let_28 _let_26 (not _let_33)))) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_58 1)) (CONG _let_64 (MACRO_SR_PRED_INTRO :args ((= (not _let_32) _let_31))) :args _let_44)) :args ((or _let_31 _let_58))) _let_63 :args (_let_31 true _let_58)) (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (IMPLIES_ELIM (EQ_RESOLVE (SCOPE (SKOLEMIZE (ASSUME :args _let_53)) :args _let_53) (REWRITE :args ((=> _let_30 (not (or (not (= _let_47 _let_20)) _let_46))))))) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_30) _let_29))) (REFL :args ((not _let_50))) :args _let_44)) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_50 0)) (CONG (REFL :args (_let_50)) (MACRO_SR_PRED_INTRO :args ((= (not _let_49) _let_48))) :args _let_44)) :args ((or _let_48 _let_50))) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (MACRO_SR_PRED_ELIM (SCOPE (INSTANTIATE _let_52 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_111 i_tptp.ve1app_23 i_tptp.ve2app_24 QUANTIFIERS_INST_CBQI_CONFLICT)) :args (_let_51)))) _let_52 :args (_let_49 false _let_51)) :args (_let_50 true _let_48)) :args (_let_29 false _let_50)) (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (IMPLIES_ELIM (EQ_RESOLVE (SCOPE (SKOLEMIZE (ASSUME :args _let_45)) :args _let_45) (REWRITE :args ((=> _let_28 (not (or (not (= _let_38 _let_20)) (not (= _let_37 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_36)) _let_36))))))) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_28) _let_27))) (REFL :args ((not _let_41))) :args _let_44)) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_41 0)) (CONG (REFL :args (_let_41)) (MACRO_SR_PRED_INTRO :args ((= (not _let_40) _let_39))) :args _let_44)) :args ((or _let_39 _let_41))) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (MACRO_SR_PRED_ELIM (SCOPE (INSTANTIATE _let_43 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_112 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_114 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_113 i_tptp.ve1app_23 i_tptp.ve2app_24 QUANTIFIERS_INST_CBQI_CONFLICT)) :args (_let_42)))) _let_43 :args (_let_40 false _let_42)) :args (_let_41 true _let_39)) :args (_let_27 false _let_41)) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (MACRO_SR_PRED_ELIM (SCOPE (INSTANTIATE _let_35 :args (_let_20 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_36 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35 QUANTIFIERS_INST_E_MATCHING_SIMPLE ((not (= (io_tptp.vtcheck_14 b_VC b_Ve b_VT) false))))) :args (_let_34)))) _let_35 :args (_let_33 false _let_34)) :args (_let_26 false _let_31 false _let_29 false _let_27 false _let_33)) :args (_let_25 true _let_24)))) (let ((_let_67 (REFL :args (_let_23)))) (let ((_let_68 (= i_tptp.ve2app_24 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_117))) (let ((_let_69 (and _let_14 _let_68))) (let ((_let_70 (or _let_22 _let_69))) (let ((_let_71 (forall ((b_BOUND_VARIABLE_1840 it_4_$$unsorted) (b_BOUND_VARIABLE_1842 it_4_$$unsorted) (b_BOUND_VARIABLE_1844 it_4_$$unsorted) (b_BOUND_VARIABLE_1846 it_4_$$unsorted)) (or (not (= (io_tptp.vapp_4 b_BOUND_VARIABLE_1840 b_BOUND_VARIABLE_1842) (io_tptp.vapp_4 b_BOUND_VARIABLE_1844 b_BOUND_VARIABLE_1846))) (and (= b_BOUND_VARIABLE_1840 b_BOUND_VARIABLE_1844) (= b_BOUND_VARIABLE_1842 b_BOUND_VARIABLE_1846)))))) (let ((_let_72 (EQ_RESOLVE (ASSUME :args (_let_11)) (TRANS (MACRO_SR_EQ_INTRO :args (_let_11 SB_DEFAULT SBA_FIXPOINT)) (PREPROCESS :args ((= (forall ((BOUND_VARIABLE_1840 $$unsorted) (BOUND_VARIABLE_1842 $$unsorted) (BOUND_VARIABLE_1844 $$unsorted) (BOUND_VARIABLE_1846 $$unsorted)) (or (not (= (tptp.vapp BOUND_VARIABLE_1840 BOUND_VARIABLE_1842) (tptp.vapp BOUND_VARIABLE_1844 BOUND_VARIABLE_1846))) (and (= BOUND_VARIABLE_1840 BOUND_VARIABLE_1844) (= BOUND_VARIABLE_1842 BOUND_VARIABLE_1846)))) _let_71))))))) (let ((_let_73 (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_70)) :args ((or _let_22 _let_69 (not _let_70)))) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_23 0)) (CONG _let_67 (MACRO_SR_PRED_INTRO :args ((= (not _let_22) _let_21))) :args _let_44)) :args ((or _let_21 _let_23))) _let_66 :args (_let_21 true _let_23)) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_72 :args (i_tptp.ve1app_23 i_tptp.ve2app_24 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_116 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_117 QUANTIFIERS_INST_CBQI_PROP)) :args (_let_71))) _let_72 :args (_let_70 false _let_71)) :args (_let_69 false _let_21 false _let_70)))) (let ((_let_74 (not _let_69))) (let ((_let_75 (io_tptp.vtcheck_14 _let_54 i_tptp.ve1app_23 _let_12))) (let ((_let_76 (not _let_15))) (let ((_let_77 (or _let_57 _let_76 _let_75))) (let ((_let_78 (forall ((Vx $$unsorted) (b_VS it_7_$$unsorted) (b_VC it_67_$$unsorted) (b_VT it_7_$$unsorted)) (or (not (= i_tptp.vnoType_10 (io_tptp.vlookup_13 Vx b_VC))) (not (io_tptp.vtcheck_14 b_VC i_tptp.ve1app_23 b_VT)) (io_tptp.vtcheck_14 (io_tptp.vbind_7 Vx b_VS b_VC) i_tptp.ve1app_23 b_VT))))) (let ((_let_79 (EQ_RESOLVE (ASSUME :args (_let_3)) (TRANS (MACRO_SR_EQ_INTRO :args (_let_3 SB_DEFAULT SBA_FIXPOINT)) (PREPROCESS :args ((= (forall ((Vx $$unsorted) (VS $$unsorted) (VC $$unsorted) (VT $$unsorted)) (or (not (= tptp.vnoType (tptp.vlookup Vx VC))) (not (tptp.vtcheck VC tptp.ve1app VT)) (tptp.vtcheck (tptp.vbind Vx VS VC) tptp.ve1app VT))) _let_78))))))) (let ((_let_80 (io_tptp.vtcheck_14 _let_54 i_tptp.ve2app_24 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_118))) (let ((_let_81 (not _let_80))) (let ((_let_82 (not _let_75))) (let ((_let_83 (or _let_82 _let_81 _let_55))) (let ((_let_84 (forall ((b_VS it_7_$$unsorted) (b_VC it_67_$$unsorted) (b_Ve1 it_4_$$unsorted) (b_Ve2 it_4_$$unsorted) (b_VT it_7_$$unsorted)) (or (not (io_tptp.vtcheck_14 b_VC b_Ve1 (io_tptp.varrow_22 b_VS b_VT))) (not (io_tptp.vtcheck_14 b_VC b_Ve2 b_VS)) (io_tptp.vtcheck_14 b_VC (io_tptp.vapp_4 b_Ve1 b_Ve2) b_VT))))) (let ((_let_85 (EQ_RESOLVE (ASSUME :args (_let_5)) (TRANS (MACRO_SR_EQ_INTRO :args (_let_5 SB_DEFAULT SBA_FIXPOINT)) (PREPROCESS :args ((= (forall ((VS $$unsorted) (VC $$unsorted) (Ve1 $$unsorted) (Ve2 $$unsorted) (VT $$unsorted)) (or (not (tptp.vtcheck VC Ve1 (tptp.varrow VS VT))) (not (tptp.vtcheck VC Ve2 VS)) (tptp.vtcheck VC (tptp.vapp Ve1 Ve2) VT))) _let_84))))))) (let ((_let_86 (io_tptp.vtcheck_14 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35 i_tptp.ve2app_24 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_118))) (let ((_let_87 (not _let_86))) (let ((_let_88 (or _let_57 _let_87 _let_80))) (let ((_let_89 (forall ((Vx $$unsorted) (b_VS it_7_$$unsorted) (b_VC it_67_$$unsorted) (b_VT it_7_$$unsorted)) (or (not (= i_tptp.vnoType_10 (io_tptp.vlookup_13 Vx b_VC))) (not (io_tptp.vtcheck_14 b_VC i_tptp.ve2app_24 b_VT)) (io_tptp.vtcheck_14 (io_tptp.vbind_7 Vx b_VS b_VC) i_tptp.ve2app_24 b_VT))))) (let ((_let_90 (EQ_RESOLVE (ASSUME :args (_let_2)) (TRANS (MACRO_SR_EQ_INTRO :args (_let_2 SB_DEFAULT SBA_FIXPOINT)) (PREPROCESS :args ((= (forall ((Vx $$unsorted) (VS $$unsorted) (VC $$unsorted) (VT $$unsorted)) (or (not (= tptp.vnoType (tptp.vlookup Vx VC))) (not (tptp.vtcheck VC tptp.ve2app VT)) (tptp.vtcheck (tptp.vbind Vx VS VC) tptp.ve2app VT))) _let_89))))))) (let ((_let_91 (and _let_16 _let_68))) (let ((_let_92 (_let_16 _let_68))) (let ((_let_93 (ASSUME :args (_let_16)))) (let ((_let_94 (APPLY_UF io_tptp.vtcheck_14))) (let ((_let_95 (ASSUME :args (_let_68)))) (let ((_let_96 (REFL :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35)))) (let ((_let_97 (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_58 0)) (CONG _let_64 (MACRO_SR_PRED_INTRO :args ((= (not _let_57) _let_56))) :args _let_44)) :args ((or _let_56 _let_58))) _let_63 :args (_let_56 true _let_58)))) (let ((_let_98 (ASSUME :args (_let_76)))) (let ((_let_99 (ASSUME :args (_let_14)))) (let ((_let_100 (ASSUME :args (_let_13)))) (SCOPE (SCOPE (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (NOT_AND (MACRO_SR_PRED_TRANSFORM (SCOPE (AND_INTRO _let_98 _let_99 _let_100) :args (_let_13 _let_14 _let_76)) (SCOPE (MACRO_SR_PRED_ELIM (TRANS (SYMM (TRUE_INTRO _let_100)) (CONG _let_96 (SYMM _let_99) (REFL :args (_let_12)) :args _let_94) (FALSE_INTRO _let_98))) :args (_let_76 _let_14 _let_13)) :args ((not (and _let_13 _let_14 _let_76)) SB_LITERAL))) (CONG (REFL :args (_let_18)) (REFL :args ((not _let_14))) (MACRO_SR_PRED_INTRO :args ((= (not _let_76) _let_15))) :args _let_44)) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_77)) :args ((or _let_57 _let_75 _let_76 (not _let_77)))) _let_97 (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_83)) :args ((or _let_55 _let_81 _let_82 (not _let_83)))) (MACRO_RESOLUTION_TRUST (CNF_OR_NEG :args (_let_58 2)) _let_63 :args ((not _let_55) true _let_58)) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_88)) :args ((or _let_57 _let_87 _let_80 (not _let_88)))) _let_97 (MACRO_RESOLUTION_TRUST (RESOLUTION (CNF_AND_NEG :args (_let_91)) (IMPLIES_ELIM (SCOPE (MODUS_PONENS (AND_INTRO _let_93 _let_95) (SCOPE (TRUE_ELIM (TRANS (CONG _let_96 (SYMM (SYMM _let_95)) (REFL :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_118)) :args _let_94) (TRUE_INTRO _let_93))) :args _let_92)) :args _let_92)) :args (true _let_91)) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_AND_POS :args (_let_69 1)) :args ((or _let_68 _let_74))) _let_73 :args (_let_68 false _let_69)) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_23 2)) (CONG _let_67 (MACRO_SR_PRED_INTRO :args ((= (not _let_17) _let_16))) :args _let_44)) :args ((or _let_16 _let_23))) _let_66 :args (_let_16 true _let_23)) :args (_let_86 false _let_68 false _let_16)) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_90 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_33 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_34 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_118 QUANTIFIERS_INST_CBQI_CONFLICT)) :args (_let_89))) _let_90 :args (_let_88 false _let_89)) :args (_let_80 false _let_56 false _let_86 false _let_88)) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_85 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_118 _let_54 i_tptp.ve1app_23 i_tptp.ve2app_24 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_36 QUANTIFIERS_INST_CBQI_CONFLICT)) :args (_let_84))) _let_85 :args (_let_83 false _let_84)) :args (_let_82 true _let_55 false _let_80 false _let_83)) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_79 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_33 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_34 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_35 _let_12 QUANTIFIERS_INST_CBQI_CONFLICT)) :args (_let_78))) _let_79 :args (_let_77 false _let_78)) :args (_let_76 false _let_56 true _let_75 false _let_77)) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_AND_POS :args (_let_69 0)) :args ((or _let_14 _let_74))) _let_73 :args (_let_14 false _let_69)) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_23 1)) (CONG _let_67 (MACRO_SR_PRED_INTRO :args ((= (not _let_18) _let_13))) :args _let_44)) :args ((or _let_13 _let_23))) _let_66 :args (_let_13 true _let_23)) :args (false true _let_15 false _let_14 false _let_13)) :args ((forall ((VVar0 $$unsorted) (VVar1 $$unsorted)) (let ((_let_1 (= (tptp.vvar VVar0) (tptp.vvar VVar1)))) (let ((_let_2 (= VVar0 VVar1))) (and (=> _let_1 _let_2) (=> _let_2 _let_1))))) (forall ((VVar0 $$unsorted) (VTyp0 $$unsorted) (VExp0 $$unsorted) (VVar1 $$unsorted) (VTyp1 $$unsorted) (VExp1 $$unsorted)) (let ((_let_1 (= (tptp.vabs VVar0 VTyp0 VExp0) (tptp.vabs VVar1 VTyp1 VExp1)))) (let ((_let_2 (and (= VVar0 VVar1) (= VTyp0 VTyp1) (= VExp0 VExp1)))) (and (=> _let_1 _let_2) (=> _let_2 _let_1))))) _let_11 (forall ((VVar0 $$unsorted) (VVar1 $$unsorted) (VTyp0 $$unsorted) (VExp0 $$unsorted)) (not (= (tptp.vvar VVar0) (tptp.vabs VVar1 VTyp0 VExp0)))) _let_10 _let_9 (forall ((Vx $$unsorted) (VS $$unsorted) (Ve $$unsorted) (VExp0 $$unsorted)) (=> (= VExp0 (tptp.vabs Vx VS Ve)) (tptp.visValue VExp0))) (forall ((Vx $$unsorted) (VExp0 $$unsorted)) (=> (= VExp0 (tptp.vvar Vx)) (not (tptp.visValue VExp0)))) (forall ((Ve1 $$unsorted) (Ve2 $$unsorted) (VExp0 $$unsorted)) (=> (= VExp0 (tptp.vapp Ve1 Ve2)) (not (tptp.visValue VExp0)))) (forall ((VVar0 $$unsorted) (VExp0 $$unsorted) (Vx $$unsorted) (Vv $$unsorted)) (let ((_let_1 (= Vx Vv))) (let ((_let_2 (tptp.visFreeVar VVar0 VExp0))) (=> (and (= VVar0 Vv) (= VExp0 (tptp.vvar Vx))) (and (=> _let_1 _let_2) (=> _let_2 _let_1)))))) (forall ((VT $$unsorted) (VVar0 $$unsorted) (VExp0 $$unsorted) (Vx $$unsorted) (Vv $$unsorted) (Ve $$unsorted)) (let ((_let_1 (and (not (= Vx Vv)) (tptp.visFreeVar Vv Ve)))) (let ((_let_2 (tptp.visFreeVar VVar0 VExp0))) (=> (and (= VVar0 Vv) (= VExp0 (tptp.vabs Vx VT Ve))) (and (=> _let_1 _let_2) (=> _let_2 _let_1)))))) (forall ((VVar0 $$unsorted) (VExp0 $$unsorted) (Ve1 $$unsorted) (Vv $$unsorted) (Ve2 $$unsorted)) (let ((_let_1 (or (tptp.visFreeVar Vv Ve1) (tptp.visFreeVar Vv Ve2)))) (let ((_let_2 (tptp.visFreeVar VVar0 VExp0))) (=> (and (= VVar0 Vv) (= VExp0 (tptp.vapp Ve1 Ve2))) (and (=> _let_1 _let_2) (=> _let_2 _let_1)))))) (and (=> _let_8 true) (=> true _let_8)) (forall ((VVar0 $$unsorted) (VTyp0 $$unsorted) (VCtx0 $$unsorted) (VVar1 $$unsorted) (VTyp1 $$unsorted) (VCtx1 $$unsorted)) (let ((_let_1 (= (tptp.vbind VVar0 VTyp0 VCtx0) (tptp.vbind VVar1 VTyp1 VCtx1)))) (let ((_let_2 (and (= VVar0 VVar1) (= VTyp0 VTyp1) (= VCtx0 VCtx1)))) (and (=> _let_1 _let_2) (=> _let_2 _let_1))))) (and (=> _let_7 true) (=> true _let_7)) (forall ((VTyp0 $$unsorted) (VTyp1 $$unsorted)) (let ((_let_1 (= (tptp.vsomeType VTyp0) (tptp.vsomeType VTyp1)))) (let ((_let_2 (= VTyp0 VTyp1))) (and (=> _let_1 _let_2) (=> _let_2 _let_1))))) (forall ((VVar0 $$unsorted) (VTyp0 $$unsorted) (VCtx0 $$unsorted)) (not (= tptp.vempty (tptp.vbind VVar0 VTyp0 VCtx0)))) (forall ((VTyp0 $$unsorted)) (not (= tptp.vnoType (tptp.vsomeType VTyp0)))) (forall ((VOptTyp0 $$unsorted)) (=> (= VOptTyp0 tptp.vnoType) (not (tptp.visSomeType VOptTyp0)))) (forall ((Ve $$unsorted) (VOptTyp0 $$unsorted)) (=> (= VOptTyp0 (tptp.vsomeType Ve)) (tptp.visSomeType VOptTyp0))) (forall ((VOptTyp0 $$unsorted) (RESULT $$unsorted) (Ve $$unsorted)) (=> (= VOptTyp0 (tptp.vsomeType Ve)) (=> (= RESULT (tptp.vgetSomeType VOptTyp0)) (= RESULT Ve)))) (forall ((Vx $$unsorted) (VVar0 $$unsorted) (VCtx0 $$unsorted) (RESULT $$unsorted)) (=> (and (= VVar0 Vx) (= VCtx0 tptp.vempty)) (=> (= RESULT (tptp.vlookup VVar0 VCtx0)) (= RESULT tptp.vnoType)))) (forall ((VC $$unsorted) (Vx $$unsorted) (Vy $$unsorted) (VVar0 $$unsorted) (VCtx0 $$unsorted) (RESULT $$unsorted) (VTy $$unsorted)) (=> (and (= VVar0 Vx) (= VCtx0 (tptp.vbind Vy VTy VC))) (=> (= Vx Vy) (=> (= RESULT (tptp.vlookup VVar0 VCtx0)) (= RESULT (tptp.vsomeType VTy)))))) (forall ((VTy $$unsorted) (Vy $$unsorted) (VVar0 $$unsorted) (VCtx0 $$unsorted) (RESULT $$unsorted) (Vx $$unsorted) (VC $$unsorted)) (=> (and (= VVar0 Vx) (= VCtx0 (tptp.vbind Vy VTy VC))) (=> (not (= Vx Vy)) (=> (= RESULT (tptp.vlookup VVar0 VCtx0)) (= RESULT (tptp.vlookup Vx VC)))))) (forall ((VVar0 $$unsorted) (VCtx0 $$unsorted) (RESULT $$unsorted)) (=> (= (tptp.vlookup VVar0 VCtx0) RESULT) (or (exists ((Vx $$unsorted)) (and (= VVar0 Vx) (= VCtx0 tptp.vempty) (= RESULT tptp.vnoType))) (exists ((VC $$unsorted) (Vx $$unsorted) (Vy $$unsorted) (VTy $$unsorted)) (and (= VVar0 Vx) (= VCtx0 (tptp.vbind Vy VTy VC)) (= Vx Vy) (= RESULT (tptp.vsomeType VTy)))) (exists ((VTy $$unsorted) (Vy $$unsorted) (Vx $$unsorted) (VC $$unsorted)) (and (= VVar0 Vx) (= VCtx0 (tptp.vbind Vy VTy VC)) (not (= Vx Vy)) (= RESULT (tptp.vlookup Vx VC))))))) (forall ((Vy $$unsorted) (VTy $$unsorted) (Vx $$unsorted) (VTx $$unsorted) (VC $$unsorted) (Ve $$unsorted) (VT $$unsorted)) (=> (and (= Vx Vy) (tptp.vtcheck (tptp.vbind Vx VTx (tptp.vbind Vy VTy VC)) Ve VT)) (tptp.vtcheck (tptp.vbind Vx VTx VC) Ve VT))) (forall ((Vy $$unsorted) (VTy $$unsorted) (Vx $$unsorted) (VTx $$unsorted) (VC $$unsorted) (Ve $$unsorted) (VT $$unsorted)) (=> (and (not (= Vx Vy)) (tptp.vtcheck (tptp.vbind Vx VTx (tptp.vbind Vy VTy VC)) Ve VT)) (tptp.vtcheck (tptp.vbind Vy VTy (tptp.vbind Vx VTx VC)) Ve VT))) (forall ((Vv $$unsorted) (Ve $$unsorted)) (=> (= (tptp.vgensym Ve) Vv) (not (tptp.visFreeVar Vv Ve)))) (forall ((Vx $$unsorted) (Vy $$unsorted) (VVar0 $$unsorted) (VExp0 $$unsorted) (VExp1 $$unsorted) (RESULT $$unsorted) (Ve $$unsorted)) (=> (and (= VVar0 Vx) (= VExp0 Ve) (= VExp1 (tptp.vvar Vy))) (=> (= Vx Vy) (=> (= RESULT (tptp.vsubst VVar0 VExp0 VExp1)) (= RESULT Ve))))) (forall ((Ve $$unsorted) (Vx $$unsorted) (VVar0 $$unsorted) (VExp0 $$unsorted) (VExp1 $$unsorted) (RESULT $$unsorted) (Vy $$unsorted)) (let ((_let_1 (tptp.vvar Vy))) (=> (and (= VVar0 Vx) (= VExp0 Ve) (= VExp1 _let_1)) (=> (not (= Vx Vy)) (=> (= RESULT (tptp.vsubst VVar0 VExp0 VExp1)) (= RESULT _let_1)))))) (forall ((VVar0 $$unsorted) (VExp0 $$unsorted) (VExp1 $$unsorted) (RESULT $$unsorted) (Ve1 $$unsorted) (Vx $$unsorted) (Ve $$unsorted) (Ve2 $$unsorted)) (=> (and (= VVar0 Vx) (= VExp0 Ve) (= VExp1 (tptp.vapp Ve1 Ve2))) (=> (= RESULT (tptp.vsubst VVar0 VExp0 VExp1)) (= RESULT (tptp.vapp (tptp.vsubst Vx Ve Ve1) (tptp.vsubst Vx Ve Ve2)))))) (forall ((Ve $$unsorted) (Vx $$unsorted) (VVar0 $$unsorted) (VExp0 $$unsorted) (VExp1 $$unsorted) (RESULT $$unsorted) (Vy $$unsorted) (VT $$unsorted) (Ve1 $$unsorted)) (let ((_let_1 (tptp.vabs Vy VT Ve1))) (=> (and (= VVar0 Vx) (= VExp0 Ve) (= VExp1 _let_1)) (=> (= Vx Vy) (=> (= RESULT (tptp.vsubst VVar0 VExp0 VExp1)) (= RESULT _let_1)))))) (forall ((VVar0 $$unsorted) (VExp0 $$unsorted) (VExp1 $$unsorted) (RESULT $$unsorted) (Vx $$unsorted) (Ve $$unsorted) (VT $$unsorted) (Vy $$unsorted) (Vfresh $$unsorted) (Ve1 $$unsorted)) (=> (and (= VVar0 Vx) (= VExp0 Ve) (= VExp1 (tptp.vabs Vy VT Ve1))) (=> (and (not (= Vx Vy)) (tptp.visFreeVar Vy Ve) (= Vfresh (tptp.vgensym (tptp.vapp (tptp.vapp Ve Ve1) (tptp.vvar Vx))))) (=> (= RESULT (tptp.vsubst VVar0 VExp0 VExp1)) (= RESULT (tptp.vsubst Vx Ve (tptp.vabs Vfresh VT (tptp.vsubst Vy (tptp.vvar Vfresh) Ve1)))))))) (forall ((VVar0 $$unsorted) (VExp0 $$unsorted) (VExp1 $$unsorted) (RESULT $$unsorted) (Vy $$unsorted) (VT $$unsorted) (Vx $$unsorted) (Ve $$unsorted) (Ve1 $$unsorted)) (=> (and (= VVar0 Vx) (= VExp0 Ve) (= VExp1 (tptp.vabs Vy VT Ve1))) (=> (and (not (= Vx Vy)) (not (tptp.visFreeVar Vy Ve))) (=> (= RESULT (tptp.vsubst VVar0 VExp0 VExp1)) (= RESULT (tptp.vabs Vy VT (tptp.vsubst Vx Ve Ve1))))))) (forall ((VVar0 $$unsorted) (VExp0 $$unsorted) (VExp1 $$unsorted) (RESULT $$unsorted)) (=> (= (tptp.vsubst VVar0 VExp0 VExp1) RESULT) (or (exists ((Vx $$unsorted) (Vy $$unsorted) (Ve $$unsorted)) (and (= VVar0 Vx) (= VExp0 Ve) (= VExp1 (tptp.vvar Vy)) (= Vx Vy) (= RESULT Ve))) (exists ((Ve $$unsorted) (Vx $$unsorted) (Vy $$unsorted)) (let ((_let_1 (tptp.vvar Vy))) (and (= VVar0 Vx) (= VExp0 Ve) (= VExp1 _let_1) (not (= Vx Vy)) (= RESULT _let_1)))) (exists ((Ve1 $$unsorted) (Vx $$unsorted) (Ve $$unsorted) (Ve2 $$unsorted)) (and (= VVar0 Vx) (= VExp0 Ve) (= VExp1 (tptp.vapp Ve1 Ve2)) (= RESULT (tptp.vapp (tptp.vsubst Vx Ve Ve1) (tptp.vsubst Vx Ve Ve2))))) (exists ((Ve $$unsorted) (Vx $$unsorted) (Vy $$unsorted) (VT $$unsorted) (Ve1 $$unsorted)) (let ((_let_1 (tptp.vabs Vy VT Ve1))) (and (= VVar0 Vx) (= VExp0 Ve) (= VExp1 _let_1) (= Vx Vy) (= RESULT _let_1)))) (exists ((Vx $$unsorted) (Ve $$unsorted) (VT $$unsorted) (Vy $$unsorted) (Vfresh $$unsorted) (Ve1 $$unsorted)) (and (= VVar0 Vx) (= VExp0 Ve) (= VExp1 (tptp.vabs Vy VT Ve1)) (not (= Vx Vy)) (tptp.visFreeVar Vy Ve) (= Vfresh (tptp.vgensym (tptp.vapp (tptp.vapp Ve Ve1) (tptp.vvar Vx)))) (= RESULT (tptp.vsubst Vx Ve (tptp.vabs Vfresh VT (tptp.vsubst Vy (tptp.vvar Vfresh) Ve1)))))) (exists ((Vy $$unsorted) (VT $$unsorted) (Vx $$unsorted) (Ve $$unsorted) (Ve1 $$unsorted)) (and (= VVar0 Vx) (= VExp0 Ve) (= VExp1 (tptp.vabs Vy VT Ve1)) (not (= Vx Vy)) (not (tptp.visFreeVar Vy Ve)) (= RESULT (tptp.vabs Vy VT (tptp.vsubst Vx Ve Ve1)))))))) (and (=> _let_6 true) (=> true _let_6)) (forall ((VExp0 $$unsorted) (VExp1 $$unsorted)) (let ((_let_1 (= (tptp.vsomeExp VExp0) (tptp.vsomeExp VExp1)))) (let ((_let_2 (= VExp0 VExp1))) (and (=> _let_1 _let_2) (=> _let_2 _let_1))))) (forall ((VExp0 $$unsorted)) (not (= tptp.vnoExp (tptp.vsomeExp VExp0)))) (forall ((VOptExp0 $$unsorted)) (=> (= VOptExp0 tptp.vnoExp) (not (tptp.visSomeExp VOptExp0)))) (forall ((Ve $$unsorted) (VOptExp0 $$unsorted)) (=> (= VOptExp0 (tptp.vsomeExp Ve)) (tptp.visSomeExp VOptExp0))) (forall ((VOptExp0 $$unsorted) (RESULT $$unsorted) (Ve $$unsorted)) (=> (= VOptExp0 (tptp.vsomeExp Ve)) (=> (= RESULT (tptp.vgetSomeExp VOptExp0)) (= RESULT Ve)))) (forall ((Vx $$unsorted) (VExp0 $$unsorted) (RESULT $$unsorted)) (=> (= VExp0 (tptp.vvar Vx)) (=> (= RESULT (tptp.vreduce VExp0)) (= RESULT tptp.vnoExp)))) (forall ((Vx $$unsorted) (VS $$unsorted) (Ve $$unsorted) (VExp0 $$unsorted) (RESULT $$unsorted)) (=> (= VExp0 (tptp.vabs Vx VS Ve)) (=> (= RESULT (tptp.vreduce VExp0)) (= RESULT tptp.vnoExp)))) (forall ((Ve2 $$unsorted) (VExp0 $$unsorted) (RESULT $$unsorted) (Vx $$unsorted) (VS $$unsorted) (Ve1 $$unsorted) (Ve2red $$unsorted)) (let ((_let_1 (tptp.vabs Vx VS Ve1))) (=> (= VExp0 (tptp.vapp _let_1 Ve2)) (=> (and (= Ve2red (tptp.vreduce Ve2)) (tptp.visSomeExp Ve2red)) (=> (= RESULT (tptp.vreduce VExp0)) (= RESULT (tptp.vsomeExp (tptp.vapp _let_1 (tptp.vgetSomeExp Ve2red))))))))) (forall ((VS $$unsorted) (Ve2red $$unsorted) (VExp0 $$unsorted) (RESULT $$unsorted) (Vx $$unsorted) (Ve2 $$unsorted) (Ve1 $$unsorted)) (=> (= VExp0 (tptp.vapp (tptp.vabs Vx VS Ve1) Ve2)) (=> (and (= Ve2red (tptp.vreduce Ve2)) (not (tptp.visSomeExp Ve2red)) (tptp.visValue Ve2)) (=> (= RESULT (tptp.vreduce VExp0)) (= RESULT (tptp.vsomeExp (tptp.vsubst Vx Ve2 Ve1))))))) (forall ((Vx $$unsorted) (VS $$unsorted) (Ve1 $$unsorted) (Ve2red $$unsorted) (Ve2 $$unsorted) (VExp0 $$unsorted) (RESULT $$unsorted)) (=> (= VExp0 (tptp.vapp (tptp.vabs Vx VS Ve1) Ve2)) (=> (and (= Ve2red (tptp.vreduce Ve2)) (not (tptp.visSomeExp Ve2red)) (not (tptp.visValue Ve2))) (=> (= RESULT (tptp.vreduce VExp0)) (= RESULT tptp.vnoExp))))) (forall ((Ve1 $$unsorted) (VExp0 $$unsorted) (RESULT $$unsorted) (Ve1red $$unsorted) (Ve2 $$unsorted)) (=> (and (= VExp0 (tptp.vapp Ve1 Ve2)) (forall ((VVx0 $$unsorted) (VVS0 $$unsorted) (VVe10 $$unsorted)) (not (= Ve1 (tptp.vabs VVx0 VVS0 VVe10))))) (=> (and (= Ve1red (tptp.vreduce Ve1)) (tptp.visSomeExp Ve1red)) (=> (= RESULT (tptp.vreduce VExp0)) (= RESULT (tptp.vsomeExp (tptp.vapp (tptp.vgetSomeExp Ve1red) Ve2))))))) (forall ((Ve2 $$unsorted) (Ve1 $$unsorted) (Ve1red $$unsorted) (VExp0 $$unsorted) (RESULT $$unsorted)) (=> (and (= VExp0 (tptp.vapp Ve1 Ve2)) (forall ((VVx0 $$unsorted) (VVS0 $$unsorted) (VVe10 $$unsorted)) (not (= Ve1 (tptp.vabs VVx0 VVS0 VVe10))))) (=> (and (= Ve1red (tptp.vreduce Ve1)) (not (tptp.visSomeExp Ve1red))) (=> (= RESULT (tptp.vreduce VExp0)) (= RESULT tptp.vnoExp))))) (forall ((VExp0 $$unsorted) (RESULT $$unsorted)) (=> (= (tptp.vreduce VExp0) RESULT) (or (exists ((Vx $$unsorted)) (and (= VExp0 (tptp.vvar Vx)) (= RESULT tptp.vnoExp))) (exists ((Vx $$unsorted) (VS $$unsorted) (Ve $$unsorted)) (and (= VExp0 (tptp.vabs Vx VS Ve)) (= RESULT tptp.vnoExp))) (exists ((Ve2 $$unsorted) (Vx $$unsorted) (VS $$unsorted) (Ve1 $$unsorted) (Ve2red $$unsorted)) (let ((_let_1 (tptp.vabs Vx VS Ve1))) (and (= VExp0 (tptp.vapp _let_1 Ve2)) (= Ve2red (tptp.vreduce Ve2)) (tptp.visSomeExp Ve2red) (= RESULT (tptp.vsomeExp (tptp.vapp _let_1 (tptp.vgetSomeExp Ve2red))))))) (exists ((VS $$unsorted) (Ve2red $$unsorted) (Vx $$unsorted) (Ve2 $$unsorted) (Ve1 $$unsorted)) (and (= VExp0 (tptp.vapp (tptp.vabs Vx VS Ve1) Ve2)) (= Ve2red (tptp.vreduce Ve2)) (not (tptp.visSomeExp Ve2red)) (tptp.visValue Ve2) (= RESULT (tptp.vsomeExp (tptp.vsubst Vx Ve2 Ve1))))) (exists ((Vx $$unsorted) (VS $$unsorted) (Ve1 $$unsorted) (Ve2red $$unsorted) (Ve2 $$unsorted)) (and (= VExp0 (tptp.vapp (tptp.vabs Vx VS Ve1) Ve2)) (= Ve2red (tptp.vreduce Ve2)) (not (tptp.visSomeExp Ve2red)) (not (tptp.visValue Ve2)) (= RESULT tptp.vnoExp))) (exists ((Ve1 $$unsorted) (Ve1red $$unsorted) (Ve2 $$unsorted)) (and (= VExp0 (tptp.vapp Ve1 Ve2)) (forall ((VVx0 $$unsorted) (VVS0 $$unsorted) (VVe10 $$unsorted)) (not (= Ve1 (tptp.vabs VVx0 VVS0 VVe10)))) (= Ve1red (tptp.vreduce Ve1)) (tptp.visSomeExp Ve1red) (= RESULT (tptp.vsomeExp (tptp.vapp (tptp.vgetSomeExp Ve1red) Ve2))))) (exists ((Ve2 $$unsorted) (Ve1 $$unsorted) (Ve1red $$unsorted)) (and (= VExp0 (tptp.vapp Ve1 Ve2)) (forall ((VVx0 $$unsorted) (VVS0 $$unsorted) (VVe10 $$unsorted)) (not (= Ve1 (tptp.vabs VVx0 VVS0 VVe10)))) (= Ve1red (tptp.vreduce Ve1)) (not (tptp.visSomeExp Ve1red)) (= RESULT tptp.vnoExp)))))) (forall ((VTyp0 $$unsorted) (VTyp1 $$unsorted) (VTyp2 $$unsorted) (VTyp3 $$unsorted)) (let ((_let_1 (= (tptp.varrow VTyp0 VTyp1) (tptp.varrow VTyp2 VTyp3)))) (let ((_let_2 (and (= VTyp0 VTyp2) (= VTyp1 VTyp3)))) (and (=> _let_1 _let_2) (=> _let_2 _let_1))))) (forall ((VC $$unsorted) (Vx $$unsorted) (VT $$unsorted)) (=> (= (tptp.vlookup Vx VC) (tptp.vsomeType VT)) (tptp.vtcheck VC (tptp.vvar Vx) VT))) (forall ((VC $$unsorted) (Vx $$unsorted) (Ve $$unsorted) (VS $$unsorted) (VT $$unsorted)) (=> (tptp.vtcheck (tptp.vbind Vx VS VC) Ve VT) (tptp.vtcheck VC (tptp.vabs Vx VS Ve) (tptp.varrow VS VT)))) _let_5 _let_4 _let_3 _let_2 _let_1 true)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
% 62.90/63.14  )
% 62.90/63.14  % SZS output end Proof for COM142+1
% 62.90/63.14  % cvc5---1.0.5 exiting
% 62.90/63.15  % cvc5---1.0.5 exiting
%------------------------------------------------------------------------------