%------------------------------------------------------------------------------ % File : Princess---230619 % Problem : COM302_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 : n019.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 45.79s 6.70s % Output : Proof 46.26s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.12 % Problem : COM302_1 : TPTP v9.3.0. Released v9.3.0. % 0.12/0.13 % Command : princess -inputFormat=tptp +threads -portfolio=casc +printProof -timeoutSec=%d %s % 0.16/0.33 % Computer : n019.cluster.edu % 0.16/0.33 % Model : x86_64 x86_64 % 0.16/0.33 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.16/0.33 % Memory : 8042.1875MB % 0.16/0.33 % 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 20:37:14 EDT 2026 % 0.16/0.34 % CPUTime : % 0.52/0.59 ________ _____ % 0.52/0.59 ___ __ \_________(_)________________________________ % 0.52/0.59 __ /_/ /_ ___/_ /__ __ \ ___/ _ \_ ___/_ ___/ % 0.52/0.59 _ ____/_ / _ / _ / / / /__ / __/(__ )_(__ ) % 0.52/0.59 /_/ /_/ /_/ /_/ /_/\___/ \___//____/ /____/ % 0.52/0.59 % 0.52/0.59 A Theorem Prover for First-Order Logic modulo Linear Integer Arithmetic % 0.52/0.60 (2023-06-19) % 0.52/0.60 % 0.52/0.60 (c) Philipp Rümmer, 2009-2023 % 0.52/0.60 Contributors: Peter Backeman, Peter Baumgartner, Angelo Brillout, Zafer Esen, % 0.52/0.60 Amanda Stjerna. % 0.52/0.60 Free software under BSD-3-Clause. % 0.52/0.60 % 0.52/0.60 For more information, visit http://www.philipp.ruemmer.org/princess.shtml % 0.52/0.60 % 0.52/0.60 Loading /export/starexec/sandbox2/benchmark/theBenchmark.p ... % 0.52/0.61 Running up to 7 provers in parallel. % 0.52/0.62 Prover 1: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1571432423 % 0.52/0.62 Prover 0: Options: +triggersInConjecture +genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1042961893 % 0.52/0.62 Prover 2: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMinimalAndEmpty -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1065072994 % 0.52/0.62 Prover 3: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1922548996 % 0.52/0.62 Prover 4: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=1868514696 % 0.52/0.62 Prover 5: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMaximal -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=complete -randomSeed=1259561288 % 0.52/0.62 Prover 6: Options: -triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximalOutermost -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1399714365 % 8.79/1.91 Prover 6: Preprocessing ... % 8.79/1.91 Prover 1: Preprocessing ... % 8.79/1.91 Prover 2: Preprocessing ... % 8.79/1.91 Prover 5: Preprocessing ... % 8.79/1.92 Prover 3: Preprocessing ... % 10.42/2.14 Prover 4: Preprocessing ... % 10.42/2.16 Prover 0: Preprocessing ... % 23.27/3.85 Prover 1: Warning: ignoring some quantifiers % 24.01/3.99 Prover 3: Warning: ignoring some quantifiers % 24.85/4.02 Prover 3: Constructing countermodel ... % 24.85/4.03 Prover 1: Constructing countermodel ... % 24.85/4.03 Prover 4: Warning: ignoring some quantifiers % 24.85/4.06 Prover 6: Proving ... % 25.63/4.12 Prover 5: Proving ... % 25.63/4.12 Prover 4: Constructing countermodel ... % 25.63/4.18 Prover 0: Proving ... % 30.20/4.74 Prover 2: Proving ... % 45.04/6.69 Prover 1: Found proof (size 151) % 45.04/6.69 Prover 1: proved (6072ms) % 45.04/6.69 Prover 5: stopped % 45.04/6.69 Prover 6: stopped % 45.04/6.69 Prover 4: stopped % 45.04/6.70 Prover 3: stopped % 45.79/6.70 Prover 2: stopped % 45.79/6.70 Prover 0: stopped % 45.79/6.70 % 45.79/6.70 % SZS status Theorem for /export/starexec/sandbox2/benchmark/theBenchmark.p % 45.79/6.70 % 45.79/6.72 % SZS output start Proof for theBenchmark % 45.79/6.73 Assumptions after simplification: % 45.79/6.73 --------------------------------- % 45.79/6.73 % 45.79/6.73 (DIFF-aempty-acons) % 45.79/6.75 vAttrL(vaempty) & ! [v0: vName] : ! [v1: vAttrL] : ( ~ (vacons(v0, v1) = % 45.79/6.75 vaempty) | ~ vAttrL(v1) | ~ vName(v0)) % 45.79/6.75 % 45.79/6.75 (EQ-acons) % 45.79/6.76 ! [v0: vName] : ! [v1: vAttrL] : ! [v2: vName] : ! [v3: vAttrL] : ! [v4: % 45.79/6.76 vAttrL] : ( ~ (vacons(v2, v3) = v4) | ~ (vacons(v0, v1) = v4) | ~ % 45.79/6.76 vAttrL(v3) | ~ vAttrL(v1) | ~ vName(v2) | ~ vName(v0) | (v3 = v1 & v2 = % 45.79/6.76 v0)) % 45.79/6.76 % 45.79/6.76 (findColTypeImpliesfindCol) % 45.79/6.76 ! [v0: vRawTable] : ! [v1: vFType] : ! [v2: vAttrL] : ! [v3: vName] : ! % 45.79/6.76 [v4: vTType] : ! [v5: vOptFType] : ! [v6: vOptRawTable] : ( ~ % 45.79/6.76 (vfindColType(v3, v4) = v5) | ~ (vfindCol(v3, v2, v0) = v6) | ~ % 45.79/6.76 (vsomeFType(v1) = v5) | ~ vTType(v4) | ~ vFType(v1) | ~ vRawTable(v0) | % 45.79/6.76 ~ vAttrL(v2) | ~ vName(v3) | ? [v7: any] : ? [v8: any] : % 45.79/6.76 (vwelltypedRawtable(v4, v0) = v7 & vmatchingAttrL(v4, v2) = v8 & ( ~ (v8 = % 45.79/6.76 0) | ~ (v7 = 0))) | ? [v7: vRawTable] : (vsomeRawTable(v7) = v6 & % 45.79/6.76 vOptRawTable(v6) & vRawTable(v7))) % 45.79/6.76 % 45.79/6.76 (isSomeFType-true-INV) % 45.79/6.76 ! [v0: vOptFType] : ( ~ (visSomeFType(v0) = 0) | ~ vOptFType(v0) | ? [v1: % 45.79/6.76 vFType] : (vsomeFType(v1) = v0 & vFType(v1))) % 45.79/6.76 % 45.79/6.76 (isSomeRawTable-0) % 45.79/6.76 vOptRawTable(vnoRawTable) & ? [v0: int] : ( ~ (v0 = 0) & % 45.79/6.76 visSomeRawTable(vnoRawTable) = v0) % 45.79/6.76 % 45.79/6.76 (isSomeRawTable-1) % 45.79/6.76 ! [v0: vRawTable] : ! [v1: vOptRawTable] : ( ~ (vsomeRawTable(v0) = v1) | ~ % 45.79/6.76 vRawTable(v0) | visSomeRawTable(v1) = 0) % 45.79/6.76 % 45.79/6.76 (isSomeRawTable-false-INV) % 45.79/6.76 vOptRawTable(vnoRawTable) & ! [v0: vOptRawTable] : ! [v1: int] : (v1 = 0 | % 45.79/6.76 v0 = vnoRawTable | ~ (visSomeRawTable(v0) = v1) | ~ vOptRawTable(v0)) % 45.79/6.76 % 45.79/6.76 (isSomeTType-0) % 45.79/6.76 vOptTType(vnoTType) & ? [v0: int] : ( ~ (v0 = 0) & visSomeTType(vnoTType) = % 45.79/6.76 v0) % 45.79/6.76 % 45.79/6.76 (isSomeTType-1) % 45.79/6.76 ! [v0: vTType] : ! [v1: vOptTType] : ( ~ (vsomeTType(v0) = v1) | ~ % 45.79/6.76 vTType(v0) | visSomeTType(v1) = 0) % 45.79/6.76 % 45.79/6.76 (isSomeTType-true-INV) % 45.79/6.77 ! [v0: vOptTType] : ( ~ (visSomeTType(v0) = 0) | ~ vOptTType(v0) | ? [v1: % 45.79/6.77 vTType] : (vsomeTType(v1) = v0 & vTType(v1))) % 45.79/6.77 % 45.79/6.77 (projectCols-INV) % 45.79/6.77 vOptRawTable(vnoRawTable) & vAttrL(vaempty) & ! [v0: vAttrL] : ! [v1: % 45.79/6.77 vAttrL] : ! [v2: vRawTable] : ! [v3: vOptRawTable] : ( ~ (vprojectCols(v0, % 45.79/6.77 v1, v2) = v3) | ~ vRawTable(v2) | ~ vAttrL(v1) | ~ vAttrL(v0) | ? % 45.79/6.77 [v4: vOptRawTable] : ? [v5: vOptRawTable] : ? [v6: vAttrL] : ? [v7: % 45.79/6.77 vName] : ? [v8: vRawTable] : ? [v9: vRawTable] : ? [v10: vRawTable] : % 45.79/6.77 (vprojectCols(v6, v1, v2) = v4 & vfindCol(v7, v1, v2) = v5 & % 45.79/6.77 vattachColToFrontRaw(v8, v9) = v10 & visSomeRawTable(v5) = 0 & % 45.79/6.77 visSomeRawTable(v4) = 0 & vgetRawTable(v5) = v8 & vgetRawTable(v4) = v9 & % 45.79/6.77 vacons(v7, v6) = v0 & vsomeRawTable(v10) = v3 & vOptRawTable(v5) & % 45.79/6.77 vOptRawTable(v4) & vOptRawTable(v3) & vRawTable(v10) & vRawTable(v9) & % 45.79/6.77 vRawTable(v8) & vAttrL(v6) & vName(v7)) | ? [v4: vOptRawTable] : ? [v5: % 45.79/6.77 vOptRawTable] : ? [v6: vAttrL] : ? [v7: vName] : ? [v8: any] : ? [v9: % 45.79/6.77 any] : (v3 = vnoRawTable & vprojectCols(v6, v1, v2) = v4 & vfindCol(v7, % 45.79/6.77 v1, v2) = v5 & visSomeRawTable(v5) = v8 & visSomeRawTable(v4) = v9 & % 45.79/6.77 vacons(v7, v6) = v0 & vOptRawTable(v5) & vOptRawTable(v4) & vAttrL(v6) & % 45.79/6.77 vName(v7) & ( ~ (v9 = 0) | ~ (v8 = 0))) | ? [v4: vRawTable] : (v0 = % 45.79/6.77 vaempty & vprojectEmptyCol(v2) = v4 & vsomeRawTable(v4) = v3 & % 45.79/6.77 vOptRawTable(v3) & vRawTable(v4))) % 45.79/6.77 % 45.79/6.77 (projectColsProgress-acons-IH0) % 45.79/6.77 vAttrL(val1) & ! [v0: vTType] : ! [v1: vRawTable] : ! [v2: vAttrL] : ! % 45.79/6.77 [v3: vTType] : ! [v4: vOptTType] : ! [v5: vOptRawTable] : ( ~ % 45.79/6.77 (vprojectTypeAttrL(val1, v0) = v4) | ~ (vprojectCols(val1, v2, v1) = v5) | % 45.79/6.77 ~ (vsomeTType(v3) = v4) | ~ vTType(v3) | ~ vTType(v0) | ~ vRawTable(v1) | % 45.79/6.77 ~ vAttrL(v2) | ? [v6: any] : ? [v7: any] : (vwelltypedRawtable(v0, v1) = % 45.79/6.77 v6 & vmatchingAttrL(v0, v2) = v7 & ( ~ (v7 = 0) | ~ (v6 = 0))) | ? [v6: % 45.79/6.77 vRawTable] : (vsomeRawTable(v6) = v5 & vOptRawTable(v5) & vRawTable(v6))) % 45.79/6.77 % 45.79/6.77 (projectColsProgress-acons-isSomeRawTable-isSomeRawTable-True) % 45.79/6.77 vAttrL(val1) & ? [v0: vAttrL] : ? [v1: vRawTable] : ? [v2: vTType] : ? % 45.79/6.77 [v3: vAttrL] : ? [v4: vName] : ? [v5: vTType] : ? [v6: vOptRawTable] : ? % 45.79/6.77 [v7: vOptRawTable] : ? [v8: vAttrL] : ? [v9: vOptTType] : ? [v10: % 45.79/6.77 vOptRawTable] : (vprojectTypeAttrL(v8, v5) = v9 & vprojectCols(v8, v0, v1) = % 45.79/6.77 v10 & vprojectCols(v3, val1, v1) = v7 & vfindCol(v4, val1, v1) = v6 & % 45.79/6.77 visSomeRawTable(v7) = 0 & visSomeRawTable(v6) = 0 & vwelltypedRawtable(v5, % 45.79/6.77 v1) = 0 & vmatchingAttrL(v5, v0) = 0 & vacons(v4, val1) = v8 & % 45.79/6.77 vsomeTType(v2) = v9 & vTType(v5) & vTType(v2) & vOptTType(v9) & % 45.79/6.77 vOptRawTable(v10) & vOptRawTable(v7) & vOptRawTable(v6) & vRawTable(v1) & % 45.79/6.77 vAttrL(v8) & vAttrL(v3) & vAttrL(v0) & vName(v4) & ! [v11: vRawTable] : ( ~ % 45.79/6.77 (vsomeRawTable(v11) = v10) | ~ vRawTable(v11))) % 45.79/6.77 % 45.79/6.77 (projectTypeAttrL-2) % 45.79/6.78 vOptTType(vnoTType) & ! [v0: vName] : ! [v1: vTType] : ! [v2: vAttrL] : ! % 45.79/6.78 [v3: vAttrL] : ! [v4: vOptTType] : (v4 = vnoTType | ~ (vprojectTypeAttrL(v3, % 45.79/6.78 v1) = v4) | ~ (vacons(v0, v2) = v3) | ~ vTType(v1) | ~ vAttrL(v2) | % 45.79/6.78 ~ vName(v0) | ? [v5: vOptFType] : ? [v6: vOptTType] : % 45.79/6.78 (vprojectTypeAttrL(v2, v1) = v6 & vfindColType(v0, v1) = v5 & % 45.79/6.78 visSomeFType(v5) = 0 & visSomeTType(v6) = 0 & vOptFType(v5) & % 45.79/6.78 vOptTType(v6))) % 45.79/6.78 % 45.79/6.78 (projectTypeAttrL-INV) % 45.79/6.78 vTType(vttempty) & vOptTType(vnoTType) & vAttrL(vaempty) & ? [v0: vOptTType] % 45.79/6.78 : (vsomeTType(vttempty) = v0 & vOptTType(v0) & ! [v1: vAttrL] : ! [v2: % 45.79/6.78 vTType] : ! [v3: vOptTType] : ( ~ (vprojectTypeAttrL(v1, v2) = v3) | ~ % 45.79/6.78 vTType(v2) | ~ vAttrL(v1) | ? [v4: vName] : ? [v5: vOptFType] : ? [v6: % 45.79/6.78 vAttrL] : ? [v7: vOptTType] : ? [v8: vFType] : ? [v9: vTType] : ? % 45.79/6.78 [v10: vTType] : (vprojectTypeAttrL(v6, v2) = v7 & vfindColType(v4, v2) = % 45.79/6.78 v5 & visSomeFType(v5) = 0 & visSomeTType(v7) = 0 & vgetFType(v5) = v8 & % 45.79/6.78 vgetTType(v7) = v9 & vacons(v4, v6) = v1 & vsomeTType(v10) = v3 & % 45.79/6.78 vttcons(v4, v8, v9) = v10 & vOptFType(v5) & vTType(v10) & vTType(v9) & % 45.79/6.78 vOptTType(v7) & vOptTType(v3) & vFType(v8) & vAttrL(v6) & vName(v4)) | % 45.79/6.78 ? [v4: vName] : ? [v5: vOptFType] : ? [v6: vAttrL] : ? [v7: vOptTType] % 45.79/6.78 : ? [v8: any] : ? [v9: any] : (v3 = vnoTType & vprojectTypeAttrL(v6, v2) % 45.79/6.78 = v7 & vfindColType(v4, v2) = v5 & visSomeFType(v5) = v8 & % 45.79/6.78 visSomeTType(v7) = v9 & vacons(v4, v6) = v1 & vOptFType(v5) & % 45.79/6.78 vOptTType(v7) & vAttrL(v6) & vName(v4) & ( ~ (v9 = 0) | ~ (v8 = 0))) | % 45.79/6.78 (v3 = v0 & v1 = vaempty))) % 45.79/6.78 % 45.79/6.78 (function-axioms) % 46.26/6.80 ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vTType] : ! % 46.26/6.80 [v3: vQuery] : ! [v4: vTTContext] : (v1 = v0 | ~ (vptcheck(v4, v3, v2) = v1) % 46.26/6.80 | ~ (vptcheck(v4, v3, v2) = v0)) & ! [v0: vRawTable] : ! [v1: vRawTable] % 46.26/6.80 : ! [v2: vPred] : ! [v3: vAttrL] : ! [v4: vRawTable] : (v1 = v0 | ~ % 46.26/6.80 (vfilterRows(v4, v3, v2) = v1) | ~ (vfilterRows(v4, v3, v2) = v0)) & ! % 46.26/6.80 [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vRow] : ! [v3: % 46.26/6.80 vAttrL] : ! [v4: vPred] : (v1 = v0 | ~ (vfilterSingleRow(v4, v3, v2) = v1) % 46.26/6.80 | ~ (vfilterSingleRow(v4, v3, v2) = v0)) & ! [v0: vOptVal] : ! [v1: % 46.26/6.80 vOptVal] : ! [v2: vRow] : ! [v3: vAttrL] : ! [v4: vExp] : (v1 = v0 | ~ % 46.26/6.80 (vevalExpRow(v4, v3, v2) = v1) | ~ (vevalExpRow(v4, v3, v2) = v0)) & ! % 46.26/6.80 [v0: vOptRawTable] : ! [v1: vOptRawTable] : ! [v2: vRawTable] : ! [v3: % 46.26/6.80 vAttrL] : ! [v4: vAttrL] : (v1 = v0 | ~ (vprojectCols(v4, v3, v2) = v1) | % 46.26/6.80 ~ (vprojectCols(v4, v3, v2) = v0)) & ! [v0: vOptRawTable] : ! [v1: % 46.26/6.80 vOptRawTable] : ! [v2: vRawTable] : ! [v3: vAttrL] : ! [v4: vName] : (v1 % 46.26/6.80 = v0 | ~ (vfindCol(v4, v3, v2) = v1) | ~ (vfindCol(v4, v3, v2) = v0)) & ! % 46.26/6.80 [v0: vTStore] : ! [v1: vTStore] : ! [v2: vTStore] : ! [v3: vTable] : ! % 46.26/6.80 [v4: vName] : (v1 = v0 | ~ (vbindStore(v4, v3, v2) = v1) | ~ (vbindStore(v4, % 46.26/6.80 v3, v2) = v0)) & ! [v0: vTTContext] : ! [v1: vTTContext] : ! [v2: % 46.26/6.80 vTTContext] : ! [v3: vTType] : ! [v4: vName] : (v1 = v0 | ~ % 46.26/6.80 (vbindContext(v4, v3, v2) = v1) | ~ (vbindContext(v4, v3, v2) = v0)) & ! % 46.26/6.80 [v0: vTType] : ! [v1: vTType] : ! [v2: vTType] : ! [v3: vFType] : ! [v4: % 46.26/6.80 vName] : (v1 = v0 | ~ (vttcons(v4, v3, v2) = v1) | ~ (vttcons(v4, v3, v2) % 46.26/6.80 = v0)) & ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vPred] : ! [v3: % 46.26/6.80 vName] : ! [v4: vSelect] : (v1 = v0 | ~ (vselectFromWhere(v4, v3, v2) = % 46.26/6.80 v1) | ~ (vselectFromWhere(v4, v3, v2) = v0)) & ! [v0: MultipleValueBool] % 46.26/6.80 : ! [v1: MultipleValueBool] : ! [v2: vTTContext] : ! [v3: vTStore] : (v1 = % 46.26/6.80 v0 | ~ (vstoreContextConsistent(v3, v2) = v1) | ~ % 46.26/6.80 (vstoreContextConsistent(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! % 46.26/6.80 [v1: MultipleValueBool] : ! [v2: vTType] : ! [v3: vPred] : (v1 = v0 | ~ % 46.26/6.80 (vtcheckPred(v3, v2) = v1) | ~ (vtcheckPred(v3, v2) = v0)) & ! [v0: % 46.26/6.80 vOptFType] : ! [v1: vOptFType] : ! [v2: vTType] : ! [v3: vExp] : (v1 = v0 % 46.26/6.80 | ~ (vtypeOfExp(v3, v2) = v1) | ~ (vtypeOfExp(v3, v2) = v0)) & ! [v0: % 46.26/6.80 vOptTType] : ! [v1: vOptTType] : ! [v2: vTType] : ! [v3: vSelect] : (v1 = % 46.26/6.80 v0 | ~ (vprojectType(v3, v2) = v1) | ~ (vprojectType(v3, v2) = v0)) & ! % 46.26/6.80 [v0: vOptTType] : ! [v1: vOptTType] : ! [v2: vTType] : ! [v3: vAttrL] : (v1 % 46.26/6.80 = v0 | ~ (vprojectTypeAttrL(v3, v2) = v1) | ~ (vprojectTypeAttrL(v3, v2) = % 46.26/6.80 v0)) & ! [v0: vOptFType] : ! [v1: vOptFType] : ! [v2: vTType] : ! [v3: % 46.26/6.80 vName] : (v1 = v0 | ~ (vfindColType(v3, v2) = v1) | ~ (vfindColType(v3, % 46.26/6.80 v2) = v0)) & ! [v0: vOptQuery] : ! [v1: vOptQuery] : ! [v2: vTStore] % 46.26/6.80 : ! [v3: vQuery] : (v1 = v0 | ~ (vreduce(v3, v2) = v1) | ~ (vreduce(v3, v2) % 46.26/6.80 = v0)) & ! [v0: vTable] : ! [v1: vTable] : ! [v2: vPred] : ! [v3: % 46.26/6.80 vTable] : (v1 = v0 | ~ (vfilterTable(v3, v2) = v1) | ~ (vfilterTable(v3, % 46.26/6.80 v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : % 46.26/6.80 ! [v2: vVal] : ! [v3: vVal] : (v1 = v0 | ~ (vlessThan(v3, v2) = v1) | ~ % 46.26/6.80 (vlessThan(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 46.26/6.80 MultipleValueBool] : ! [v2: vVal] : ! [v3: vVal] : (v1 = v0 | ~ % 46.26/6.80 (vgreaterThan(v3, v2) = v1) | ~ (vgreaterThan(v3, v2) = v0)) & ! [v0: % 46.26/6.80 vOptTable] : ! [v1: vOptTable] : ! [v2: vTable] : ! [v3: vSelect] : (v1 = % 46.26/6.80 v0 | ~ (vprojectTable(v3, v2) = v1) | ~ (vprojectTable(v3, v2) = v0)) & ! % 46.26/6.80 [v0: vOptTType] : ! [v1: vOptTType] : ! [v2: vTTContext] : ! [v3: vName] : % 46.26/6.80 (v1 = v0 | ~ (vlookupContext(v3, v2) = v1) | ~ (vlookupContext(v3, v2) = % 46.26/6.80 v0)) & ! [v0: vOptTable] : ! [v1: vOptTable] : ! [v2: vTStore] : ! % 46.26/6.80 [v3: vName] : (v1 = v0 | ~ (vlookupStore(v3, v2) = v1) | ~ (vlookupStore(v3, % 46.26/6.80 v2) = v0)) & ! [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: % 46.26/6.80 vRawTable] : ! [v3: vRawTable] : (v1 = v0 | ~ (vrawDifference(v3, v2) = % 46.26/6.80 v1) | ~ (vrawDifference(v3, v2) = v0)) & ! [v0: vRawTable] : ! [v1: % 46.26/6.80 vRawTable] : ! [v2: vRawTable] : ! [v3: vRawTable] : (v1 = v0 | ~ % 46.26/6.80 (vrawIntersection(v3, v2) = v1) | ~ (vrawIntersection(v3, v2) = v0)) & ! % 46.26/6.80 [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : ! [v3: vRawTable] % 46.26/6.80 : (v1 = v0 | ~ (vrawUnion(v3, v2) = v1) | ~ (vrawUnion(v3, v2) = v0)) & ! % 46.26/6.80 [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : ! [v3: vRawTable] % 46.26/6.80 : (v1 = v0 | ~ (vattachColToFrontRaw(v3, v2) = v1) | ~ % 46.26/6.80 (vattachColToFrontRaw(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 46.26/6.80 MultipleValueBool] : ! [v2: vRawTable] : ! [v3: vRawTable] : (v1 = v0 | ~ % 46.26/6.80 (vsameLength(v3, v2) = v1) | ~ (vsameLength(v3, v2) = v0)) & ! [v0: % 46.26/6.80 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vRawTable] : ! % 46.26/6.80 [v3: vRow] : (v1 = v0 | ~ (vrowIn(v3, v2) = v1) | ~ (vrowIn(v3, v2) = v0)) & % 46.26/6.80 ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vTable] : ! % 46.26/6.80 [v3: vTType] : (v1 = v0 | ~ (vwelltypedtable(v3, v2) = v1) | ~ % 46.26/6.80 (vwelltypedtable(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 46.26/6.80 MultipleValueBool] : ! [v2: vRawTable] : ! [v3: vTType] : (v1 = v0 | ~ % 46.26/6.80 (vwelltypedRawtable(v3, v2) = v1) | ~ (vwelltypedRawtable(v3, v2) = v0)) & % 46.26/6.80 ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vRow] : ! % 46.26/6.80 [v3: vTType] : (v1 = v0 | ~ (vwelltypedRow(v3, v2) = v1) | ~ % 46.26/6.80 (vwelltypedRow(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 46.26/6.80 MultipleValueBool] : ! [v2: vAttrL] : ! [v3: vTType] : (v1 = v0 | ~ % 46.26/6.80 (vmatchingAttrL(v3, v2) = v1) | ~ (vmatchingAttrL(v3, v2) = v0)) & ! [v0: % 46.26/6.80 vAttrL] : ! [v1: vAttrL] : ! [v2: vAttrL] : ! [v3: vAttrL] : (v1 = v0 | % 46.26/6.80 ~ (vappend(v3, v2) = v1) | ~ (vappend(v3, v2) = v0)) & ! [v0: vAttrL] : ! % 46.26/6.80 [v1: vAttrL] : ! [v2: vAttrL] : ! [v3: vName] : (v1 = v0 | ~ (vacons(v3, % 46.26/6.80 v2) = v1) | ~ (vacons(v3, v2) = v0)) & ! [v0: vPred] : ! [v1: vPred] % 46.26/6.80 : ! [v2: vExp] : ! [v3: vExp] : (v1 = v0 | ~ (vlt(v3, v2) = v1) | ~ % 46.26/6.80 (vlt(v3, v2) = v0)) & ! [v0: vPred] : ! [v1: vPred] : ! [v2: vExp] : ! % 46.26/6.80 [v3: vExp] : (v1 = v0 | ~ (vgt(v3, v2) = v1) | ~ (vgt(v3, v2) = v0)) & ! % 46.26/6.80 [v0: vPred] : ! [v1: vPred] : ! [v2: vExp] : ! [v3: vExp] : (v1 = v0 | ~ % 46.26/6.80 (veq(v3, v2) = v1) | ~ (veq(v3, v2) = v0)) & ! [v0: vPred] : ! [v1: % 46.26/6.80 vPred] : ! [v2: vPred] : ! [v3: vPred] : (v1 = v0 | ~ (vand(v3, v2) = v1) % 46.26/6.80 | ~ (vand(v3, v2) = v0)) & ! [v0: vTable] : ! [v1: vTable] : ! [v2: % 46.26/6.80 vRawTable] : ! [v3: vAttrL] : (v1 = v0 | ~ (vtable(v3, v2) = v1) | ~ % 46.26/6.80 (vtable(v3, v2) = v0)) & ! [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: % 46.26/6.80 vRawTable] : ! [v3: vRow] : (v1 = v0 | ~ (vtcons(v3, v2) = v1) | ~ % 46.26/6.80 (vtcons(v3, v2) = v0)) & ! [v0: vRow] : ! [v1: vRow] : ! [v2: vRow] : ! % 46.26/6.80 [v3: vVal] : (v1 = v0 | ~ (vrcons(v3, v2) = v1) | ~ (vrcons(v3, v2) = v0)) & % 46.26/6.80 ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ! [v3: vQuery] : (v1 = % 46.26/6.80 v0 | ~ (vDifference(v3, v2) = v1) | ~ (vDifference(v3, v2) = v0)) & ! % 46.26/6.80 [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ! [v3: vQuery] : (v1 = v0 % 46.26/6.80 | ~ (vIntersection(v3, v2) = v1) | ~ (vIntersection(v3, v2) = v0)) & ! % 46.26/6.80 [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ! [v3: vQuery] : (v1 = v0 % 46.26/6.80 | ~ (vUnion(v3, v2) = v1) | ~ (vUnion(v3, v2) = v0)) & ! [v0: % 46.26/6.80 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptFType] : (v1 = % 46.26/6.80 v0 | ~ (visSomeFType(v2) = v1) | ~ (visSomeFType(v2) = v0)) & ! [v0: % 46.26/6.80 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptVal] : (v1 = % 46.26/6.80 v0 | ~ (visSomeVal(v2) = v1) | ~ (visSomeVal(v2) = v0)) & ! [v0: % 46.26/6.80 vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : (v1 = v0 | ~ % 46.26/6.80 (vprojectEmptyCol(v2) = v1) | ~ (vprojectEmptyCol(v2) = v0)) & ! [v0: % 46.26/6.80 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptQuery] : (v1 = % 46.26/6.80 v0 | ~ (visSomeQuery(v2) = v1) | ~ (visSomeQuery(v2) = v0)) & ! [v0: % 46.26/6.80 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vQuery] : (v1 = v0 % 46.26/6.80 | ~ (visValue(v2) = v1) | ~ (visValue(v2) = v0)) & ! [v0: % 46.26/6.80 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptTType] : (v1 = % 46.26/6.80 v0 | ~ (visSomeTType(v2) = v1) | ~ (visSomeTType(v2) = v0)) & ! [v0: % 46.26/6.80 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptTable] : (v1 = % 46.26/6.80 v0 | ~ (visSomeTable(v2) = v1) | ~ (visSomeTable(v2) = v0)) & ! [v0: % 46.26/6.80 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptRawTable] : % 46.26/6.81 (v1 = v0 | ~ (visSomeRawTable(v2) = v1) | ~ (visSomeRawTable(v2) = v0)) & ! % 46.26/6.81 [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : (v1 = v0 | ~ % 46.26/6.81 (vdropFirstColRaw(v2) = v1) | ~ (vdropFirstColRaw(v2) = v0)) & ! [v0: % 46.26/6.81 vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : (v1 = v0 | ~ % 46.26/6.81 (vprojectFirstRaw(v2) = v1) | ~ (vprojectFirstRaw(v2) = v0)) & ! [v0: % 46.26/6.81 vFType] : ! [v1: vFType] : ! [v2: vVal] : (v1 = v0 | ~ (vfieldType(v2) = % 46.26/6.81 v1) | ~ (vfieldType(v2) = v0)) & ! [v0: vAttrL] : ! [v1: vAttrL] : ! % 46.26/6.81 [v2: vTable] : (v1 = v0 | ~ (vgetAttrL(v2) = v1) | ~ (vgetAttrL(v2) = v0)) & % 46.26/6.81 ! [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: vTable] : (v1 = v0 | ~ % 46.26/6.81 (vgetRaw(v2) = v1) | ~ (vgetRaw(v2) = v0)) & ! [v0: vFType] : ! [v1: % 46.26/6.81 vFType] : ! [v2: vOptFType] : (v1 = v0 | ~ (vgetFType(v2) = v1) | ~ % 46.26/6.81 (vgetFType(v2) = v0)) & ! [v0: vVal] : ! [v1: vVal] : ! [v2: vOptVal] : % 46.26/6.81 (v1 = v0 | ~ (vgetVal(v2) = v1) | ~ (vgetVal(v2) = v0)) & ! [v0: vQuery] : % 46.26/6.81 ! [v1: vQuery] : ! [v2: vOptQuery] : (v1 = v0 | ~ (vgetQuery(v2) = v1) | ~ % 46.26/6.81 (vgetQuery(v2) = v0)) & ! [v0: vTType] : ! [v1: vTType] : ! [v2: % 46.26/6.81 vOptTType] : (v1 = v0 | ~ (vgetTType(v2) = v1) | ~ (vgetTType(v2) = v0)) & % 46.26/6.81 ! [v0: vTable] : ! [v1: vTable] : ! [v2: vOptTable] : (v1 = v0 | ~ % 46.26/6.81 (vgetTable(v2) = v1) | ~ (vgetTable(v2) = v0)) & ! [v0: vRawTable] : ! % 46.26/6.81 [v1: vRawTable] : ! [v2: vOptRawTable] : (v1 = v0 | ~ (vgetRawTable(v2) = % 46.26/6.81 v1) | ~ (vgetRawTable(v2) = v0)) & ! [v0: vOptFType] : ! [v1: % 46.26/6.81 vOptFType] : ! [v2: vFType] : (v1 = v0 | ~ (vsomeFType(v2) = v1) | ~ % 46.26/6.81 (vsomeFType(v2) = v0)) & ! [v0: vVal] : ! [v1: vVal] : ! [v2: vVal] : (v1 % 46.26/6.81 = v0 | ~ (venumVal(v2) = v1) | ~ (venumVal(v2) = v0)) & ! [v0: vPred] : % 46.26/6.81 ! [v1: vPred] : ! [v2: vPred] : (v1 = v0 | ~ (vnot(v2) = v1) | ~ (vnot(v2) % 46.26/6.81 = v0)) & ! [v0: vOptVal] : ! [v1: vOptVal] : ! [v2: vVal] : (v1 = v0 | % 46.26/6.81 ~ (vsomeVal(v2) = v1) | ~ (vsomeVal(v2) = v0)) & ! [v0: vExp] : ! [v1: % 46.26/6.81 vExp] : ! [v2: vName] : (v1 = v0 | ~ (vlookup(v2) = v1) | ~ (vlookup(v2) % 46.26/6.81 = v0)) & ! [v0: vExp] : ! [v1: vExp] : ! [v2: vVal] : (v1 = v0 | ~ % 46.26/6.81 (vconstant(v2) = v1) | ~ (vconstant(v2) = v0)) & ! [v0: vName] : ! [v1: % 46.26/6.81 vName] : ! [v2: vName] : (v1 = v0 | ~ (venumName(v2) = v1) | ~ % 46.26/6.81 (venumName(v2) = v0)) & ! [v0: vOptQuery] : ! [v1: vOptQuery] : ! [v2: % 46.26/6.81 vQuery] : (v1 = v0 | ~ (vsomeQuery(v2) = v1) | ~ (vsomeQuery(v2) = v0)) & % 46.26/6.81 ! [v0: vFType] : ! [v1: vFType] : ! [v2: vFType] : (v1 = v0 | ~ % 46.26/6.81 (venumFType(v2) = v1) | ~ (venumFType(v2) = v0)) & ! [v0: vOptTType] : ! % 46.26/6.81 [v1: vOptTType] : ! [v2: vTType] : (v1 = v0 | ~ (vsomeTType(v2) = v1) | ~ % 46.26/6.81 (vsomeTType(v2) = v0)) & ! [v0: vOptRawTable] : ! [v1: vOptRawTable] : ! % 46.26/6.81 [v2: vRawTable] : (v1 = v0 | ~ (vsomeRawTable(v2) = v1) | ~ % 46.26/6.81 (vsomeRawTable(v2) = v0)) & ! [v0: vOptTable] : ! [v1: vOptTable] : ! % 46.26/6.81 [v2: vTable] : (v1 = v0 | ~ (vsomeTable(v2) = v1) | ~ (vsomeTable(v2) = v0)) % 46.26/6.81 & ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vTable] : (v1 = v0 | ~ % 46.26/6.81 (vtvalue(v2) = v1) | ~ (vtvalue(v2) = v0)) & ! [v0: vSelect] : ! [v1: % 46.26/6.81 vSelect] : ! [v2: vAttrL] : (v1 = v0 | ~ (vlist(v2) = v1) | ~ (vlist(v2) % 46.26/6.81 = v0)) % 46.26/6.81 % 46.26/6.81 Further assumptions not needed in the proof: % 46.26/6.81 -------------------------------------------- % 46.26/6.81 DIFF-Intersection-Difference, DIFF-Union-Difference, DIFF-Union-Intersection, % 46.26/6.81 DIFF-all-list, DIFF-and-eq, DIFF-and-gt, DIFF-and-lt, DIFF-and-not, % 46.26/6.81 DIFF-constant-lookup, DIFF-emptyContext-bindContext, DIFF-emptyStore-bindStore, % 46.26/6.81 DIFF-eq-gt, DIFF-eq-lt, DIFF-gt-lt, DIFF-initFType-enumFType, % 46.26/6.81 DIFF-initName-enumName, DIFF-initVal-enumVal, DIFF-noFType-someFType, % 46.26/6.81 DIFF-noQuery-someQuery, DIFF-noRawTable-someRawTable, DIFF-noTType-someTType, % 46.26/6.81 DIFF-noTable-someTable, DIFF-noVal-someVal, DIFF-not-eq, DIFF-not-gt, % 46.26/6.81 DIFF-not-lt, DIFF-ptrue-and, DIFF-ptrue-eq, DIFF-ptrue-gt, DIFF-ptrue-lt, % 46.26/6.81 DIFF-ptrue-not, DIFF-rempty-rcons, DIFF-selectFromWhere-Difference, % 46.26/6.81 DIFF-selectFromWhere-Intersection, DIFF-selectFromWhere-Union, % 46.26/6.81 DIFF-tempty-tcons, DIFF-ttempty-ttcons, DIFF-tvalue-Difference, % 46.26/6.81 DIFF-tvalue-Intersection, DIFF-tvalue-Union, DIFF-tvalue-selectFromWhere, % 46.26/6.81 EQ-Difference, EQ-Intersection, EQ-Union, EQ-and, EQ-bindContext, EQ-bindStore, % 46.26/6.81 EQ-constant, EQ-enumFType, EQ-enumName, EQ-enumVal, EQ-eq, EQ-gt, EQ-list, % 46.26/6.81 EQ-lookup, EQ-lt, EQ-not, EQ-rcons, EQ-selectFromWhere, EQ-someFType, % 46.26/6.81 EQ-someQuery, EQ-someRawTable, EQ-someTType, EQ-someTable, EQ-someVal, EQ-table, % 46.26/6.81 EQ-tcons, EQ-ttcons, EQ-tvalue, TDifference, TDifference_inv1, TDifference_inv2, % 46.26/6.81 TIntersection, TIntersection_inv1, TIntersection_inv2, TSelectFromWhere, % 46.26/6.81 TSelectFromWhere_inv, TTTContextDuplicate, TTTContextSwap, TUnion, TUnion_inv1, % 46.26/6.81 TUnion_inv2, Ttvalue, Ttvalue_inv, append-0, append-1, append-INV, % 46.26/6.81 attachColToFrontRaw-0, attachColToFrontRaw-1, attachColToFrontRaw-2, % 46.26/6.81 attachColToFrontRaw-INV, attachColToFrontRawPreservesRowCount, % 46.26/6.81 attachColToFrontRawPreservesWellTypedRaw, dom-AttrL, dom-Exp, dom-OptFType, % 46.26/6.81 dom-OptQuery, dom-OptRawTable, dom-OptTType, dom-OptTable, dom-OptVal, dom-Pred, % 46.26/6.81 dom-Query, dom-RawTable, dom-Row, dom-Select, dom-TStore, dom-TTContext, % 46.26/6.81 dom-TType, dom-Table, dropFirstColRaw-0, dropFirstColRaw-1, dropFirstColRaw-2, % 46.26/6.81 dropFirstColRaw-INV, evalExpRow-0, evalExpRow-1, evalExpRow-2, evalExpRow-3, % 46.26/6.81 evalExpRow-INV, filterRows-0, filterRows-1, filterRows-2, filterRows-INV, % 46.26/6.81 filterSingleRow-0, filterSingleRow-1, filterSingleRow-2, filterSingleRow-3, % 46.26/6.81 filterSingleRow-4, filterSingleRow-5, filterSingleRow-false-INV, % 46.26/6.81 filterSingleRow-true-INV, filterTable-0, filterTable-INV, findCol-0, findCol-1, % 46.26/6.81 findCol-2, findCol-INV, findColPreservesRowCount, findColPreservesWelltypedRaw, % 46.26/6.81 findColType-0, findColType-1, findColType-2, findColType-INV, getAttrL-0, % 46.26/6.81 getAttrL-INV, getFType-0, getQuery-0, getRaw-0, getRaw-INV, getRawTable-0, % 46.26/6.81 getTType-0, getTable-0, getVal-0, isSomeFType-0, isSomeFType-1, % 46.26/6.81 isSomeFType-false-INV, isSomeQuery-0, isSomeQuery-1, isSomeQuery-false-INV, % 46.26/6.81 isSomeQuery-true-INV, isSomeRawTable-true-INV, isSomeTType-false-INV, % 46.26/6.81 isSomeTable-0, isSomeTable-1, isSomeTable-false-INV, isSomeTable-true-INV, % 46.26/6.81 isSomeVal-0, isSomeVal-1, isSomeVal-false-INV, isSomeVal-true-INV, isValue-0, % 46.26/6.81 isValue-1, isValue-2, isValue-3, isValue-4, isValue-false-INV, isValue-true-INV, % 46.26/6.81 lookupContext-0, lookupContext-1, lookupContext-2, lookupContext-INV, % 46.26/6.81 lookupStore-0, lookupStore-1, lookupStore-2, lookupStore-INV, matchingAttrL-0, % 46.26/6.81 matchingAttrL-1, matchingAttrL-2, matchingAttrL-false-INV, % 46.26/6.81 matchingAttrL-true-INV, projectCols-0, projectCols-1, projectCols-2, % 46.26/6.81 projectEmptyCol-0, projectEmptyCol-1, projectEmptyCol-INV, projectFirstRaw-0, % 46.26/6.81 projectFirstRaw-1, projectFirstRaw-2, projectFirstRaw-INV, projectTable-0, % 46.26/6.81 projectTable-1, projectTable-2, projectTable-INV, projectType-0, projectType-1, % 46.26/6.81 projectType-INV, projectTypeAttrL-0, projectTypeAttrL-1, rawDifference-0, % 46.26/6.81 rawDifference-1, rawDifference-2, rawDifference-3, rawDifference-4, % 46.26/6.81 rawDifference-INV, rawIntersection-0, rawIntersection-1, rawIntersection-2, % 46.26/6.81 rawIntersection-3, rawIntersection-4, rawIntersection-INV, rawUnion-0, % 46.26/6.81 rawUnion-1, rawUnion-2, rawUnion-INV, reduce-0, reduce-1, reduce-10, reduce-11, % 46.26/6.81 reduce-12, reduce-13, reduce-14, reduce-15, reduce-16, reduce-17, reduce-18, % 46.26/6.81 reduce-2, reduce-3, reduce-4, reduce-5, reduce-6, reduce-7, reduce-8, reduce-9, % 46.26/6.81 reduce-INV, rowIn-0, rowIn-1, rowIn-false-INV, rowIn-true-INV, sameLength-0, % 46.26/6.81 sameLength-1, sameLength-2, sameLength-false-INV, sameLength-true-INV, % 46.26/6.81 storeContextConsistent-0, storeContextConsistent-1, storeContextConsistent-2, % 46.26/6.81 storeContextConsistent-false-INV, storeContextConsistent-true-INV, tcheckPred-0, % 46.26/6.81 tcheckPred-1, tcheckPred-2, tcheckPred-3, tcheckPred-4, tcheckPred-5, % 46.26/6.81 tcheckPred-false-INV, tcheckPred-true-INV, typeOfExp-0, typeOfExp-1, % 46.26/6.81 typeOfExp-2, typeOfExp-3, typeOfExp-INV, welltypedRawtable-0, % 46.26/6.81 welltypedRawtable-1, welltypedRawtable-false-INV, welltypedRawtable-true-INV, % 46.26/6.81 welltypedRow-0, welltypedRow-1, welltypedRow-2, welltypedRow-false-INV, % 46.26/6.81 welltypedRow-true-INV, welltypedtable-0, welltypedtable-false-INV, % 46.26/6.81 welltypedtable-true-INV % 46.26/6.81 % 46.26/6.81 Those formulas are unsatisfiable: % 46.26/6.81 --------------------------------- % 46.26/6.81 % 46.26/6.81 Begin of proof % 46.26/6.81 | % 46.26/6.81 | ALPHA: (DIFF-aempty-acons) implies: % 46.26/6.81 | (1) ! [v0: vName] : ! [v1: vAttrL] : ( ~ (vacons(v0, v1) = vaempty) | ~ % 46.26/6.81 | vAttrL(v1) | ~ vName(v0)) % 46.26/6.81 | % 46.26/6.81 | ALPHA: (isSomeRawTable-0) implies: % 46.26/6.81 | (2) ? [v0: int] : ( ~ (v0 = 0) & visSomeRawTable(vnoRawTable) = v0) % 46.26/6.81 | % 46.26/6.81 | ALPHA: (isSomeRawTable-false-INV) implies: % 46.26/6.81 | (3) ! [v0: vOptRawTable] : ! [v1: int] : (v1 = 0 | v0 = vnoRawTable | ~ % 46.26/6.81 | (visSomeRawTable(v0) = v1) | ~ vOptRawTable(v0)) % 46.26/6.81 | % 46.26/6.81 | ALPHA: (isSomeTType-0) implies: % 46.26/6.81 | (4) ? [v0: int] : ( ~ (v0 = 0) & visSomeTType(vnoTType) = v0) % 46.26/6.81 | % 46.26/6.81 | ALPHA: (projectCols-INV) implies: % 46.26/6.82 | (5) ! [v0: vAttrL] : ! [v1: vAttrL] : ! [v2: vRawTable] : ! [v3: % 46.26/6.82 | vOptRawTable] : ( ~ (vprojectCols(v0, v1, v2) = v3) | ~ % 46.26/6.82 | vRawTable(v2) | ~ vAttrL(v1) | ~ vAttrL(v0) | ? [v4: vOptRawTable] % 46.26/6.82 | : ? [v5: vOptRawTable] : ? [v6: vAttrL] : ? [v7: vName] : ? [v8: % 46.26/6.82 | vRawTable] : ? [v9: vRawTable] : ? [v10: vRawTable] : % 46.26/6.82 | (vprojectCols(v6, v1, v2) = v4 & vfindCol(v7, v1, v2) = v5 & % 46.26/6.82 | vattachColToFrontRaw(v8, v9) = v10 & visSomeRawTable(v5) = 0 & % 46.26/6.82 | visSomeRawTable(v4) = 0 & vgetRawTable(v5) = v8 & vgetRawTable(v4) % 46.26/6.82 | = v9 & vacons(v7, v6) = v0 & vsomeRawTable(v10) = v3 & % 46.26/6.82 | vOptRawTable(v5) & vOptRawTable(v4) & vOptRawTable(v3) & % 46.26/6.82 | vRawTable(v10) & vRawTable(v9) & vRawTable(v8) & vAttrL(v6) & % 46.26/6.82 | vName(v7)) | ? [v4: vOptRawTable] : ? [v5: vOptRawTable] : ? % 46.26/6.82 | [v6: vAttrL] : ? [v7: vName] : ? [v8: any] : ? [v9: any] : (v3 = % 46.26/6.82 | vnoRawTable & vprojectCols(v6, v1, v2) = v4 & vfindCol(v7, v1, v2) % 46.26/6.82 | = v5 & visSomeRawTable(v5) = v8 & visSomeRawTable(v4) = v9 & % 46.26/6.82 | vacons(v7, v6) = v0 & vOptRawTable(v5) & vOptRawTable(v4) & % 46.26/6.82 | vAttrL(v6) & vName(v7) & ( ~ (v9 = 0) | ~ (v8 = 0))) | ? [v4: % 46.26/6.82 | vRawTable] : (v0 = vaempty & vprojectEmptyCol(v2) = v4 & % 46.26/6.82 | vsomeRawTable(v4) = v3 & vOptRawTable(v3) & vRawTable(v4))) % 46.26/6.82 | % 46.26/6.82 | ALPHA: (projectTypeAttrL-2) implies: % 46.26/6.82 | (6) ! [v0: vName] : ! [v1: vTType] : ! [v2: vAttrL] : ! [v3: vAttrL] : % 46.26/6.82 | ! [v4: vOptTType] : (v4 = vnoTType | ~ (vprojectTypeAttrL(v3, v1) = % 46.26/6.82 | v4) | ~ (vacons(v0, v2) = v3) | ~ vTType(v1) | ~ vAttrL(v2) | ~ % 46.26/6.82 | vName(v0) | ? [v5: vOptFType] : ? [v6: vOptTType] : % 46.26/6.82 | (vprojectTypeAttrL(v2, v1) = v6 & vfindColType(v0, v1) = v5 & % 46.26/6.82 | visSomeFType(v5) = 0 & visSomeTType(v6) = 0 & vOptFType(v5) & % 46.26/6.82 | vOptTType(v6))) % 46.26/6.82 | % 46.26/6.82 | ALPHA: (projectTypeAttrL-INV) implies: % 46.26/6.82 | (7) ? [v0: vOptTType] : (vsomeTType(vttempty) = v0 & vOptTType(v0) & ! % 46.26/6.82 | [v1: vAttrL] : ! [v2: vTType] : ! [v3: vOptTType] : ( ~ % 46.26/6.82 | (vprojectTypeAttrL(v1, v2) = v3) | ~ vTType(v2) | ~ vAttrL(v1) | % 46.26/6.82 | ? [v4: vName] : ? [v5: vOptFType] : ? [v6: vAttrL] : ? [v7: % 46.26/6.82 | vOptTType] : ? [v8: vFType] : ? [v9: vTType] : ? [v10: vTType] % 46.26/6.82 | : (vprojectTypeAttrL(v6, v2) = v7 & vfindColType(v4, v2) = v5 & % 46.26/6.82 | visSomeFType(v5) = 0 & visSomeTType(v7) = 0 & vgetFType(v5) = v8 % 46.26/6.82 | & vgetTType(v7) = v9 & vacons(v4, v6) = v1 & vsomeTType(v10) = v3 % 46.26/6.82 | & vttcons(v4, v8, v9) = v10 & vOptFType(v5) & vTType(v10) & % 46.26/6.82 | vTType(v9) & vOptTType(v7) & vOptTType(v3) & vFType(v8) & % 46.26/6.82 | vAttrL(v6) & vName(v4)) | ? [v4: vName] : ? [v5: vOptFType] : % 46.26/6.82 | ? [v6: vAttrL] : ? [v7: vOptTType] : ? [v8: any] : ? [v9: any] : % 46.26/6.82 | (v3 = vnoTType & vprojectTypeAttrL(v6, v2) = v7 & vfindColType(v4, % 46.26/6.82 | v2) = v5 & visSomeFType(v5) = v8 & visSomeTType(v7) = v9 & % 46.26/6.82 | vacons(v4, v6) = v1 & vOptFType(v5) & vOptTType(v7) & vAttrL(v6) % 46.26/6.82 | & vName(v4) & ( ~ (v9 = 0) | ~ (v8 = 0))) | (v3 = v0 & v1 = % 46.26/6.82 | vaempty))) % 46.26/6.82 | % 46.26/6.82 | ALPHA: (projectColsProgress-acons-IH0) implies: % 46.26/6.82 | (8) ! [v0: vTType] : ! [v1: vRawTable] : ! [v2: vAttrL] : ! [v3: % 46.26/6.82 | vTType] : ! [v4: vOptTType] : ! [v5: vOptRawTable] : ( ~ % 46.26/6.82 | (vprojectTypeAttrL(val1, v0) = v4) | ~ (vprojectCols(val1, v2, v1) = % 46.26/6.82 | v5) | ~ (vsomeTType(v3) = v4) | ~ vTType(v3) | ~ vTType(v0) | ~ % 46.26/6.82 | vRawTable(v1) | ~ vAttrL(v2) | ? [v6: any] : ? [v7: any] : % 46.26/6.82 | (vwelltypedRawtable(v0, v1) = v6 & vmatchingAttrL(v0, v2) = v7 & ( ~ % 46.26/6.82 | (v7 = 0) | ~ (v6 = 0))) | ? [v6: vRawTable] : % 46.26/6.82 | (vsomeRawTable(v6) = v5 & vOptRawTable(v5) & vRawTable(v6))) % 46.26/6.82 | % 46.26/6.82 | ALPHA: (projectColsProgress-acons-isSomeRawTable-isSomeRawTable-True) implies: % 46.26/6.82 | (9) vAttrL(val1) % 46.26/6.82 | (10) ? [v0: vAttrL] : ? [v1: vRawTable] : ? [v2: vTType] : ? [v3: % 46.26/6.82 | vAttrL] : ? [v4: vName] : ? [v5: vTType] : ? [v6: vOptRawTable] : % 46.26/6.82 | ? [v7: vOptRawTable] : ? [v8: vAttrL] : ? [v9: vOptTType] : ? % 46.26/6.82 | [v10: vOptRawTable] : (vprojectTypeAttrL(v8, v5) = v9 & % 46.26/6.82 | vprojectCols(v8, v0, v1) = v10 & vprojectCols(v3, val1, v1) = v7 & % 46.26/6.82 | vfindCol(v4, val1, v1) = v6 & visSomeRawTable(v7) = 0 & % 46.26/6.82 | visSomeRawTable(v6) = 0 & vwelltypedRawtable(v5, v1) = 0 & % 46.26/6.82 | vmatchingAttrL(v5, v0) = 0 & vacons(v4, val1) = v8 & vsomeTType(v2) % 46.26/6.82 | = v9 & vTType(v5) & vTType(v2) & vOptTType(v9) & vOptRawTable(v10) & % 46.26/6.82 | vOptRawTable(v7) & vOptRawTable(v6) & vRawTable(v1) & vAttrL(v8) & % 46.26/6.82 | vAttrL(v3) & vAttrL(v0) & vName(v4) & ! [v11: vRawTable] : ( ~ % 46.26/6.82 | (vsomeRawTable(v11) = v10) | ~ vRawTable(v11))) % 46.26/6.82 | % 46.26/6.82 | ALPHA: (function-axioms) implies: % 46.26/6.83 | (11) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 46.26/6.83 | vOptRawTable] : (v1 = v0 | ~ (visSomeRawTable(v2) = v1) | ~ % 46.26/6.83 | (visSomeRawTable(v2) = v0)) % 46.26/6.83 | (12) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 46.26/6.83 | vOptTType] : (v1 = v0 | ~ (visSomeTType(v2) = v1) | ~ % 46.26/6.83 | (visSomeTType(v2) = v0)) % 46.26/6.83 | (13) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 46.26/6.83 | vAttrL] : ! [v3: vTType] : (v1 = v0 | ~ (vmatchingAttrL(v3, v2) = % 46.26/6.83 | v1) | ~ (vmatchingAttrL(v3, v2) = v0)) % 46.26/6.83 | (14) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 46.26/6.83 | vRawTable] : ! [v3: vTType] : (v1 = v0 | ~ (vwelltypedRawtable(v3, % 46.26/6.83 | v2) = v1) | ~ (vwelltypedRawtable(v3, v2) = v0)) % 46.26/6.83 | (15) ! [v0: vOptFType] : ! [v1: vOptFType] : ! [v2: vTType] : ! [v3: % 46.26/6.83 | vName] : (v1 = v0 | ~ (vfindColType(v3, v2) = v1) | ~ % 46.26/6.83 | (vfindColType(v3, v2) = v0)) % 46.26/6.83 | (16) ! [v0: vOptTType] : ! [v1: vOptTType] : ! [v2: vTType] : ! [v3: % 46.26/6.83 | vAttrL] : (v1 = v0 | ~ (vprojectTypeAttrL(v3, v2) = v1) | ~ % 46.26/6.83 | (vprojectTypeAttrL(v3, v2) = v0)) % 46.26/6.83 | % 46.26/6.83 | DELTA: instantiating (2) with fresh symbol all_313_0 gives: % 46.26/6.83 | (17) ~ (all_313_0 = 0) & visSomeRawTable(vnoRawTable) = all_313_0 % 46.26/6.83 | % 46.26/6.83 | ALPHA: (17) implies: % 46.26/6.83 | (18) visSomeRawTable(vnoRawTable) = all_313_0 % 46.26/6.83 | % 46.26/6.83 | DELTA: instantiating (4) with fresh symbol all_315_0 gives: % 46.26/6.83 | (19) ~ (all_315_0 = 0) & visSomeTType(vnoTType) = all_315_0 % 46.26/6.83 | % 46.26/6.83 | ALPHA: (19) implies: % 46.26/6.83 | (20) ~ (all_315_0 = 0) % 46.26/6.83 | (21) visSomeTType(vnoTType) = all_315_0 % 46.26/6.83 | % 46.26/6.83 | DELTA: instantiating (10) with fresh symbols all_342_0, all_342_1, all_342_2, % 46.26/6.83 | all_342_3, all_342_4, all_342_5, all_342_6, all_342_7, all_342_8, % 46.26/6.83 | all_342_9, all_342_10 gives: % 46.26/6.83 | (22) vprojectTypeAttrL(all_342_2, all_342_5) = all_342_1 & % 46.26/6.83 | vprojectCols(all_342_2, all_342_10, all_342_9) = all_342_0 & % 46.26/6.83 | vprojectCols(all_342_7, val1, all_342_9) = all_342_3 & % 46.26/6.83 | vfindCol(all_342_6, val1, all_342_9) = all_342_4 & % 46.26/6.83 | visSomeRawTable(all_342_3) = 0 & visSomeRawTable(all_342_4) = 0 & % 46.26/6.83 | vwelltypedRawtable(all_342_5, all_342_9) = 0 & % 46.26/6.83 | vmatchingAttrL(all_342_5, all_342_10) = 0 & vacons(all_342_6, val1) = % 46.26/6.83 | all_342_2 & vsomeTType(all_342_8) = all_342_1 & vTType(all_342_5) & % 46.26/6.83 | vTType(all_342_8) & vOptTType(all_342_1) & vOptRawTable(all_342_0) & % 46.26/6.83 | vOptRawTable(all_342_3) & vOptRawTable(all_342_4) & % 46.26/6.83 | vRawTable(all_342_9) & vAttrL(all_342_2) & vAttrL(all_342_7) & % 46.26/6.83 | vAttrL(all_342_10) & vName(all_342_6) & ! [v0: vRawTable] : ( ~ % 46.26/6.83 | (vsomeRawTable(v0) = all_342_0) | ~ vRawTable(v0)) % 46.26/6.83 | % 46.26/6.83 | ALPHA: (22) implies: % 46.26/6.83 | (23) vName(all_342_6) % 46.26/6.83 | (24) vAttrL(all_342_10) % 46.26/6.83 | (25) vAttrL(all_342_2) % 46.26/6.83 | (26) vRawTable(all_342_9) % 46.26/6.83 | (27) vTType(all_342_8) % 46.26/6.83 | (28) vTType(all_342_5) % 46.26/6.83 | (29) vsomeTType(all_342_8) = all_342_1 % 46.26/6.83 | (30) vacons(all_342_6, val1) = all_342_2 % 46.26/6.83 | (31) vmatchingAttrL(all_342_5, all_342_10) = 0 % 46.26/6.83 | (32) vwelltypedRawtable(all_342_5, all_342_9) = 0 % 46.26/6.83 | (33) vprojectCols(all_342_2, all_342_10, all_342_9) = all_342_0 % 46.26/6.83 | (34) vprojectTypeAttrL(all_342_2, all_342_5) = all_342_1 % 46.26/6.83 | (35) ! [v0: vRawTable] : ( ~ (vsomeRawTable(v0) = all_342_0) | ~ % 46.26/6.83 | vRawTable(v0)) % 46.26/6.83 | % 46.26/6.83 | DELTA: instantiating (7) with fresh symbol all_348_0 gives: % 46.26/6.83 | (36) vsomeTType(vttempty) = all_348_0 & vOptTType(all_348_0) & ! [v0: % 46.26/6.83 | vAttrL] : ! [v1: vTType] : ! [v2: vOptTType] : ( ~ % 46.26/6.83 | (vprojectTypeAttrL(v0, v1) = v2) | ~ vTType(v1) | ~ vAttrL(v0) | % 46.26/6.83 | ? [v3: vName] : ? [v4: vOptFType] : ? [v5: vAttrL] : ? [v6: % 46.26/6.83 | vOptTType] : ? [v7: vFType] : ? [v8: vTType] : ? [v9: vTType] : % 46.26/6.84 | (vprojectTypeAttrL(v5, v1) = v6 & vfindColType(v3, v1) = v4 & % 46.26/6.84 | visSomeFType(v4) = 0 & visSomeTType(v6) = 0 & vgetFType(v4) = v7 & % 46.26/6.84 | vgetTType(v6) = v8 & vacons(v3, v5) = v0 & vsomeTType(v9) = v2 & % 46.26/6.84 | vttcons(v3, v7, v8) = v9 & vOptFType(v4) & vTType(v9) & vTType(v8) % 46.26/6.84 | & vOptTType(v6) & vOptTType(v2) & vFType(v7) & vAttrL(v5) & % 46.26/6.84 | vName(v3)) | ? [v3: vName] : ? [v4: vOptFType] : ? [v5: vAttrL] % 46.26/6.84 | : ? [v6: vOptTType] : ? [v7: any] : ? [v8: any] : (v2 = vnoTType % 46.26/6.84 | & vprojectTypeAttrL(v5, v1) = v6 & vfindColType(v3, v1) = v4 & % 46.26/6.84 | visSomeFType(v4) = v7 & visSomeTType(v6) = v8 & vacons(v3, v5) = % 46.26/6.84 | v0 & vOptFType(v4) & vOptTType(v6) & vAttrL(v5) & vName(v3) & ( ~ % 46.26/6.84 | (v8 = 0) | ~ (v7 = 0))) | (v2 = all_348_0 & v0 = vaempty)) % 46.26/6.84 | % 46.26/6.84 | ALPHA: (36) implies: % 46.26/6.84 | (37) ! [v0: vAttrL] : ! [v1: vTType] : ! [v2: vOptTType] : ( ~ % 46.26/6.84 | (vprojectTypeAttrL(v0, v1) = v2) | ~ vTType(v1) | ~ vAttrL(v0) | % 46.26/6.84 | ? [v3: vName] : ? [v4: vOptFType] : ? [v5: vAttrL] : ? [v6: % 46.26/6.84 | vOptTType] : ? [v7: vFType] : ? [v8: vTType] : ? [v9: vTType] : % 46.26/6.84 | (vprojectTypeAttrL(v5, v1) = v6 & vfindColType(v3, v1) = v4 & % 46.26/6.84 | visSomeFType(v4) = 0 & visSomeTType(v6) = 0 & vgetFType(v4) = v7 & % 46.26/6.84 | vgetTType(v6) = v8 & vacons(v3, v5) = v0 & vsomeTType(v9) = v2 & % 46.26/6.84 | vttcons(v3, v7, v8) = v9 & vOptFType(v4) & vTType(v9) & vTType(v8) % 46.26/6.84 | & vOptTType(v6) & vOptTType(v2) & vFType(v7) & vAttrL(v5) & % 46.26/6.84 | vName(v3)) | ? [v3: vName] : ? [v4: vOptFType] : ? [v5: vAttrL] % 46.26/6.84 | : ? [v6: vOptTType] : ? [v7: any] : ? [v8: any] : (v2 = vnoTType % 46.26/6.84 | & vprojectTypeAttrL(v5, v1) = v6 & vfindColType(v3, v1) = v4 & % 46.26/6.84 | visSomeFType(v4) = v7 & visSomeTType(v6) = v8 & vacons(v3, v5) = % 46.26/6.84 | v0 & vOptFType(v4) & vOptTType(v6) & vAttrL(v5) & vName(v3) & ( ~ % 46.26/6.84 | (v8 = 0) | ~ (v7 = 0))) | (v2 = all_348_0 & v0 = vaempty)) % 46.26/6.84 | % 46.26/6.84 | GROUND_INST: instantiating (isSomeTType-1) with all_342_8, all_342_1, % 46.26/6.84 | simplifying with (27), (29) gives: % 46.26/6.84 | (38) visSomeTType(all_342_1) = 0 % 46.26/6.84 | % 46.26/6.84 | GROUND_INST: instantiating (5) with all_342_2, all_342_10, all_342_9, % 46.26/6.84 | all_342_0, simplifying with (24), (25), (26), (33) gives: % 46.26/6.84 | (39) ? [v0: vOptRawTable] : ? [v1: vOptRawTable] : ? [v2: vAttrL] : ? % 46.26/6.84 | [v3: vName] : ? [v4: vRawTable] : ? [v5: vRawTable] : ? [v6: % 46.26/6.84 | vRawTable] : (vprojectCols(v2, all_342_10, all_342_9) = v0 & % 46.26/6.84 | vfindCol(v3, all_342_10, all_342_9) = v1 & vattachColToFrontRaw(v4, % 46.26/6.84 | v5) = v6 & visSomeRawTable(v1) = 0 & visSomeRawTable(v0) = 0 & % 46.26/6.84 | vgetRawTable(v1) = v4 & vgetRawTable(v0) = v5 & vacons(v3, v2) = % 46.26/6.84 | all_342_2 & vsomeRawTable(v6) = all_342_0 & vOptRawTable(v1) & % 46.26/6.84 | vOptRawTable(v0) & vOptRawTable(all_342_0) & vRawTable(v6) & % 46.26/6.84 | vRawTable(v5) & vRawTable(v4) & vAttrL(v2) & vName(v3)) | ? [v0: % 46.26/6.84 | vOptRawTable] : ? [v1: vOptRawTable] : ? [v2: vAttrL] : ? [v3: % 46.26/6.84 | vName] : ? [v4: any] : ? [v5: any] : (all_342_0 = vnoRawTable & % 46.26/6.84 | vprojectCols(v2, all_342_10, all_342_9) = v0 & vfindCol(v3, % 46.26/6.84 | all_342_10, all_342_9) = v1 & visSomeRawTable(v1) = v4 & % 46.26/6.84 | visSomeRawTable(v0) = v5 & vacons(v3, v2) = all_342_2 & % 46.26/6.84 | vOptRawTable(v1) & vOptRawTable(v0) & vAttrL(v2) & vName(v3) & ( ~ % 46.26/6.84 | (v5 = 0) | ~ (v4 = 0))) | ? [v0: vRawTable] : (all_342_2 = % 46.26/6.84 | vaempty & vprojectEmptyCol(all_342_9) = v0 & vsomeRawTable(v0) = % 46.26/6.84 | all_342_0 & vOptRawTable(all_342_0) & vRawTable(v0)) % 46.26/6.84 | % 46.26/6.84 | GROUND_INST: instantiating (6) with all_342_6, all_342_5, val1, all_342_2, % 46.26/6.84 | all_342_1, simplifying with (9), (23), (28), (30), (34) gives: % 46.26/6.84 | (40) all_342_1 = vnoTType | ? [v0: vOptFType] : ? [v1: vOptTType] : % 46.26/6.84 | (vprojectTypeAttrL(val1, all_342_5) = v1 & vfindColType(all_342_6, % 46.26/6.84 | all_342_5) = v0 & visSomeFType(v0) = 0 & visSomeTType(v1) = 0 & % 46.26/6.84 | vOptFType(v0) & vOptTType(v1)) % 46.26/6.84 | % 46.26/6.84 | GROUND_INST: instantiating (37) with all_342_2, all_342_5, all_342_1, % 46.26/6.84 | simplifying with (25), (28), (34) gives: % 46.26/6.84 | (41) ? [v0: vName] : ? [v1: vOptFType] : ? [v2: vAttrL] : ? [v3: % 46.26/6.84 | vOptTType] : ? [v4: vFType] : ? [v5: vTType] : ? [v6: vTType] : % 46.26/6.84 | (vprojectTypeAttrL(v2, all_342_5) = v3 & vfindColType(v0, all_342_5) = % 46.26/6.84 | v1 & visSomeFType(v1) = 0 & visSomeTType(v3) = 0 & vgetFType(v1) = % 46.26/6.84 | v4 & vgetTType(v3) = v5 & vacons(v0, v2) = all_342_2 & % 46.26/6.84 | vsomeTType(v6) = all_342_1 & vttcons(v0, v4, v5) = v6 & % 46.26/6.84 | vOptFType(v1) & vTType(v6) & vTType(v5) & vOptTType(v3) & % 46.26/6.84 | vOptTType(all_342_1) & vFType(v4) & vAttrL(v2) & vName(v0)) | ? % 46.26/6.84 | [v0: vName] : ? [v1: vOptFType] : ? [v2: vAttrL] : ? [v3: % 46.26/6.84 | vOptTType] : ? [v4: any] : ? [v5: any] : (all_342_1 = vnoTType & % 46.26/6.84 | vprojectTypeAttrL(v2, all_342_5) = v3 & vfindColType(v0, all_342_5) % 46.26/6.84 | = v1 & visSomeFType(v1) = v4 & visSomeTType(v3) = v5 & vacons(v0, % 46.26/6.84 | v2) = all_342_2 & vOptFType(v1) & vOptTType(v3) & vAttrL(v2) & % 46.26/6.84 | vName(v0) & ( ~ (v5 = 0) | ~ (v4 = 0))) | (all_348_0 = all_342_1 & % 46.26/6.84 | all_342_2 = vaempty) % 46.26/6.84 | % 46.26/6.84 | BETA: splitting (40) gives: % 46.26/6.84 | % 46.26/6.84 | Case 1: % 46.26/6.84 | | % 46.26/6.84 | | (42) all_342_1 = vnoTType % 46.26/6.84 | | % 46.26/6.84 | | REDUCE: (38), (42) imply: % 46.26/6.84 | | (43) visSomeTType(vnoTType) = 0 % 46.26/6.84 | | % 46.26/6.84 | | GROUND_INST: instantiating (12) with all_315_0, 0, vnoTType, simplifying % 46.26/6.84 | | with (21), (43) gives: % 46.26/6.84 | | (44) all_315_0 = 0 % 46.26/6.84 | | % 46.26/6.84 | | REDUCE: (20), (44) imply: % 46.26/6.84 | | (45) $false % 46.26/6.85 | | % 46.26/6.85 | | CLOSE: (45) is inconsistent. % 46.26/6.85 | | % 46.26/6.85 | Case 2: % 46.26/6.85 | | % 46.26/6.85 | | (46) ~ (all_342_1 = vnoTType) % 46.26/6.85 | | (47) ? [v0: vOptFType] : ? [v1: vOptTType] : (vprojectTypeAttrL(val1, % 46.26/6.85 | | all_342_5) = v1 & vfindColType(all_342_6, all_342_5) = v0 & % 46.26/6.85 | | visSomeFType(v0) = 0 & visSomeTType(v1) = 0 & vOptFType(v0) & % 46.26/6.85 | | vOptTType(v1)) % 46.26/6.85 | | % 46.26/6.85 | | DELTA: instantiating (47) with fresh symbols all_531_0, all_531_1 gives: % 46.26/6.85 | | (48) vprojectTypeAttrL(val1, all_342_5) = all_531_0 & % 46.26/6.85 | | vfindColType(all_342_6, all_342_5) = all_531_1 & % 46.26/6.85 | | visSomeFType(all_531_1) = 0 & visSomeTType(all_531_0) = 0 & % 46.26/6.85 | | vOptFType(all_531_1) & vOptTType(all_531_0) % 46.26/6.85 | | % 46.26/6.85 | | ALPHA: (48) implies: % 46.26/6.85 | | (49) vfindColType(all_342_6, all_342_5) = all_531_1 % 46.26/6.85 | | (50) vprojectTypeAttrL(val1, all_342_5) = all_531_0 % 46.26/6.85 | | % 46.26/6.85 | | BETA: splitting (39) gives: % 46.26/6.85 | | % 46.26/6.85 | | Case 1: % 46.26/6.85 | | | % 46.26/6.85 | | | (51) ? [v0: vOptRawTable] : ? [v1: vOptRawTable] : ? [v2: vAttrL] : % 46.26/6.85 | | | ? [v3: vName] : ? [v4: vRawTable] : ? [v5: vRawTable] : ? [v6: % 46.26/6.85 | | | vRawTable] : (vprojectCols(v2, all_342_10, all_342_9) = v0 & % 46.26/6.85 | | | vfindCol(v3, all_342_10, all_342_9) = v1 & % 46.26/6.85 | | | vattachColToFrontRaw(v4, v5) = v6 & visSomeRawTable(v1) = 0 & % 46.26/6.85 | | | visSomeRawTable(v0) = 0 & vgetRawTable(v1) = v4 & % 46.26/6.85 | | | vgetRawTable(v0) = v5 & vacons(v3, v2) = all_342_2 & % 46.26/6.85 | | | vsomeRawTable(v6) = all_342_0 & vOptRawTable(v1) & % 46.26/6.85 | | | vOptRawTable(v0) & vOptRawTable(all_342_0) & vRawTable(v6) & % 46.26/6.85 | | | vRawTable(v5) & vRawTable(v4) & vAttrL(v2) & vName(v3)) % 46.26/6.85 | | | % 46.26/6.85 | | | DELTA: instantiating (51) with fresh symbols all_554_0, all_554_1, % 46.26/6.85 | | | all_554_2, all_554_3, all_554_4, all_554_5, all_554_6 gives: % 46.26/6.85 | | | (52) vprojectCols(all_554_4, all_342_10, all_342_9) = all_554_6 & % 46.26/6.85 | | | vfindCol(all_554_3, all_342_10, all_342_9) = all_554_5 & % 46.26/6.85 | | | vattachColToFrontRaw(all_554_2, all_554_1) = all_554_0 & % 46.26/6.85 | | | visSomeRawTable(all_554_5) = 0 & visSomeRawTable(all_554_6) = 0 & % 46.26/6.85 | | | vgetRawTable(all_554_5) = all_554_2 & vgetRawTable(all_554_6) = % 46.26/6.85 | | | all_554_1 & vacons(all_554_3, all_554_4) = all_342_2 & % 46.26/6.85 | | | vsomeRawTable(all_554_0) = all_342_0 & vOptRawTable(all_554_5) & % 46.26/6.85 | | | vOptRawTable(all_554_6) & vOptRawTable(all_342_0) & % 46.26/6.85 | | | vRawTable(all_554_0) & vRawTable(all_554_1) & vRawTable(all_554_2) % 46.26/6.85 | | | & vAttrL(all_554_4) & vName(all_554_3) % 46.26/6.85 | | | % 46.26/6.85 | | | ALPHA: (52) implies: % 46.26/6.85 | | | (53) vRawTable(all_554_0) % 46.26/6.85 | | | (54) vsomeRawTable(all_554_0) = all_342_0 % 46.26/6.85 | | | % 46.26/6.85 | | | GROUND_INST: instantiating (35) with all_554_0, simplifying with (53), % 46.26/6.85 | | | (54) gives: % 46.26/6.85 | | | (55) $false % 46.26/6.85 | | | % 46.26/6.85 | | | CLOSE: (55) is inconsistent. % 46.26/6.85 | | | % 46.26/6.85 | | Case 2: % 46.26/6.85 | | | % 46.26/6.85 | | | (56) ? [v0: vOptRawTable] : ? [v1: vOptRawTable] : ? [v2: vAttrL] : % 46.26/6.85 | | | ? [v3: vName] : ? [v4: any] : ? [v5: any] : (all_342_0 = % 46.26/6.85 | | | vnoRawTable & vprojectCols(v2, all_342_10, all_342_9) = v0 & % 46.26/6.85 | | | vfindCol(v3, all_342_10, all_342_9) = v1 & visSomeRawTable(v1) = % 46.26/6.85 | | | v4 & visSomeRawTable(v0) = v5 & vacons(v3, v2) = all_342_2 & % 46.26/6.85 | | | vOptRawTable(v1) & vOptRawTable(v0) & vAttrL(v2) & vName(v3) & ( % 46.26/6.85 | | | ~ (v5 = 0) | ~ (v4 = 0))) | ? [v0: vRawTable] : (all_342_2 = % 46.26/6.85 | | | vaempty & vprojectEmptyCol(all_342_9) = v0 & vsomeRawTable(v0) = % 46.26/6.85 | | | all_342_0 & vOptRawTable(all_342_0) & vRawTable(v0)) % 46.26/6.85 | | | % 46.26/6.85 | | | BETA: splitting (56) gives: % 46.26/6.85 | | | % 46.26/6.85 | | | Case 1: % 46.26/6.85 | | | | % 46.26/6.85 | | | | (57) ? [v0: vOptRawTable] : ? [v1: vOptRawTable] : ? [v2: vAttrL] % 46.26/6.85 | | | | : ? [v3: vName] : ? [v4: any] : ? [v5: any] : (all_342_0 = % 46.26/6.85 | | | | vnoRawTable & vprojectCols(v2, all_342_10, all_342_9) = v0 & % 46.26/6.85 | | | | vfindCol(v3, all_342_10, all_342_9) = v1 & visSomeRawTable(v1) % 46.26/6.85 | | | | = v4 & visSomeRawTable(v0) = v5 & vacons(v3, v2) = all_342_2 & % 46.26/6.85 | | | | vOptRawTable(v1) & vOptRawTable(v0) & vAttrL(v2) & vName(v3) & % 46.26/6.85 | | | | ( ~ (v5 = 0) | ~ (v4 = 0))) % 46.26/6.85 | | | | % 46.26/6.85 | | | | DELTA: instantiating (57) with fresh symbols all_554_0, all_554_1, % 46.26/6.85 | | | | all_554_2, all_554_3, all_554_4, all_554_5 gives: % 46.26/6.85 | | | | (58) all_342_0 = vnoRawTable & vprojectCols(all_554_3, all_342_10, % 46.26/6.85 | | | | all_342_9) = all_554_5 & vfindCol(all_554_2, all_342_10, % 46.26/6.85 | | | | all_342_9) = all_554_4 & visSomeRawTable(all_554_4) = % 46.26/6.85 | | | | all_554_1 & visSomeRawTable(all_554_5) = all_554_0 & % 46.26/6.85 | | | | vacons(all_554_2, all_554_3) = all_342_2 & % 46.26/6.85 | | | | vOptRawTable(all_554_4) & vOptRawTable(all_554_5) & % 46.26/6.85 | | | | vAttrL(all_554_3) & vName(all_554_2) & ( ~ (all_554_0 = 0) | ~ % 46.26/6.85 | | | | (all_554_1 = 0)) % 46.26/6.85 | | | | % 46.26/6.85 | | | | ALPHA: (58) implies: % 46.26/6.85 | | | | (59) vName(all_554_2) % 46.26/6.85 | | | | (60) vAttrL(all_554_3) % 46.26/6.85 | | | | (61) vOptRawTable(all_554_5) % 46.26/6.85 | | | | (62) vOptRawTable(all_554_4) % 46.26/6.85 | | | | (63) vacons(all_554_2, all_554_3) = all_342_2 % 46.26/6.85 | | | | (64) visSomeRawTable(all_554_5) = all_554_0 % 46.26/6.85 | | | | (65) visSomeRawTable(all_554_4) = all_554_1 % 46.26/6.85 | | | | (66) vfindCol(all_554_2, all_342_10, all_342_9) = all_554_4 % 46.26/6.85 | | | | (67) vprojectCols(all_554_3, all_342_10, all_342_9) = all_554_5 % 46.26/6.85 | | | | (68) ~ (all_554_0 = 0) | ~ (all_554_1 = 0) % 46.26/6.85 | | | | % 46.26/6.85 | | | | BETA: splitting (41) gives: % 46.26/6.85 | | | | % 46.26/6.85 | | | | Case 1: % 46.26/6.85 | | | | | % 46.26/6.86 | | | | | (69) ? [v0: vName] : ? [v1: vOptFType] : ? [v2: vAttrL] : ? % 46.26/6.86 | | | | | [v3: vOptTType] : ? [v4: vFType] : ? [v5: vTType] : ? [v6: % 46.26/6.86 | | | | | vTType] : (vprojectTypeAttrL(v2, all_342_5) = v3 & % 46.26/6.86 | | | | | vfindColType(v0, all_342_5) = v1 & visSomeFType(v1) = 0 & % 46.26/6.86 | | | | | visSomeTType(v3) = 0 & vgetFType(v1) = v4 & vgetTType(v3) = % 46.26/6.86 | | | | | v5 & vacons(v0, v2) = all_342_2 & vsomeTType(v6) = all_342_1 % 46.26/6.86 | | | | | & vttcons(v0, v4, v5) = v6 & vOptFType(v1) & vTType(v6) & % 46.26/6.86 | | | | | vTType(v5) & vOptTType(v3) & vOptTType(all_342_1) & % 46.26/6.86 | | | | | vFType(v4) & vAttrL(v2) & vName(v0)) % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | DELTA: instantiating (69) with fresh symbols all_581_0, all_581_1, % 46.26/6.86 | | | | | all_581_2, all_581_3, all_581_4, all_581_5, all_581_6 gives: % 46.26/6.86 | | | | | (70) vprojectTypeAttrL(all_581_4, all_342_5) = all_581_3 & % 46.26/6.86 | | | | | vfindColType(all_581_6, all_342_5) = all_581_5 & % 46.26/6.86 | | | | | visSomeFType(all_581_5) = 0 & visSomeTType(all_581_3) = 0 & % 46.26/6.86 | | | | | vgetFType(all_581_5) = all_581_2 & vgetTType(all_581_3) = % 46.26/6.86 | | | | | all_581_1 & vacons(all_581_6, all_581_4) = all_342_2 & % 46.26/6.86 | | | | | vsomeTType(all_581_0) = all_342_1 & vttcons(all_581_6, % 46.26/6.86 | | | | | all_581_2, all_581_1) = all_581_0 & vOptFType(all_581_5) & % 46.26/6.86 | | | | | vTType(all_581_0) & vTType(all_581_1) & vOptTType(all_581_3) & % 46.26/6.86 | | | | | vOptTType(all_342_1) & vFType(all_581_2) & vAttrL(all_581_4) & % 46.26/6.86 | | | | | vName(all_581_6) % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | ALPHA: (70) implies: % 46.26/6.86 | | | | | (71) vName(all_581_6) % 46.26/6.86 | | | | | (72) vAttrL(all_581_4) % 46.26/6.86 | | | | | (73) vOptTType(all_581_3) % 46.26/6.86 | | | | | (74) vOptFType(all_581_5) % 46.26/6.86 | | | | | (75) vacons(all_581_6, all_581_4) = all_342_2 % 46.26/6.86 | | | | | (76) visSomeTType(all_581_3) = 0 % 46.26/6.86 | | | | | (77) visSomeFType(all_581_5) = 0 % 46.26/6.86 | | | | | (78) vfindColType(all_581_6, all_342_5) = all_581_5 % 46.26/6.86 | | | | | (79) vprojectTypeAttrL(all_581_4, all_342_5) = all_581_3 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | GROUND_INST: instantiating (EQ-acons) with all_342_6, val1, all_581_6, % 46.26/6.86 | | | | | all_581_4, all_342_2, simplifying with (9), (23), (30), % 46.26/6.86 | | | | | (71), (72), (75) gives: % 46.26/6.86 | | | | | (80) all_581_4 = val1 & all_581_6 = all_342_6 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | ALPHA: (80) implies: % 46.26/6.86 | | | | | (81) all_581_6 = all_342_6 % 46.26/6.86 | | | | | (82) all_581_4 = val1 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | GROUND_INST: instantiating (EQ-acons) with all_554_2, all_554_3, % 46.26/6.86 | | | | | all_581_6, all_581_4, all_342_2, simplifying with (59), % 46.26/6.86 | | | | | (60), (63), (71), (72), (75) gives: % 46.26/6.86 | | | | | (83) all_581_4 = all_554_3 & all_581_6 = all_554_2 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | ALPHA: (83) implies: % 46.26/6.86 | | | | | (84) all_581_6 = all_554_2 % 46.26/6.86 | | | | | (85) all_581_4 = all_554_3 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | GROUND_INST: instantiating (3) with all_554_5, all_554_0, simplifying % 46.26/6.86 | | | | | with (61), (64) gives: % 46.26/6.86 | | | | | (86) all_554_0 = 0 | all_554_5 = vnoRawTable % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | GROUND_INST: instantiating (3) with all_554_4, all_554_1, simplifying % 46.26/6.86 | | | | | with (62), (65) gives: % 46.26/6.86 | | | | | (87) all_554_1 = 0 | all_554_4 = vnoRawTable % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | GROUND_INST: instantiating (isSomeTType-true-INV) with all_581_3, % 46.26/6.86 | | | | | simplifying with (73), (76) gives: % 46.26/6.86 | | | | | (88) ? [v0: vTType] : (vsomeTType(v0) = all_581_3 & vTType(v0)) % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | GROUND_INST: instantiating (isSomeFType-true-INV) with all_581_5, % 46.26/6.86 | | | | | simplifying with (74), (77) gives: % 46.26/6.86 | | | | | (89) ? [v0: vFType] : (vsomeFType(v0) = all_581_5 & vFType(v0)) % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | COMBINE_EQS: (82), (85) imply: % 46.26/6.86 | | | | | (90) all_554_3 = val1 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | COMBINE_EQS: (81), (84) imply: % 46.26/6.86 | | | | | (91) all_554_2 = all_342_6 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | DELTA: instantiating (89) with fresh symbol all_589_0 gives: % 46.26/6.86 | | | | | (92) vsomeFType(all_589_0) = all_581_5 & vFType(all_589_0) % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | ALPHA: (92) implies: % 46.26/6.86 | | | | | (93) vFType(all_589_0) % 46.26/6.86 | | | | | (94) vsomeFType(all_589_0) = all_581_5 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | DELTA: instantiating (88) with fresh symbol all_593_0 gives: % 46.26/6.86 | | | | | (95) vsomeTType(all_593_0) = all_581_3 & vTType(all_593_0) % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | ALPHA: (95) implies: % 46.26/6.86 | | | | | (96) vTType(all_593_0) % 46.26/6.86 | | | | | (97) vsomeTType(all_593_0) = all_581_3 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | REDUCE: (79), (82) imply: % 46.26/6.86 | | | | | (98) vprojectTypeAttrL(val1, all_342_5) = all_581_3 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | REDUCE: (78), (81) imply: % 46.26/6.86 | | | | | (99) vfindColType(all_342_6, all_342_5) = all_581_5 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | REDUCE: (67), (90) imply: % 46.26/6.86 | | | | | (100) vprojectCols(val1, all_342_10, all_342_9) = all_554_5 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | REDUCE: (66), (91) imply: % 46.26/6.86 | | | | | (101) vfindCol(all_342_6, all_342_10, all_342_9) = all_554_4 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | GROUND_INST: instantiating (15) with all_531_1, all_581_5, all_342_5, % 46.26/6.86 | | | | | all_342_6, simplifying with (49), (99) gives: % 46.26/6.86 | | | | | (102) all_581_5 = all_531_1 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | GROUND_INST: instantiating (16) with all_531_0, all_581_3, all_342_5, % 46.26/6.86 | | | | | val1, simplifying with (50), (98) gives: % 46.26/6.86 | | | | | (103) all_581_3 = all_531_0 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | REDUCE: (94), (102) imply: % 46.26/6.86 | | | | | (104) vsomeFType(all_589_0) = all_531_1 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | REDUCE: (97), (103) imply: % 46.26/6.86 | | | | | (105) vsomeTType(all_593_0) = all_531_0 % 46.26/6.86 | | | | | % 46.26/6.86 | | | | | GROUND_INST: instantiating (findColTypeImpliesfindCol) with all_342_9, % 46.26/6.86 | | | | | all_589_0, all_342_10, all_342_6, all_342_5, all_531_1, % 46.26/6.86 | | | | | all_554_4, simplifying with (23), (24), (26), (28), (49), % 46.26/6.86 | | | | | (93), (101), (104) gives: % 46.26/6.86 | | | | | (106) ? [v0: any] : ? [v1: any] : (vwelltypedRawtable(all_342_5, % 46.26/6.86 | | | | | all_342_9) = v0 & vmatchingAttrL(all_342_5, all_342_10) = % 46.26/6.86 | | | | | v1 & ( ~ (v1 = 0) | ~ (v0 = 0))) | ? [v0: vRawTable] : % 46.26/6.86 | | | | | (vsomeRawTable(v0) = all_554_4 & vOptRawTable(all_554_4) & % 46.26/6.86 | | | | | vRawTable(v0)) % 46.26/6.86 | | | | | % 46.26/6.87 | | | | | GROUND_INST: instantiating (8) with all_342_5, all_342_9, all_342_10, % 46.26/6.87 | | | | | all_593_0, all_531_0, all_554_5, simplifying with (24), % 46.26/6.87 | | | | | (26), (28), (50), (96), (100), (105) gives: % 46.26/6.87 | | | | | (107) ? [v0: any] : ? [v1: any] : (vwelltypedRawtable(all_342_5, % 46.26/6.87 | | | | | all_342_9) = v0 & vmatchingAttrL(all_342_5, all_342_10) = % 46.26/6.87 | | | | | v1 & ( ~ (v1 = 0) | ~ (v0 = 0))) | ? [v0: vRawTable] : % 46.26/6.87 | | | | | (vsomeRawTable(v0) = all_554_5 & vOptRawTable(all_554_5) & % 46.26/6.87 | | | | | vRawTable(v0)) % 46.26/6.87 | | | | | % 46.26/6.87 | | | | | BETA: splitting (106) gives: % 46.26/6.87 | | | | | % 46.26/6.87 | | | | | Case 1: % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | (108) ? [v0: any] : ? [v1: any] : % 46.26/6.87 | | | | | | (vwelltypedRawtable(all_342_5, all_342_9) = v0 & % 46.26/6.87 | | | | | | vmatchingAttrL(all_342_5, all_342_10) = v1 & ( ~ (v1 = 0) % 46.26/6.87 | | | | | | | ~ (v0 = 0))) % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | DELTA: instantiating (108) with fresh symbols all_704_0, all_704_1 % 46.26/6.87 | | | | | | gives: % 46.26/6.87 | | | | | | (109) vwelltypedRawtable(all_342_5, all_342_9) = all_704_1 & % 46.26/6.87 | | | | | | vmatchingAttrL(all_342_5, all_342_10) = all_704_0 & ( ~ % 46.26/6.87 | | | | | | (all_704_0 = 0) | ~ (all_704_1 = 0)) % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | ALPHA: (109) implies: % 46.26/6.87 | | | | | | (110) vmatchingAttrL(all_342_5, all_342_10) = all_704_0 % 46.26/6.87 | | | | | | (111) vwelltypedRawtable(all_342_5, all_342_9) = all_704_1 % 46.26/6.87 | | | | | | (112) ~ (all_704_0 = 0) | ~ (all_704_1 = 0) % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | DELTA: instantiating (108) with fresh symbols all_708_0, all_708_1 % 46.26/6.87 | | | | | | gives: % 46.26/6.87 | | | | | | (113) vwelltypedRawtable(all_342_5, all_342_9) = all_708_1 & % 46.26/6.87 | | | | | | vmatchingAttrL(all_342_5, all_342_10) = all_708_0 & ( ~ % 46.26/6.87 | | | | | | (all_708_0 = 0) | ~ (all_708_1 = 0)) % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | ALPHA: (113) implies: % 46.26/6.87 | | | | | | (114) vmatchingAttrL(all_342_5, all_342_10) = all_708_0 % 46.26/6.87 | | | | | | (115) vwelltypedRawtable(all_342_5, all_342_9) = all_708_1 % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | GROUND_INST: instantiating (13) with 0, all_708_0, all_342_10, % 46.26/6.87 | | | | | | all_342_5, simplifying with (31), (114) gives: % 46.26/6.87 | | | | | | (116) all_708_0 = 0 % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | GROUND_INST: instantiating (13) with all_704_0, all_708_0, % 46.26/6.87 | | | | | | all_342_10, all_342_5, simplifying with (110), (114) % 46.26/6.87 | | | | | | gives: % 46.26/6.87 | | | | | | (117) all_708_0 = all_704_0 % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | GROUND_INST: instantiating (14) with 0, all_708_1, all_342_9, % 46.26/6.87 | | | | | | all_342_5, simplifying with (32), (115) gives: % 46.26/6.87 | | | | | | (118) all_708_1 = 0 % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | GROUND_INST: instantiating (14) with all_704_1, all_708_1, % 46.26/6.87 | | | | | | all_342_9, all_342_5, simplifying with (111), (115) % 46.26/6.87 | | | | | | gives: % 46.26/6.87 | | | | | | (119) all_708_1 = all_704_1 % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | COMBINE_EQS: (116), (117) imply: % 46.26/6.87 | | | | | | (120) all_704_0 = 0 % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | COMBINE_EQS: (118), (119) imply: % 46.26/6.87 | | | | | | (121) all_704_1 = 0 % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | BETA: splitting (112) gives: % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | Case 1: % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | (122) ~ (all_704_0 = 0) % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | REDUCE: (120), (122) imply: % 46.26/6.87 | | | | | | | (123) $false % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | CLOSE: (123) is inconsistent. % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | Case 2: % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | (124) ~ (all_704_1 = 0) % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | REDUCE: (121), (124) imply: % 46.26/6.87 | | | | | | | (125) $false % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | CLOSE: (125) is inconsistent. % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | End of split % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | Case 2: % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | (126) ? [v0: vRawTable] : (vsomeRawTable(v0) = all_554_4 & % 46.26/6.87 | | | | | | vOptRawTable(all_554_4) & vRawTable(v0)) % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | DELTA: instantiating (126) with fresh symbol all_704_0 gives: % 46.26/6.87 | | | | | | (127) vsomeRawTable(all_704_0) = all_554_4 & % 46.26/6.87 | | | | | | vOptRawTable(all_554_4) & vRawTable(all_704_0) % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | ALPHA: (127) implies: % 46.26/6.87 | | | | | | (128) vRawTable(all_704_0) % 46.26/6.87 | | | | | | (129) vsomeRawTable(all_704_0) = all_554_4 % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | BETA: splitting (107) gives: % 46.26/6.87 | | | | | | % 46.26/6.87 | | | | | | Case 1: % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | (130) ? [v0: any] : ? [v1: any] : % 46.26/6.87 | | | | | | | (vwelltypedRawtable(all_342_5, all_342_9) = v0 & % 46.26/6.87 | | | | | | | vmatchingAttrL(all_342_5, all_342_10) = v1 & ( ~ (v1 = % 46.26/6.87 | | | | | | | 0) | ~ (v0 = 0))) % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | DELTA: instantiating (130) with fresh symbols all_708_0, all_708_1 % 46.26/6.87 | | | | | | | gives: % 46.26/6.87 | | | | | | | (131) vwelltypedRawtable(all_342_5, all_342_9) = all_708_1 & % 46.26/6.87 | | | | | | | vmatchingAttrL(all_342_5, all_342_10) = all_708_0 & ( ~ % 46.26/6.87 | | | | | | | (all_708_0 = 0) | ~ (all_708_1 = 0)) % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | ALPHA: (131) implies: % 46.26/6.87 | | | | | | | (132) vmatchingAttrL(all_342_5, all_342_10) = all_708_0 % 46.26/6.87 | | | | | | | (133) vwelltypedRawtable(all_342_5, all_342_9) = all_708_1 % 46.26/6.87 | | | | | | | (134) ~ (all_708_0 = 0) | ~ (all_708_1 = 0) % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | GROUND_INST: instantiating (13) with 0, all_708_0, all_342_10, % 46.26/6.87 | | | | | | | all_342_5, simplifying with (31), (132) gives: % 46.26/6.87 | | | | | | | (135) all_708_0 = 0 % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | GROUND_INST: instantiating (14) with 0, all_708_1, all_342_9, % 46.26/6.87 | | | | | | | all_342_5, simplifying with (32), (133) gives: % 46.26/6.87 | | | | | | | (136) all_708_1 = 0 % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | BETA: splitting (134) gives: % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | Case 1: % 46.26/6.87 | | | | | | | | % 46.26/6.87 | | | | | | | | (137) ~ (all_708_0 = 0) % 46.26/6.87 | | | | | | | | % 46.26/6.87 | | | | | | | | REDUCE: (135), (137) imply: % 46.26/6.87 | | | | | | | | (138) $false % 46.26/6.87 | | | | | | | | % 46.26/6.87 | | | | | | | | CLOSE: (138) is inconsistent. % 46.26/6.87 | | | | | | | | % 46.26/6.87 | | | | | | | Case 2: % 46.26/6.87 | | | | | | | | % 46.26/6.87 | | | | | | | | (139) ~ (all_708_1 = 0) % 46.26/6.87 | | | | | | | | % 46.26/6.87 | | | | | | | | REDUCE: (136), (139) imply: % 46.26/6.87 | | | | | | | | (140) $false % 46.26/6.87 | | | | | | | | % 46.26/6.87 | | | | | | | | CLOSE: (140) is inconsistent. % 46.26/6.87 | | | | | | | | % 46.26/6.87 | | | | | | | End of split % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | Case 2: % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | (141) ? [v0: vRawTable] : (vsomeRawTable(v0) = all_554_5 & % 46.26/6.87 | | | | | | | vOptRawTable(all_554_5) & vRawTable(v0)) % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | DELTA: instantiating (141) with fresh symbol all_708_0 gives: % 46.26/6.87 | | | | | | | (142) vsomeRawTable(all_708_0) = all_554_5 & % 46.26/6.87 | | | | | | | vOptRawTable(all_554_5) & vRawTable(all_708_0) % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | ALPHA: (142) implies: % 46.26/6.87 | | | | | | | (143) vRawTable(all_708_0) % 46.26/6.87 | | | | | | | (144) vsomeRawTable(all_708_0) = all_554_5 % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | BETA: splitting (68) gives: % 46.26/6.87 | | | | | | | % 46.26/6.87 | | | | | | | Case 1: % 46.26/6.87 | | | | | | | | % 46.26/6.87 | | | | | | | | (145) ~ (all_554_0 = 0) % 46.26/6.87 | | | | | | | | % 46.26/6.87 | | | | | | | | BETA: splitting (86) gives: % 46.26/6.87 | | | | | | | | % 46.26/6.87 | | | | | | | | Case 1: % 46.26/6.87 | | | | | | | | | % 46.26/6.87 | | | | | | | | | (146) all_554_0 = 0 % 46.26/6.87 | | | | | | | | | % 46.26/6.87 | | | | | | | | | REDUCE: (145), (146) imply: % 46.26/6.87 | | | | | | | | | (147) $false % 46.26/6.87 | | | | | | | | | % 46.26/6.87 | | | | | | | | | CLOSE: (147) is inconsistent. % 46.26/6.87 | | | | | | | | | % 46.26/6.87 | | | | | | | | Case 2: % 46.26/6.87 | | | | | | | | | % 46.26/6.87 | | | | | | | | | (148) all_554_5 = vnoRawTable % 46.26/6.87 | | | | | | | | | % 46.26/6.87 | | | | | | | | | REDUCE: (64), (148) imply: % 46.26/6.87 | | | | | | | | | (149) visSomeRawTable(vnoRawTable) = all_554_0 % 46.26/6.87 | | | | | | | | | % 46.26/6.87 | | | | | | | | | REDUCE: (144), (148) imply: % 46.26/6.87 | | | | | | | | | (150) vsomeRawTable(all_708_0) = vnoRawTable % 46.26/6.87 | | | | | | | | | % 46.26/6.88 | | | | | | | | | GROUND_INST: instantiating (11) with all_313_0, all_554_0, % 46.26/6.88 | | | | | | | | | vnoRawTable, simplifying with (18), (149) gives: % 46.26/6.88 | | | | | | | | | (151) all_554_0 = all_313_0 % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | | REDUCE: (145), (151) imply: % 46.26/6.88 | | | | | | | | | (152) ~ (all_313_0 = 0) % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | | GROUND_INST: instantiating (isSomeRawTable-1) with all_708_0, % 46.26/6.88 | | | | | | | | | vnoRawTable, simplifying with (143), (150) gives: % 46.26/6.88 | | | | | | | | | (153) visSomeRawTable(vnoRawTable) = 0 % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | | REF_CLOSE: (11), (18), (152), (153) are inconsistent by % 46.26/6.88 | | | | | | | | | sub-proof #1. % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | End of split % 46.26/6.88 | | | | | | | | % 46.26/6.88 | | | | | | | Case 2: % 46.26/6.88 | | | | | | | | % 46.26/6.88 | | | | | | | | (154) ~ (all_554_1 = 0) % 46.26/6.88 | | | | | | | | % 46.26/6.88 | | | | | | | | BETA: splitting (87) gives: % 46.26/6.88 | | | | | | | | % 46.26/6.88 | | | | | | | | Case 1: % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | | (155) all_554_1 = 0 % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | | REDUCE: (154), (155) imply: % 46.26/6.88 | | | | | | | | | (156) $false % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | | CLOSE: (156) is inconsistent. % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | Case 2: % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | | (157) all_554_4 = vnoRawTable % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | | REDUCE: (65), (157) imply: % 46.26/6.88 | | | | | | | | | (158) visSomeRawTable(vnoRawTable) = all_554_1 % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | | REDUCE: (129), (157) imply: % 46.26/6.88 | | | | | | | | | (159) vsomeRawTable(all_704_0) = vnoRawTable % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | | GROUND_INST: instantiating (11) with all_313_0, all_554_1, % 46.26/6.88 | | | | | | | | | vnoRawTable, simplifying with (18), (158) gives: % 46.26/6.88 | | | | | | | | | (160) all_554_1 = all_313_0 % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | | REDUCE: (154), (160) imply: % 46.26/6.88 | | | | | | | | | (161) ~ (all_313_0 = 0) % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | | GROUND_INST: instantiating (isSomeRawTable-1) with all_704_0, % 46.26/6.88 | | | | | | | | | vnoRawTable, simplifying with (128), (159) gives: % 46.26/6.88 | | | | | | | | | (162) visSomeRawTable(vnoRawTable) = 0 % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | | REF_CLOSE: (11), (18), (161), (162) are inconsistent by % 46.26/6.88 | | | | | | | | | sub-proof #1. % 46.26/6.88 | | | | | | | | | % 46.26/6.88 | | | | | | | | End of split % 46.26/6.88 | | | | | | | | % 46.26/6.88 | | | | | | | End of split % 46.26/6.88 | | | | | | | % 46.26/6.88 | | | | | | End of split % 46.26/6.88 | | | | | | % 46.26/6.88 | | | | | End of split % 46.26/6.88 | | | | | % 46.26/6.88 | | | | Case 2: % 46.26/6.88 | | | | | % 46.26/6.88 | | | | | (163) ? [v0: vName] : ? [v1: vOptFType] : ? [v2: vAttrL] : ? % 46.26/6.88 | | | | | [v3: vOptTType] : ? [v4: any] : ? [v5: any] : (all_342_1 = % 46.26/6.88 | | | | | vnoTType & vprojectTypeAttrL(v2, all_342_5) = v3 & % 46.26/6.88 | | | | | vfindColType(v0, all_342_5) = v1 & visSomeFType(v1) = v4 & % 46.26/6.88 | | | | | visSomeTType(v3) = v5 & vacons(v0, v2) = all_342_2 & % 46.26/6.88 | | | | | vOptFType(v1) & vOptTType(v3) & vAttrL(v2) & vName(v0) & ( % 46.26/6.88 | | | | | ~ (v5 = 0) | ~ (v4 = 0))) | (all_348_0 = all_342_1 & % 46.26/6.88 | | | | | all_342_2 = vaempty) % 46.26/6.88 | | | | | % 46.26/6.88 | | | | | BETA: splitting (163) gives: % 46.26/6.88 | | | | | % 46.26/6.88 | | | | | Case 1: % 46.26/6.88 | | | | | | % 46.26/6.88 | | | | | | (164) ? [v0: vName] : ? [v1: vOptFType] : ? [v2: vAttrL] : ? % 46.26/6.88 | | | | | | [v3: vOptTType] : ? [v4: any] : ? [v5: any] : (all_342_1 % 46.26/6.88 | | | | | | = vnoTType & vprojectTypeAttrL(v2, all_342_5) = v3 & % 46.26/6.88 | | | | | | vfindColType(v0, all_342_5) = v1 & visSomeFType(v1) = v4 % 46.26/6.88 | | | | | | & visSomeTType(v3) = v5 & vacons(v0, v2) = all_342_2 & % 46.26/6.88 | | | | | | vOptFType(v1) & vOptTType(v3) & vAttrL(v2) & vName(v0) & % 46.26/6.88 | | | | | | ( ~ (v5 = 0) | ~ (v4 = 0))) % 46.26/6.88 | | | | | | % 46.26/6.88 | | | | | | DELTA: instantiating (164) with fresh symbols all_597_0, all_597_1, % 46.26/6.88 | | | | | | all_597_2, all_597_3, all_597_4, all_597_5 gives: % 46.26/6.88 | | | | | | (165) all_342_1 = vnoTType & vprojectTypeAttrL(all_597_3, % 46.26/6.88 | | | | | | all_342_5) = all_597_2 & vfindColType(all_597_5, % 46.26/6.88 | | | | | | all_342_5) = all_597_4 & visSomeFType(all_597_4) = % 46.26/6.88 | | | | | | all_597_1 & visSomeTType(all_597_2) = all_597_0 & % 46.26/6.88 | | | | | | vacons(all_597_5, all_597_3) = all_342_2 & % 46.26/6.88 | | | | | | vOptFType(all_597_4) & vOptTType(all_597_2) & % 46.26/6.88 | | | | | | vAttrL(all_597_3) & vName(all_597_5) & ( ~ (all_597_0 = 0) % 46.26/6.88 | | | | | | | ~ (all_597_1 = 0)) % 46.26/6.88 | | | | | | % 46.26/6.88 | | | | | | ALPHA: (165) implies: % 46.26/6.88 | | | | | | (166) all_342_1 = vnoTType % 46.26/6.88 | | | | | | % 46.26/6.88 | | | | | | REDUCE: (46), (166) imply: % 46.26/6.88 | | | | | | (167) $false % 46.26/6.88 | | | | | | % 46.26/6.88 | | | | | | CLOSE: (167) is inconsistent. % 46.26/6.88 | | | | | | % 46.26/6.88 | | | | | Case 2: % 46.26/6.88 | | | | | | % 46.26/6.88 | | | | | | (168) all_348_0 = all_342_1 & all_342_2 = vaempty % 46.26/6.88 | | | | | | % 46.26/6.88 | | | | | | ALPHA: (168) implies: % 46.26/6.88 | | | | | | (169) all_342_2 = vaempty % 46.26/6.88 | | | | | | % 46.26/6.88 | | | | | | REDUCE: (30), (169) imply: % 46.26/6.88 | | | | | | (170) vacons(all_342_6, val1) = vaempty % 46.26/6.88 | | | | | | % 46.26/6.88 | | | | | | GROUND_INST: instantiating (1) with all_342_6, val1, simplifying % 46.26/6.88 | | | | | | with (9), (23), (170) gives: % 46.26/6.88 | | | | | | (171) $false % 46.26/6.88 | | | | | | % 46.26/6.88 | | | | | | CLOSE: (171) is inconsistent. % 46.26/6.88 | | | | | | % 46.26/6.88 | | | | | End of split % 46.26/6.88 | | | | | % 46.26/6.88 | | | | End of split % 46.26/6.88 | | | | % 46.26/6.88 | | | Case 2: % 46.26/6.88 | | | | % 46.26/6.88 | | | | (172) ? [v0: vRawTable] : (all_342_2 = vaempty & % 46.26/6.88 | | | | vprojectEmptyCol(all_342_9) = v0 & vsomeRawTable(v0) = % 46.26/6.88 | | | | all_342_0 & vOptRawTable(all_342_0) & vRawTable(v0)) % 46.26/6.88 | | | | % 46.26/6.88 | | | | DELTA: instantiating (172) with fresh symbol all_554_0 gives: % 46.26/6.88 | | | | (173) all_342_2 = vaempty & vprojectEmptyCol(all_342_9) = all_554_0 & % 46.26/6.88 | | | | vsomeRawTable(all_554_0) = all_342_0 & vOptRawTable(all_342_0) % 46.26/6.88 | | | | & vRawTable(all_554_0) % 46.26/6.88 | | | | % 46.26/6.88 | | | | ALPHA: (173) implies: % 46.26/6.88 | | | | (174) all_342_2 = vaempty % 46.26/6.88 | | | | % 46.26/6.88 | | | | REDUCE: (30), (174) imply: % 46.26/6.88 | | | | (175) vacons(all_342_6, val1) = vaempty % 46.26/6.88 | | | | % 46.26/6.88 | | | | GROUND_INST: instantiating (1) with all_342_6, val1, simplifying with % 46.26/6.88 | | | | (9), (23), (175) gives: % 46.26/6.88 | | | | (176) $false % 46.26/6.88 | | | | % 46.26/6.88 | | | | CLOSE: (176) is inconsistent. % 46.26/6.88 | | | | % 46.26/6.88 | | | End of split % 46.26/6.88 | | | % 46.26/6.88 | | End of split % 46.26/6.88 | | % 46.26/6.88 | End of split % 46.26/6.88 | % 46.26/6.88 End of proof % 46.26/6.88 % 46.26/6.88 Sub-proof #1 shows that the following formulas are inconsistent: % 46.26/6.88 ---------------------------------------------------------------- % 46.26/6.88 (1) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 46.26/6.88 vOptRawTable] : (v1 = v0 | ~ (visSomeRawTable(v2) = v1) | ~ % 46.26/6.88 (visSomeRawTable(v2) = v0)) % 46.26/6.88 (2) visSomeRawTable(vnoRawTable) = all_313_0 % 46.26/6.88 (3) visSomeRawTable(vnoRawTable) = 0 % 46.26/6.88 (4) ~ (all_313_0 = 0) % 46.26/6.88 % 46.26/6.88 Begin of proof % 46.26/6.88 | % 46.26/6.88 | GROUND_INST: instantiating (1) with all_313_0, 0, vnoRawTable, simplifying % 46.26/6.88 | with (2), (3) gives: % 46.26/6.88 | (5) all_313_0 = 0 % 46.26/6.88 | % 46.26/6.88 | REDUCE: (4), (5) imply: % 46.26/6.88 | (6) $false % 46.26/6.88 | % 46.26/6.88 | CLOSE: (6) is inconsistent. % 46.26/6.88 | % 46.26/6.88 End of proof % 46.26/6.88 % SZS output end Proof for theBenchmark % 46.26/6.88 % 46.26/6.88 6288ms %------------------------------------------------------------------------------