%------------------------------------------------------------------------------ % File : Princess---230619 % Problem : COM305_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 : n025.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:43 PM UTC 2026 % Result : Theorem 28.67s 4.54s % Output : Proof 38.06s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.12 % Problem : COM305_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 : n025.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 20:39:43 EDT 2026 % 0.15/0.33 % CPUTime : % 0.53/0.59 ________ _____ % 0.53/0.59 ___ __ \_________(_)________________________________ % 0.53/0.59 __ /_/ /_ ___/_ /__ __ \ ___/ _ \_ ___/_ ___/ % 0.53/0.59 _ ____/_ / _ / _ / / / /__ / __/(__ )_(__ ) % 0.53/0.59 /_/ /_/ /_/ /_/ /_/\___/ \___//____/ /____/ % 0.53/0.59 % 0.53/0.59 A Theorem Prover for First-Order Logic modulo Linear Integer Arithmetic % 0.53/0.59 (2023-06-19) % 0.53/0.59 % 0.53/0.59 (c) Philipp Rümmer, 2009-2023 % 0.53/0.59 Contributors: Peter Backeman, Peter Baumgartner, Angelo Brillout, Zafer Esen, % 0.53/0.59 Amanda Stjerna. % 0.53/0.59 Free software under BSD-3-Clause. % 0.53/0.59 % 0.53/0.59 For more information, visit http://www.philipp.ruemmer.org/princess.shtml % 0.53/0.59 % 0.53/0.60 Loading /export/starexec/sandbox2/benchmark/theBenchmark.p ... % 0.53/0.61 Running up to 7 provers in parallel. % 0.53/0.62 Prover 0: Options: +triggersInConjecture +genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1042961893 % 0.53/0.62 Prover 1: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1571432423 % 0.53/0.62 Prover 2: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMinimalAndEmpty -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1065072994 % 0.53/0.62 Prover 3: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1922548996 % 0.53/0.62 Prover 4: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=1868514696 % 0.53/0.62 Prover 5: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMaximal -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=complete -randomSeed=1259561288 % 0.53/0.62 Prover 6: Options: -triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximalOutermost -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1399714365 % 9.85/2.03 Prover 0: Preprocessing ... % 9.85/2.04 Prover 5: Preprocessing ... % 10.60/2.13 Prover 2: Preprocessing ... % 10.60/2.13 Prover 1: Preprocessing ... % 10.60/2.18 Prover 3: Preprocessing ... % 10.60/2.19 Prover 6: Preprocessing ... % 11.25/2.20 Prover 4: Preprocessing ... % 24.97/4.04 Prover 1: Warning: ignoring some quantifiers % 25.76/4.17 Prover 3: Warning: ignoring some quantifiers % 26.38/4.22 Prover 3: Constructing countermodel ... % 26.38/4.23 Prover 1: Constructing countermodel ... % 26.38/4.28 Prover 6: Proving ... % 27.10/4.31 Prover 0: Proving ... % 27.10/4.33 Prover 4: Warning: ignoring some quantifiers % 27.10/4.38 Prover 4: Constructing countermodel ... % 27.85/4.45 Prover 5: Proving ... % 28.67/4.54 Prover 3: proved (3923ms) % 28.67/4.54 % 28.67/4.54 % SZS status Theorem for /export/starexec/sandbox2/benchmark/theBenchmark.p % 28.67/4.54 % 28.67/4.56 Prover 6: stopped % 28.67/4.57 Prover 0: stopped % 28.67/4.57 Prover 5: stopped % 28.67/4.58 Prover 7: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-236303470 % 28.67/4.58 Prover 8: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-200781089 % 28.67/4.58 Prover 11: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1509710984 % 28.67/4.58 Prover 10: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=919308125 % 30.10/4.76 Prover 2: Proving ... % 30.10/4.76 Prover 2: stopped % 30.10/4.76 Prover 13: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=complete -randomSeed=1138197443 % 31.62/4.98 Prover 1: Found proof (size 13) % 31.62/4.98 Prover 1: proved (4366ms) % 31.62/4.98 Prover 4: stopped % 34.64/5.30 Prover 7: Preprocessing ... % 34.64/5.32 Prover 8: Preprocessing ... % 34.64/5.38 Prover 13: Preprocessing ... % 35.38/5.41 Prover 10: Preprocessing ... % 35.38/5.41 Prover 11: Preprocessing ... % 35.38/5.47 Prover 7: stopped % 36.10/5.51 Prover 10: stopped % 36.10/5.58 Prover 11: stopped % 36.10/5.58 Prover 13: stopped % 37.62/5.81 Prover 8: Warning: ignoring some quantifiers % 37.62/5.84 Prover 8: Constructing countermodel ... % 37.62/5.86 Prover 8: stopped % 37.62/5.86 % 37.62/5.86 % SZS status Theorem for /export/starexec/sandbox2/benchmark/theBenchmark.p % 37.62/5.86 % 37.62/5.87 % SZS output start Proof for theBenchmark % 37.62/5.89 Assumptions after simplification: % 37.62/5.89 --------------------------------- % 37.62/5.89 % 37.62/5.89 (projectFirstRaw-0) % 38.06/5.93 vprojectFirstRaw(vtempty) = vtempty & vRawTable(vtempty) % 38.06/5.93 % 38.06/5.93 (projectFirstRawPreservesWelltypedRaw-tempty) % 38.06/5.94 vTType(vttempty) & vRawTable(vtempty) & ? [v0: vRawTable] : % 38.06/5.94 (vprojectFirstRaw(vtempty) = v0 & vRawTable(v0) & ? [v1: vName] : ? [v2: % 38.06/5.94 vFType] : ? [v3: vTType] : ? [v4: vTType] : ? [v5: vTType] : ? [v6: % 38.06/5.94 int] : ( ~ (v6 = 0) & vwelltypedRawtable(v5, v0) = v6 & % 38.06/5.94 vwelltypedRawtable(v4, vtempty) = 0 & vttcons(v1, v2, v3) = v4 & % 38.06/5.94 vttcons(v1, v2, vttempty) = v5 & vTType(v5) & vTType(v4) & vTType(v3) & % 38.06/5.94 vFType(v2) & vName(v1))) % 38.06/5.94 % 38.06/5.94 (welltypedRawtable-0) % 38.06/5.94 vRawTable(vtempty) & ! [v0: vTType] : ! [v1: int] : (v1 = 0 | ~ % 38.06/5.94 (vwelltypedRawtable(v0, vtempty) = v1) | ~ vTType(v0)) % 38.06/5.94 % 38.06/5.94 (function-axioms) % 38.06/5.97 ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vTType] : ! % 38.06/5.97 [v3: vQuery] : ! [v4: vTTContext] : (v1 = v0 | ~ (vptcheck(v4, v3, v2) = v1) % 38.06/5.97 | ~ (vptcheck(v4, v3, v2) = v0)) & ! [v0: vRawTable] : ! [v1: vRawTable] % 38.06/5.97 : ! [v2: vPred] : ! [v3: vAttrL] : ! [v4: vRawTable] : (v1 = v0 | ~ % 38.06/5.97 (vfilterRows(v4, v3, v2) = v1) | ~ (vfilterRows(v4, v3, v2) = v0)) & ! % 38.06/5.97 [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vRow] : ! [v3: % 38.06/5.97 vAttrL] : ! [v4: vPred] : (v1 = v0 | ~ (vfilterSingleRow(v4, v3, v2) = v1) % 38.06/5.97 | ~ (vfilterSingleRow(v4, v3, v2) = v0)) & ! [v0: vOptVal] : ! [v1: % 38.06/5.97 vOptVal] : ! [v2: vRow] : ! [v3: vAttrL] : ! [v4: vExp] : (v1 = v0 | ~ % 38.06/5.97 (vevalExpRow(v4, v3, v2) = v1) | ~ (vevalExpRow(v4, v3, v2) = v0)) & ! % 38.06/5.97 [v0: vOptRawTable] : ! [v1: vOptRawTable] : ! [v2: vRawTable] : ! [v3: % 38.06/5.97 vAttrL] : ! [v4: vAttrL] : (v1 = v0 | ~ (vprojectCols(v4, v3, v2) = v1) | % 38.06/5.97 ~ (vprojectCols(v4, v3, v2) = v0)) & ! [v0: vOptRawTable] : ! [v1: % 38.06/5.97 vOptRawTable] : ! [v2: vRawTable] : ! [v3: vAttrL] : ! [v4: vName] : (v1 % 38.06/5.97 = v0 | ~ (vfindCol(v4, v3, v2) = v1) | ~ (vfindCol(v4, v3, v2) = v0)) & ! % 38.06/5.97 [v0: vTStore] : ! [v1: vTStore] : ! [v2: vTStore] : ! [v3: vTable] : ! % 38.06/5.97 [v4: vName] : (v1 = v0 | ~ (vbindStore(v4, v3, v2) = v1) | ~ (vbindStore(v4, % 38.06/5.97 v3, v2) = v0)) & ! [v0: vTTContext] : ! [v1: vTTContext] : ! [v2: % 38.06/5.97 vTTContext] : ! [v3: vTType] : ! [v4: vName] : (v1 = v0 | ~ % 38.06/5.97 (vbindContext(v4, v3, v2) = v1) | ~ (vbindContext(v4, v3, v2) = v0)) & ! % 38.06/5.97 [v0: vTType] : ! [v1: vTType] : ! [v2: vTType] : ! [v3: vFType] : ! [v4: % 38.06/5.97 vName] : (v1 = v0 | ~ (vttcons(v4, v3, v2) = v1) | ~ (vttcons(v4, v3, v2) % 38.06/5.97 = v0)) & ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vPred] : ! [v3: % 38.06/5.97 vName] : ! [v4: vSelect] : (v1 = v0 | ~ (vselectFromWhere(v4, v3, v2) = % 38.06/5.97 v1) | ~ (vselectFromWhere(v4, v3, v2) = v0)) & ! [v0: MultipleValueBool] % 38.06/5.97 : ! [v1: MultipleValueBool] : ! [v2: vTTContext] : ! [v3: vTStore] : (v1 = % 38.06/5.97 v0 | ~ (vstoreContextConsistent(v3, v2) = v1) | ~ % 38.06/5.97 (vstoreContextConsistent(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! % 38.06/5.97 [v1: MultipleValueBool] : ! [v2: vTType] : ! [v3: vPred] : (v1 = v0 | ~ % 38.06/5.97 (vtcheckPred(v3, v2) = v1) | ~ (vtcheckPred(v3, v2) = v0)) & ! [v0: % 38.06/5.97 vOptFType] : ! [v1: vOptFType] : ! [v2: vTType] : ! [v3: vExp] : (v1 = v0 % 38.06/5.97 | ~ (vtypeOfExp(v3, v2) = v1) | ~ (vtypeOfExp(v3, v2) = v0)) & ! [v0: % 38.06/5.97 vOptTType] : ! [v1: vOptTType] : ! [v2: vTType] : ! [v3: vSelect] : (v1 = % 38.06/5.97 v0 | ~ (vprojectType(v3, v2) = v1) | ~ (vprojectType(v3, v2) = v0)) & ! % 38.06/5.97 [v0: vOptTType] : ! [v1: vOptTType] : ! [v2: vTType] : ! [v3: vAttrL] : (v1 % 38.06/5.97 = v0 | ~ (vprojectTypeAttrL(v3, v2) = v1) | ~ (vprojectTypeAttrL(v3, v2) = % 38.06/5.97 v0)) & ! [v0: vOptFType] : ! [v1: vOptFType] : ! [v2: vTType] : ! [v3: % 38.06/5.97 vName] : (v1 = v0 | ~ (vfindColType(v3, v2) = v1) | ~ (vfindColType(v3, % 38.06/5.97 v2) = v0)) & ! [v0: vOptQuery] : ! [v1: vOptQuery] : ! [v2: vTStore] % 38.06/5.97 : ! [v3: vQuery] : (v1 = v0 | ~ (vreduce(v3, v2) = v1) | ~ (vreduce(v3, v2) % 38.06/5.97 = v0)) & ! [v0: vTable] : ! [v1: vTable] : ! [v2: vPred] : ! [v3: % 38.06/5.97 vTable] : (v1 = v0 | ~ (vfilterTable(v3, v2) = v1) | ~ (vfilterTable(v3, % 38.06/5.97 v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : % 38.06/5.97 ! [v2: vVal] : ! [v3: vVal] : (v1 = v0 | ~ (vlessThan(v3, v2) = v1) | ~ % 38.06/5.97 (vlessThan(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 38.06/5.97 MultipleValueBool] : ! [v2: vVal] : ! [v3: vVal] : (v1 = v0 | ~ % 38.06/5.97 (vgreaterThan(v3, v2) = v1) | ~ (vgreaterThan(v3, v2) = v0)) & ! [v0: % 38.06/5.97 vOptTable] : ! [v1: vOptTable] : ! [v2: vTable] : ! [v3: vSelect] : (v1 = % 38.06/5.97 v0 | ~ (vprojectTable(v3, v2) = v1) | ~ (vprojectTable(v3, v2) = v0)) & ! % 38.06/5.97 [v0: vOptTType] : ! [v1: vOptTType] : ! [v2: vTTContext] : ! [v3: vName] : % 38.06/5.97 (v1 = v0 | ~ (vlookupContext(v3, v2) = v1) | ~ (vlookupContext(v3, v2) = % 38.06/5.97 v0)) & ! [v0: vOptTable] : ! [v1: vOptTable] : ! [v2: vTStore] : ! % 38.06/5.97 [v3: vName] : (v1 = v0 | ~ (vlookupStore(v3, v2) = v1) | ~ (vlookupStore(v3, % 38.06/5.97 v2) = v0)) & ! [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: % 38.06/5.97 vRawTable] : ! [v3: vRawTable] : (v1 = v0 | ~ (vrawDifference(v3, v2) = % 38.06/5.97 v1) | ~ (vrawDifference(v3, v2) = v0)) & ! [v0: vRawTable] : ! [v1: % 38.06/5.97 vRawTable] : ! [v2: vRawTable] : ! [v3: vRawTable] : (v1 = v0 | ~ % 38.06/5.97 (vrawIntersection(v3, v2) = v1) | ~ (vrawIntersection(v3, v2) = v0)) & ! % 38.06/5.97 [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : ! [v3: vRawTable] % 38.06/5.97 : (v1 = v0 | ~ (vrawUnion(v3, v2) = v1) | ~ (vrawUnion(v3, v2) = v0)) & ! % 38.06/5.97 [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : ! [v3: vRawTable] % 38.06/5.97 : (v1 = v0 | ~ (vattachColToFrontRaw(v3, v2) = v1) | ~ % 38.06/5.97 (vattachColToFrontRaw(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 38.06/5.97 MultipleValueBool] : ! [v2: vRawTable] : ! [v3: vRawTable] : (v1 = v0 | ~ % 38.06/5.97 (vsameLength(v3, v2) = v1) | ~ (vsameLength(v3, v2) = v0)) & ! [v0: % 38.06/5.97 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vRawTable] : ! % 38.06/5.97 [v3: vRow] : (v1 = v0 | ~ (vrowIn(v3, v2) = v1) | ~ (vrowIn(v3, v2) = v0)) & % 38.06/5.97 ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vTable] : ! % 38.06/5.97 [v3: vTType] : (v1 = v0 | ~ (vwelltypedtable(v3, v2) = v1) | ~ % 38.06/5.97 (vwelltypedtable(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 38.06/5.97 MultipleValueBool] : ! [v2: vRawTable] : ! [v3: vTType] : (v1 = v0 | ~ % 38.06/5.98 (vwelltypedRawtable(v3, v2) = v1) | ~ (vwelltypedRawtable(v3, v2) = v0)) & % 38.06/5.98 ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vRow] : ! % 38.06/5.98 [v3: vTType] : (v1 = v0 | ~ (vwelltypedRow(v3, v2) = v1) | ~ % 38.06/5.98 (vwelltypedRow(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 38.06/5.98 MultipleValueBool] : ! [v2: vAttrL] : ! [v3: vTType] : (v1 = v0 | ~ % 38.06/5.98 (vmatchingAttrL(v3, v2) = v1) | ~ (vmatchingAttrL(v3, v2) = v0)) & ! [v0: % 38.06/5.98 vAttrL] : ! [v1: vAttrL] : ! [v2: vAttrL] : ! [v3: vAttrL] : (v1 = v0 | % 38.06/5.98 ~ (vappend(v3, v2) = v1) | ~ (vappend(v3, v2) = v0)) & ! [v0: vAttrL] : ! % 38.06/5.98 [v1: vAttrL] : ! [v2: vAttrL] : ! [v3: vName] : (v1 = v0 | ~ (vacons(v3, % 38.06/5.98 v2) = v1) | ~ (vacons(v3, v2) = v0)) & ! [v0: vPred] : ! [v1: vPred] % 38.06/5.98 : ! [v2: vExp] : ! [v3: vExp] : (v1 = v0 | ~ (vlt(v3, v2) = v1) | ~ % 38.06/5.98 (vlt(v3, v2) = v0)) & ! [v0: vPred] : ! [v1: vPred] : ! [v2: vExp] : ! % 38.06/5.98 [v3: vExp] : (v1 = v0 | ~ (vgt(v3, v2) = v1) | ~ (vgt(v3, v2) = v0)) & ! % 38.06/5.98 [v0: vPred] : ! [v1: vPred] : ! [v2: vExp] : ! [v3: vExp] : (v1 = v0 | ~ % 38.06/5.98 (veq(v3, v2) = v1) | ~ (veq(v3, v2) = v0)) & ! [v0: vPred] : ! [v1: % 38.06/5.98 vPred] : ! [v2: vPred] : ! [v3: vPred] : (v1 = v0 | ~ (vand(v3, v2) = v1) % 38.06/5.98 | ~ (vand(v3, v2) = v0)) & ! [v0: vTable] : ! [v1: vTable] : ! [v2: % 38.06/5.98 vRawTable] : ! [v3: vAttrL] : (v1 = v0 | ~ (vtable(v3, v2) = v1) | ~ % 38.06/5.98 (vtable(v3, v2) = v0)) & ! [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: % 38.06/5.98 vRawTable] : ! [v3: vRow] : (v1 = v0 | ~ (vtcons(v3, v2) = v1) | ~ % 38.06/5.98 (vtcons(v3, v2) = v0)) & ! [v0: vRow] : ! [v1: vRow] : ! [v2: vRow] : ! % 38.06/5.98 [v3: vVal] : (v1 = v0 | ~ (vrcons(v3, v2) = v1) | ~ (vrcons(v3, v2) = v0)) & % 38.06/5.98 ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ! [v3: vQuery] : (v1 = % 38.06/5.98 v0 | ~ (vDifference(v3, v2) = v1) | ~ (vDifference(v3, v2) = v0)) & ! % 38.06/5.98 [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ! [v3: vQuery] : (v1 = v0 % 38.06/5.98 | ~ (vIntersection(v3, v2) = v1) | ~ (vIntersection(v3, v2) = v0)) & ! % 38.06/5.98 [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ! [v3: vQuery] : (v1 = v0 % 38.06/5.98 | ~ (vUnion(v3, v2) = v1) | ~ (vUnion(v3, v2) = v0)) & ! [v0: % 38.06/5.98 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptFType] : (v1 = % 38.06/5.98 v0 | ~ (visSomeFType(v2) = v1) | ~ (visSomeFType(v2) = v0)) & ! [v0: % 38.06/5.98 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptVal] : (v1 = % 38.06/5.98 v0 | ~ (visSomeVal(v2) = v1) | ~ (visSomeVal(v2) = v0)) & ! [v0: % 38.06/5.98 vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : (v1 = v0 | ~ % 38.06/5.98 (vprojectEmptyCol(v2) = v1) | ~ (vprojectEmptyCol(v2) = v0)) & ! [v0: % 38.06/5.98 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptQuery] : (v1 = % 38.06/5.98 v0 | ~ (visSomeQuery(v2) = v1) | ~ (visSomeQuery(v2) = v0)) & ! [v0: % 38.06/5.98 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vQuery] : (v1 = v0 % 38.06/5.98 | ~ (visValue(v2) = v1) | ~ (visValue(v2) = v0)) & ! [v0: % 38.06/5.98 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptTType] : (v1 = % 38.06/5.98 v0 | ~ (visSomeTType(v2) = v1) | ~ (visSomeTType(v2) = v0)) & ! [v0: % 38.06/5.98 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptTable] : (v1 = % 38.06/5.98 v0 | ~ (visSomeTable(v2) = v1) | ~ (visSomeTable(v2) = v0)) & ! [v0: % 38.06/5.98 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptRawTable] : % 38.06/5.98 (v1 = v0 | ~ (visSomeRawTable(v2) = v1) | ~ (visSomeRawTable(v2) = v0)) & ! % 38.06/5.98 [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : (v1 = v0 | ~ % 38.06/5.98 (vdropFirstColRaw(v2) = v1) | ~ (vdropFirstColRaw(v2) = v0)) & ! [v0: % 38.06/5.98 vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : (v1 = v0 | ~ % 38.06/5.98 (vprojectFirstRaw(v2) = v1) | ~ (vprojectFirstRaw(v2) = v0)) & ! [v0: % 38.06/5.98 vFType] : ! [v1: vFType] : ! [v2: vVal] : (v1 = v0 | ~ (vfieldType(v2) = % 38.06/5.98 v1) | ~ (vfieldType(v2) = v0)) & ! [v0: vAttrL] : ! [v1: vAttrL] : ! % 38.06/5.98 [v2: vTable] : (v1 = v0 | ~ (vgetAttrL(v2) = v1) | ~ (vgetAttrL(v2) = v0)) & % 38.06/5.98 ! [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: vTable] : (v1 = v0 | ~ % 38.06/5.98 (vgetRaw(v2) = v1) | ~ (vgetRaw(v2) = v0)) & ! [v0: vFType] : ! [v1: % 38.06/5.98 vFType] : ! [v2: vOptFType] : (v1 = v0 | ~ (vgetFType(v2) = v1) | ~ % 38.06/5.98 (vgetFType(v2) = v0)) & ! [v0: vVal] : ! [v1: vVal] : ! [v2: vOptVal] : % 38.06/5.98 (v1 = v0 | ~ (vgetVal(v2) = v1) | ~ (vgetVal(v2) = v0)) & ! [v0: vQuery] : % 38.06/5.98 ! [v1: vQuery] : ! [v2: vOptQuery] : (v1 = v0 | ~ (vgetQuery(v2) = v1) | ~ % 38.06/5.98 (vgetQuery(v2) = v0)) & ! [v0: vTType] : ! [v1: vTType] : ! [v2: % 38.06/5.98 vOptTType] : (v1 = v0 | ~ (vgetTType(v2) = v1) | ~ (vgetTType(v2) = v0)) & % 38.06/5.98 ! [v0: vTable] : ! [v1: vTable] : ! [v2: vOptTable] : (v1 = v0 | ~ % 38.06/5.98 (vgetTable(v2) = v1) | ~ (vgetTable(v2) = v0)) & ! [v0: vRawTable] : ! % 38.06/5.98 [v1: vRawTable] : ! [v2: vOptRawTable] : (v1 = v0 | ~ (vgetRawTable(v2) = % 38.06/5.98 v1) | ~ (vgetRawTable(v2) = v0)) & ! [v0: vOptFType] : ! [v1: % 38.06/5.98 vOptFType] : ! [v2: vFType] : (v1 = v0 | ~ (vsomeFType(v2) = v1) | ~ % 38.06/5.98 (vsomeFType(v2) = v0)) & ! [v0: vVal] : ! [v1: vVal] : ! [v2: vVal] : (v1 % 38.06/5.98 = v0 | ~ (venumVal(v2) = v1) | ~ (venumVal(v2) = v0)) & ! [v0: vPred] : % 38.06/5.98 ! [v1: vPred] : ! [v2: vPred] : (v1 = v0 | ~ (vnot(v2) = v1) | ~ (vnot(v2) % 38.06/5.98 = v0)) & ! [v0: vOptVal] : ! [v1: vOptVal] : ! [v2: vVal] : (v1 = v0 | % 38.06/5.98 ~ (vsomeVal(v2) = v1) | ~ (vsomeVal(v2) = v0)) & ! [v0: vExp] : ! [v1: % 38.06/5.98 vExp] : ! [v2: vName] : (v1 = v0 | ~ (vlookup(v2) = v1) | ~ (vlookup(v2) % 38.06/5.98 = v0)) & ! [v0: vExp] : ! [v1: vExp] : ! [v2: vVal] : (v1 = v0 | ~ % 38.06/5.98 (vconstant(v2) = v1) | ~ (vconstant(v2) = v0)) & ! [v0: vName] : ! [v1: % 38.06/5.98 vName] : ! [v2: vName] : (v1 = v0 | ~ (venumName(v2) = v1) | ~ % 38.06/5.98 (venumName(v2) = v0)) & ! [v0: vOptQuery] : ! [v1: vOptQuery] : ! [v2: % 38.06/5.98 vQuery] : (v1 = v0 | ~ (vsomeQuery(v2) = v1) | ~ (vsomeQuery(v2) = v0)) & % 38.06/5.98 ! [v0: vFType] : ! [v1: vFType] : ! [v2: vFType] : (v1 = v0 | ~ % 38.06/5.98 (venumFType(v2) = v1) | ~ (venumFType(v2) = v0)) & ! [v0: vOptTType] : ! % 38.06/5.98 [v1: vOptTType] : ! [v2: vTType] : (v1 = v0 | ~ (vsomeTType(v2) = v1) | ~ % 38.06/5.98 (vsomeTType(v2) = v0)) & ! [v0: vOptRawTable] : ! [v1: vOptRawTable] : ! % 38.06/5.98 [v2: vRawTable] : (v1 = v0 | ~ (vsomeRawTable(v2) = v1) | ~ % 38.06/5.98 (vsomeRawTable(v2) = v0)) & ! [v0: vOptTable] : ! [v1: vOptTable] : ! % 38.06/5.98 [v2: vTable] : (v1 = v0 | ~ (vsomeTable(v2) = v1) | ~ (vsomeTable(v2) = v0)) % 38.06/5.98 & ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vTable] : (v1 = v0 | ~ % 38.06/5.98 (vtvalue(v2) = v1) | ~ (vtvalue(v2) = v0)) & ! [v0: vSelect] : ! [v1: % 38.06/5.98 vSelect] : ! [v2: vAttrL] : (v1 = v0 | ~ (vlist(v2) = v1) | ~ (vlist(v2) % 38.06/5.98 = v0)) % 38.06/5.98 % 38.06/5.98 Further assumptions not needed in the proof: % 38.06/5.98 -------------------------------------------- % 38.06/5.98 DIFF-Intersection-Difference, DIFF-Union-Difference, DIFF-Union-Intersection, % 38.06/5.98 DIFF-aempty-acons, DIFF-all-list, DIFF-and-eq, DIFF-and-gt, DIFF-and-lt, % 38.06/5.98 DIFF-and-not, DIFF-constant-lookup, DIFF-emptyContext-bindContext, % 38.06/5.98 DIFF-emptyStore-bindStore, DIFF-eq-gt, DIFF-eq-lt, DIFF-gt-lt, % 38.06/5.98 DIFF-initFType-enumFType, DIFF-initName-enumName, DIFF-initVal-enumVal, % 38.06/5.98 DIFF-noFType-someFType, DIFF-noQuery-someQuery, DIFF-noRawTable-someRawTable, % 38.06/5.98 DIFF-noTType-someTType, DIFF-noTable-someTable, DIFF-noVal-someVal, DIFF-not-eq, % 38.06/5.98 DIFF-not-gt, DIFF-not-lt, DIFF-ptrue-and, DIFF-ptrue-eq, DIFF-ptrue-gt, % 38.06/5.98 DIFF-ptrue-lt, DIFF-ptrue-not, DIFF-rempty-rcons, % 38.06/5.98 DIFF-selectFromWhere-Difference, DIFF-selectFromWhere-Intersection, % 38.06/5.98 DIFF-selectFromWhere-Union, DIFF-tempty-tcons, DIFF-ttempty-ttcons, % 38.06/5.98 DIFF-tvalue-Difference, DIFF-tvalue-Intersection, DIFF-tvalue-Union, % 38.06/5.98 DIFF-tvalue-selectFromWhere, EQ-Difference, EQ-Intersection, EQ-Union, EQ-acons, % 38.06/5.98 EQ-and, EQ-bindContext, EQ-bindStore, EQ-constant, EQ-enumFType, EQ-enumName, % 38.06/5.98 EQ-enumVal, EQ-eq, EQ-gt, EQ-list, EQ-lookup, EQ-lt, EQ-not, EQ-rcons, % 38.06/5.98 EQ-selectFromWhere, EQ-someFType, EQ-someQuery, EQ-someRawTable, EQ-someTType, % 38.06/5.98 EQ-someTable, EQ-someVal, EQ-table, EQ-tcons, EQ-ttcons, EQ-tvalue, TDifference, % 38.06/5.98 TDifference_inv1, TDifference_inv2, TIntersection, TIntersection_inv1, % 38.06/5.98 TIntersection_inv2, TSelectFromWhere, TSelectFromWhere_inv, TTTContextDuplicate, % 38.06/5.98 TTTContextSwap, TUnion, TUnion_inv1, TUnion_inv2, Ttvalue, Ttvalue_inv, % 38.06/5.98 append-0, append-1, append-INV, attachColToFrontRaw-0, attachColToFrontRaw-1, % 38.06/5.98 attachColToFrontRaw-2, attachColToFrontRaw-INV, dom-AttrL, dom-Exp, % 38.06/5.98 dom-OptFType, dom-OptQuery, dom-OptRawTable, dom-OptTType, dom-OptTable, % 38.06/5.98 dom-OptVal, dom-Pred, dom-Query, dom-RawTable, dom-Row, dom-Select, dom-TStore, % 38.06/5.98 dom-TTContext, dom-TType, dom-Table, dropFirstColRaw-0, dropFirstColRaw-1, % 38.06/5.98 dropFirstColRaw-2, dropFirstColRaw-INV, evalExpRow-0, evalExpRow-1, % 38.06/5.98 evalExpRow-2, evalExpRow-3, evalExpRow-INV, filterRows-0, filterRows-1, % 38.06/5.98 filterRows-2, filterRows-INV, filterSingleRow-0, filterSingleRow-1, % 38.06/5.98 filterSingleRow-2, filterSingleRow-3, filterSingleRow-4, filterSingleRow-5, % 38.06/5.98 filterSingleRow-false-INV, filterSingleRow-true-INV, filterTable-0, % 38.06/5.98 filterTable-INV, findCol-0, findCol-1, findCol-2, findCol-INV, findColType-0, % 38.06/5.98 findColType-1, findColType-2, findColType-INV, getAttrL-0, getAttrL-INV, % 38.06/5.98 getFType-0, getQuery-0, getRaw-0, getRaw-INV, getRawTable-0, getTType-0, % 38.06/5.98 getTable-0, getVal-0, isSomeFType-0, isSomeFType-1, isSomeFType-false-INV, % 38.06/5.98 isSomeFType-true-INV, isSomeQuery-0, isSomeQuery-1, isSomeQuery-false-INV, % 38.06/5.98 isSomeQuery-true-INV, isSomeRawTable-0, isSomeRawTable-1, % 38.06/5.98 isSomeRawTable-false-INV, isSomeRawTable-true-INV, isSomeTType-0, isSomeTType-1, % 38.06/5.98 isSomeTType-false-INV, isSomeTType-true-INV, isSomeTable-0, isSomeTable-1, % 38.06/5.98 isSomeTable-false-INV, isSomeTable-true-INV, isSomeVal-0, isSomeVal-1, % 38.06/5.98 isSomeVal-false-INV, isSomeVal-true-INV, isValue-0, isValue-1, isValue-2, % 38.06/5.98 isValue-3, isValue-4, isValue-false-INV, isValue-true-INV, lookupContext-0, % 38.06/5.98 lookupContext-1, lookupContext-2, lookupContext-INV, lookupStore-0, % 38.06/5.98 lookupStore-1, lookupStore-2, lookupStore-INV, matchingAttrL-0, matchingAttrL-1, % 38.06/5.98 matchingAttrL-2, matchingAttrL-false-INV, matchingAttrL-true-INV, projectCols-0, % 38.06/5.98 projectCols-1, projectCols-2, projectCols-INV, projectEmptyCol-0, % 38.06/5.98 projectEmptyCol-1, projectEmptyCol-INV, projectFirstRaw-1, projectFirstRaw-2, % 38.06/5.98 projectFirstRaw-INV, projectTable-0, projectTable-1, projectTable-2, % 38.06/5.98 projectTable-INV, projectType-0, projectType-1, projectType-INV, % 38.06/5.98 projectTypeAttrL-0, projectTypeAttrL-1, projectTypeAttrL-2, % 38.06/5.98 projectTypeAttrL-INV, rawDifference-0, rawDifference-1, rawDifference-2, % 38.06/5.98 rawDifference-3, rawDifference-4, rawDifference-INV, rawIntersection-0, % 38.06/5.98 rawIntersection-1, rawIntersection-2, rawIntersection-3, rawIntersection-4, % 38.06/5.98 rawIntersection-INV, rawUnion-0, rawUnion-1, rawUnion-2, rawUnion-INV, reduce-0, % 38.06/5.98 reduce-1, reduce-10, reduce-11, reduce-12, reduce-13, reduce-14, reduce-15, % 38.06/5.98 reduce-16, reduce-17, reduce-18, reduce-2, reduce-3, reduce-4, reduce-5, % 38.06/5.98 reduce-6, reduce-7, reduce-8, reduce-9, reduce-INV, rowIn-0, rowIn-1, % 38.06/5.98 rowIn-false-INV, rowIn-true-INV, sameLength-0, sameLength-1, sameLength-2, % 38.06/5.98 sameLength-false-INV, sameLength-true-INV, storeContextConsistent-0, % 38.06/5.98 storeContextConsistent-1, storeContextConsistent-2, % 38.06/5.98 storeContextConsistent-false-INV, storeContextConsistent-true-INV, tcheckPred-0, % 38.06/5.98 tcheckPred-1, tcheckPred-2, tcheckPred-3, tcheckPred-4, tcheckPred-5, % 38.06/5.98 tcheckPred-false-INV, tcheckPred-true-INV, typeOfExp-0, typeOfExp-1, % 38.06/5.98 typeOfExp-2, typeOfExp-3, typeOfExp-INV, welltypedRawtable-1, % 38.06/5.98 welltypedRawtable-false-INV, welltypedRawtable-true-INV, welltypedRow-0, % 38.06/5.98 welltypedRow-1, welltypedRow-2, welltypedRow-false-INV, welltypedRow-true-INV, % 38.06/5.98 welltypedtable-0, welltypedtable-false-INV, welltypedtable-true-INV % 38.06/5.98 % 38.06/5.98 Those formulas are unsatisfiable: % 38.06/5.98 --------------------------------- % 38.06/5.98 % 38.06/5.98 Begin of proof % 38.06/5.98 | % 38.06/5.98 | ALPHA: (welltypedRawtable-0) implies: % 38.06/5.98 | (1) ! [v0: vTType] : ! [v1: int] : (v1 = 0 | ~ (vwelltypedRawtable(v0, % 38.06/5.98 | vtempty) = v1) | ~ vTType(v0)) % 38.06/5.98 | % 38.06/5.98 | ALPHA: (projectFirstRaw-0) implies: % 38.06/5.98 | (2) vprojectFirstRaw(vtempty) = vtempty % 38.06/5.98 | % 38.06/5.98 | ALPHA: (projectFirstRawPreservesWelltypedRaw-tempty) implies: % 38.06/5.98 | (3) ? [v0: vRawTable] : (vprojectFirstRaw(vtempty) = v0 & vRawTable(v0) & % 38.06/5.98 | ? [v1: vName] : ? [v2: vFType] : ? [v3: vTType] : ? [v4: vTType] : % 38.06/5.98 | ? [v5: vTType] : ? [v6: int] : ( ~ (v6 = 0) & % 38.06/5.98 | vwelltypedRawtable(v5, v0) = v6 & vwelltypedRawtable(v4, vtempty) = % 38.06/5.98 | 0 & vttcons(v1, v2, v3) = v4 & vttcons(v1, v2, vttempty) = v5 & % 38.06/5.98 | vTType(v5) & vTType(v4) & vTType(v3) & vFType(v2) & vName(v1))) % 38.06/5.98 | % 38.06/5.98 | ALPHA: (function-axioms) implies: % 38.06/5.98 | (4) ! [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : (v1 = v0 % 38.06/5.98 | | ~ (vprojectFirstRaw(v2) = v1) | ~ (vprojectFirstRaw(v2) = v0)) % 38.06/5.98 | % 38.06/5.99 | DELTA: instantiating (3) with fresh symbol all_331_0 gives: % 38.06/5.99 | (5) vprojectFirstRaw(vtempty) = all_331_0 & vRawTable(all_331_0) & ? [v0: % 38.06/5.99 | vName] : ? [v1: vFType] : ? [v2: vTType] : ? [v3: vTType] : ? % 38.06/5.99 | [v4: vTType] : ? [v5: int] : ( ~ (v5 = 0) & vwelltypedRawtable(v4, % 38.06/5.99 | all_331_0) = v5 & vwelltypedRawtable(v3, vtempty) = 0 & vttcons(v0, % 38.06/5.99 | v1, v2) = v3 & vttcons(v0, v1, vttempty) = v4 & vTType(v4) & % 38.06/5.99 | vTType(v3) & vTType(v2) & vFType(v1) & vName(v0)) % 38.06/5.99 | % 38.06/5.99 | ALPHA: (5) implies: % 38.06/5.99 | (6) vprojectFirstRaw(vtempty) = all_331_0 % 38.06/5.99 | (7) ? [v0: vName] : ? [v1: vFType] : ? [v2: vTType] : ? [v3: vTType] : % 38.06/5.99 | ? [v4: vTType] : ? [v5: int] : ( ~ (v5 = 0) & vwelltypedRawtable(v4, % 38.06/5.99 | all_331_0) = v5 & vwelltypedRawtable(v3, vtempty) = 0 & vttcons(v0, % 38.06/5.99 | v1, v2) = v3 & vttcons(v0, v1, vttempty) = v4 & vTType(v4) & % 38.06/5.99 | vTType(v3) & vTType(v2) & vFType(v1) & vName(v0)) % 38.06/5.99 | % 38.06/5.99 | DELTA: instantiating (7) with fresh symbols all_344_0, all_344_1, all_344_2, % 38.06/5.99 | all_344_3, all_344_4, all_344_5 gives: % 38.06/5.99 | (8) ~ (all_344_0 = 0) & vwelltypedRawtable(all_344_1, all_331_0) = % 38.06/5.99 | all_344_0 & vwelltypedRawtable(all_344_2, vtempty) = 0 & % 38.06/5.99 | vttcons(all_344_5, all_344_4, all_344_3) = all_344_2 & % 38.06/5.99 | vttcons(all_344_5, all_344_4, vttempty) = all_344_1 & vTType(all_344_1) % 38.06/5.99 | & vTType(all_344_2) & vTType(all_344_3) & vFType(all_344_4) & % 38.06/5.99 | vName(all_344_5) % 38.06/5.99 | % 38.06/5.99 | ALPHA: (8) implies: % 38.06/5.99 | (9) ~ (all_344_0 = 0) % 38.06/5.99 | (10) vTType(all_344_1) % 38.06/5.99 | (11) vwelltypedRawtable(all_344_1, all_331_0) = all_344_0 % 38.06/5.99 | % 38.06/5.99 | GROUND_INST: instantiating (4) with vtempty, all_331_0, vtempty, simplifying % 38.06/5.99 | with (2), (6) gives: % 38.06/5.99 | (12) all_331_0 = vtempty % 38.06/5.99 | % 38.06/5.99 | REDUCE: (11), (12) imply: % 38.06/5.99 | (13) vwelltypedRawtable(all_344_1, vtempty) = all_344_0 % 38.06/5.99 | % 38.06/5.99 | GROUND_INST: instantiating (1) with all_344_1, all_344_0, simplifying with % 38.06/5.99 | (10), (13) gives: % 38.06/5.99 | (14) all_344_0 = 0 % 38.06/5.99 | % 38.06/5.99 | REDUCE: (9), (14) imply: % 38.06/5.99 | (15) $false % 38.06/5.99 | % 38.06/5.99 | CLOSE: (15) is inconsistent. % 38.06/5.99 | % 38.06/5.99 End of proof % 38.06/5.99 % SZS output end Proof for theBenchmark % 38.06/5.99 % 38.06/5.99 5397ms %------------------------------------------------------------------------------