%------------------------------------------------------------------------------ % File : Princess---230619 % Problem : COM217_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 : n017.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:35 PM UTC 2026 % Result : Theorem 15.88s 2.86s % Output : Proof 30.70s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.12 % Problem : COM217_1 : TPTP v9.3.0. Released v9.3.0. % 0.13/0.13 % Command : princess -inputFormat=tptp +threads -portfolio=casc +printProof -timeoutSec=%d %s % 0.16/0.34 % Computer : n017.cluster.edu % 0.16/0.34 % Model : x86_64 x86_64 % 0.16/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.16/0.34 % Memory : 8042.1875MB % 0.16/0.34 % OS : Linux 3.10.0-693.el7.x86_64 % 0.16/0.34 % CPULimit : 300 % 0.16/0.34 % WCLimit : 300 % 0.16/0.34 % DateTime : Mon May 4 18:56:57 EDT 2026 % 0.16/0.34 % CPUTime : % 0.51/0.61 ________ _____ % 0.51/0.61 ___ __ \_________(_)________________________________ % 0.51/0.61 __ /_/ /_ ___/_ /__ __ \ ___/ _ \_ ___/_ ___/ % 0.51/0.61 _ ____/_ / _ / _ / / / /__ / __/(__ )_(__ ) % 0.51/0.61 /_/ /_/ /_/ /_/ /_/\___/ \___//____/ /____/ % 0.51/0.61 % 0.51/0.61 A Theorem Prover for First-Order Logic modulo Linear Integer Arithmetic % 0.51/0.61 (2023-06-19) % 0.51/0.61 % 0.51/0.61 (c) Philipp Rümmer, 2009-2023 % 0.51/0.61 Contributors: Peter Backeman, Peter Baumgartner, Angelo Brillout, Zafer Esen, % 0.51/0.61 Amanda Stjerna. % 0.51/0.61 Free software under BSD-3-Clause. % 0.51/0.61 % 0.51/0.61 For more information, visit http://www.philipp.ruemmer.org/princess.shtml % 0.51/0.61 % 0.51/0.61 Loading /export/starexec/sandbox/benchmark/theBenchmark.p ... % 0.68/0.63 Running up to 7 provers in parallel. % 0.68/0.64 Prover 1: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1571432423 % 0.68/0.64 Prover 2: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMinimalAndEmpty -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1065072994 % 0.68/0.64 Prover 0: Options: +triggersInConjecture +genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1042961893 % 0.68/0.64 Prover 3: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1922548996 % 0.68/0.64 Prover 4: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=1868514696 % 0.68/0.64 Prover 5: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMaximal -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=complete -randomSeed=1259561288 % 0.68/0.64 Prover 6: Options: -triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximalOutermost -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1399714365 % 5.11/1.49 Prover 4: Preprocessing ... % 5.11/1.49 Prover 1: Preprocessing ... % 5.88/1.52 Prover 2: Preprocessing ... % 5.88/1.52 Prover 0: Preprocessing ... % 5.88/1.52 Prover 3: Preprocessing ... % 5.88/1.52 Prover 5: Preprocessing ... % 5.88/1.53 Prover 6: Preprocessing ... % 12.03/2.38 Prover 1: Warning: ignoring some quantifiers % 12.81/2.45 Prover 1: Constructing countermodel ... % 12.81/2.48 Prover 3: Warning: ignoring some quantifiers % 12.81/2.49 Prover 6: Proving ... % 13.59/2.50 Prover 3: Constructing countermodel ... % 13.59/2.52 Prover 5: Proving ... % 14.32/2.60 Prover 4: Warning: ignoring some quantifiers % 14.32/2.65 Prover 4: Constructing countermodel ... % 14.32/2.67 Prover 0: Proving ... % 15.88/2.86 Prover 3: proved (2220ms) % 15.88/2.86 % 15.88/2.86 % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p % 15.88/2.86 % 15.88/2.86 Prover 7: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-236303470 % 15.88/2.86 Prover 0: stopped % 15.88/2.87 Prover 6: stopped % 15.88/2.87 Prover 5: stopped % 15.88/2.88 Prover 10: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=919308125 % 15.88/2.88 Prover 8: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-200781089 % 15.88/2.88 Prover 11: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1509710984 % 16.67/2.95 Prover 2: Proving ... % 16.67/2.97 Prover 2: stopped % 16.67/2.97 Prover 13: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=complete -randomSeed=1138197443 % 17.57/3.11 Prover 10: Preprocessing ... % 18.34/3.13 Prover 7: Preprocessing ... % 18.34/3.14 Prover 8: Preprocessing ... % 18.34/3.14 Prover 11: Preprocessing ... % 18.34/3.19 Prover 13: Preprocessing ... % 20.54/3.43 Prover 8: Warning: ignoring some quantifiers % 20.54/3.44 Prover 8: Constructing countermodel ... % 20.54/3.46 Prover 10: Warning: ignoring some quantifiers % 21.33/3.50 Prover 10: Constructing countermodel ... % 21.33/3.50 Prover 7: Warning: ignoring some quantifiers % 21.33/3.53 Prover 7: Constructing countermodel ... % 21.33/3.59 Prover 11: Warning: ignoring some quantifiers % 22.11/3.61 Prover 11: Constructing countermodel ... % 22.11/3.63 Prover 13: Warning: ignoring some quantifiers % 22.11/3.68 Prover 13: Constructing countermodel ... % 29.99/4.67 Prover 4: Found proof (size 95) % 29.99/4.67 Prover 4: proved (4037ms) % 29.99/4.67 Prover 1: stopped % 29.99/4.67 Prover 13: stopped % 29.99/4.67 Prover 11: stopped % 29.99/4.67 Prover 8: stopped % 29.99/4.67 Prover 7: stopped % 29.99/4.68 Prover 10: stopped % 29.99/4.68 % 29.99/4.68 % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p % 29.99/4.68 % 29.99/4.69 % SZS output start Proof for theBenchmark % 29.99/4.69 Assumptions after simplification: % 29.99/4.69 --------------------------------- % 29.99/4.69 % 29.99/4.69 (Preservation-Ifelse) % 30.70/4.72 vTerm(vt1) & vTerm(vt2) & vTerm(vt3) & ? [v0: vTerm] : ? [v1: vOptTerm] : ? % 30.70/4.72 [v2: vTy] : ? [v3: vTerm] : ? [v4: int] : ( ~ (v4 = 0) & vptchecksimple(v3, % 30.70/4.72 v2) = v4 & vptchecksimple(v0, v2) = 0 & vreduce(v0) = v1 & vsomeTerm(v3) = % 30.70/4.72 v1 & vIfelse(vt1, vt2, vt3) = v0 & vTy(v2) & vOptTerm(v1) & vTerm(v3) & % 30.70/4.72 vTerm(v0)) % 30.70/4.72 % 30.70/4.72 (Preservation-Ifelse-False) % 30.70/4.72 vTerm(vt1) & vTerm(vt2) & vTerm(vt3) & vTerm(vFalse) & vTerm(vTrue) & ? [v0: % 30.70/4.72 vTerm] : ? [v1: vOptTerm] : (vreduce(v0) = v1 & vIfelse(vt1, vt2, vt3) = v0 % 30.70/4.72 & vOptTerm(v1) & vTerm(v0) & ! [v2: vTy] : ! [v3: vTerm] : ! [v4: int] : % 30.70/4.72 ( ~ (vt1 = vFalse) | v4 = 0 | vFalse = vTrue | ~ (vptchecksimple(v3, v2) = % 30.70/4.72 v4) | ~ vTy(v2) | ~ vTerm(v3) | ? [v5: any] : ? [v6: vOptTerm] : % 30.70/4.72 (vptchecksimple(v0, v2) = v5 & vsomeTerm(v3) = v6 & vOptTerm(v6) & ( ~ (v6 % 30.70/4.72 = v1) | ~ (v5 = 0))))) % 30.70/4.72 % 30.70/4.72 (Preservation-Ifelse-True) % 30.70/4.73 vTerm(vt1) & vTerm(vt2) & vTerm(vt3) & vTerm(vTrue) & ? [v0: vTerm] : ? [v1: % 30.70/4.73 vOptTerm] : (vreduce(v0) = v1 & vIfelse(vt1, vt2, vt3) = v0 & vOptTerm(v1) & % 30.70/4.73 vTerm(v0) & ! [v2: vTy] : ! [v3: vTerm] : ! [v4: int] : ( ~ (vt1 = vTrue) % 30.70/4.73 | v4 = 0 | ~ (vptchecksimple(v3, v2) = v4) | ~ vTy(v2) | ~ vTerm(v3) | % 30.70/4.73 ? [v5: any] : ? [v6: vOptTerm] : (vptchecksimple(v0, v2) = v5 & % 30.70/4.73 vsomeTerm(v3) = v6 & vOptTerm(v6) & ( ~ (v6 = v1) | ~ (v5 = 0))))) % 30.70/4.73 % 30.70/4.73 (Preservation-Ifelse-t1) % 30.70/4.73 vTerm(vt1) & vTerm(vt2) & vTerm(vt3) & vTerm(vFalse) & vTerm(vTrue) & ? [v0: % 30.70/4.73 vTerm] : ? [v1: vOptTerm] : (vreduce(v0) = v1 & vIfelse(vt1, vt2, vt3) = v0 % 30.70/4.73 & vOptTerm(v1) & vTerm(v0) & ! [v2: vTy] : ! [v3: vTerm] : ! [v4: int] : % 30.70/4.73 (v4 = 0 | vt1 = vFalse | vt1 = vTrue | ~ (vptchecksimple(v3, v2) = v4) | ~ % 30.70/4.73 vTy(v2) | ~ vTerm(v3) | ? [v5: any] : ? [v6: vOptTerm] : % 30.70/4.73 (vptchecksimple(v0, v2) = v5 & vsomeTerm(v3) = v6 & vOptTerm(v6) & ( ~ (v6 % 30.70/4.73 = v1) | ~ (v5 = 0))))) % 30.70/4.73 % 30.70/4.73 (function-axioms) % 30.70/4.73 ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: vTerm] : ! [v3: vTerm] : ! [v4: % 30.70/4.73 vTerm] : (v1 = v0 | ~ (vIfelse(v4, v3, v2) = v1) | ~ (vIfelse(v4, v3, v2) % 30.70/4.73 = v0)) & ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 30.70/4.73 vTy] : ! [v3: vTerm] : (v1 = v0 | ~ (vptchecksimple(v3, v2) = v1) | ~ % 30.70/4.73 (vptchecksimple(v3, v2) = v0)) & ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: % 30.70/4.73 vTerm] : ! [v3: vTerm] : (v1 = v0 | ~ (vplusop(v3, v2) = v1) | ~ % 30.70/4.73 (vplusop(v3, v2) = v0)) & ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: vTerm] : % 30.70/4.73 ! [v3: vTerm] : (v1 = v0 | ~ (vPlus(v3, v2) = v1) | ~ (vPlus(v3, v2) = v0)) % 30.70/4.73 & ! [v0: vOptTerm] : ! [v1: vOptTerm] : ! [v2: vTerm] : (v1 = v0 | ~ % 30.70/4.73 (vreduce(v2) = v1) | ~ (vreduce(v2) = v0)) & ! [v0: MultipleValueBool] : % 30.70/4.73 ! [v1: MultipleValueBool] : ! [v2: vOptTerm] : (v1 = v0 | ~ (visSomeTerm(v2) % 30.70/4.73 = v1) | ~ (visSomeTerm(v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 30.70/4.73 MultipleValueBool] : ! [v2: vTerm] : (v1 = v0 | ~ (visValue(v2) = v1) | ~ % 30.70/4.73 (visValue(v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 30.70/4.73 MultipleValueBool] : ! [v2: vTerm] : (v1 = v0 | ~ (visNV(v2) = v1) | ~ % 30.70/4.73 (visNV(v2) = v0)) & ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: vOptTerm] : % 30.70/4.73 (v1 = v0 | ~ (vgetTerm(v2) = v1) | ~ (vgetTerm(v2) = v0)) & ! [v0: % 30.70/4.73 vOptTerm] : ! [v1: vOptTerm] : ! [v2: vTerm] : (v1 = v0 | ~ % 30.70/4.73 (vsomeTerm(v2) = v1) | ~ (vsomeTerm(v2) = v0)) & ! [v0: vTerm] : ! [v1: % 30.70/4.73 vTerm] : ! [v2: vTerm] : (v1 = v0 | ~ (vIszero(v2) = v1) | ~ (vIszero(v2) % 30.70/4.73 = v0)) & ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: vTerm] : (v1 = v0 | ~ % 30.70/4.73 (vPred(v2) = v1) | ~ (vPred(v2) = v0)) & ! [v0: vTerm] : ! [v1: vTerm] : % 30.70/4.73 ! [v2: vTerm] : (v1 = v0 | ~ (vSucc(v2) = v1) | ~ (vSucc(v2) = v0)) % 30.70/4.73 % 30.70/4.73 Further assumptions not needed in the proof: % 30.70/4.73 -------------------------------------------- % 30.70/4.74 DIFF-B-Nat, DIFF-False-Ifelse, DIFF-False-Iszero, DIFF-False-Plus, % 30.70/4.74 DIFF-False-Pred, DIFF-False-Succ, DIFF-False-Zero, DIFF-Ifelse-Iszero, % 30.70/4.74 DIFF-Ifelse-Plus, DIFF-Ifelse-Pred, DIFF-Ifelse-Succ, DIFF-Ifelse-Zero, % 30.70/4.74 DIFF-Iszero-Plus, DIFF-Pred-Iszero, DIFF-Pred-Plus, DIFF-Succ-Iszero, % 30.70/4.74 DIFF-Succ-Plus, DIFF-Succ-Pred, DIFF-True-False, DIFF-True-Ifelse, % 30.70/4.74 DIFF-True-Iszero, DIFF-True-Plus, DIFF-True-Pred, DIFF-True-Succ, % 30.70/4.74 DIFF-True-Zero, DIFF-Zero-Iszero, DIFF-Zero-Plus, DIFF-Zero-Pred, % 30.70/4.74 DIFF-Zero-Succ, DIFF-noTerm-someTerm, EQ-Ifelse, EQ-Iszero, EQ-Plus, EQ-Pred, % 30.70/4.74 EQ-Succ, EQ-someTerm, Preservation-Ifelse-IH0, Preservation-Ifelse-IH1, % 30.70/4.74 Preservation-Ifelse-IH2, TPlus, TPlus_inv0, TPlus_inv1, TPlus_inv2, TPred, % 30.70/4.74 TPred_inv1, TPred_inv2, TSucc, TSucc_inv1, TSucc_inv2, TZero, TZero_inv, Tfalse, % 30.70/4.74 Tif, Tif_inv1, Tif_inv2, Tif_inv3, Tiszero, Tiszero_inv1, Tiszero_inv2, Ttrue, % 30.70/4.74 dom-OptTerm, dom-Term, dom-Ty, getTerm-0, isNV-0, isNV-1, isNV-2, % 30.70/4.74 isNV-false-INV, isNV-true-INV, isSomeTerm-0, isSomeTerm-1, isSomeTerm-false-INV, % 30.70/4.74 isSomeTerm-true-INV, isValue-0, isValue-1, isValue-2, isValue-false-INV, % 30.70/4.74 isValue-true-INV, plusop-0, plusop-1, plusop-2, plusop-INV, reduce-0, reduce-1, % 30.70/4.74 reduce-10, reduce-11, reduce-12, reduce-13, reduce-14, reduce-15, reduce-16, % 30.70/4.74 reduce-17, reduce-18, reduce-19, reduce-2, reduce-20, reduce-21, reduce-22, % 30.70/4.74 reduce-23, reduce-3, reduce-4, reduce-5, reduce-6, reduce-7, reduce-8, reduce-9, % 30.70/4.74 reduce-INV % 30.70/4.74 % 30.70/4.74 Those formulas are unsatisfiable: % 30.70/4.74 --------------------------------- % 30.70/4.74 % 30.70/4.74 Begin of proof % 30.70/4.74 | % 30.70/4.74 | ALPHA: (Preservation-Ifelse-False) implies: % 30.70/4.74 | (1) ? [v0: vTerm] : ? [v1: vOptTerm] : (vreduce(v0) = v1 & vIfelse(vt1, % 30.70/4.74 | vt2, vt3) = v0 & vOptTerm(v1) & vTerm(v0) & ! [v2: vTy] : ! [v3: % 30.70/4.74 | vTerm] : ! [v4: int] : ( ~ (vt1 = vFalse) | v4 = 0 | vFalse = % 30.70/4.74 | vTrue | ~ (vptchecksimple(v3, v2) = v4) | ~ vTy(v2) | ~ % 30.70/4.74 | vTerm(v3) | ? [v5: any] : ? [v6: vOptTerm] : (vptchecksimple(v0, % 30.70/4.74 | v2) = v5 & vsomeTerm(v3) = v6 & vOptTerm(v6) & ( ~ (v6 = v1) | % 30.70/4.74 | ~ (v5 = 0))))) % 30.70/4.74 | % 30.70/4.74 | ALPHA: (Preservation-Ifelse-True) implies: % 30.70/4.74 | (2) ? [v0: vTerm] : ? [v1: vOptTerm] : (vreduce(v0) = v1 & vIfelse(vt1, % 30.70/4.74 | vt2, vt3) = v0 & vOptTerm(v1) & vTerm(v0) & ! [v2: vTy] : ! [v3: % 30.70/4.74 | vTerm] : ! [v4: int] : ( ~ (vt1 = vTrue) | v4 = 0 | ~ % 30.70/4.74 | (vptchecksimple(v3, v2) = v4) | ~ vTy(v2) | ~ vTerm(v3) | ? [v5: % 30.70/4.74 | any] : ? [v6: vOptTerm] : (vptchecksimple(v0, v2) = v5 & % 30.70/4.74 | vsomeTerm(v3) = v6 & vOptTerm(v6) & ( ~ (v6 = v1) | ~ (v5 = % 30.70/4.74 | 0))))) % 30.70/4.74 | % 30.70/4.74 | ALPHA: (Preservation-Ifelse-t1) implies: % 30.70/4.74 | (3) ? [v0: vTerm] : ? [v1: vOptTerm] : (vreduce(v0) = v1 & vIfelse(vt1, % 30.70/4.74 | vt2, vt3) = v0 & vOptTerm(v1) & vTerm(v0) & ! [v2: vTy] : ! [v3: % 30.70/4.74 | vTerm] : ! [v4: int] : (v4 = 0 | vt1 = vFalse | vt1 = vTrue | ~ % 30.70/4.74 | (vptchecksimple(v3, v2) = v4) | ~ vTy(v2) | ~ vTerm(v3) | ? [v5: % 30.70/4.74 | any] : ? [v6: vOptTerm] : (vptchecksimple(v0, v2) = v5 & % 30.70/4.74 | vsomeTerm(v3) = v6 & vOptTerm(v6) & ( ~ (v6 = v1) | ~ (v5 = % 30.70/4.74 | 0))))) % 30.70/4.74 | % 30.70/4.74 | ALPHA: (Preservation-Ifelse) implies: % 30.70/4.74 | (4) ? [v0: vTerm] : ? [v1: vOptTerm] : ? [v2: vTy] : ? [v3: vTerm] : ? % 30.70/4.74 | [v4: int] : ( ~ (v4 = 0) & vptchecksimple(v3, v2) = v4 & % 30.70/4.74 | vptchecksimple(v0, v2) = 0 & vreduce(v0) = v1 & vsomeTerm(v3) = v1 & % 30.70/4.74 | vIfelse(vt1, vt2, vt3) = v0 & vTy(v2) & vOptTerm(v1) & vTerm(v3) & % 30.70/4.74 | vTerm(v0)) % 30.70/4.74 | % 30.70/4.74 | ALPHA: (function-axioms) implies: % 30.70/4.74 | (5) ! [v0: vOptTerm] : ! [v1: vOptTerm] : ! [v2: vTerm] : (v1 = v0 | ~ % 30.70/4.74 | (vsomeTerm(v2) = v1) | ~ (vsomeTerm(v2) = v0)) % 30.70/4.74 | (6) ! [v0: vOptTerm] : ! [v1: vOptTerm] : ! [v2: vTerm] : (v1 = v0 | ~ % 30.70/4.74 | (vreduce(v2) = v1) | ~ (vreduce(v2) = v0)) % 30.70/4.74 | (7) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vTy] % 30.70/4.74 | : ! [v3: vTerm] : (v1 = v0 | ~ (vptchecksimple(v3, v2) = v1) | ~ % 30.70/4.74 | (vptchecksimple(v3, v2) = v0)) % 30.70/4.74 | (8) ! [v0: vTerm] : ! [v1: vTerm] : ! [v2: vTerm] : ! [v3: vTerm] : ! % 30.70/4.74 | [v4: vTerm] : (v1 = v0 | ~ (vIfelse(v4, v3, v2) = v1) | ~ % 30.70/4.74 | (vIfelse(v4, v3, v2) = v0)) % 30.70/4.74 | % 30.70/4.75 | DELTA: instantiating (4) with fresh symbols all_103_0, all_103_1, all_103_2, % 30.70/4.75 | all_103_3, all_103_4 gives: % 30.70/4.75 | (9) ~ (all_103_0 = 0) & vptchecksimple(all_103_1, all_103_2) = all_103_0 & % 30.70/4.75 | vptchecksimple(all_103_4, all_103_2) = 0 & vreduce(all_103_4) = % 30.70/4.75 | all_103_3 & vsomeTerm(all_103_1) = all_103_3 & vIfelse(vt1, vt2, vt3) = % 30.70/4.75 | all_103_4 & vTy(all_103_2) & vOptTerm(all_103_3) & vTerm(all_103_1) & % 30.70/4.75 | vTerm(all_103_4) % 30.70/4.75 | % 30.70/4.75 | ALPHA: (9) implies: % 30.70/4.75 | (10) ~ (all_103_0 = 0) % 30.70/4.75 | (11) vTerm(all_103_1) % 30.70/4.75 | (12) vTy(all_103_2) % 30.70/4.75 | (13) vIfelse(vt1, vt2, vt3) = all_103_4 % 30.70/4.75 | (14) vsomeTerm(all_103_1) = all_103_3 % 30.70/4.75 | (15) vreduce(all_103_4) = all_103_3 % 30.70/4.75 | (16) vptchecksimple(all_103_4, all_103_2) = 0 % 30.70/4.75 | (17) vptchecksimple(all_103_1, all_103_2) = all_103_0 % 30.70/4.75 | % 30.70/4.75 | DELTA: instantiating (2) with fresh symbols all_114_0, all_114_1 gives: % 30.70/4.75 | (18) vreduce(all_114_1) = all_114_0 & vIfelse(vt1, vt2, vt3) = all_114_1 & % 30.70/4.75 | vOptTerm(all_114_0) & vTerm(all_114_1) & ! [v0: vTy] : ! [v1: vTerm] % 30.70/4.75 | : ! [v2: int] : ( ~ (vt1 = vTrue) | v2 = 0 | ~ (vptchecksimple(v1, % 30.70/4.75 | v0) = v2) | ~ vTy(v0) | ~ vTerm(v1) | ? [v3: any] : ? [v4: % 30.70/4.75 | vOptTerm] : (vptchecksimple(all_114_1, v0) = v3 & vsomeTerm(v1) = % 30.70/4.75 | v4 & vOptTerm(v4) & ( ~ (v4 = all_114_0) | ~ (v3 = 0)))) % 30.70/4.75 | % 30.70/4.75 | ALPHA: (18) implies: % 30.70/4.75 | (19) vIfelse(vt1, vt2, vt3) = all_114_1 % 30.70/4.75 | (20) vreduce(all_114_1) = all_114_0 % 30.70/4.75 | (21) ! [v0: vTy] : ! [v1: vTerm] : ! [v2: int] : ( ~ (vt1 = vTrue) | v2 % 30.70/4.75 | = 0 | ~ (vptchecksimple(v1, v0) = v2) | ~ vTy(v0) | ~ vTerm(v1) | % 30.70/4.75 | ? [v3: any] : ? [v4: vOptTerm] : (vptchecksimple(all_114_1, v0) = % 30.70/4.75 | v3 & vsomeTerm(v1) = v4 & vOptTerm(v4) & ( ~ (v4 = all_114_0) | ~ % 30.70/4.75 | (v3 = 0)))) % 30.70/4.75 | % 30.70/4.75 | DELTA: instantiating (1) with fresh symbols all_117_0, all_117_1 gives: % 30.70/4.75 | (22) vreduce(all_117_1) = all_117_0 & vIfelse(vt1, vt2, vt3) = all_117_1 & % 30.70/4.75 | vOptTerm(all_117_0) & vTerm(all_117_1) & ! [v0: vTy] : ! [v1: vTerm] % 30.70/4.75 | : ! [v2: int] : ( ~ (vt1 = vFalse) | v2 = 0 | vFalse = vTrue | ~ % 30.70/4.75 | (vptchecksimple(v1, v0) = v2) | ~ vTy(v0) | ~ vTerm(v1) | ? [v3: % 30.70/4.75 | any] : ? [v4: vOptTerm] : (vptchecksimple(all_117_1, v0) = v3 & % 30.70/4.75 | vsomeTerm(v1) = v4 & vOptTerm(v4) & ( ~ (v4 = all_117_0) | ~ (v3 % 30.70/4.75 | = 0)))) % 30.70/4.75 | % 30.70/4.75 | ALPHA: (22) implies: % 30.70/4.75 | (23) vIfelse(vt1, vt2, vt3) = all_117_1 % 30.70/4.75 | (24) vreduce(all_117_1) = all_117_0 % 30.70/4.75 | (25) ! [v0: vTy] : ! [v1: vTerm] : ! [v2: int] : ( ~ (vt1 = vFalse) | v2 % 30.70/4.75 | = 0 | vFalse = vTrue | ~ (vptchecksimple(v1, v0) = v2) | ~ vTy(v0) % 30.70/4.75 | | ~ vTerm(v1) | ? [v3: any] : ? [v4: vOptTerm] : % 30.70/4.75 | (vptchecksimple(all_117_1, v0) = v3 & vsomeTerm(v1) = v4 & % 30.70/4.75 | vOptTerm(v4) & ( ~ (v4 = all_117_0) | ~ (v3 = 0)))) % 30.70/4.75 | % 30.70/4.75 | DELTA: instantiating (3) with fresh symbols all_120_0, all_120_1 gives: % 30.70/4.75 | (26) vreduce(all_120_1) = all_120_0 & vIfelse(vt1, vt2, vt3) = all_120_1 & % 30.70/4.75 | vOptTerm(all_120_0) & vTerm(all_120_1) & ! [v0: vTy] : ! [v1: vTerm] % 30.70/4.75 | : ! [v2: int] : (v2 = 0 | vt1 = vFalse | vt1 = vTrue | ~ % 30.70/4.75 | (vptchecksimple(v1, v0) = v2) | ~ vTy(v0) | ~ vTerm(v1) | ? [v3: % 30.70/4.75 | any] : ? [v4: vOptTerm] : (vptchecksimple(all_120_1, v0) = v3 & % 30.70/4.75 | vsomeTerm(v1) = v4 & vOptTerm(v4) & ( ~ (v4 = all_120_0) | ~ (v3 % 30.70/4.75 | = 0)))) % 30.70/4.75 | % 30.70/4.75 | ALPHA: (26) implies: % 30.70/4.75 | (27) vIfelse(vt1, vt2, vt3) = all_120_1 % 30.70/4.75 | (28) vreduce(all_120_1) = all_120_0 % 30.70/4.75 | (29) ! [v0: vTy] : ! [v1: vTerm] : ! [v2: int] : (v2 = 0 | vt1 = vFalse % 30.70/4.75 | | vt1 = vTrue | ~ (vptchecksimple(v1, v0) = v2) | ~ vTy(v0) | ~ % 30.70/4.75 | vTerm(v1) | ? [v3: any] : ? [v4: vOptTerm] : % 30.70/4.75 | (vptchecksimple(all_120_1, v0) = v3 & vsomeTerm(v1) = v4 & % 30.70/4.75 | vOptTerm(v4) & ( ~ (v4 = all_120_0) | ~ (v3 = 0)))) % 30.70/4.75 | % 30.70/4.76 | GROUND_INST: instantiating (8) with all_117_1, all_120_1, vt3, vt2, vt1, % 30.70/4.76 | simplifying with (23), (27) gives: % 30.70/4.76 | (30) all_120_1 = all_117_1 % 30.70/4.76 | % 30.70/4.76 | GROUND_INST: instantiating (8) with all_114_1, all_120_1, vt3, vt2, vt1, % 30.70/4.76 | simplifying with (19), (27) gives: % 30.70/4.76 | (31) all_120_1 = all_114_1 % 30.70/4.76 | % 30.70/4.76 | GROUND_INST: instantiating (8) with all_103_4, all_120_1, vt3, vt2, vt1, % 30.70/4.76 | simplifying with (13), (27) gives: % 30.70/4.76 | (32) all_120_1 = all_103_4 % 30.70/4.76 | % 30.70/4.76 | COMBINE_EQS: (30), (31) imply: % 30.70/4.76 | (33) all_117_1 = all_114_1 % 30.70/4.76 | % 30.70/4.76 | COMBINE_EQS: (30), (32) imply: % 30.70/4.76 | (34) all_117_1 = all_103_4 % 30.70/4.76 | % 30.70/4.76 | COMBINE_EQS: (33), (34) imply: % 30.70/4.76 | (35) all_114_1 = all_103_4 % 30.70/4.76 | % 30.70/4.76 | REDUCE: (28), (32) imply: % 30.70/4.76 | (36) vreduce(all_103_4) = all_120_0 % 30.70/4.76 | % 30.70/4.76 | REDUCE: (24), (34) imply: % 30.70/4.76 | (37) vreduce(all_103_4) = all_117_0 % 30.70/4.76 | % 30.70/4.76 | REDUCE: (20), (35) imply: % 30.70/4.76 | (38) vreduce(all_103_4) = all_114_0 % 30.70/4.76 | % 30.70/4.76 | GROUND_INST: instantiating (6) with all_103_3, all_117_0, all_103_4, % 30.70/4.76 | simplifying with (15), (37) gives: % 30.70/4.76 | (39) all_117_0 = all_103_3 % 30.70/4.76 | % 30.70/4.76 | GROUND_INST: instantiating (6) with all_117_0, all_120_0, all_103_4, % 30.70/4.76 | simplifying with (36), (37) gives: % 30.70/4.76 | (40) all_120_0 = all_117_0 % 30.70/4.76 | % 30.70/4.76 | GROUND_INST: instantiating (6) with all_114_0, all_120_0, all_103_4, % 30.70/4.76 | simplifying with (36), (38) gives: % 30.70/4.76 | (41) all_120_0 = all_114_0 % 30.70/4.76 | % 30.70/4.76 | COMBINE_EQS: (40), (41) imply: % 30.70/4.76 | (42) all_117_0 = all_114_0 % 30.70/4.76 | % 30.70/4.76 | SIMP: (42) implies: % 30.70/4.76 | (43) all_117_0 = all_114_0 % 30.70/4.76 | % 30.70/4.76 | COMBINE_EQS: (39), (43) imply: % 30.70/4.76 | (44) all_114_0 = all_103_3 % 30.70/4.76 | % 30.70/4.76 | COMBINE_EQS: (41), (44) imply: % 30.70/4.76 | (45) all_120_0 = all_103_3 % 30.70/4.76 | % 30.70/4.76 | GROUND_INST: instantiating (25) with all_103_2, all_103_1, all_103_0, % 30.70/4.76 | simplifying with (11), (12), (17) gives: % 30.70/4.76 | (46) ~ (vt1 = vFalse) | all_103_0 = 0 | vFalse = vTrue | ? [v0: any] : ? % 30.70/4.76 | [v1: vOptTerm] : (vptchecksimple(all_117_1, all_103_2) = v0 & % 30.70/4.76 | vsomeTerm(all_103_1) = v1 & vOptTerm(v1) & ( ~ (v1 = all_117_0) | ~ % 30.70/4.76 | (v0 = 0))) % 30.70/4.76 | % 30.70/4.76 | GROUND_INST: instantiating (21) with all_103_2, all_103_1, all_103_0, % 30.70/4.76 | simplifying with (11), (12), (17) gives: % 30.70/4.76 | (47) ~ (vt1 = vTrue) | all_103_0 = 0 | ? [v0: any] : ? [v1: vOptTerm] : % 30.70/4.76 | (vptchecksimple(all_114_1, all_103_2) = v0 & vsomeTerm(all_103_1) = v1 % 30.70/4.76 | & vOptTerm(v1) & ( ~ (v1 = all_114_0) | ~ (v0 = 0))) % 30.70/4.76 | % 30.70/4.76 | GROUND_INST: instantiating (29) with all_103_2, all_103_1, all_103_0, % 30.70/4.76 | simplifying with (11), (12), (17) gives: % 30.70/4.76 | (48) all_103_0 = 0 | vt1 = vFalse | vt1 = vTrue | ? [v0: any] : ? [v1: % 30.70/4.76 | vOptTerm] : (vptchecksimple(all_120_1, all_103_2) = v0 & % 30.70/4.76 | vsomeTerm(all_103_1) = v1 & vOptTerm(v1) & ( ~ (v1 = all_120_0) | ~ % 30.70/4.76 | (v0 = 0))) % 30.70/4.76 | % 30.70/4.76 | BETA: splitting (47) gives: % 30.70/4.76 | % 30.70/4.76 | Case 1: % 30.70/4.76 | | % 30.70/4.76 | | (49) ~ (vt1 = vTrue) % 30.70/4.76 | | % 30.70/4.76 | | BETA: splitting (48) gives: % 30.70/4.76 | | % 30.70/4.76 | | Case 1: % 30.70/4.76 | | | % 30.70/4.76 | | | (50) vt1 = vTrue % 30.70/4.76 | | | % 30.70/4.76 | | | REDUCE: (49), (50) imply: % 30.70/4.76 | | | (51) $false % 30.70/4.76 | | | % 30.70/4.76 | | | CLOSE: (51) is inconsistent. % 30.70/4.76 | | | % 30.70/4.76 | | Case 2: % 30.70/4.76 | | | % 30.70/4.76 | | | (52) all_103_0 = 0 | vt1 = vFalse | ? [v0: any] : ? [v1: vOptTerm] : % 30.70/4.76 | | | (vptchecksimple(all_120_1, all_103_2) = v0 & vsomeTerm(all_103_1) % 30.70/4.76 | | | = v1 & vOptTerm(v1) & ( ~ (v1 = all_120_0) | ~ (v0 = 0))) % 30.70/4.76 | | | % 30.70/4.76 | | | BETA: splitting (46) gives: % 30.70/4.76 | | | % 30.70/4.76 | | | Case 1: % 30.70/4.77 | | | | % 30.70/4.77 | | | | (53) ~ (vt1 = vFalse) % 30.70/4.77 | | | | % 30.70/4.77 | | | | BETA: splitting (52) gives: % 30.70/4.77 | | | | % 30.70/4.77 | | | | Case 1: % 30.70/4.77 | | | | | % 30.70/4.77 | | | | | (54) vt1 = vFalse % 30.70/4.77 | | | | | % 30.70/4.77 | | | | | REDUCE: (53), (54) imply: % 30.70/4.77 | | | | | (55) $false % 30.70/4.77 | | | | | % 30.70/4.77 | | | | | CLOSE: (55) is inconsistent. % 30.70/4.77 | | | | | % 30.70/4.77 | | | | Case 2: % 30.70/4.77 | | | | | % 30.70/4.77 | | | | | (56) all_103_0 = 0 | ? [v0: any] : ? [v1: vOptTerm] : % 30.70/4.77 | | | | | (vptchecksimple(all_120_1, all_103_2) = v0 & % 30.70/4.77 | | | | | vsomeTerm(all_103_1) = v1 & vOptTerm(v1) & ( ~ (v1 = % 30.70/4.77 | | | | | all_120_0) | ~ (v0 = 0))) % 30.70/4.77 | | | | | % 30.70/4.77 | | | | | BETA: splitting (56) gives: % 30.70/4.77 | | | | | % 30.70/4.77 | | | | | Case 1: % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | (57) all_103_0 = 0 % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | REDUCE: (10), (57) imply: % 30.70/4.77 | | | | | | (58) $false % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | CLOSE: (58) is inconsistent. % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | Case 2: % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | (59) ? [v0: any] : ? [v1: vOptTerm] : % 30.70/4.77 | | | | | | (vptchecksimple(all_120_1, all_103_2) = v0 & % 30.70/4.77 | | | | | | vsomeTerm(all_103_1) = v1 & vOptTerm(v1) & ( ~ (v1 = % 30.70/4.77 | | | | | | all_120_0) | ~ (v0 = 0))) % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | DELTA: instantiating (59) with fresh symbols all_285_0, all_285_1 % 30.70/4.77 | | | | | | gives: % 30.70/4.77 | | | | | | (60) vptchecksimple(all_120_1, all_103_2) = all_285_1 & % 30.70/4.77 | | | | | | vsomeTerm(all_103_1) = all_285_0 & vOptTerm(all_285_0) & ( ~ % 30.70/4.77 | | | | | | (all_285_0 = all_120_0) | ~ (all_285_1 = 0)) % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | ALPHA: (60) implies: % 30.70/4.77 | | | | | | (61) vsomeTerm(all_103_1) = all_285_0 % 30.70/4.77 | | | | | | (62) vptchecksimple(all_120_1, all_103_2) = all_285_1 % 30.70/4.77 | | | | | | (63) ~ (all_285_0 = all_120_0) | ~ (all_285_1 = 0) % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | REDUCE: (32), (62) imply: % 30.70/4.77 | | | | | | (64) vptchecksimple(all_103_4, all_103_2) = all_285_1 % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | GROUND_INST: instantiating (5) with all_103_3, all_285_0, all_103_1, % 30.70/4.77 | | | | | | simplifying with (14), (61) gives: % 30.70/4.77 | | | | | | (65) all_285_0 = all_103_3 % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | GROUND_INST: instantiating (7) with 0, all_285_1, all_103_2, % 30.70/4.77 | | | | | | all_103_4, simplifying with (16), (64) gives: % 30.70/4.77 | | | | | | (66) all_285_1 = 0 % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | BETA: splitting (63) gives: % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | Case 1: % 30.70/4.77 | | | | | | | % 30.70/4.77 | | | | | | | (67) ~ (all_285_1 = 0) % 30.70/4.77 | | | | | | | % 30.70/4.77 | | | | | | | REDUCE: (66), (67) imply: % 30.70/4.77 | | | | | | | (68) $false % 30.70/4.77 | | | | | | | % 30.70/4.77 | | | | | | | CLOSE: (68) is inconsistent. % 30.70/4.77 | | | | | | | % 30.70/4.77 | | | | | | Case 2: % 30.70/4.77 | | | | | | | % 30.70/4.77 | | | | | | | (69) ~ (all_285_0 = all_120_0) % 30.70/4.77 | | | | | | | % 30.70/4.77 | | | | | | | REDUCE: (45), (65), (69) imply: % 30.70/4.77 | | | | | | | (70) $false % 30.70/4.77 | | | | | | | % 30.70/4.77 | | | | | | | CLOSE: (70) is inconsistent. % 30.70/4.77 | | | | | | | % 30.70/4.77 | | | | | | End of split % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | End of split % 30.70/4.77 | | | | | % 30.70/4.77 | | | | End of split % 30.70/4.77 | | | | % 30.70/4.77 | | | Case 2: % 30.70/4.77 | | | | % 30.70/4.77 | | | | (71) vt1 = vFalse % 30.70/4.77 | | | | (72) all_103_0 = 0 | vFalse = vTrue | ? [v0: any] : ? [v1: % 30.70/4.77 | | | | vOptTerm] : (vptchecksimple(all_117_1, all_103_2) = v0 & % 30.70/4.77 | | | | vsomeTerm(all_103_1) = v1 & vOptTerm(v1) & ( ~ (v1 = % 30.70/4.77 | | | | all_117_0) | ~ (v0 = 0))) % 30.70/4.77 | | | | % 30.70/4.77 | | | | REDUCE: (49), (71) imply: % 30.70/4.77 | | | | (73) ~ (vFalse = vTrue) % 30.70/4.77 | | | | % 30.70/4.77 | | | | BETA: splitting (72) gives: % 30.70/4.77 | | | | % 30.70/4.77 | | | | Case 1: % 30.70/4.77 | | | | | % 30.70/4.77 | | | | | (74) vFalse = vTrue % 30.70/4.77 | | | | | % 30.70/4.77 | | | | | REDUCE: (73), (74) imply: % 30.70/4.77 | | | | | (75) $false % 30.70/4.77 | | | | | % 30.70/4.77 | | | | | CLOSE: (75) is inconsistent. % 30.70/4.77 | | | | | % 30.70/4.77 | | | | Case 2: % 30.70/4.77 | | | | | % 30.70/4.77 | | | | | (76) all_103_0 = 0 | ? [v0: any] : ? [v1: vOptTerm] : % 30.70/4.77 | | | | | (vptchecksimple(all_117_1, all_103_2) = v0 & % 30.70/4.77 | | | | | vsomeTerm(all_103_1) = v1 & vOptTerm(v1) & ( ~ (v1 = % 30.70/4.77 | | | | | all_117_0) | ~ (v0 = 0))) % 30.70/4.77 | | | | | % 30.70/4.77 | | | | | BETA: splitting (76) gives: % 30.70/4.77 | | | | | % 30.70/4.77 | | | | | Case 1: % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | (77) all_103_0 = 0 % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | REDUCE: (10), (77) imply: % 30.70/4.77 | | | | | | (78) $false % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | CLOSE: (78) is inconsistent. % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | Case 2: % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | (79) ? [v0: any] : ? [v1: vOptTerm] : % 30.70/4.77 | | | | | | (vptchecksimple(all_117_1, all_103_2) = v0 & % 30.70/4.77 | | | | | | vsomeTerm(all_103_1) = v1 & vOptTerm(v1) & ( ~ (v1 = % 30.70/4.77 | | | | | | all_117_0) | ~ (v0 = 0))) % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | DELTA: instantiating (79) with fresh symbols all_292_0, all_292_1 % 30.70/4.77 | | | | | | gives: % 30.70/4.77 | | | | | | (80) vptchecksimple(all_117_1, all_103_2) = all_292_1 & % 30.70/4.77 | | | | | | vsomeTerm(all_103_1) = all_292_0 & vOptTerm(all_292_0) & ( ~ % 30.70/4.77 | | | | | | (all_292_0 = all_117_0) | ~ (all_292_1 = 0)) % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | ALPHA: (80) implies: % 30.70/4.77 | | | | | | (81) vsomeTerm(all_103_1) = all_292_0 % 30.70/4.77 | | | | | | (82) vptchecksimple(all_117_1, all_103_2) = all_292_1 % 30.70/4.77 | | | | | | (83) ~ (all_292_0 = all_117_0) | ~ (all_292_1 = 0) % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | REDUCE: (34), (82) imply: % 30.70/4.77 | | | | | | (84) vptchecksimple(all_103_4, all_103_2) = all_292_1 % 30.70/4.77 | | | | | | % 30.70/4.77 | | | | | | GROUND_INST: instantiating (5) with all_103_3, all_292_0, all_103_1, % 30.70/4.77 | | | | | | simplifying with (14), (81) gives: % 30.70/4.77 | | | | | | (85) all_292_0 = all_103_3 % 30.70/4.77 | | | | | | % 30.70/4.78 | | | | | | GROUND_INST: instantiating (7) with 0, all_292_1, all_103_2, % 30.70/4.78 | | | | | | all_103_4, simplifying with (16), (84) gives: % 30.70/4.78 | | | | | | (86) all_292_1 = 0 % 30.70/4.78 | | | | | | % 30.70/4.78 | | | | | | BETA: splitting (83) gives: % 30.70/4.78 | | | | | | % 30.70/4.78 | | | | | | Case 1: % 30.70/4.78 | | | | | | | % 30.70/4.78 | | | | | | | (87) ~ (all_292_1 = 0) % 30.70/4.78 | | | | | | | % 30.70/4.78 | | | | | | | REDUCE: (86), (87) imply: % 30.70/4.78 | | | | | | | (88) $false % 30.70/4.78 | | | | | | | % 30.70/4.78 | | | | | | | CLOSE: (88) is inconsistent. % 30.70/4.78 | | | | | | | % 30.70/4.78 | | | | | | Case 2: % 30.70/4.78 | | | | | | | % 30.70/4.78 | | | | | | | (89) ~ (all_292_0 = all_117_0) % 30.70/4.78 | | | | | | | % 30.70/4.78 | | | | | | | REDUCE: (39), (85), (89) imply: % 30.70/4.78 | | | | | | | (90) $false % 30.70/4.78 | | | | | | | % 30.70/4.78 | | | | | | | CLOSE: (90) is inconsistent. % 30.70/4.78 | | | | | | | % 30.70/4.78 | | | | | | End of split % 30.70/4.78 | | | | | | % 30.70/4.78 | | | | | End of split % 30.70/4.78 | | | | | % 30.70/4.78 | | | | End of split % 30.70/4.78 | | | | % 30.70/4.78 | | | End of split % 30.70/4.78 | | | % 30.70/4.78 | | End of split % 30.70/4.78 | | % 30.70/4.78 | Case 2: % 30.70/4.78 | | % 30.70/4.78 | | (91) all_103_0 = 0 | ? [v0: any] : ? [v1: vOptTerm] : % 30.70/4.78 | | (vptchecksimple(all_114_1, all_103_2) = v0 & vsomeTerm(all_103_1) = % 30.70/4.78 | | v1 & vOptTerm(v1) & ( ~ (v1 = all_114_0) | ~ (v0 = 0))) % 30.70/4.78 | | % 30.70/4.78 | | BETA: splitting (91) gives: % 30.70/4.78 | | % 30.70/4.78 | | Case 1: % 30.70/4.78 | | | % 30.70/4.78 | | | (92) all_103_0 = 0 % 30.70/4.78 | | | % 30.70/4.78 | | | REDUCE: (10), (92) imply: % 30.70/4.78 | | | (93) $false % 30.70/4.78 | | | % 30.70/4.78 | | | CLOSE: (93) is inconsistent. % 30.70/4.78 | | | % 30.70/4.78 | | Case 2: % 30.70/4.78 | | | % 30.70/4.78 | | | (94) ? [v0: any] : ? [v1: vOptTerm] : (vptchecksimple(all_114_1, % 30.70/4.78 | | | all_103_2) = v0 & vsomeTerm(all_103_1) = v1 & vOptTerm(v1) & ( % 30.70/4.78 | | | ~ (v1 = all_114_0) | ~ (v0 = 0))) % 30.70/4.78 | | | % 30.70/4.78 | | | DELTA: instantiating (94) with fresh symbols all_276_0, all_276_1 gives: % 30.70/4.78 | | | (95) vptchecksimple(all_114_1, all_103_2) = all_276_1 & % 30.70/4.78 | | | vsomeTerm(all_103_1) = all_276_0 & vOptTerm(all_276_0) & ( ~ % 30.70/4.78 | | | (all_276_0 = all_114_0) | ~ (all_276_1 = 0)) % 30.70/4.78 | | | % 30.70/4.78 | | | ALPHA: (95) implies: % 30.70/4.78 | | | (96) vsomeTerm(all_103_1) = all_276_0 % 30.70/4.78 | | | (97) vptchecksimple(all_114_1, all_103_2) = all_276_1 % 30.70/4.78 | | | (98) ~ (all_276_0 = all_114_0) | ~ (all_276_1 = 0) % 30.70/4.78 | | | % 30.70/4.78 | | | REDUCE: (35), (97) imply: % 30.70/4.78 | | | (99) vptchecksimple(all_103_4, all_103_2) = all_276_1 % 30.70/4.78 | | | % 30.70/4.78 | | | GROUND_INST: instantiating (5) with all_103_3, all_276_0, all_103_1, % 30.70/4.78 | | | simplifying with (14), (96) gives: % 30.70/4.78 | | | (100) all_276_0 = all_103_3 % 30.70/4.78 | | | % 30.70/4.78 | | | GROUND_INST: instantiating (7) with 0, all_276_1, all_103_2, all_103_4, % 30.70/4.78 | | | simplifying with (16), (99) gives: % 30.70/4.78 | | | (101) all_276_1 = 0 % 30.70/4.78 | | | % 30.70/4.78 | | | BETA: splitting (98) gives: % 30.70/4.78 | | | % 30.70/4.78 | | | Case 1: % 30.70/4.78 | | | | % 30.70/4.78 | | | | (102) ~ (all_276_1 = 0) % 30.70/4.78 | | | | % 30.70/4.78 | | | | REDUCE: (101), (102) imply: % 30.70/4.78 | | | | (103) $false % 30.70/4.78 | | | | % 30.70/4.78 | | | | CLOSE: (103) is inconsistent. % 30.70/4.78 | | | | % 30.70/4.78 | | | Case 2: % 30.70/4.78 | | | | % 30.70/4.78 | | | | (104) ~ (all_276_0 = all_114_0) % 30.70/4.78 | | | | % 30.70/4.78 | | | | REDUCE: (44), (100), (104) imply: % 30.70/4.78 | | | | (105) $false % 30.70/4.78 | | | | % 30.70/4.78 | | | | CLOSE: (105) is inconsistent. % 30.70/4.78 | | | | % 30.70/4.78 | | | End of split % 30.70/4.78 | | | % 30.70/4.78 | | End of split % 30.70/4.78 | | % 30.70/4.78 | End of split % 30.70/4.78 | % 30.70/4.78 End of proof % 30.70/4.78 % SZS output end Proof for theBenchmark % 30.70/4.78 % 30.70/4.78 4166ms %------------------------------------------------------------------------------