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

View Problem - Process Solution

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

% Computer : n012.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:17 EDT 2023

% Result   : Theorem 1.17s 1.40s
% Output   : Proof 1.17s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.13  % Problem    : COM136+1 : TPTP v8.1.2. Released v6.4.0.
% 0.00/0.14  % Command    : do_cvc5 %s %d
% 0.14/0.36  % Computer : n012.cluster.edu
% 0.14/0.36  % Model    : x86_64 x86_64
% 0.14/0.36  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.14/0.36  % Memory   : 8042.1875MB
% 0.14/0.36  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.14/0.36  % CPULimit   : 300
% 0.14/0.36  % WCLimit    : 300
% 0.14/0.36  % DateTime   : Tue Aug 29 13:28:09 EDT 2023
% 0.14/0.36  % CPUTime    : 
% 0.21/0.50  %----Proving TF0_NAR, FOF, or CNF
% 1.17/1.40  ------- convert to smt2 : /export/starexec/sandbox2/tmp/tmp.fVNecVw4Gv/cvc5---1.0.5_27005.p...
% 1.17/1.40  ------- get file name : TPTP file name is COM136+1
% 1.17/1.40  ------- cvc5-fof : /export/starexec/sandbox2/solver/bin/cvc5---1.0.5_27005.smt2...
% 1.17/1.40  --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 10...
% 1.17/1.40  % SZS status Theorem for COM136+1
% 1.17/1.40  % SZS output start Proof for COM136+1
% 1.17/1.40  (
% 1.17/1.40  (let ((_let_1 (not (forall ((Vx $$unsorted) (VS $$unsorted) (VC $$unsorted) (Vy $$unsorted) (VS1 $$unsorted) (VT $$unsorted)) (let ((_let_1 (tptp.vabs Vy VS1 tptp.veabs))) (=> (and (not (tptp.visFreeVar Vx _let_1)) (tptp.vtcheck (tptp.vbind Vx VS VC) _let_1 VT)) (tptp.vtcheck VC _let_1 VT))))))) (let ((_let_2 (forall ((Vx $$unsorted) (VS $$unsorted) (VC $$unsorted) (VT $$unsorted)) (=> (and (not (tptp.visFreeVar Vx tptp.veabs)) (tptp.vtcheck (tptp.vbind Vx VS VC) tptp.veabs VT)) (tptp.vtcheck VC tptp.veabs VT))))) (let ((_let_3 (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_4 (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 ((_let_5 (= tptp.vnoExp tptp.vnoExp))) (let ((_let_6 (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))))) (let ((_let_7 (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))))) (let ((_let_8 (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)))))))) (let ((_let_9 (= tptp.vnoType tptp.vnoType))) (let ((_let_10 (= tptp.vempty tptp.vempty))) (let ((_let_11 (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)))))))) (let ((_let_12 (forall ((VVar0 $$unsorted) (VTyp0 $$unsorted) (VExp0 $$unsorted) (VExp1 $$unsorted) (VExp2 $$unsorted)) (not (= (tptp.vabs VVar0 VTyp0 VExp0) (tptp.vapp VExp1 VExp2)))))) (let ((_let_13 (forall ((VVar0 $$unsorted) (VVar1 $$unsorted) (VTyp0 $$unsorted) (VExp0 $$unsorted)) (not (= (tptp.vvar VVar0) (tptp.vabs VVar1 VTyp0 VExp0)))))) (let ((_let_14 (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 ((_let_15 (tptp.vbind SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4))) (let ((_let_16 (tptp.vtcheck (tptp.vbind SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_13 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_15 _let_15) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_14 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_16))) (let ((_let_17 (tptp.vtcheck (tptp.vbind SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_13 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_15 (tptp.vbind SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_13 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4)) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_14 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_16))) (let ((_let_18 (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_5 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_13))) (let ((_let_19 (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_15))) (let ((_let_20 (= tptp.veabs SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_14))) (let ((_let_21 (= _let_15 (tptp.vbind SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_72 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_71)))) (let ((_let_22 (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_5))) (let ((_let_23 (not _let_16))) (let ((_let_24 (tptp.varrow SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_15 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_16))) (let ((_let_25 (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_7 _let_24))) (let ((_let_26 (not _let_25))) (let ((_let_27 (tptp.vabs SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_13 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_15 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_14))) (let ((_let_28 (tptp.vabs SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_5 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6 tptp.veabs))) (let ((_let_29 (= _let_28 _let_27))) (let ((_let_30 (not _let_29))) (let ((_let_31 (or _let_30 _let_26 _let_23))) (let ((_let_32 (forall ((Vx $$unsorted) (Ve2 $$unsorted) (VT1 $$unsorted) (VT2 $$unsorted)) (or (not (= (tptp.vabs Vx VT1 Ve2) (tptp.vabs SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_5 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6 tptp.veabs))) (not (= (tptp.varrow VT1 VT2) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_7)) (not (tptp.vtcheck (tptp.vbind Vx VT1 (tptp.vbind SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4)) Ve2 VT2)))))) (let ((_let_33 (not _let_31))) (let ((_let_34 (forall ((Ve1 $$unsorted) (Ve2 $$unsorted) (VS $$unsorted)) (let ((_let_1 (tptp.vbind SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4))) (or (not (= (tptp.vapp Ve1 Ve2) (tptp.vabs SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_5 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6 tptp.veabs))) (not (tptp.vtcheck _let_1 Ve1 (tptp.varrow VS SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_7))) (not (tptp.vtcheck _let_1 Ve2 VS))))))) (let ((_let_35 (not _let_34))) (let ((_let_36 (not _let_32))) (let ((_let_37 (forall ((Vx $$unsorted)) (or (not (= (tptp.vvar Vx) (tptp.vabs SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_5 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6 tptp.veabs))) (not (= (tptp.vlookup Vx (tptp.vbind SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4)) (tptp.vsomeType SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_7))))))) (let ((_let_38 (not _let_37))) (let ((_let_39 (tptp.vtcheck _let_15 _let_28 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_7))) (let ((_let_40 (not _let_39))) (let ((_let_41 (or _let_40 _let_38 _let_36 _let_35))) (let ((_let_42 (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 ((_let_43 (EQ_RESOLVE (ASSUME :args (_let_3)) (MACRO_SR_EQ_INTRO :args (_let_3 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_44 (not (tptp.vtcheck _let_15 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_12)))) (let ((_let_45 (not (tptp.vtcheck _let_15 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_10 (tptp.varrow SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_12 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_7))))) (let ((_let_46 (tptp.vapp SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_10 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11))) (let ((_let_47 (= _let_28 _let_46))) (let ((_let_48 (not _let_47))) (let ((_let_49 (or _let_48 _let_45 _let_44))) (let ((_let_50 (_let_12))) (let ((_let_51 (ASSUME :args _let_50))) (let ((_let_52 (or))) (let ((_let_53 (_let_35))) (let ((_let_54 (tptp.vlookup SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_17 _let_15))) (let ((_let_55 (tptp.vsomeType SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_7))) (let ((_let_56 (tptp.vvar SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_17))) (let ((_let_57 (= _let_28 _let_56))) (let ((_let_58 (not _let_57))) (let ((_let_59 (or _let_58 (not (= _let_55 _let_54))))) (let ((_let_60 (_let_13))) (let ((_let_61 (ASSUME :args _let_60))) (let ((_let_62 (_let_38))) (let ((_let_63 (tptp.vtcheck SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 _let_28 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_7))) (let ((_let_64 (tptp.visFreeVar SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 _let_28))) (let ((_let_65 (or _let_64 _let_40 _let_63))) (let ((_let_66 (forall ((Vx $$unsorted) (VS $$unsorted) (VC $$unsorted) (Vy $$unsorted) (VS1 $$unsorted) (VT $$unsorted)) (let ((_let_1 (tptp.vabs Vy VS1 tptp.veabs))) (or (tptp.visFreeVar Vx _let_1) (not (tptp.vtcheck (tptp.vbind Vx VS VC) _let_1 VT)) (tptp.vtcheck VC _let_1 VT)))))) (let ((_let_67 (not _let_65))) (let ((_let_68 (EQ_RESOLVE (ASSUME :args (_let_1)) (MACRO_SR_EQ_INTRO :args (_let_1 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_69 (not _let_66))) (let ((_let_70 (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (IMPLIES_ELIM (SCOPE (SKOLEMIZE _let_68) :args (_let_69))) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_69) _let_66))) (REFL :args (_let_67)) :args _let_52)) _let_68 :args (_let_67 true _let_66)))) (let ((_let_71 (_let_36))) (let ((_let_72 (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (IMPLIES_ELIM (EQ_RESOLVE (SCOPE (SKOLEMIZE (ASSUME :args _let_71)) :args _let_71) (REWRITE :args ((=> _let_36 (not (or (not (= _let_27 _let_28)) (not (= _let_24 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_7)) _let_23))))))) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_36) _let_32))) (REFL :args (_let_33)) :args _let_52)) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_41)) :args ((or _let_40 _let_38 _let_36 _let_35 (not _let_41)))) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_65 1)) (CONG (REFL :args (_let_65)) (MACRO_SR_PRED_INTRO :args ((= (not _let_40) _let_39))) :args _let_52)) :args ((or _let_39 _let_65))) _let_70 :args (_let_39 true _let_65)) (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (IMPLIES_ELIM (EQ_RESOLVE (SCOPE (SKOLEMIZE (ASSUME :args _let_62)) :args _let_62) (REWRITE :args ((=> _let_38 (not (or (not (= _let_56 _let_28)) (not (= _let_54 _let_55))))))))) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_38) _let_37))) (REFL :args ((not _let_59))) :args _let_52)) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_59 0)) (CONG (REFL :args (_let_59)) (MACRO_SR_PRED_INTRO :args ((= (not _let_58) _let_57))) :args _let_52)) :args ((or _let_57 _let_59))) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (MACRO_SR_PRED_ELIM (SCOPE (INSTANTIATE _let_61 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_17 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_5 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6 tptp.veabs QUANTIFIERS_INST_E_MATCHING ((tptp.vvar VVar0) (tptp.vabs VVar1 VTyp0 VExp0)))) :args _let_60))) _let_61 :args (_let_58 false _let_13)) :args (_let_59 true _let_57)) :args (_let_37 false _let_59)) (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (IMPLIES_ELIM (EQ_RESOLVE (SCOPE (SKOLEMIZE (ASSUME :args _let_53)) :args _let_53) (REWRITE :args ((=> _let_35 (not (or (not (= _let_46 _let_28)) _let_45 _let_44))))))) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_35) _let_34))) (REFL :args ((not _let_49))) :args _let_52)) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_49 0)) (CONG (REFL :args (_let_49)) (MACRO_SR_PRED_INTRO :args ((= (not _let_48) _let_47))) :args _let_52)) :args ((or _let_47 _let_49))) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_51 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_5 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6 tptp.veabs SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_10 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11 QUANTIFIERS_INST_E_MATCHING ((tptp.vabs VVar0 VTyp0 VExp0) (tptp.vapp VExp1 VExp2)))) :args _let_50)) _let_51 :args (_let_48 false _let_12)) :args (_let_49 true _let_47)) :args (_let_34 false _let_49)) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (MACRO_SR_PRED_ELIM (SCOPE (INSTANTIATE _let_43 :args (_let_28 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_7 _let_15 QUANTIFIERS_INST_E_MATCHING_SIMPLE ((not (= (tptp.vtcheck VC Ve VT) false))))) :args (_let_42)))) _let_43 :args (_let_41 false _let_42)) :args (_let_36 false _let_39 false _let_37 false _let_34 false _let_41)) :args (_let_33 true _let_32)))) (let ((_let_73 (REFL :args (_let_31)))) (let ((_let_74 (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_31 2)) (CONG _let_73 (MACRO_SR_PRED_INTRO :args ((= (not _let_23) _let_16))) :args _let_52)) :args ((or _let_16 _let_31))) _let_72 :args (_let_16 true _let_31)))) (let ((_let_75 (tptp.vbind SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_13 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_15 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4))) (let ((_let_76 (tptp.vtcheck _let_75 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_14 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_16))) (let ((_let_77 (not _let_17))) (let ((_let_78 (or _let_77 _let_76))) (let ((_let_79 (forall ((VTy $$unsorted) (Vx $$unsorted) (VTx $$unsorted) (VC $$unsorted) (Ve $$unsorted) (VT $$unsorted)) (or (not (tptp.vtcheck (tptp.vbind Vx VTx (tptp.vbind Vx VTy VC)) Ve VT)) (tptp.vtcheck (tptp.vbind Vx VTx VC) Ve VT))))) (let ((_let_80 (EQ_RESOLVE (ASSUME :args (_let_7)) (MACRO_SR_EQ_INTRO :args (_let_7 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_81 (tptp.vtcheck SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 _let_27 _let_24))) (let ((_let_82 (not _let_76))) (let ((_let_83 (or _let_82 _let_81))) (let ((_let_84 (forall ((VC $$unsorted) (Vx $$unsorted) (Ve $$unsorted) (VS $$unsorted) (VT $$unsorted)) (or (not (tptp.vtcheck (tptp.vbind Vx VS VC) Ve VT)) (tptp.vtcheck VC (tptp.vabs Vx VS Ve) (tptp.varrow VS VT)))))) (let ((_let_85 (EQ_RESOLVE (ASSUME :args (_let_4)) (MACRO_SR_EQ_INTRO :args (_let_4 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_86 (not _let_81))) (let ((_let_87 (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_31 0)) (CONG _let_73 (MACRO_SR_PRED_INTRO :args ((= (not _let_30) _let_29))) :args _let_52)) :args ((or _let_29 _let_31))) _let_72 :args (_let_29 true _let_31)))) (let ((_let_88 (not _let_63))) (let ((_let_89 (and _let_88 _let_29 _let_25))) (let ((_let_90 (_let_88 _let_29 _let_25))) (let ((_let_91 (ASSUME :args (_let_88)))) (let ((_let_92 (APPLY_UF tptp.vtcheck))) (let ((_let_93 (ASSUME :args (_let_25)))) (let ((_let_94 (ASSUME :args (_let_29)))) (let ((_let_95 (REFL :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4)))) (let ((_let_96 (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_83)) :args ((or _let_82 _let_81 (not _let_83)))) (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (RESOLUTION (CNF_AND_NEG :args (_let_89)) (IMPLIES_ELIM (SCOPE (MODUS_PONENS (AND_INTRO _let_91 _let_94 _let_93) (SCOPE (FALSE_ELIM (TRANS (CONG _let_95 (SYMM _let_94) (SYMM _let_93) :args _let_92) (FALSE_INTRO _let_91))) :args _let_90)) :args _let_90)) :args (true _let_89)) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_88) _let_63))) (REFL :args (_let_30)) (REFL :args (_let_26)) (REFL :args (_let_86)) :args _let_52)) (MACRO_RESOLUTION_TRUST (CNF_OR_NEG :args (_let_65 2)) _let_70 :args (_let_88 true _let_65)) _let_87 (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_31 1)) (CONG _let_73 (MACRO_SR_PRED_INTRO :args ((= (not _let_26) _let_25))) :args _let_52)) :args ((or _let_25 _let_31))) _let_72 :args (_let_25 true _let_31)) :args (_let_86 true _let_63 false _let_29 false _let_25)) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_85 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_13 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_14 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_15 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_16 QUANTIFIERS_INST_E_MATCHING ((not (= (tptp.vtcheck VC (tptp.vabs Vx VS Ve) (tptp.varrow VS VT)) true))))) :args (_let_84))) _let_85 :args (_let_83 false _let_84)) :args (_let_82 true _let_81 false _let_83)))) (let ((_let_97 (and _let_18 _let_19 _let_20))) (let ((_let_98 (or _let_30 _let_97))) (let ((_let_99 (forall ((BOUND_VARIABLE_1765 $$unsorted) (BOUND_VARIABLE_1767 $$unsorted) (BOUND_VARIABLE_1769 $$unsorted) (BOUND_VARIABLE_1771 $$unsorted) (BOUND_VARIABLE_1773 $$unsorted) (BOUND_VARIABLE_1775 $$unsorted)) (or (not (= (tptp.vabs BOUND_VARIABLE_1765 BOUND_VARIABLE_1767 BOUND_VARIABLE_1769) (tptp.vabs BOUND_VARIABLE_1771 BOUND_VARIABLE_1773 BOUND_VARIABLE_1775))) (and (= BOUND_VARIABLE_1765 BOUND_VARIABLE_1771) (= BOUND_VARIABLE_1767 BOUND_VARIABLE_1773) (= BOUND_VARIABLE_1769 BOUND_VARIABLE_1775)))))) (let ((_let_100 (EQ_RESOLVE (ASSUME :args (_let_14)) (MACRO_SR_EQ_INTRO :args (_let_14 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_101 (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_98)) :args ((or _let_30 _let_97 (not _let_98)))) _let_87 (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_100 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_5 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6 tptp.veabs SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_13 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_15 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_14 QUANTIFIERS_INST_E_MATCHING ((tptp.vabs BOUND_VARIABLE_1765 BOUND_VARIABLE_1767 BOUND_VARIABLE_1769) (tptp.vabs BOUND_VARIABLE_1771 BOUND_VARIABLE_1773 BOUND_VARIABLE_1775)))) :args (_let_99))) _let_100 :args (_let_98 false _let_99)) :args (_let_97 false _let_29 false _let_98)))) (let ((_let_102 (not _let_97))) (let ((_let_103 (MACRO_RESOLUTION_TRUST (REORDERING (CNF_AND_POS :args (_let_97 0)) :args ((or _let_18 _let_102))) _let_101 :args (_let_18 false _let_97)))) (let ((_let_104 (MACRO_RESOLUTION_TRUST (REORDERING (CNF_AND_POS :args (_let_97 2)) :args ((or _let_20 _let_102))) _let_101 :args (_let_20 false _let_97)))) (let ((_let_105 (tptp.vsomeType SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_72))) (let ((_let_106 (tptp.vlookup SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 _let_15))) (let ((_let_107 (not _let_21))) (let ((_let_108 (or _let_107 (not (= _let_106 _let_105))))) (let ((_let_109 (forall ((VC $$unsorted) (VTy $$unsorted)) (let ((_let_1 (tptp.vbind SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4))) (or (not (= _let_1 (tptp.vbind SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 VTy VC))) (not (= (tptp.vsomeType VTy) (tptp.vlookup SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 _let_1)))))))) (let ((_let_110 (not _let_108))) (let ((_let_111 (= (tptp.vsomeType SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3) _let_106))) (let ((_let_112 (not _let_109))) (let ((_let_113 (forall ((VC $$unsorted) (Vy $$unsorted) (VTy $$unsorted)) (= (tptp.vsomeType VTy) (tptp.vlookup Vy (tptp.vbind Vy VTy VC)))))) (let ((_let_114 (EQ_RESOLVE (ASSUME :args (_let_8)) (MACRO_SR_EQ_INTRO :args (_let_8 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_115 (_let_109))) (let ((_let_116 (_let_112))) (let ((_let_117 (tptp.visFreeVar SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 tptp.veabs))) (let ((_let_118 (not _let_117))) (let ((_let_119 (or _let_22 _let_118 _let_64))) (let ((_let_120 (tptp.vtcheck _let_75 tptp.veabs SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_16))) (let ((_let_121 (tptp.vbind SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3 _let_75))) (let ((_let_122 (tptp.vtcheck _let_121 tptp.veabs SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_16))) (let ((_let_123 (not _let_122))) (let ((_let_124 (or _let_117 _let_123 _let_120))) (let ((_let_125 (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_13))) (let ((_let_126 (tptp.vtcheck _let_121 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_14 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_16))) (let ((_let_127 (or _let_125 _let_23 _let_126))) (let ((_let_128 (forall ((BOUND_VARIABLE_2030 $$unsorted) (BOUND_VARIABLE_2032 $$unsorted) (BOUND_VARIABLE_2034 $$unsorted) (BOUND_VARIABLE_2036 $$unsorted)) (or (= BOUND_VARIABLE_2032 BOUND_VARIABLE_2034) (not (tptp.visFreeVar BOUND_VARIABLE_2034 BOUND_VARIABLE_2036)) (tptp.visFreeVar BOUND_VARIABLE_2034 (tptp.vabs BOUND_VARIABLE_2032 BOUND_VARIABLE_2030 BOUND_VARIABLE_2036)))))) (let ((_let_129 (_let_128))) (let ((_let_130 (not _let_120))) (let ((_let_131 (not _let_20))) (let ((_let_132 (REFL :args (_let_131)))) (let ((_let_133 (and _let_82 _let_20))) (let ((_let_134 (_let_82 _let_20))) (let ((_let_135 (ASSUME :args (_let_82)))) (let ((_let_136 (REFL :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_16)))) (let ((_let_137 (ASSUME :args (_let_20)))) (let ((_let_138 (SYMM _let_137))) (let ((_let_139 (SYMM _let_138))) (let ((_let_140 (forall ((Vx $$unsorted) (VS $$unsorted) (VC $$unsorted) (VT $$unsorted)) (or (tptp.visFreeVar Vx tptp.veabs) (not (tptp.vtcheck (tptp.vbind Vx VS VC) tptp.veabs VT)) (tptp.vtcheck VC tptp.veabs VT))))) (let ((_let_141 (EQ_RESOLVE (ASSUME :args (_let_2)) (MACRO_SR_EQ_INTRO :args (_let_2 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_142 (not _let_18))) (let ((_let_143 (not _let_125))) (let ((_let_144 (REFL :args (_let_142)))) (let ((_let_145 (not _let_22))) (let ((_let_146 (and _let_145 _let_18))) (let ((_let_147 (_let_145 _let_18))) (let ((_let_148 (_let_145))) (let ((_let_149 (ASSUME :args _let_148))) (let ((_let_150 (ASSUME :args (_let_18)))) (let ((_let_151 (SYMM _let_150))) (let ((_let_152 (not _let_126))) (let ((_let_153 (and _let_20 _let_123))) (let ((_let_154 (ASSUME :args (_let_123)))) (let ((_let_155 (forall ((Vy $$unsorted) (VTy $$unsorted) (Vx $$unsorted) (VTx $$unsorted) (VC $$unsorted) (Ve $$unsorted) (VT $$unsorted)) (or (= Vy Vx) (not (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))))) (let ((_let_156 (EQ_RESOLVE (ASSUME :args (_let_6)) (MACRO_SR_EQ_INTRO :args (_let_6 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_157 (not _let_19))) (let ((_let_158 (ASSUME :args (_let_16)))) (let ((_let_159 (APPLY_UF tptp.vbind))) (let ((_let_160 (ASSUME :args (_let_21)))) (let ((_let_161 (ASSUME :args (_let_19)))) (let ((_let_162 (CONG (SYMM _let_151) (SYMM (SYMM _let_161)) (SYMM _let_160) :args _let_159))) (let ((_let_163 (ASSUME :args (_let_22)))) (let ((_let_164 (ASSUME :args (_let_77)))) (SCOPE (SCOPE (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (NOT_AND (MACRO_SR_PRED_TRANSFORM (SCOPE (AND_INTRO _let_158 _let_150 _let_161 _let_160 _let_137 _let_163 _let_164) :args (_let_22 _let_16 _let_18 _let_21 _let_19 _let_20 _let_77)) (SCOPE (MACRO_SR_PRED_ELIM (TRANS (SYMM (FALSE_INTRO _let_164)) (CONG (TRANS (CONG (REFL :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_13)) (REFL :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_15)) (CONG (TRANS _let_151 (SYMM _let_163)) (REFL :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3)) _let_95 :args _let_159) :args _let_159) (SYMM _let_162)) _let_138 _let_136 :args _let_92) (CONG _let_162 _let_139 _let_136 :args _let_92) (TRUE_INTRO _let_158))) :args (_let_16 _let_18 _let_19 _let_21 _let_20 _let_22 _let_77)) :args ((not (and _let_22 _let_16 _let_18 _let_21 _let_19 _let_20 _let_77)) SB_LITERAL))) (CONG (REFL :args _let_148) (REFL :args (_let_23)) _let_144 (REFL :args (_let_107)) (REFL :args (_let_157)) _let_132 (MACRO_SR_PRED_INTRO :args ((= (not _let_77) _let_17))) :args _let_52)) :args ((or _let_145 _let_23 _let_142 _let_107 _let_17 _let_157 _let_131))) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_127)) :args ((or _let_23 _let_125 _let_126 (not _let_127)))) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_156 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_13 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_15 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_14 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_16 QUANTIFIERS_INST_E_MATCHING ((not (= (tptp.vtcheck (tptp.vbind Vx VTx (tptp.vbind Vy VTy VC)) Ve VT) false))))) :args (_let_155))) _let_156 :args (_let_127 false _let_155)) _let_74 (REORDERING (EQ_RESOLVE (RESOLUTION (CNF_AND_NEG :args (_let_153)) (IMPLIES_ELIM (SCOPE (MODUS_PONENS (AND_INTRO _let_154 _let_137) (SCOPE (FALSE_ELIM (TRANS (CONG (REFL :args (_let_121)) _let_138 _let_136 :args _let_92) (FALSE_INTRO _let_154))) :args (_let_123 _let_20))) :args (_let_20 _let_123))) :args (true _let_153)) (CONG _let_132 (MACRO_SR_PRED_INTRO :args ((= (not _let_123) _let_122))) (REFL :args (_let_152)) :args _let_52)) :args ((or _let_152 _let_131 _let_122))) _let_104 (REORDERING (EQ_RESOLVE (RESOLUTION (CNF_AND_NEG :args (_let_146)) (IMPLIES_ELIM (SCOPE (MODUS_PONENS (AND_INTRO _let_149 _let_150) (SCOPE (FALSE_ELIM (TRANS (CONG (REFL :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2)) _let_151 :args (=)) (FALSE_INTRO _let_149))) :args _let_147)) :args _let_147)) :args (true _let_146)) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_145) _let_22))) _let_144 (REFL :args (_let_143)) :args _let_52)) :args ((or _let_22 _let_143 _let_142))) _let_103 (REORDERING (CNF_OR_POS :args (_let_124)) :args ((or _let_117 _let_123 _let_120 (not _let_124)))) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_141 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3 _let_75 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_16 QUANTIFIERS_INST_E_MATCHING ((not (= (tptp.vtcheck (tptp.vbind Vx VS VC) tptp.veabs VT) false))))) :args (_let_140))) _let_141 :args (_let_124 false _let_140)) (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (RESOLUTION (CNF_AND_NEG :args (_let_133)) (IMPLIES_ELIM (SCOPE (MODUS_PONENS (AND_INTRO _let_135 _let_137) (SCOPE (FALSE_ELIM (TRANS (CONG (REFL :args (_let_75)) _let_139 _let_136 :args _let_92) (FALSE_INTRO _let_135))) :args _let_134)) :args _let_134)) :args (true _let_133)) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_82) _let_76))) _let_132 (REFL :args (_let_130)) :args _let_52)) _let_96 _let_104 :args (_let_130 true _let_76 false _let_20)) (REORDERING (CNF_OR_POS :args (_let_119)) :args ((or _let_64 _let_118 _let_22 (not _let_119)))) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (MACRO_SR_PRED_ELIM (SCOPE (INSTANTIATE (ASSUME :args _let_129) :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_5 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 tptp.veabs QUANTIFIERS_INST_E_MATCHING ((not (= (tptp.visFreeVar BOUND_VARIABLE_2034 (tptp.vabs BOUND_VARIABLE_2032 BOUND_VARIABLE_2030 BOUND_VARIABLE_2036)) true))))) :args _let_129))) (AND_ELIM (EQ_RESOLVE (ASSUME :args (_let_11)) (MACRO_SR_EQ_INTRO :args (_let_11 SB_DEFAULT SBA_FIXPOINT))) :args (0)) :args (_let_119 false _let_128)) (MACRO_RESOLUTION_TRUST (CNF_OR_NEG :args (_let_65 0)) _let_70 :args ((not _let_64) true _let_65)) :args (_let_22 false _let_127 false _let_16 true _let_126 false _let_20 true _let_125 false _let_18 true _let_122 false _let_124 true _let_120 true _let_117 false _let_119 true _let_64)) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_108 0)) (CONG (REFL :args (_let_108)) (MACRO_SR_PRED_INTRO :args ((= (not _let_107) _let_21))) :args _let_52)) :args ((or _let_21 _let_108))) (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (IMPLIES_ELIM (EQ_RESOLVE (SCOPE (SKOLEMIZE (ASSUME :args _let_116)) :args _let_116) (REWRITE :args ((=> _let_112 (not (or _let_107 (not (= _let_105 _let_106))))))))) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_112) _let_109))) (REFL :args (_let_110)) :args _let_52)) (MACRO_RESOLUTION_TRUST (REORDERING (IMPLIES_ELIM (MACRO_SR_PRED_ELIM (SCOPE (INSTANTIATE (ASSUME :args _let_115) :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3 QUANTIFIERS_INST_E_MATCHING_SIMPLE ((tptp.vbind SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 VTy VC)))) :args _let_115))) :args ((or (not _let_111) _let_112))) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_114 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3 QUANTIFIERS_INST_E_MATCHING_SIMPLE ((tptp.vbind Vy VTy VC)))) :args (_let_113))) _let_114 :args (_let_111 false _let_113)) :args (_let_112 false _let_111)) :args (_let_110 true _let_109)) :args (_let_21 true _let_108)) _let_104 (MACRO_RESOLUTION_TRUST (REORDERING (CNF_AND_POS :args (_let_97 1)) :args ((or _let_19 _let_102))) _let_101 :args (_let_19 false _let_97)) _let_103 (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_78)) :args ((or _let_76 _let_77 (not _let_78)))) _let_96 (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_80 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_13 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_15 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_14 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_16 QUANTIFIERS_INST_E_MATCHING ((not (= (tptp.vtcheck (tptp.vbind Vx VTx (tptp.vbind Vx VTy VC)) Ve VT) false))))) :args (_let_79))) _let_80 :args (_let_78 false _let_79)) :args (_let_77 true _let_76 false _let_78)) _let_74 :args (false false _let_22 false _let_21 false _let_20 false _let_19 false _let_18 true _let_17 false _let_16)) :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))))) _let_14 (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_13 (forall ((VVar0 $$unsorted) (VExp0 $$unsorted) (VExp1 $$unsorted)) (not (= (tptp.vvar VVar0) (tptp.vapp VExp0 VExp1)))) _let_12 (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)))))) _let_11 (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_10 true) (=> true _let_10)) (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_9 true) (=> true _let_9)) (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)))) _let_8 (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))))))) _let_7 _let_6 (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_5 true) (=> true _let_5)) (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))) _let_4 (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_3 (forall ((Vx $$unsorted) (VS $$unsorted) (VC $$unsorted) (Ve $$unsorted) (VT $$unsorted)) (=> (and (= (tptp.vlookup Vx VC) tptp.vnoType) (tptp.vtcheck VC Ve VT)) (tptp.vtcheck (tptp.vbind Vx VS VC) Ve VT))) _let_2 _let_1 true)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
% 1.17/1.41  )
% 1.17/1.41  % SZS output end Proof for COM136+1
% 1.17/1.41  % cvc5---1.0.5 exiting
% 1.17/1.41  % cvc5---1.0.5 exiting
%------------------------------------------------------------------------------