%------------------------------------------------------------------------------ % File : Princess---230619 % Problem : COM222_1 : TPTP v9.3.0. Released v9.3.0. % Transfm : none % Format : tptp % Command : princess -inputFormat=tptp +threads -portfolio=casc +printProof -timeoutSec=%d %s % Computer : n027.cluster.edu % Model : x86_64 x86_64 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz % Memory : 8042.1875MB % OS : Linux 3.10.0-693.el7.x86_64 % CPULimit : 300s % WCLimit : 300s % DateTime : Tue May 5 06:21:36 PM UTC 2026 % Result : Theorem 16.34s 2.96s % Output : Proof 22.01s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.11 % Problem : COM222_1 : TPTP v9.3.0. Released v9.3.0. % 0.00/0.12 % Command : princess -inputFormat=tptp +threads -portfolio=casc +printProof -timeoutSec=%d %s % 0.15/0.33 % Computer : n027.cluster.edu % 0.15/0.33 % Model : x86_64 x86_64 % 0.15/0.33 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.15/0.33 % Memory : 8042.1875MB % 0.15/0.33 % OS : Linux 3.10.0-693.el7.x86_64 % 0.15/0.33 % CPULimit : 300 % 0.15/0.33 % WCLimit : 300 % 0.15/0.33 % DateTime : Mon May 4 19:04:04 EDT 2026 % 0.15/0.33 % CPUTime : % 0.51/0.59 ________ _____ % 0.51/0.59 ___ __ \_________(_)________________________________ % 0.51/0.59 __ /_/ /_ ___/_ /__ __ \ ___/ _ \_ ___/_ ___/ % 0.51/0.59 _ ____/_ / _ / _ / / / /__ / __/(__ )_(__ ) % 0.51/0.59 /_/ /_/ /_/ /_/ /_/\___/ \___//____/ /____/ % 0.51/0.59 % 0.51/0.59 A Theorem Prover for First-Order Logic modulo Linear Integer Arithmetic % 0.51/0.59 (2023-06-19) % 0.51/0.59 % 0.51/0.59 (c) Philipp Rümmer, 2009-2023 % 0.51/0.59 Contributors: Peter Backeman, Peter Baumgartner, Angelo Brillout, Zafer Esen, % 0.51/0.59 Amanda Stjerna. % 0.51/0.59 Free software under BSD-3-Clause. % 0.51/0.59 % 0.51/0.59 For more information, visit http://www.philipp.ruemmer.org/princess.shtml % 0.51/0.59 % 0.51/0.59 Loading /export/starexec/sandbox/benchmark/theBenchmark.p ... % 0.51/0.61 Running up to 7 provers in parallel. % 0.51/0.62 Prover 0: Options: +triggersInConjecture +genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1042961893 % 0.51/0.62 Prover 1: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1571432423 % 0.51/0.62 Prover 2: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMinimalAndEmpty -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1065072994 % 0.51/0.62 Prover 3: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1922548996 % 0.51/0.62 Prover 5: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMaximal -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=complete -randomSeed=1259561288 % 0.51/0.62 Prover 4: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=1868514696 % 0.51/0.62 Prover 6: Options: -triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximalOutermost -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1399714365 % 4.99/1.46 Prover 4: Preprocessing ... % 4.99/1.46 Prover 1: Preprocessing ... % 4.99/1.49 Prover 2: Preprocessing ... % 4.99/1.49 Prover 0: Preprocessing ... % 4.99/1.49 Prover 5: Preprocessing ... % 4.99/1.49 Prover 3: Preprocessing ... % 5.76/1.51 Prover 6: Preprocessing ... % 12.50/2.46 Prover 1: Warning: ignoring some quantifiers % 12.50/2.47 Prover 3: Warning: ignoring some quantifiers % 13.27/2.50 Prover 3: Constructing countermodel ... % 13.27/2.51 Prover 6: Proving ... % 13.27/2.52 Prover 1: Constructing countermodel ... % 14.80/2.71 Prover 5: Proving ... % 14.80/2.77 Prover 4: Warning: ignoring some quantifiers % 15.59/2.81 Prover 0: Proving ... % 15.59/2.82 Prover 4: Constructing countermodel ... % 16.34/2.96 Prover 3: proved (2345ms) % 16.34/2.96 % 16.34/2.96 % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p % 16.34/2.96 % 16.34/2.96 Prover 7: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-236303470 % 16.34/2.97 Prover 6: stopped % 16.34/2.97 Prover 0: stopped % 16.34/2.97 Prover 5: stopped % 16.34/2.99 Prover 8: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-200781089 % 16.34/2.99 Prover 10: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=919308125 % 16.34/2.99 Prover 11: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1509710984 % 17.23/3.06 Prover 2: Proving ... % 17.23/3.07 Prover 2: stopped % 17.23/3.08 Prover 13: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=complete -randomSeed=1138197443 % 17.23/3.11 Prover 7: Preprocessing ... % 18.04/3.15 Prover 8: Preprocessing ... % 18.60/3.27 Prover 10: Preprocessing ... % 18.60/3.27 Prover 11: Preprocessing ... % 19.39/3.33 Prover 13: Preprocessing ... % 20.17/3.41 Prover 1: Found proof (size 68) % 20.17/3.41 Prover 1: proved (2794ms) % 20.17/3.41 Prover 11: stopped % 20.17/3.41 Prover 4: stopped % 20.17/3.44 Prover 13: stopped % 20.89/3.53 Prover 8: Warning: ignoring some quantifiers % 20.89/3.55 Prover 8: Constructing countermodel ... % 20.89/3.56 Prover 7: Warning: ignoring some quantifiers % 20.89/3.57 Prover 8: stopped % 20.89/3.58 Prover 7: Constructing countermodel ... % 21.53/3.60 Prover 10: Warning: ignoring some quantifiers % 21.53/3.60 Prover 7: stopped % 21.53/3.61 Prover 10: Constructing countermodel ... % 21.53/3.63 Prover 10: stopped % 21.53/3.63 % 21.53/3.63 % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p % 21.53/3.63 % 21.53/3.64 % SZS output start Proof for theBenchmark % 21.53/3.65 Assumptions after simplification: % 21.53/3.65 --------------------------------- % 21.53/3.65 % 21.53/3.65 (Preservation-Plus-IH0) % 21.53/3.67 vTerm(vt1) & ? [v0: vOptTerm] : (vreduce(vt1) = v0 & vOptTerm(v0) & ! [v1: % 21.53/3.67 vTy] : ! [v2: vTerm] : ( ~ (vptchecksimple(vt1, v1) = 0) | ~ % 21.53/3.67 (vsomeTerm(v2) = v0) | ~ vTy(v1) | ~ vTerm(v2) | vptchecksimple(v2, v1) % 21.53/3.67 = 0)) % 21.53/3.67 % 21.53/3.67 (Preservation-Plus-isNV-False-isSomeTerm-False) % 21.53/3.68 vTerm(vt1) & vTerm(vt2) & ? [v0: vOptTerm] : ? [v1: any] : ? [v2: any] : ? % 21.53/3.68 [v3: vTerm] : ? [v4: vOptTerm] : (vreduce(v3) = v4 & vreduce(vt1) = v0 & % 21.53/3.68 visSomeTerm(v0) = v1 & visNV(vt1) = v2 & vPlus(vt1, vt2) = v3 & vOptTerm(v4) % 21.53/3.68 & vOptTerm(v0) & vTerm(v3) & ? [v5: vTy] : ? [v6: vTerm] : ? [v7: int] : % 21.53/3.68 ( ~ (v7 = 0) & ~ (v2 = 0) & ~ (v1 = 0) & vptchecksimple(v6, v5) = v7 & % 21.53/3.68 vptchecksimple(v3, v5) = 0 & vsomeTerm(v6) = v4 & vTy(v5) & vTerm(v6))) % 21.53/3.68 % 21.53/3.68 (isNV-1) % 21.53/3.68 ! [v0: vTerm] : ! [v1: int] : (v1 = 0 | ~ (visNV(v0) = v1) | ~ vTerm(v0) | % 21.53/3.68 ? [v2: vTerm] : ? [v3: int] : ( ~ (v3 = 0) & visNV(v2) = v3 & vSucc(v0) = % 21.53/3.68 v2 & vTerm(v2))) & ! [v0: vTerm] : ( ~ (visNV(v0) = 0) | ~ vTerm(v0) | % 21.53/3.68 ? [v1: vTerm] : (visNV(v1) = 0 & vSucc(v0) = v1 & vTerm(v1))) % 21.53/3.68 % 21.53/3.68 (isSomeTerm-0) % 21.53/3.68 vOptTerm(vnoTerm) & ? [v0: int] : ( ~ (v0 = 0) & visSomeTerm(vnoTerm) = v0) % 21.53/3.68 % 21.53/3.68 (isSomeTerm-1) % 21.53/3.68 ! [v0: vTerm] : ! [v1: vOptTerm] : ( ~ (vsomeTerm(v0) = v1) | ~ vTerm(v0) | % 21.53/3.68 visSomeTerm(v1) = 0) % 21.53/3.68 % 21.53/3.68 (isSomeTerm-false-INV) % 21.53/3.68 vOptTerm(vnoTerm) & ! [v0: vOptTerm] : ! [v1: int] : (v1 = 0 | v0 = vnoTerm % 21.53/3.68 | ~ (visSomeTerm(v0) = v1) | ~ vOptTerm(v0)) % 21.53/3.68 % 21.53/3.68 (reduce-20) % 21.53/3.68 vOptTerm(vnoTerm) & ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: vTerm] : ( ~ % 21.53/3.68 (vPlus(v0, v1) = v2) | ~ vTerm(v1) | ~ vTerm(v0) | ? [v3: any] : ? [v4: % 21.53/3.68 any] : ? [v5: vOptTerm] : ? [v6: any] : ? [v7: vOptTerm] : (vreduce(v2) % 21.53/3.68 = v7 & vreduce(v1) = v5 & visSomeTerm(v5) = v6 & visNV(v1) = v4 & % 21.53/3.68 visNV(v0) = v3 & vOptTerm(v7) & vOptTerm(v5) & ( ~ (v3 = 0) | v7 = vnoTerm % 21.53/3.68 | v6 = 0 | v4 = 0))) % 21.53/3.68 % 21.53/3.68 (reduce-22) % 21.53/3.68 vOptTerm(vnoTerm) & ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: vTerm] : ( ~ % 21.53/3.68 (vPlus(v0, v1) = v2) | ~ vTerm(v1) | ~ vTerm(v0) | ? [v3: any] : ? [v4: % 21.53/3.68 vOptTerm] : ? [v5: any] : ? [v6: vOptTerm] : (vreduce(v2) = v6 & % 21.53/3.68 vreduce(v0) = v4 & visSomeTerm(v4) = v5 & visNV(v0) = v3 & vOptTerm(v6) & % 21.53/3.68 vOptTerm(v4) & (v6 = vnoTerm | v5 = 0 | v3 = 0))) % 21.53/3.68 % 21.53/3.68 (function-axioms) % 21.53/3.69 ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: vTerm] : ! [v3: vTerm] : ! [v4: % 21.53/3.69 vTerm] : (v1 = v0 | ~ (vIfelse(v4, v3, v2) = v1) | ~ (vIfelse(v4, v3, v2) % 21.53/3.69 = v0)) & ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 21.53/3.69 vTy] : ! [v3: vTerm] : (v1 = v0 | ~ (vptchecksimple(v3, v2) = v1) | ~ % 21.53/3.69 (vptchecksimple(v3, v2) = v0)) & ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: % 21.53/3.69 vTerm] : ! [v3: vTerm] : (v1 = v0 | ~ (vplusop(v3, v2) = v1) | ~ % 21.53/3.69 (vplusop(v3, v2) = v0)) & ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: vTerm] : % 21.53/3.69 ! [v3: vTerm] : (v1 = v0 | ~ (vPlus(v3, v2) = v1) | ~ (vPlus(v3, v2) = v0)) % 21.53/3.69 & ! [v0: vOptTerm] : ! [v1: vOptTerm] : ! [v2: vTerm] : (v1 = v0 | ~ % 21.53/3.69 (vreduce(v2) = v1) | ~ (vreduce(v2) = v0)) & ! [v0: MultipleValueBool] : % 21.53/3.69 ! [v1: MultipleValueBool] : ! [v2: vOptTerm] : (v1 = v0 | ~ (visSomeTerm(v2) % 21.53/3.69 = v1) | ~ (visSomeTerm(v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 21.53/3.69 MultipleValueBool] : ! [v2: vTerm] : (v1 = v0 | ~ (visValue(v2) = v1) | ~ % 21.53/3.69 (visValue(v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 21.53/3.69 MultipleValueBool] : ! [v2: vTerm] : (v1 = v0 | ~ (visNV(v2) = v1) | ~ % 21.53/3.69 (visNV(v2) = v0)) & ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: vOptTerm] : % 21.53/3.69 (v1 = v0 | ~ (vgetTerm(v2) = v1) | ~ (vgetTerm(v2) = v0)) & ! [v0: % 21.53/3.69 vOptTerm] : ! [v1: vOptTerm] : ! [v2: vTerm] : (v1 = v0 | ~ % 21.53/3.69 (vsomeTerm(v2) = v1) | ~ (vsomeTerm(v2) = v0)) & ! [v0: vTerm] : ! [v1: % 21.53/3.69 vTerm] : ! [v2: vTerm] : (v1 = v0 | ~ (vIszero(v2) = v1) | ~ (vIszero(v2) % 21.53/3.69 = v0)) & ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: vTerm] : (v1 = v0 | ~ % 21.53/3.69 (vPred(v2) = v1) | ~ (vPred(v2) = v0)) & ! [v0: vTerm] : ! [v1: vTerm] : % 21.53/3.69 ! [v2: vTerm] : (v1 = v0 | ~ (vSucc(v2) = v1) | ~ (vSucc(v2) = v0)) % 21.53/3.69 % 21.53/3.69 Further assumptions not needed in the proof: % 21.53/3.69 -------------------------------------------- % 21.53/3.69 DIFF-B-Nat, DIFF-False-Ifelse, DIFF-False-Iszero, DIFF-False-Plus, % 21.53/3.69 DIFF-False-Pred, DIFF-False-Succ, DIFF-False-Zero, DIFF-Ifelse-Iszero, % 21.53/3.69 DIFF-Ifelse-Plus, DIFF-Ifelse-Pred, DIFF-Ifelse-Succ, DIFF-Ifelse-Zero, % 21.53/3.69 DIFF-Iszero-Plus, DIFF-Pred-Iszero, DIFF-Pred-Plus, DIFF-Succ-Iszero, % 21.53/3.69 DIFF-Succ-Plus, DIFF-Succ-Pred, DIFF-True-False, DIFF-True-Ifelse, % 21.53/3.69 DIFF-True-Iszero, DIFF-True-Plus, DIFF-True-Pred, DIFF-True-Succ, % 21.53/3.69 DIFF-True-Zero, DIFF-Zero-Iszero, DIFF-Zero-Plus, DIFF-Zero-Pred, % 21.53/3.69 DIFF-Zero-Succ, DIFF-noTerm-someTerm, EQ-Ifelse, EQ-Iszero, EQ-Plus, EQ-Pred, % 21.53/3.69 EQ-Succ, EQ-someTerm, Preservation-Plus-IH1, TPlus, TPlus_inv0, TPlus_inv1, % 21.53/3.69 TPlus_inv2, TPred, TPred_inv1, TPred_inv2, TSucc, TSucc_inv1, TSucc_inv2, TZero, % 21.53/3.69 TZero_inv, Tfalse, Tif, Tif_inv1, Tif_inv2, Tif_inv3, Tiszero, Tiszero_inv1, % 21.53/3.69 Tiszero_inv2, Ttrue, dom-OptTerm, dom-Term, dom-Ty, getTerm-0, isNV-0, isNV-2, % 21.53/3.69 isNV-false-INV, isNV-true-INV, isNVisNat, isSomeTerm-true-INV, isValue-0, % 21.53/3.69 isValue-1, isValue-2, isValue-false-INV, isValue-true-INV, plusop-0, plusop-1, % 21.53/3.69 plusop-2, plusop-INV, reduce-0, reduce-1, reduce-10, reduce-11, reduce-12, % 21.53/3.69 reduce-13, reduce-14, reduce-15, reduce-16, reduce-17, reduce-18, reduce-19, % 21.53/3.69 reduce-2, reduce-21, reduce-23, reduce-3, reduce-4, reduce-5, reduce-6, % 21.53/3.69 reduce-7, reduce-8, reduce-9, reduce-INV % 21.53/3.69 % 21.53/3.69 Those formulas are unsatisfiable: % 21.53/3.69 --------------------------------- % 21.53/3.69 % 21.53/3.69 Begin of proof % 21.53/3.69 | % 21.53/3.69 | ALPHA: (isNV-1) implies: % 21.53/3.69 | (1) ! [v0: vTerm] : ! [v1: int] : (v1 = 0 | ~ (visNV(v0) = v1) | ~ % 21.53/3.69 | vTerm(v0) | ? [v2: vTerm] : ? [v3: int] : ( ~ (v3 = 0) & visNV(v2) % 21.53/3.69 | = v3 & vSucc(v0) = v2 & vTerm(v2))) % 21.53/3.69 | % 21.53/3.69 | ALPHA: (isSomeTerm-0) implies: % 21.53/3.69 | (2) ? [v0: int] : ( ~ (v0 = 0) & visSomeTerm(vnoTerm) = v0) % 21.53/3.69 | % 21.53/3.69 | ALPHA: (isSomeTerm-false-INV) implies: % 21.53/3.69 | (3) ! [v0: vOptTerm] : ! [v1: int] : (v1 = 0 | v0 = vnoTerm | ~ % 21.53/3.69 | (visSomeTerm(v0) = v1) | ~ vOptTerm(v0)) % 21.53/3.69 | % 21.53/3.69 | ALPHA: (reduce-20) implies: % 21.53/3.69 | (4) ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: vTerm] : ( ~ (vPlus(v0, v1) = % 21.53/3.69 | v2) | ~ vTerm(v1) | ~ vTerm(v0) | ? [v3: any] : ? [v4: any] : % 21.53/3.69 | ? [v5: vOptTerm] : ? [v6: any] : ? [v7: vOptTerm] : (vreduce(v2) = % 21.53/3.69 | v7 & vreduce(v1) = v5 & visSomeTerm(v5) = v6 & visNV(v1) = v4 & % 21.53/3.69 | visNV(v0) = v3 & vOptTerm(v7) & vOptTerm(v5) & ( ~ (v3 = 0) | v7 = % 21.53/3.69 | vnoTerm | v6 = 0 | v4 = 0))) % 21.53/3.69 | % 21.53/3.69 | ALPHA: (reduce-22) implies: % 21.53/3.69 | (5) ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: vTerm] : ( ~ (vPlus(v0, v1) = % 21.53/3.69 | v2) | ~ vTerm(v1) | ~ vTerm(v0) | ? [v3: any] : ? [v4: % 21.53/3.69 | vOptTerm] : ? [v5: any] : ? [v6: vOptTerm] : (vreduce(v2) = v6 & % 21.53/3.69 | vreduce(v0) = v4 & visSomeTerm(v4) = v5 & visNV(v0) = v3 & % 21.53/3.69 | vOptTerm(v6) & vOptTerm(v4) & (v6 = vnoTerm | v5 = 0 | v3 = 0))) % 21.53/3.69 | % 21.53/3.69 | ALPHA: (Preservation-Plus-IH0) implies: % 21.53/3.70 | (6) ? [v0: vOptTerm] : (vreduce(vt1) = v0 & vOptTerm(v0) & ! [v1: vTy] : % 21.53/3.70 | ! [v2: vTerm] : ( ~ (vptchecksimple(vt1, v1) = 0) | ~ (vsomeTerm(v2) % 21.53/3.70 | = v0) | ~ vTy(v1) | ~ vTerm(v2) | vptchecksimple(v2, v1) = 0)) % 21.53/3.70 | % 21.53/3.70 | ALPHA: (Preservation-Plus-isNV-False-isSomeTerm-False) implies: % 22.01/3.70 | (7) vTerm(vt2) % 22.01/3.70 | (8) vTerm(vt1) % 22.01/3.70 | (9) ? [v0: vOptTerm] : ? [v1: any] : ? [v2: any] : ? [v3: vTerm] : ? % 22.01/3.70 | [v4: vOptTerm] : (vreduce(v3) = v4 & vreduce(vt1) = v0 & % 22.01/3.70 | visSomeTerm(v0) = v1 & visNV(vt1) = v2 & vPlus(vt1, vt2) = v3 & % 22.01/3.70 | vOptTerm(v4) & vOptTerm(v0) & vTerm(v3) & ? [v5: vTy] : ? [v6: % 22.01/3.70 | vTerm] : ? [v7: int] : ( ~ (v7 = 0) & ~ (v2 = 0) & ~ (v1 = 0) & % 22.01/3.70 | vptchecksimple(v6, v5) = v7 & vptchecksimple(v3, v5) = 0 & % 22.01/3.70 | vsomeTerm(v6) = v4 & vTy(v5) & vTerm(v6))) % 22.01/3.70 | % 22.01/3.70 | ALPHA: (function-axioms) implies: % 22.01/3.70 | (10) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 22.01/3.70 | vTerm] : (v1 = v0 | ~ (visNV(v2) = v1) | ~ (visNV(v2) = v0)) % 22.01/3.70 | (11) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 22.01/3.70 | vOptTerm] : (v1 = v0 | ~ (visSomeTerm(v2) = v1) | ~ % 22.01/3.70 | (visSomeTerm(v2) = v0)) % 22.01/3.70 | (12) ! [v0: vOptTerm] : ! [v1: vOptTerm] : ! [v2: vTerm] : (v1 = v0 | ~ % 22.01/3.70 | (vreduce(v2) = v1) | ~ (vreduce(v2) = v0)) % 22.01/3.70 | % 22.01/3.70 | DELTA: instantiating (2) with fresh symbol all_96_0 gives: % 22.01/3.70 | (13) ~ (all_96_0 = 0) & visSomeTerm(vnoTerm) = all_96_0 % 22.01/3.70 | % 22.01/3.70 | ALPHA: (13) implies: % 22.01/3.70 | (14) visSomeTerm(vnoTerm) = all_96_0 % 22.01/3.70 | % 22.01/3.70 | DELTA: instantiating (6) with fresh symbol all_107_0 gives: % 22.01/3.70 | (15) vreduce(vt1) = all_107_0 & vOptTerm(all_107_0) & ! [v0: vTy] : ! % 22.01/3.70 | [v1: vTerm] : ( ~ (vptchecksimple(vt1, v0) = 0) | ~ (vsomeTerm(v1) = % 22.01/3.70 | all_107_0) | ~ vTy(v0) | ~ vTerm(v1) | vptchecksimple(v1, v0) = % 22.01/3.70 | 0) % 22.01/3.70 | % 22.01/3.70 | ALPHA: (15) implies: % 22.01/3.70 | (16) vreduce(vt1) = all_107_0 % 22.01/3.70 | % 22.01/3.70 | DELTA: instantiating (9) with fresh symbols all_113_0, all_113_1, all_113_2, % 22.01/3.70 | all_113_3, all_113_4 gives: % 22.01/3.70 | (17) vreduce(all_113_1) = all_113_0 & vreduce(vt1) = all_113_4 & % 22.01/3.70 | visSomeTerm(all_113_4) = all_113_3 & visNV(vt1) = all_113_2 & % 22.01/3.70 | vPlus(vt1, vt2) = all_113_1 & vOptTerm(all_113_0) & % 22.01/3.70 | vOptTerm(all_113_4) & vTerm(all_113_1) & ? [v0: vTy] : ? [v1: vTerm] % 22.01/3.70 | : ? [v2: int] : ( ~ (v2 = 0) & ~ (all_113_2 = 0) & ~ (all_113_3 = % 22.01/3.70 | 0) & vptchecksimple(v1, v0) = v2 & vptchecksimple(all_113_1, v0) = % 22.01/3.70 | 0 & vsomeTerm(v1) = all_113_0 & vTy(v0) & vTerm(v1)) % 22.01/3.70 | % 22.01/3.70 | ALPHA: (17) implies: % 22.01/3.70 | (18) vOptTerm(all_113_4) % 22.01/3.70 | (19) vPlus(vt1, vt2) = all_113_1 % 22.01/3.70 | (20) visNV(vt1) = all_113_2 % 22.01/3.70 | (21) visSomeTerm(all_113_4) = all_113_3 % 22.01/3.70 | (22) vreduce(vt1) = all_113_4 % 22.01/3.70 | (23) vreduce(all_113_1) = all_113_0 % 22.01/3.70 | (24) ? [v0: vTy] : ? [v1: vTerm] : ? [v2: int] : ( ~ (v2 = 0) & ~ % 22.01/3.70 | (all_113_2 = 0) & ~ (all_113_3 = 0) & vptchecksimple(v1, v0) = v2 & % 22.01/3.70 | vptchecksimple(all_113_1, v0) = 0 & vsomeTerm(v1) = all_113_0 & % 22.01/3.70 | vTy(v0) & vTerm(v1)) % 22.01/3.70 | % 22.01/3.70 | DELTA: instantiating (24) with fresh symbols all_119_0, all_119_1, all_119_2 % 22.01/3.70 | gives: % 22.01/3.71 | (25) ~ (all_119_0 = 0) & ~ (all_113_2 = 0) & ~ (all_113_3 = 0) & % 22.01/3.71 | vptchecksimple(all_119_1, all_119_2) = all_119_0 & % 22.01/3.71 | vptchecksimple(all_113_1, all_119_2) = 0 & vsomeTerm(all_119_1) = % 22.01/3.71 | all_113_0 & vTy(all_119_2) & vTerm(all_119_1) % 22.01/3.71 | % 22.01/3.71 | ALPHA: (25) implies: % 22.01/3.71 | (26) ~ (all_113_3 = 0) % 22.01/3.71 | (27) ~ (all_113_2 = 0) % 22.01/3.71 | (28) vTerm(all_119_1) % 22.01/3.71 | (29) vsomeTerm(all_119_1) = all_113_0 % 22.01/3.71 | % 22.01/3.71 | GROUND_INST: instantiating (12) with all_107_0, all_113_4, vt1, simplifying % 22.01/3.71 | with (16), (22) gives: % 22.01/3.71 | (30) all_113_4 = all_107_0 % 22.01/3.71 | % 22.01/3.71 | REDUCE: (21), (30) imply: % 22.01/3.71 | (31) visSomeTerm(all_107_0) = all_113_3 % 22.01/3.71 | % 22.01/3.71 | REDUCE: (18), (30) imply: % 22.01/3.71 | (32) vOptTerm(all_107_0) % 22.01/3.71 | % 22.01/3.71 | GROUND_INST: instantiating (4) with vt1, vt2, all_113_1, simplifying with (7), % 22.01/3.71 | (8), (19) gives: % 22.01/3.71 | (33) ? [v0: any] : ? [v1: any] : ? [v2: vOptTerm] : ? [v3: any] : ? % 22.01/3.71 | [v4: vOptTerm] : (vreduce(all_113_1) = v4 & vreduce(vt2) = v2 & % 22.01/3.71 | visSomeTerm(v2) = v3 & visNV(vt1) = v0 & visNV(vt2) = v1 & % 22.01/3.71 | vOptTerm(v4) & vOptTerm(v2) & ( ~ (v0 = 0) | v4 = vnoTerm | v3 = 0 | % 22.01/3.71 | v1 = 0)) % 22.01/3.71 | % 22.01/3.71 | GROUND_INST: instantiating (5) with vt1, vt2, all_113_1, simplifying with (7), % 22.01/3.71 | (8), (19) gives: % 22.01/3.71 | (34) ? [v0: any] : ? [v1: vOptTerm] : ? [v2: any] : ? [v3: vOptTerm] : % 22.01/3.71 | (vreduce(all_113_1) = v3 & vreduce(vt1) = v1 & visSomeTerm(v1) = v2 & % 22.01/3.71 | visNV(vt1) = v0 & vOptTerm(v3) & vOptTerm(v1) & (v3 = vnoTerm | v2 = % 22.01/3.71 | 0 | v0 = 0)) % 22.01/3.71 | % 22.01/3.71 | GROUND_INST: instantiating (isSomeTerm-1) with all_119_1, all_113_0, % 22.01/3.71 | simplifying with (28), (29) gives: % 22.01/3.71 | (35) visSomeTerm(all_113_0) = 0 % 22.01/3.71 | % 22.01/3.71 | GROUND_INST: instantiating (1) with vt1, all_113_2, simplifying with (8), (20) % 22.01/3.71 | gives: % 22.01/3.71 | (36) all_113_2 = 0 | ? [v0: vTerm] : ? [v1: int] : ( ~ (v1 = 0) & % 22.01/3.71 | visNV(v0) = v1 & vSucc(vt1) = v0 & vTerm(v0)) % 22.01/3.71 | % 22.01/3.71 | GROUND_INST: instantiating (3) with all_107_0, all_113_3, simplifying with % 22.01/3.71 | (31), (32) gives: % 22.01/3.71 | (37) all_113_3 = 0 | all_107_0 = vnoTerm % 22.01/3.71 | % 22.01/3.71 | DELTA: instantiating (34) with fresh symbols all_182_0, all_182_1, all_182_2, % 22.01/3.71 | all_182_3 gives: % 22.01/3.71 | (38) vreduce(all_113_1) = all_182_0 & vreduce(vt1) = all_182_2 & % 22.01/3.71 | visSomeTerm(all_182_2) = all_182_1 & visNV(vt1) = all_182_3 & % 22.01/3.71 | vOptTerm(all_182_0) & vOptTerm(all_182_2) & (all_182_0 = vnoTerm | % 22.01/3.71 | all_182_1 = 0 | all_182_3 = 0) % 22.01/3.71 | % 22.01/3.71 | ALPHA: (38) implies: % 22.01/3.71 | (39) visNV(vt1) = all_182_3 % 22.01/3.71 | (40) visSomeTerm(all_182_2) = all_182_1 % 22.01/3.71 | (41) vreduce(vt1) = all_182_2 % 22.01/3.71 | (42) vreduce(all_113_1) = all_182_0 % 22.01/3.71 | (43) all_182_0 = vnoTerm | all_182_1 = 0 | all_182_3 = 0 % 22.01/3.71 | % 22.01/3.71 | DELTA: instantiating (33) with fresh symbols all_184_0, all_184_1, all_184_2, % 22.01/3.71 | all_184_3, all_184_4 gives: % 22.01/3.71 | (44) vreduce(all_113_1) = all_184_0 & vreduce(vt2) = all_184_2 & % 22.01/3.71 | visSomeTerm(all_184_2) = all_184_1 & visNV(vt1) = all_184_4 & % 22.01/3.71 | visNV(vt2) = all_184_3 & vOptTerm(all_184_0) & vOptTerm(all_184_2) & ( % 22.01/3.71 | ~ (all_184_4 = 0) | all_184_0 = vnoTerm | all_184_1 = 0 | all_184_3 % 22.01/3.71 | = 0) % 22.01/3.71 | % 22.01/3.71 | ALPHA: (44) implies: % 22.01/3.71 | (45) visNV(vt1) = all_184_4 % 22.01/3.71 | (46) vreduce(all_113_1) = all_184_0 % 22.01/3.71 | % 22.01/3.71 | BETA: splitting (37) gives: % 22.01/3.71 | % 22.01/3.71 | Case 1: % 22.01/3.71 | | % 22.01/3.71 | | (47) all_107_0 = vnoTerm % 22.01/3.71 | | % 22.01/3.72 | | REDUCE: (16), (47) imply: % 22.01/3.72 | | (48) vreduce(vt1) = vnoTerm % 22.01/3.72 | | % 22.01/3.72 | | REDUCE: (31), (47) imply: % 22.01/3.72 | | (49) visSomeTerm(vnoTerm) = all_113_3 % 22.01/3.72 | | % 22.01/3.72 | | BETA: splitting (36) gives: % 22.01/3.72 | | % 22.01/3.72 | | Case 1: % 22.01/3.72 | | | % 22.01/3.72 | | | (50) all_113_2 = 0 % 22.01/3.72 | | | % 22.01/3.72 | | | REDUCE: (27), (50) imply: % 22.01/3.72 | | | (51) $false % 22.01/3.72 | | | % 22.01/3.72 | | | CLOSE: (51) is inconsistent. % 22.01/3.72 | | | % 22.01/3.72 | | Case 2: % 22.01/3.72 | | | % 22.01/3.72 | | | % 22.01/3.72 | | | GROUND_INST: instantiating (10) with all_113_2, all_184_4, vt1, % 22.01/3.72 | | | simplifying with (20), (45) gives: % 22.01/3.72 | | | (52) all_184_4 = all_113_2 % 22.01/3.72 | | | % 22.01/3.72 | | | GROUND_INST: instantiating (10) with all_182_3, all_184_4, vt1, % 22.01/3.72 | | | simplifying with (39), (45) gives: % 22.01/3.72 | | | (53) all_184_4 = all_182_3 % 22.01/3.72 | | | % 22.01/3.72 | | | GROUND_INST: instantiating (11) with all_96_0, all_113_3, vnoTerm, % 22.01/3.72 | | | simplifying with (14), (49) gives: % 22.01/3.72 | | | (54) all_113_3 = all_96_0 % 22.01/3.72 | | | % 22.01/3.72 | | | GROUND_INST: instantiating (12) with vnoTerm, all_182_2, vt1, simplifying % 22.01/3.72 | | | with (41), (48) gives: % 22.01/3.72 | | | (55) all_182_2 = vnoTerm % 22.01/3.72 | | | % 22.01/3.72 | | | GROUND_INST: instantiating (12) with all_113_0, all_184_0, all_113_1, % 22.01/3.72 | | | simplifying with (23), (46) gives: % 22.01/3.72 | | | (56) all_184_0 = all_113_0 % 22.01/3.72 | | | % 22.01/3.72 | | | GROUND_INST: instantiating (12) with all_182_0, all_184_0, all_113_1, % 22.01/3.72 | | | simplifying with (42), (46) gives: % 22.01/3.72 | | | (57) all_184_0 = all_182_0 % 22.01/3.72 | | | % 22.01/3.72 | | | COMBINE_EQS: (56), (57) imply: % 22.01/3.72 | | | (58) all_182_0 = all_113_0 % 22.01/3.72 | | | % 22.01/3.72 | | | COMBINE_EQS: (52), (53) imply: % 22.01/3.72 | | | (59) all_182_3 = all_113_2 % 22.01/3.72 | | | % 22.01/3.72 | | | SIMP: (59) implies: % 22.01/3.72 | | | (60) all_182_3 = all_113_2 % 22.01/3.72 | | | % 22.01/3.72 | | | REDUCE: (26), (54) imply: % 22.01/3.72 | | | (61) ~ (all_96_0 = 0) % 22.01/3.72 | | | % 22.01/3.72 | | | REDUCE: (40), (55) imply: % 22.01/3.72 | | | (62) visSomeTerm(vnoTerm) = all_182_1 % 22.01/3.72 | | | % 22.01/3.72 | | | GROUND_INST: instantiating (11) with all_96_0, all_182_1, vnoTerm, % 22.01/3.72 | | | simplifying with (14), (62) gives: % 22.01/3.72 | | | (63) all_182_1 = all_96_0 % 22.01/3.72 | | | % 22.01/3.72 | | | BETA: splitting (43) gives: % 22.01/3.72 | | | % 22.01/3.72 | | | Case 1: % 22.01/3.72 | | | | % 22.01/3.72 | | | | (64) all_182_0 = vnoTerm % 22.01/3.72 | | | | % 22.01/3.72 | | | | COMBINE_EQS: (58), (64) imply: % 22.01/3.72 | | | | (65) all_113_0 = vnoTerm % 22.01/3.72 | | | | % 22.01/3.72 | | | | SIMP: (65) implies: % 22.01/3.72 | | | | (66) all_113_0 = vnoTerm % 22.01/3.72 | | | | % 22.01/3.72 | | | | REDUCE: (35), (66) imply: % 22.01/3.72 | | | | (67) visSomeTerm(vnoTerm) = 0 % 22.01/3.72 | | | | % 22.01/3.72 | | | | GROUND_INST: instantiating (11) with all_96_0, 0, vnoTerm, simplifying % 22.01/3.72 | | | | with (14), (67) gives: % 22.01/3.72 | | | | (68) all_96_0 = 0 % 22.01/3.72 | | | | % 22.01/3.72 | | | | REDUCE: (61), (68) imply: % 22.01/3.72 | | | | (69) $false % 22.01/3.72 | | | | % 22.01/3.72 | | | | CLOSE: (69) is inconsistent. % 22.01/3.72 | | | | % 22.01/3.72 | | | Case 2: % 22.01/3.72 | | | | % 22.01/3.72 | | | | (70) all_182_1 = 0 | all_182_3 = 0 % 22.01/3.72 | | | | % 22.01/3.72 | | | | BETA: splitting (70) gives: % 22.01/3.72 | | | | % 22.01/3.72 | | | | Case 1: % 22.01/3.72 | | | | | % 22.01/3.72 | | | | | (71) all_182_1 = 0 % 22.01/3.72 | | | | | % 22.01/3.72 | | | | | COMBINE_EQS: (63), (71) imply: % 22.01/3.72 | | | | | (72) all_96_0 = 0 % 22.01/3.72 | | | | | % 22.01/3.72 | | | | | SIMP: (72) implies: % 22.01/3.72 | | | | | (73) all_96_0 = 0 % 22.01/3.72 | | | | | % 22.01/3.72 | | | | | REDUCE: (61), (73) imply: % 22.01/3.72 | | | | | (74) $false % 22.01/3.72 | | | | | % 22.01/3.72 | | | | | CLOSE: (74) is inconsistent. % 22.01/3.72 | | | | | % 22.01/3.72 | | | | Case 2: % 22.01/3.72 | | | | | % 22.01/3.72 | | | | | (75) all_182_3 = 0 % 22.01/3.73 | | | | | % 22.01/3.73 | | | | | COMBINE_EQS: (60), (75) imply: % 22.01/3.73 | | | | | (76) all_113_2 = 0 % 22.01/3.73 | | | | | % 22.01/3.73 | | | | | SIMP: (76) implies: % 22.01/3.73 | | | | | (77) all_113_2 = 0 % 22.01/3.73 | | | | | % 22.01/3.73 | | | | | REDUCE: (27), (77) imply: % 22.01/3.73 | | | | | (78) $false % 22.01/3.73 | | | | | % 22.01/3.73 | | | | | CLOSE: (78) is inconsistent. % 22.01/3.73 | | | | | % 22.01/3.73 | | | | End of split % 22.01/3.73 | | | | % 22.01/3.73 | | | End of split % 22.01/3.73 | | | % 22.01/3.73 | | End of split % 22.01/3.73 | | % 22.01/3.73 | Case 2: % 22.01/3.73 | | % 22.01/3.73 | | (79) all_113_3 = 0 % 22.01/3.73 | | % 22.01/3.73 | | REDUCE: (26), (79) imply: % 22.01/3.73 | | (80) $false % 22.01/3.73 | | % 22.01/3.73 | | CLOSE: (80) is inconsistent. % 22.01/3.73 | | % 22.01/3.73 | End of split % 22.01/3.73 | % 22.01/3.73 End of proof % 22.01/3.73 % SZS output end Proof for theBenchmark % 22.01/3.73 % 22.01/3.73 3133ms %------------------------------------------------------------------------------