%------------------------------------------------------------------------------ % File : Princess---230619 % Problem : COM294_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 : n008.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:42 PM UTC 2026 % Result : Theorem 107.90s 14.78s % Output : Proof 111.36s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.12 % Problem : COM294_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.34 % Computer : n008.cluster.edu % 0.16/0.34 % Model : x86_64 x86_64 % 0.16/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.16/0.34 % Memory : 8042.1875MB % 0.16/0.34 % OS : Linux 3.10.0-693.el7.x86_64 % 0.16/0.34 % CPULimit : 300 % 0.16/0.34 % WCLimit : 300 % 0.16/0.34 % DateTime : Mon May 4 20:27:13 EDT 2026 % 0.16/0.34 % CPUTime : % 0.50/0.62 ________ _____ % 0.50/0.62 ___ __ \_________(_)________________________________ % 0.50/0.62 __ /_/ /_ ___/_ /__ __ \ ___/ _ \_ ___/_ ___/ % 0.50/0.62 _ ____/_ / _ / _ / / / /__ / __/(__ )_(__ ) % 0.50/0.62 /_/ /_/ /_/ /_/ /_/\___/ \___//____/ /____/ % 0.50/0.62 % 0.50/0.62 A Theorem Prover for First-Order Logic modulo Linear Integer Arithmetic % 0.50/0.62 (2023-06-19) % 0.50/0.62 % 0.50/0.62 (c) Philipp Rümmer, 2009-2023 % 0.50/0.62 Contributors: Peter Backeman, Peter Baumgartner, Angelo Brillout, Zafer Esen, % 0.50/0.62 Amanda Stjerna. % 0.50/0.62 Free software under BSD-3-Clause. % 0.50/0.62 % 0.50/0.62 For more information, visit http://www.philipp.ruemmer.org/princess.shtml % 0.50/0.62 % 0.50/0.62 Loading /export/starexec/sandbox/benchmark/theBenchmark.p ... % 0.68/0.64 Running up to 7 provers in parallel. % 0.68/0.67 Prover 0: Options: +triggersInConjecture +genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1042961893 % 0.68/0.67 Prover 1: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1571432423 % 0.68/0.67 Prover 2: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMinimalAndEmpty -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1065072994 % 0.68/0.67 Prover 3: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1922548996 % 0.68/0.67 Prover 4: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=1868514696 % 0.68/0.67 Prover 5: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMaximal -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=complete -randomSeed=1259561288 % 0.68/0.67 Prover 6: Options: -triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximalOutermost -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1399714365 % 10.16/2.25 Prover 1: Preprocessing ... % 10.16/2.25 Prover 4: Preprocessing ... % 10.16/2.27 Prover 6: Preprocessing ... % 10.16/2.27 Prover 2: Preprocessing ... % 10.16/2.27 Prover 5: Preprocessing ... % 10.16/2.27 Prover 3: Preprocessing ... % 10.16/2.27 Prover 0: Preprocessing ... % 24.77/4.14 Prover 1: Warning: ignoring some quantifiers % 25.43/4.23 Prover 1: Constructing countermodel ... % 25.43/4.28 Prover 4: Warning: ignoring some quantifiers % 25.43/4.29 Prover 3: Warning: ignoring some quantifiers % 26.22/4.31 Prover 3: Constructing countermodel ... % 26.22/4.36 Prover 4: Constructing countermodel ... % 27.00/4.40 Prover 6: Proving ... % 27.00/4.45 Prover 0: Proving ... % 27.00/4.49 Prover 5: Proving ... % 30.94/4.91 Prover 2: Proving ... % 74.40/10.43 Prover 2: stopped % 74.40/10.44 Prover 7: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-236303470 % 77.57/10.87 Prover 7: Preprocessing ... % 83.91/11.61 Prover 7: Warning: ignoring some quantifiers % 83.91/11.69 Prover 7: Constructing countermodel ... % 102.05/14.01 Prover 5: stopped % 102.05/14.01 Prover 8: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-200781089 % 105.19/14.34 Prover 8: Preprocessing ... % 106.78/14.57 Prover 1: Found proof (size 1916) % 106.78/14.57 Prover 1: proved (13920ms) % 106.78/14.58 Prover 6: stopped % 106.78/14.58 Prover 7: stopped % 106.78/14.58 Prover 3: stopped % 106.78/14.58 Prover 4: stopped % 106.78/14.58 Prover 0: stopped % 107.90/14.74 Prover 8: Warning: ignoring some quantifiers % 107.90/14.76 Prover 8: Constructing countermodel ... % 107.90/14.78 Prover 8: stopped % 107.90/14.78 % 107.90/14.78 % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p % 107.90/14.78 % 108.30/14.83 % SZS output start Proof for theBenchmark % 108.30/14.85 Assumptions after simplification: % 108.30/14.85 --------------------------------- % 108.30/14.85 % 108.30/14.85 (DIFF-Union-Difference) % 108.30/14.88 ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ! [v3: vQuery] : ! % 108.30/14.88 [v4: vQuery] : ( ~ (vDifference(v2, v3) = v4) | ~ (vUnion(v0, v1) = v4) | ~ % 108.30/14.88 vQuery(v3) | ~ vQuery(v2) | ~ vQuery(v1) | ~ vQuery(v0)) % 108.30/14.88 % 108.30/14.88 (DIFF-Union-Intersection) % 108.30/14.88 ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ! [v3: vQuery] : ! % 108.30/14.88 [v4: vQuery] : ( ~ (vIntersection(v2, v3) = v4) | ~ (vUnion(v0, v1) = v4) | % 108.30/14.88 ~ vQuery(v3) | ~ vQuery(v2) | ~ vQuery(v1) | ~ vQuery(v0)) % 108.30/14.88 % 108.30/14.88 (DIFF-selectFromWhere-Union) % 108.30/14.88 ! [v0: vName] : ! [v1: vPred] : ! [v2: vSelect] : ! [v3: vQuery] : ! [v4: % 108.30/14.88 vQuery] : ! [v5: vQuery] : ( ~ (vUnion(v4, v3) = v5) | ~ % 108.30/14.88 (vselectFromWhere(v2, v0, v1) = v5) | ~ vSelect(v2) | ~ vQuery(v4) | ~ % 108.30/14.88 vQuery(v3) | ~ vName(v0) | ~ vPred(v1)) % 108.30/14.88 % 108.30/14.88 (EQ-Union) % 108.30/14.88 ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ! [v3: vQuery] : ! % 108.30/14.88 [v4: vQuery] : ( ~ (vUnion(v2, v3) = v4) | ~ (vUnion(v0, v1) = v4) | ~ % 108.30/14.88 vQuery(v3) | ~ vQuery(v2) | ~ vQuery(v1) | ~ vQuery(v0) | (v3 = v1 & v2 = % 108.30/14.88 v0)) % 108.30/14.88 % 108.30/14.88 (EQ-someQuery) % 108.30/14.88 ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vOptQuery] : (v1 = v0 | ~ % 108.30/14.88 (vsomeQuery(v1) = v2) | ~ (vsomeQuery(v0) = v2) | ~ vQuery(v1) | ~ % 108.30/14.88 vQuery(v0)) % 108.30/14.88 % 108.30/14.88 (Preservation-Union-IH0) % 108.30/14.89 vQuery(vq1) & ! [v0: vTStore] : ! [v1: vTTContext] : ! [v2: vTType] : ! % 108.30/14.89 [v3: vQuery] : ! [v4: vOptQuery] : ( ~ (vptcheck(v1, vq1, v2) = 0) | ~ % 108.30/14.89 (vreduce(vq1, v0) = v4) | ~ (vsomeQuery(v3) = v4) | ~ vTType(v2) | ~ % 108.30/14.89 vTStore(v0) | ~ vQuery(v3) | ~ vTTContext(v1) | ? [v5: any] : ? [v6: % 108.30/14.89 any] : (vptcheck(v1, v3, v2) = v6 & vstoreContextConsistent(v0, v1) = v5 & % 108.30/14.89 ( ~ (v5 = 0) | v6 = 0))) % 108.30/14.89 % 108.30/14.89 (Preservation-Union-q1-isSomeQuery-True) % 108.30/14.89 vQuery(vq2) & vQuery(vq1) & ? [v0: vQuery] : (vUnion(vq1, vq2) = v0 & % 108.30/14.89 vQuery(v0) & ? [v1: vTStore] : ? [v2: vTTContext] : ? [v3: vTType] : ? % 108.30/14.89 [v4: vQuery] : ? [v5: vOptQuery] : ? [v6: vOptQuery] : ? [v7: int] : ( ~ % 108.30/14.89 (v7 = 0) & vptcheck(v2, v4, v3) = v7 & vptcheck(v2, v0, v3) = 0 & % 108.30/14.89 vstoreContextConsistent(v1, v2) = 0 & vreduce(v0, v1) = v6 & vreduce(vq1, % 108.30/14.89 v1) = v5 & visSomeQuery(v5) = 0 & vsomeQuery(v4) = v6 & vOptQuery(v6) & % 108.30/14.89 vOptQuery(v5) & vTType(v3) & vTStore(v1) & vQuery(v4) & vTTContext(v2) & % 108.30/14.89 ! [v8: vTable] : ( ~ (vtvalue(v8) = vq1) | ~ vTable(v8)))) % 108.30/14.89 % 108.30/14.89 (TUnion) % 108.30/14.89 ! [v0: vTTContext] : ! [v1: vQuery] : ! [v2: vTType] : ! [v3: vQuery] : ! % 108.30/14.89 [v4: vQuery] : ! [v5: int] : (v5 = 0 | ~ (vptcheck(v0, v4, v2) = v5) | ~ % 108.30/14.89 (vUnion(v1, v3) = v4) | ~ vTType(v2) | ~ vQuery(v3) | ~ vQuery(v1) | ~ % 108.30/14.89 vTTContext(v0) | ? [v6: any] : ? [v7: any] : (vptcheck(v0, v3, v2) = v7 & % 108.30/14.89 vptcheck(v0, v1, v2) = v6 & ( ~ (v7 = 0) | ~ (v6 = 0)))) % 108.30/14.89 % 108.30/14.89 (TUnion_inv1) % 108.30/14.89 ! [v0: vTTContext] : ! [v1: vQuery] : ! [v2: vQuery] : ! [v3: vTType] : ! % 108.30/14.89 [v4: vQuery] : ( ~ (vptcheck(v0, v4, v3) = 0) | ~ (vUnion(v1, v2) = v4) | ~ % 108.30/14.89 vTType(v3) | ~ vQuery(v2) | ~ vQuery(v1) | ~ vTTContext(v0) | % 108.30/14.89 vptcheck(v0, v1, v3) = 0) % 108.30/14.89 % 108.30/14.89 (TUnion_inv2) % 108.71/14.90 ! [v0: vTTContext] : ! [v1: vQuery] : ! [v2: vQuery] : ! [v3: vTType] : ! % 108.71/14.90 [v4: vQuery] : ( ~ (vptcheck(v0, v4, v3) = 0) | ~ (vUnion(v1, v2) = v4) | ~ % 108.71/14.90 vTType(v3) | ~ vQuery(v2) | ~ vQuery(v1) | ~ vTTContext(v0) | % 108.71/14.90 vptcheck(v0, v2, v3) = 0) % 108.71/14.90 % 108.71/14.90 (getQuery-0) % 108.71/14.90 ! [v0: vQuery] : ! [v1: vOptQuery] : ( ~ (vsomeQuery(v0) = v1) | ~ % 108.71/14.90 vQuery(v0) | vgetQuery(v1) = v0) % 108.71/14.90 % 108.71/14.90 (isSomeQuery-0) % 108.71/14.90 vOptQuery(vnoQuery) & ? [v0: int] : ( ~ (v0 = 0) & visSomeQuery(vnoQuery) = % 108.71/14.90 v0) % 108.71/14.90 % 108.71/14.90 (isSomeQuery-1) % 108.71/14.90 ! [v0: vQuery] : ! [v1: vOptQuery] : ( ~ (vsomeQuery(v0) = v1) | ~ % 108.71/14.90 vQuery(v0) | visSomeQuery(v1) = 0) % 108.71/14.90 % 108.71/14.90 (isSomeQuery-true-INV) % 108.71/14.90 ! [v0: vOptQuery] : ( ~ (visSomeQuery(v0) = 0) | ~ vOptQuery(v0) | ? [v1: % 108.71/14.90 vQuery] : (vsomeQuery(v1) = v0 & vQuery(v1))) % 108.71/14.90 % 108.71/14.90 (isValue-0) % 108.71/14.90 ! [v0: vTable] : ! [v1: vQuery] : ( ~ (vtvalue(v0) = v1) | ~ vTable(v0) | % 108.71/14.90 visValue(v1) = 0) % 108.71/14.90 % 108.71/14.90 (isValue-1) % 108.71/14.90 ! [v0: vSelect] : ! [v1: vName] : ! [v2: vPred] : ! [v3: vQuery] : ( ~ % 108.71/14.90 (vselectFromWhere(v0, v1, v2) = v3) | ~ vSelect(v0) | ~ vName(v1) | ~ % 108.71/14.90 vPred(v2) | ? [v4: int] : ( ~ (v4 = 0) & visValue(v3) = v4)) % 108.71/14.90 % 108.71/14.90 (isValue-2) % 108.71/14.90 ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ( ~ (vUnion(v0, v1) = % 108.71/14.90 v2) | ~ vQuery(v1) | ~ vQuery(v0) | ? [v3: int] : ( ~ (v3 = 0) & % 108.71/14.90 visValue(v2) = v3)) % 108.71/14.90 % 108.71/14.90 (isValue-3) % 108.71/14.91 ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ( ~ (vIntersection(v0, % 108.71/14.91 v1) = v2) | ~ vQuery(v1) | ~ vQuery(v0) | ? [v3: int] : ( ~ (v3 = 0) % 108.71/14.91 & visValue(v2) = v3)) % 108.71/14.91 % 108.71/14.91 (isValue-4) % 108.71/14.91 ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ( ~ (vDifference(v0, v1) % 108.71/14.91 = v2) | ~ vQuery(v1) | ~ vQuery(v0) | ? [v3: int] : ( ~ (v3 = 0) & % 108.71/14.91 visValue(v2) = v3)) % 108.71/14.91 % 108.71/14.91 (reduce-INV) % 108.71/14.93 vOptQuery(vnoQuery) & ! [v0: vQuery] : ! [v1: vTStore] : ! [v2: vOptQuery] % 108.71/14.93 : ( ~ (vreduce(v0, v1) = v2) | ~ vTStore(v1) | ~ vQuery(v0) | ? [v3: % 108.71/14.93 vTable] : ? [v4: vTable] : ? [v5: vQuery] : ? [v6: vQuery] : ? [v7: % 108.71/14.93 vAttrL] : ? [v8: vRawTable] : ? [v9: vRawTable] : ? [v10: vRawTable] : % 108.71/14.93 ? [v11: vTable] : ? [v12: vQuery] : (vrawDifference(v8, v9) = v10 & % 108.71/14.93 vgetAttrL(v3) = v7 & vgetRaw(v4) = v9 & vgetRaw(v3) = v8 & vtable(v7, v10) % 108.71/14.93 = v11 & vsomeQuery(v12) = v2 & vDifference(v5, v6) = v0 & vtvalue(v11) = % 108.71/14.93 v12 & vtvalue(v4) = v6 & vtvalue(v3) = v5 & vOptQuery(v2) & vTable(v11) & % 108.71/14.93 vTable(v4) & vTable(v3) & vQuery(v12) & vQuery(v6) & vQuery(v5) & % 108.71/14.93 vRawTable(v10) & vRawTable(v9) & vRawTable(v8) & vAttrL(v7)) | ? [v3: % 108.71/14.93 vTable] : ? [v4: vTable] : ? [v5: vQuery] : ? [v6: vQuery] : ? [v7: % 108.71/14.93 vAttrL] : ? [v8: vRawTable] : ? [v9: vRawTable] : ? [v10: vRawTable] : % 108.71/14.93 ? [v11: vTable] : ? [v12: vQuery] : (vrawIntersection(v8, v9) = v10 & % 108.71/14.93 vgetAttrL(v3) = v7 & vgetRaw(v4) = v9 & vgetRaw(v3) = v8 & vtable(v7, v10) % 108.71/14.93 = v11 & vsomeQuery(v12) = v2 & vIntersection(v5, v6) = v0 & vtvalue(v11) = % 108.71/14.93 v12 & vtvalue(v4) = v6 & vtvalue(v3) = v5 & vOptQuery(v2) & vTable(v11) & % 108.71/14.93 vTable(v4) & vTable(v3) & vQuery(v12) & vQuery(v6) & vQuery(v5) & % 108.71/14.93 vRawTable(v10) & vRawTable(v9) & vRawTable(v8) & vAttrL(v7)) | ? [v3: % 108.71/14.93 vTable] : ? [v4: vTable] : ? [v5: vQuery] : ? [v6: vQuery] : ? [v7: % 108.71/14.93 vAttrL] : ? [v8: vRawTable] : ? [v9: vRawTable] : ? [v10: vRawTable] : % 108.71/14.93 ? [v11: vTable] : ? [v12: vQuery] : (vrawUnion(v8, v9) = v10 & % 108.71/14.93 vgetAttrL(v3) = v7 & vgetRaw(v4) = v9 & vgetRaw(v3) = v8 & vtable(v7, v10) % 108.71/14.93 = v11 & vsomeQuery(v12) = v2 & vUnion(v5, v6) = v0 & vtvalue(v11) = v12 & % 108.71/14.93 vtvalue(v4) = v6 & vtvalue(v3) = v5 & vOptQuery(v2) & vTable(v11) & % 108.71/14.93 vTable(v4) & vTable(v3) & vQuery(v12) & vQuery(v6) & vQuery(v5) & % 108.71/14.93 vRawTable(v10) & vRawTable(v9) & vRawTable(v8) & vAttrL(v7)) | ? [v3: % 108.71/14.93 vPred] : ? [v4: vTable] : ? [v5: vSelect] : ? [v6: vOptTable] : ? [v7: % 108.71/14.93 vOptTable] : ? [v8: vName] : ? [v9: vTable] : ? [v10: vTable] : ? % 108.71/14.93 [v11: vQuery] : (vfilterTable(v9, v3) = v4 & vprojectTable(v5, v4) = v7 & % 108.71/14.93 vlookupStore(v8, v1) = v6 & visSomeTable(v7) = 0 & visSomeTable(v6) = 0 & % 108.71/14.93 vgetTable(v7) = v10 & vgetTable(v6) = v9 & vsomeQuery(v11) = v2 & % 108.71/14.93 vselectFromWhere(v5, v8, v3) = v0 & vtvalue(v10) = v11 & vOptQuery(v2) & % 108.71/14.93 vSelect(v5) & vTable(v10) & vTable(v9) & vTable(v4) & vOptTable(v7) & % 108.71/14.93 vOptTable(v6) & vQuery(v11) & vName(v8) & vPred(v3)) | ? [v3: vPred] : ? % 108.71/14.93 [v4: vTable] : ? [v5: vSelect] : ? [v6: vOptTable] : ? [v7: vOptTable] : % 108.71/14.93 ? [v8: vName] : ? [v9: vTable] : ? [v10: int] : (v2 = vnoQuery & ~ (v10 = % 108.71/14.93 0) & vfilterTable(v9, v3) = v4 & vprojectTable(v5, v4) = v7 & % 108.71/14.93 vlookupStore(v8, v1) = v6 & visSomeTable(v7) = v10 & visSomeTable(v6) = 0 % 108.71/14.93 & vgetTable(v6) = v9 & vselectFromWhere(v5, v8, v3) = v0 & vSelect(v5) & % 108.71/14.93 vTable(v9) & vTable(v4) & vOptTable(v7) & vOptTable(v6) & vName(v8) & % 108.71/14.93 vPred(v3)) | ? [v3: vTable] : ? [v4: vQuery] : ? [v5: vOptQuery] : ? % 108.71/14.93 [v6: vQuery] : ? [v7: vQuery] : ? [v8: vQuery] : (vreduce(v4, v1) = v5 & % 108.71/14.93 visSomeQuery(v5) = 0 & vgetQuery(v5) = v7 & vsomeQuery(v8) = v2 & % 108.71/14.93 vDifference(v6, v7) = v8 & vDifference(v6, v4) = v0 & vtvalue(v3) = v6 & % 108.71/14.93 vOptQuery(v5) & vOptQuery(v2) & vTable(v3) & vQuery(v8) & vQuery(v7) & % 108.71/14.93 vQuery(v6) & vQuery(v4) & ! [v9: vTable] : ( ~ (vtvalue(v9) = v4) | ~ % 108.71/14.93 vTable(v9))) | ? [v3: vTable] : ? [v4: vQuery] : ? [v5: vOptQuery] : % 108.71/14.93 ? [v6: vQuery] : ? [v7: vQuery] : ? [v8: vQuery] : (vreduce(v4, v1) = v5 & % 108.71/14.93 visSomeQuery(v5) = 0 & vgetQuery(v5) = v7 & vsomeQuery(v8) = v2 & % 108.71/14.93 vIntersection(v6, v7) = v8 & vIntersection(v6, v4) = v0 & vtvalue(v3) = v6 % 108.71/14.93 & vOptQuery(v5) & vOptQuery(v2) & vTable(v3) & vQuery(v8) & vQuery(v7) & % 108.71/14.93 vQuery(v6) & vQuery(v4) & ! [v9: vTable] : ( ~ (vtvalue(v9) = v4) | ~ % 108.71/14.93 vTable(v9))) | ? [v3: vTable] : ? [v4: vQuery] : ? [v5: vOptQuery] : % 108.71/14.93 ? [v6: vQuery] : ? [v7: vQuery] : ? [v8: vQuery] : (vreduce(v4, v1) = v5 & % 108.71/14.93 visSomeQuery(v5) = 0 & vgetQuery(v5) = v7 & vsomeQuery(v8) = v2 & % 108.71/14.93 vUnion(v6, v7) = v8 & vUnion(v6, v4) = v0 & vtvalue(v3) = v6 & % 108.71/14.93 vOptQuery(v5) & vOptQuery(v2) & vTable(v3) & vQuery(v8) & vQuery(v7) & % 108.71/14.93 vQuery(v6) & vQuery(v4) & ! [v9: vTable] : ( ~ (vtvalue(v9) = v4) | ~ % 108.71/14.93 vTable(v9))) | ? [v3: vPred] : ? [v4: vSelect] : ? [v5: vOptTable] : % 108.71/14.93 ? [v6: vName] : ? [v7: int] : (v2 = vnoQuery & ~ (v7 = 0) & % 108.71/14.93 vlookupStore(v6, v1) = v5 & visSomeTable(v5) = v7 & vselectFromWhere(v4, % 108.71/14.93 v6, v3) = v0 & vSelect(v4) & vOptTable(v5) & vName(v6) & vPred(v3)) | ? % 108.71/14.93 [v3: vTable] : ? [v4: vQuery] : ? [v5: vOptQuery] : ? [v6: int] : ? [v7: % 108.71/14.93 vQuery] : (v2 = vnoQuery & ~ (v6 = 0) & vreduce(v4, v1) = v5 & % 108.71/14.93 visSomeQuery(v5) = v6 & vDifference(v7, v4) = v0 & vtvalue(v3) = v7 & % 108.71/14.93 vOptQuery(v5) & vTable(v3) & vQuery(v7) & vQuery(v4) & ! [v8: vTable] : ( % 108.71/14.93 ~ (vtvalue(v8) = v4) | ~ vTable(v8))) | ? [v3: vTable] : ? [v4: % 108.71/14.93 vQuery] : ? [v5: vOptQuery] : ? [v6: int] : ? [v7: vQuery] : (v2 = % 108.71/14.93 vnoQuery & ~ (v6 = 0) & vreduce(v4, v1) = v5 & visSomeQuery(v5) = v6 & % 108.71/14.93 vIntersection(v7, v4) = v0 & vtvalue(v3) = v7 & vOptQuery(v5) & vTable(v3) % 108.71/14.93 & vQuery(v7) & vQuery(v4) & ! [v8: vTable] : ( ~ (vtvalue(v8) = v4) | ~ % 108.71/14.93 vTable(v8))) | ? [v3: vTable] : ? [v4: vQuery] : ? [v5: vOptQuery] : % 108.71/14.93 ? [v6: int] : ? [v7: vQuery] : (v2 = vnoQuery & ~ (v6 = 0) & vreduce(v4, % 108.71/14.93 v1) = v5 & visSomeQuery(v5) = v6 & vUnion(v7, v4) = v0 & vtvalue(v3) = % 108.71/14.93 v7 & vOptQuery(v5) & vTable(v3) & vQuery(v7) & vQuery(v4) & ! [v8: % 108.71/14.93 vTable] : ( ~ (vtvalue(v8) = v4) | ~ vTable(v8))) | ? [v3: vQuery] : % 108.71/14.93 ? [v4: vQuery] : ? [v5: vOptQuery] : ? [v6: vQuery] : ? [v7: vQuery] : % 108.71/14.93 (vreduce(v3, v1) = v5 & visSomeQuery(v5) = 0 & vgetQuery(v5) = v6 & % 108.71/14.93 vsomeQuery(v7) = v2 & vDifference(v6, v4) = v7 & vDifference(v3, v4) = v0 % 108.71/14.93 & vOptQuery(v5) & vOptQuery(v2) & vQuery(v7) & vQuery(v6) & vQuery(v4) & % 108.71/14.93 vQuery(v3) & ! [v8: vTable] : ! [v9: vTable] : ( ~ (vtvalue(v9) = v4) | % 108.71/14.93 ~ (vtvalue(v8) = v3) | ~ vTable(v9) | ~ vTable(v8)) & ! [v8: vTable] % 108.71/14.93 : ( ~ (vtvalue(v8) = v3) | ~ vTable(v8))) | ? [v3: vQuery] : ? [v4: % 108.71/14.93 vQuery] : ? [v5: vOptQuery] : ? [v6: vQuery] : ? [v7: vQuery] : % 108.71/14.93 (vreduce(v3, v1) = v5 & visSomeQuery(v5) = 0 & vgetQuery(v5) = v6 & % 108.71/14.93 vsomeQuery(v7) = v2 & vIntersection(v6, v4) = v7 & vIntersection(v3, v4) = % 108.71/14.93 v0 & vOptQuery(v5) & vOptQuery(v2) & vQuery(v7) & vQuery(v6) & vQuery(v4) % 108.71/14.93 & vQuery(v3) & ! [v8: vTable] : ! [v9: vTable] : ( ~ (vtvalue(v9) = v4) % 108.71/14.93 | ~ (vtvalue(v8) = v3) | ~ vTable(v9) | ~ vTable(v8)) & ! [v8: % 108.71/14.93 vTable] : ( ~ (vtvalue(v8) = v3) | ~ vTable(v8))) | ? [v3: vQuery] : % 108.71/14.93 ? [v4: vQuery] : ? [v5: vOptQuery] : ? [v6: vQuery] : ? [v7: vQuery] : % 108.71/14.93 (vreduce(v3, v1) = v5 & visSomeQuery(v5) = 0 & vgetQuery(v5) = v6 & % 108.71/14.93 vsomeQuery(v7) = v2 & vUnion(v6, v4) = v7 & vUnion(v3, v4) = v0 & % 108.71/14.93 vOptQuery(v5) & vOptQuery(v2) & vQuery(v7) & vQuery(v6) & vQuery(v4) & % 108.71/14.93 vQuery(v3) & ! [v8: vTable] : ! [v9: vTable] : ( ~ (vtvalue(v9) = v4) | % 108.71/14.93 ~ (vtvalue(v8) = v3) | ~ vTable(v9) | ~ vTable(v8)) & ! [v8: vTable] % 108.71/14.93 : ( ~ (vtvalue(v8) = v3) | ~ vTable(v8))) | ? [v3: vQuery] : ? [v4: % 108.71/14.93 vQuery] : ? [v5: vOptQuery] : ? [v6: int] : (v2 = vnoQuery & ~ (v6 = 0) % 108.71/14.93 & vreduce(v3, v1) = v5 & visSomeQuery(v5) = v6 & vDifference(v3, v4) = v0 % 108.71/14.93 & vOptQuery(v5) & vQuery(v4) & vQuery(v3) & ! [v7: vTable] : ! [v8: % 108.71/14.93 vTable] : ( ~ (vtvalue(v8) = v4) | ~ (vtvalue(v7) = v3) | ~ vTable(v8) % 108.71/14.93 | ~ vTable(v7)) & ! [v7: vTable] : ( ~ (vtvalue(v7) = v3) | ~ % 108.71/14.93 vTable(v7))) | ? [v3: vQuery] : ? [v4: vQuery] : ? [v5: vOptQuery] : % 108.71/14.93 ? [v6: int] : (v2 = vnoQuery & ~ (v6 = 0) & vreduce(v3, v1) = v5 & % 108.71/14.93 visSomeQuery(v5) = v6 & vIntersection(v3, v4) = v0 & vOptQuery(v5) & % 108.71/14.93 vQuery(v4) & vQuery(v3) & ! [v7: vTable] : ! [v8: vTable] : ( ~ % 108.71/14.93 (vtvalue(v8) = v4) | ~ (vtvalue(v7) = v3) | ~ vTable(v8) | ~ % 108.71/14.93 vTable(v7)) & ! [v7: vTable] : ( ~ (vtvalue(v7) = v3) | ~ vTable(v7))) % 108.71/14.93 | ? [v3: vQuery] : ? [v4: vQuery] : ? [v5: vOptQuery] : ? [v6: int] : % 108.71/14.93 (v2 = vnoQuery & ~ (v6 = 0) & vreduce(v3, v1) = v5 & visSomeQuery(v5) = v6 % 108.71/14.93 & vUnion(v3, v4) = v0 & vOptQuery(v5) & vQuery(v4) & vQuery(v3) & ! [v7: % 108.71/14.93 vTable] : ! [v8: vTable] : ( ~ (vtvalue(v8) = v4) | ~ (vtvalue(v7) = % 108.71/14.93 v3) | ~ vTable(v8) | ~ vTable(v7)) & ! [v7: vTable] : ( ~ % 108.71/14.93 (vtvalue(v7) = v3) | ~ vTable(v7))) | ? [v3: vTable] : (v2 = vnoQuery % 108.71/14.93 & vtvalue(v3) = v0 & vTable(v3))) % 108.71/14.93 % 108.71/14.93 (function-axioms) % 108.71/14.96 ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vTType] : ! % 108.71/14.96 [v3: vQuery] : ! [v4: vTTContext] : (v1 = v0 | ~ (vptcheck(v4, v3, v2) = v1) % 108.71/14.96 | ~ (vptcheck(v4, v3, v2) = v0)) & ! [v0: vRawTable] : ! [v1: vRawTable] % 108.71/14.96 : ! [v2: vPred] : ! [v3: vAttrL] : ! [v4: vRawTable] : (v1 = v0 | ~ % 108.71/14.96 (vfilterRows(v4, v3, v2) = v1) | ~ (vfilterRows(v4, v3, v2) = v0)) & ! % 108.71/14.96 [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vRow] : ! [v3: % 108.71/14.96 vAttrL] : ! [v4: vPred] : (v1 = v0 | ~ (vfilterSingleRow(v4, v3, v2) = v1) % 108.71/14.96 | ~ (vfilterSingleRow(v4, v3, v2) = v0)) & ! [v0: vOptVal] : ! [v1: % 108.71/14.96 vOptVal] : ! [v2: vRow] : ! [v3: vAttrL] : ! [v4: vExp] : (v1 = v0 | ~ % 108.71/14.96 (vevalExpRow(v4, v3, v2) = v1) | ~ (vevalExpRow(v4, v3, v2) = v0)) & ! % 108.71/14.96 [v0: vOptRawTable] : ! [v1: vOptRawTable] : ! [v2: vRawTable] : ! [v3: % 108.71/14.96 vAttrL] : ! [v4: vAttrL] : (v1 = v0 | ~ (vprojectCols(v4, v3, v2) = v1) | % 108.71/14.96 ~ (vprojectCols(v4, v3, v2) = v0)) & ! [v0: vOptRawTable] : ! [v1: % 108.71/14.96 vOptRawTable] : ! [v2: vRawTable] : ! [v3: vAttrL] : ! [v4: vName] : (v1 % 108.71/14.96 = v0 | ~ (vfindCol(v4, v3, v2) = v1) | ~ (vfindCol(v4, v3, v2) = v0)) & ! % 108.71/14.96 [v0: vTStore] : ! [v1: vTStore] : ! [v2: vTStore] : ! [v3: vTable] : ! % 108.71/14.96 [v4: vName] : (v1 = v0 | ~ (vbindStore(v4, v3, v2) = v1) | ~ (vbindStore(v4, % 108.71/14.96 v3, v2) = v0)) & ! [v0: vTTContext] : ! [v1: vTTContext] : ! [v2: % 108.71/14.96 vTTContext] : ! [v3: vTType] : ! [v4: vName] : (v1 = v0 | ~ % 108.71/14.96 (vbindContext(v4, v3, v2) = v1) | ~ (vbindContext(v4, v3, v2) = v0)) & ! % 108.71/14.96 [v0: vTType] : ! [v1: vTType] : ! [v2: vTType] : ! [v3: vFType] : ! [v4: % 108.71/14.96 vName] : (v1 = v0 | ~ (vttcons(v4, v3, v2) = v1) | ~ (vttcons(v4, v3, v2) % 108.71/14.96 = v0)) & ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vPred] : ! [v3: % 108.71/14.96 vName] : ! [v4: vSelect] : (v1 = v0 | ~ (vselectFromWhere(v4, v3, v2) = % 108.71/14.96 v1) | ~ (vselectFromWhere(v4, v3, v2) = v0)) & ! [v0: MultipleValueBool] % 108.71/14.96 : ! [v1: MultipleValueBool] : ! [v2: vTTContext] : ! [v3: vTStore] : (v1 = % 108.71/14.96 v0 | ~ (vstoreContextConsistent(v3, v2) = v1) | ~ % 108.71/14.96 (vstoreContextConsistent(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! % 108.71/14.96 [v1: MultipleValueBool] : ! [v2: vTType] : ! [v3: vPred] : (v1 = v0 | ~ % 108.71/14.96 (vtcheckPred(v3, v2) = v1) | ~ (vtcheckPred(v3, v2) = v0)) & ! [v0: % 108.71/14.96 vOptFType] : ! [v1: vOptFType] : ! [v2: vTType] : ! [v3: vExp] : (v1 = v0 % 108.71/14.96 | ~ (vtypeOfExp(v3, v2) = v1) | ~ (vtypeOfExp(v3, v2) = v0)) & ! [v0: % 108.71/14.96 vOptTType] : ! [v1: vOptTType] : ! [v2: vTType] : ! [v3: vSelect] : (v1 = % 108.71/14.96 v0 | ~ (vprojectType(v3, v2) = v1) | ~ (vprojectType(v3, v2) = v0)) & ! % 108.71/14.96 [v0: vOptTType] : ! [v1: vOptTType] : ! [v2: vTType] : ! [v3: vAttrL] : (v1 % 108.71/14.96 = v0 | ~ (vprojectTypeAttrL(v3, v2) = v1) | ~ (vprojectTypeAttrL(v3, v2) = % 108.71/14.96 v0)) & ! [v0: vOptFType] : ! [v1: vOptFType] : ! [v2: vTType] : ! [v3: % 108.71/14.96 vName] : (v1 = v0 | ~ (vfindColType(v3, v2) = v1) | ~ (vfindColType(v3, % 108.71/14.96 v2) = v0)) & ! [v0: vOptQuery] : ! [v1: vOptQuery] : ! [v2: vTStore] % 108.71/14.96 : ! [v3: vQuery] : (v1 = v0 | ~ (vreduce(v3, v2) = v1) | ~ (vreduce(v3, v2) % 108.71/14.96 = v0)) & ! [v0: vTable] : ! [v1: vTable] : ! [v2: vPred] : ! [v3: % 108.71/14.96 vTable] : (v1 = v0 | ~ (vfilterTable(v3, v2) = v1) | ~ (vfilterTable(v3, % 108.71/14.96 v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : % 108.71/14.96 ! [v2: vVal] : ! [v3: vVal] : (v1 = v0 | ~ (vlessThan(v3, v2) = v1) | ~ % 108.71/14.96 (vlessThan(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 108.71/14.96 MultipleValueBool] : ! [v2: vVal] : ! [v3: vVal] : (v1 = v0 | ~ % 108.71/14.96 (vgreaterThan(v3, v2) = v1) | ~ (vgreaterThan(v3, v2) = v0)) & ! [v0: % 108.71/14.96 vOptTable] : ! [v1: vOptTable] : ! [v2: vTable] : ! [v3: vSelect] : (v1 = % 108.71/14.96 v0 | ~ (vprojectTable(v3, v2) = v1) | ~ (vprojectTable(v3, v2) = v0)) & ! % 108.71/14.96 [v0: vOptTType] : ! [v1: vOptTType] : ! [v2: vTTContext] : ! [v3: vName] : % 108.71/14.96 (v1 = v0 | ~ (vlookupContext(v3, v2) = v1) | ~ (vlookupContext(v3, v2) = % 108.71/14.96 v0)) & ! [v0: vOptTable] : ! [v1: vOptTable] : ! [v2: vTStore] : ! % 108.71/14.96 [v3: vName] : (v1 = v0 | ~ (vlookupStore(v3, v2) = v1) | ~ (vlookupStore(v3, % 108.71/14.96 v2) = v0)) & ! [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: % 108.71/14.96 vRawTable] : ! [v3: vRawTable] : (v1 = v0 | ~ (vrawDifference(v3, v2) = % 108.71/14.96 v1) | ~ (vrawDifference(v3, v2) = v0)) & ! [v0: vRawTable] : ! [v1: % 108.71/14.96 vRawTable] : ! [v2: vRawTable] : ! [v3: vRawTable] : (v1 = v0 | ~ % 108.71/14.96 (vrawIntersection(v3, v2) = v1) | ~ (vrawIntersection(v3, v2) = v0)) & ! % 108.71/14.96 [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : ! [v3: vRawTable] % 108.71/14.96 : (v1 = v0 | ~ (vrawUnion(v3, v2) = v1) | ~ (vrawUnion(v3, v2) = v0)) & ! % 108.71/14.96 [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : ! [v3: vRawTable] % 108.71/14.96 : (v1 = v0 | ~ (vattachColToFrontRaw(v3, v2) = v1) | ~ % 108.71/14.96 (vattachColToFrontRaw(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 108.71/14.96 MultipleValueBool] : ! [v2: vRawTable] : ! [v3: vRawTable] : (v1 = v0 | ~ % 108.71/14.96 (vsameLength(v3, v2) = v1) | ~ (vsameLength(v3, v2) = v0)) & ! [v0: % 108.71/14.96 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vRawTable] : ! % 108.71/14.96 [v3: vRow] : (v1 = v0 | ~ (vrowIn(v3, v2) = v1) | ~ (vrowIn(v3, v2) = v0)) & % 108.71/14.96 ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vTable] : ! % 108.71/14.96 [v3: vTType] : (v1 = v0 | ~ (vwelltypedtable(v3, v2) = v1) | ~ % 108.71/14.96 (vwelltypedtable(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 108.71/14.96 MultipleValueBool] : ! [v2: vRawTable] : ! [v3: vTType] : (v1 = v0 | ~ % 108.71/14.96 (vwelltypedRawtable(v3, v2) = v1) | ~ (vwelltypedRawtable(v3, v2) = v0)) & % 108.71/14.96 ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vRow] : ! % 108.71/14.96 [v3: vTType] : (v1 = v0 | ~ (vwelltypedRow(v3, v2) = v1) | ~ % 108.71/14.96 (vwelltypedRow(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 108.71/14.96 MultipleValueBool] : ! [v2: vAttrL] : ! [v3: vTType] : (v1 = v0 | ~ % 108.71/14.96 (vmatchingAttrL(v3, v2) = v1) | ~ (vmatchingAttrL(v3, v2) = v0)) & ! [v0: % 108.71/14.96 vAttrL] : ! [v1: vAttrL] : ! [v2: vAttrL] : ! [v3: vAttrL] : (v1 = v0 | % 108.71/14.96 ~ (vappend(v3, v2) = v1) | ~ (vappend(v3, v2) = v0)) & ! [v0: vAttrL] : ! % 108.71/14.96 [v1: vAttrL] : ! [v2: vAttrL] : ! [v3: vName] : (v1 = v0 | ~ (vacons(v3, % 108.71/14.96 v2) = v1) | ~ (vacons(v3, v2) = v0)) & ! [v0: vPred] : ! [v1: vPred] % 108.71/14.96 : ! [v2: vExp] : ! [v3: vExp] : (v1 = v0 | ~ (vlt(v3, v2) = v1) | ~ % 108.71/14.96 (vlt(v3, v2) = v0)) & ! [v0: vPred] : ! [v1: vPred] : ! [v2: vExp] : ! % 108.71/14.96 [v3: vExp] : (v1 = v0 | ~ (vgt(v3, v2) = v1) | ~ (vgt(v3, v2) = v0)) & ! % 108.71/14.96 [v0: vPred] : ! [v1: vPred] : ! [v2: vExp] : ! [v3: vExp] : (v1 = v0 | ~ % 108.71/14.96 (veq(v3, v2) = v1) | ~ (veq(v3, v2) = v0)) & ! [v0: vPred] : ! [v1: % 108.71/14.96 vPred] : ! [v2: vPred] : ! [v3: vPred] : (v1 = v0 | ~ (vand(v3, v2) = v1) % 108.71/14.96 | ~ (vand(v3, v2) = v0)) & ! [v0: vTable] : ! [v1: vTable] : ! [v2: % 108.71/14.96 vRawTable] : ! [v3: vAttrL] : (v1 = v0 | ~ (vtable(v3, v2) = v1) | ~ % 108.71/14.96 (vtable(v3, v2) = v0)) & ! [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: % 108.71/14.96 vRawTable] : ! [v3: vRow] : (v1 = v0 | ~ (vtcons(v3, v2) = v1) | ~ % 108.71/14.96 (vtcons(v3, v2) = v0)) & ! [v0: vRow] : ! [v1: vRow] : ! [v2: vRow] : ! % 108.71/14.96 [v3: vVal] : (v1 = v0 | ~ (vrcons(v3, v2) = v1) | ~ (vrcons(v3, v2) = v0)) & % 108.71/14.96 ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ! [v3: vQuery] : (v1 = % 108.71/14.96 v0 | ~ (vDifference(v3, v2) = v1) | ~ (vDifference(v3, v2) = v0)) & ! % 108.71/14.96 [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ! [v3: vQuery] : (v1 = v0 % 108.71/14.96 | ~ (vIntersection(v3, v2) = v1) | ~ (vIntersection(v3, v2) = v0)) & ! % 108.71/14.96 [v0: vQuery] : ! [v1: vQuery] : ! [v2: vQuery] : ! [v3: vQuery] : (v1 = v0 % 108.71/14.96 | ~ (vUnion(v3, v2) = v1) | ~ (vUnion(v3, v2) = v0)) & ! [v0: % 108.71/14.96 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptFType] : (v1 = % 108.71/14.96 v0 | ~ (visSomeFType(v2) = v1) | ~ (visSomeFType(v2) = v0)) & ! [v0: % 108.71/14.96 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptVal] : (v1 = % 108.71/14.96 v0 | ~ (visSomeVal(v2) = v1) | ~ (visSomeVal(v2) = v0)) & ! [v0: % 108.71/14.96 vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : (v1 = v0 | ~ % 108.71/14.96 (vprojectEmptyCol(v2) = v1) | ~ (vprojectEmptyCol(v2) = v0)) & ! [v0: % 108.71/14.96 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptQuery] : (v1 = % 108.71/14.96 v0 | ~ (visSomeQuery(v2) = v1) | ~ (visSomeQuery(v2) = v0)) & ! [v0: % 108.71/14.96 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vQuery] : (v1 = v0 % 108.71/14.96 | ~ (visValue(v2) = v1) | ~ (visValue(v2) = v0)) & ! [v0: % 108.71/14.96 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptTType] : (v1 = % 108.71/14.96 v0 | ~ (visSomeTType(v2) = v1) | ~ (visSomeTType(v2) = v0)) & ! [v0: % 108.71/14.96 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptTable] : (v1 = % 108.71/14.96 v0 | ~ (visSomeTable(v2) = v1) | ~ (visSomeTable(v2) = v0)) & ! [v0: % 108.71/14.96 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: vOptRawTable] : % 108.71/14.96 (v1 = v0 | ~ (visSomeRawTable(v2) = v1) | ~ (visSomeRawTable(v2) = v0)) & ! % 108.71/14.96 [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : (v1 = v0 | ~ % 108.71/14.96 (vdropFirstColRaw(v2) = v1) | ~ (vdropFirstColRaw(v2) = v0)) & ! [v0: % 108.71/14.96 vRawTable] : ! [v1: vRawTable] : ! [v2: vRawTable] : (v1 = v0 | ~ % 108.71/14.96 (vprojectFirstRaw(v2) = v1) | ~ (vprojectFirstRaw(v2) = v0)) & ! [v0: % 108.71/14.96 vFType] : ! [v1: vFType] : ! [v2: vVal] : (v1 = v0 | ~ (vfieldType(v2) = % 108.71/14.96 v1) | ~ (vfieldType(v2) = v0)) & ! [v0: vAttrL] : ! [v1: vAttrL] : ! % 108.71/14.96 [v2: vTable] : (v1 = v0 | ~ (vgetAttrL(v2) = v1) | ~ (vgetAttrL(v2) = v0)) & % 108.71/14.96 ! [v0: vRawTable] : ! [v1: vRawTable] : ! [v2: vTable] : (v1 = v0 | ~ % 108.71/14.96 (vgetRaw(v2) = v1) | ~ (vgetRaw(v2) = v0)) & ! [v0: vFType] : ! [v1: % 108.71/14.96 vFType] : ! [v2: vOptFType] : (v1 = v0 | ~ (vgetFType(v2) = v1) | ~ % 108.71/14.96 (vgetFType(v2) = v0)) & ! [v0: vVal] : ! [v1: vVal] : ! [v2: vOptVal] : % 108.71/14.96 (v1 = v0 | ~ (vgetVal(v2) = v1) | ~ (vgetVal(v2) = v0)) & ! [v0: vQuery] : % 108.71/14.96 ! [v1: vQuery] : ! [v2: vOptQuery] : (v1 = v0 | ~ (vgetQuery(v2) = v1) | ~ % 108.71/14.96 (vgetQuery(v2) = v0)) & ! [v0: vTType] : ! [v1: vTType] : ! [v2: % 108.71/14.96 vOptTType] : (v1 = v0 | ~ (vgetTType(v2) = v1) | ~ (vgetTType(v2) = v0)) & % 108.71/14.96 ! [v0: vTable] : ! [v1: vTable] : ! [v2: vOptTable] : (v1 = v0 | ~ % 108.71/14.96 (vgetTable(v2) = v1) | ~ (vgetTable(v2) = v0)) & ! [v0: vRawTable] : ! % 108.71/14.96 [v1: vRawTable] : ! [v2: vOptRawTable] : (v1 = v0 | ~ (vgetRawTable(v2) = % 108.71/14.96 v1) | ~ (vgetRawTable(v2) = v0)) & ! [v0: vOptFType] : ! [v1: % 108.71/14.96 vOptFType] : ! [v2: vFType] : (v1 = v0 | ~ (vsomeFType(v2) = v1) | ~ % 108.71/14.96 (vsomeFType(v2) = v0)) & ! [v0: vVal] : ! [v1: vVal] : ! [v2: vVal] : (v1 % 108.71/14.96 = v0 | ~ (venumVal(v2) = v1) | ~ (venumVal(v2) = v0)) & ! [v0: vPred] : % 108.71/14.96 ! [v1: vPred] : ! [v2: vPred] : (v1 = v0 | ~ (vnot(v2) = v1) | ~ (vnot(v2) % 108.71/14.96 = v0)) & ! [v0: vOptVal] : ! [v1: vOptVal] : ! [v2: vVal] : (v1 = v0 | % 108.71/14.96 ~ (vsomeVal(v2) = v1) | ~ (vsomeVal(v2) = v0)) & ! [v0: vExp] : ! [v1: % 108.71/14.96 vExp] : ! [v2: vName] : (v1 = v0 | ~ (vlookup(v2) = v1) | ~ (vlookup(v2) % 108.71/14.96 = v0)) & ! [v0: vExp] : ! [v1: vExp] : ! [v2: vVal] : (v1 = v0 | ~ % 108.71/14.96 (vconstant(v2) = v1) | ~ (vconstant(v2) = v0)) & ! [v0: vName] : ! [v1: % 108.71/14.96 vName] : ! [v2: vName] : (v1 = v0 | ~ (venumName(v2) = v1) | ~ % 108.71/14.96 (venumName(v2) = v0)) & ! [v0: vOptQuery] : ! [v1: vOptQuery] : ! [v2: % 108.71/14.96 vQuery] : (v1 = v0 | ~ (vsomeQuery(v2) = v1) | ~ (vsomeQuery(v2) = v0)) & % 108.71/14.96 ! [v0: vFType] : ! [v1: vFType] : ! [v2: vFType] : (v1 = v0 | ~ % 108.71/14.96 (venumFType(v2) = v1) | ~ (venumFType(v2) = v0)) & ! [v0: vOptTType] : ! % 108.71/14.96 [v1: vOptTType] : ! [v2: vTType] : (v1 = v0 | ~ (vsomeTType(v2) = v1) | ~ % 108.71/14.96 (vsomeTType(v2) = v0)) & ! [v0: vOptRawTable] : ! [v1: vOptRawTable] : ! % 108.71/14.96 [v2: vRawTable] : (v1 = v0 | ~ (vsomeRawTable(v2) = v1) | ~ % 108.71/14.96 (vsomeRawTable(v2) = v0)) & ! [v0: vOptTable] : ! [v1: vOptTable] : ! % 108.71/14.96 [v2: vTable] : (v1 = v0 | ~ (vsomeTable(v2) = v1) | ~ (vsomeTable(v2) = v0)) % 108.71/14.96 & ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vTable] : (v1 = v0 | ~ % 108.71/14.96 (vtvalue(v2) = v1) | ~ (vtvalue(v2) = v0)) & ! [v0: vSelect] : ! [v1: % 108.71/14.96 vSelect] : ! [v2: vAttrL] : (v1 = v0 | ~ (vlist(v2) = v1) | ~ (vlist(v2) % 108.71/14.96 = v0)) % 108.71/14.96 % 108.71/14.96 Further assumptions not needed in the proof: % 108.71/14.96 -------------------------------------------- % 108.71/14.96 DIFF-Intersection-Difference, DIFF-aempty-acons, DIFF-all-list, DIFF-and-eq, % 108.71/14.96 DIFF-and-gt, DIFF-and-lt, DIFF-and-not, DIFF-constant-lookup, % 108.71/14.96 DIFF-emptyContext-bindContext, DIFF-emptyStore-bindStore, DIFF-eq-gt, % 108.71/14.96 DIFF-eq-lt, DIFF-gt-lt, DIFF-initFType-enumFType, DIFF-initName-enumName, % 108.71/14.96 DIFF-initVal-enumVal, DIFF-noFType-someFType, DIFF-noQuery-someQuery, % 108.71/14.96 DIFF-noRawTable-someRawTable, DIFF-noTType-someTType, DIFF-noTable-someTable, % 108.71/14.96 DIFF-noVal-someVal, DIFF-not-eq, DIFF-not-gt, DIFF-not-lt, DIFF-ptrue-and, % 108.71/14.96 DIFF-ptrue-eq, DIFF-ptrue-gt, DIFF-ptrue-lt, DIFF-ptrue-not, DIFF-rempty-rcons, % 108.71/14.96 DIFF-selectFromWhere-Difference, DIFF-selectFromWhere-Intersection, % 108.71/14.96 DIFF-tempty-tcons, DIFF-ttempty-ttcons, DIFF-tvalue-Difference, % 108.71/14.96 DIFF-tvalue-Intersection, DIFF-tvalue-Union, DIFF-tvalue-selectFromWhere, % 108.71/14.96 EQ-Difference, EQ-Intersection, EQ-acons, EQ-and, EQ-bindContext, EQ-bindStore, % 108.71/14.96 EQ-constant, EQ-enumFType, EQ-enumName, EQ-enumVal, EQ-eq, EQ-gt, EQ-list, % 108.71/14.96 EQ-lookup, EQ-lt, EQ-not, EQ-rcons, EQ-selectFromWhere, EQ-someFType, % 108.71/14.96 EQ-someRawTable, EQ-someTType, EQ-someTable, EQ-someVal, EQ-table, EQ-tcons, % 108.71/14.96 EQ-ttcons, EQ-tvalue, Preservation-Union-IH1, TDifference, TDifference_inv1, % 108.71/14.96 TDifference_inv2, TIntersection, TIntersection_inv1, TIntersection_inv2, % 108.71/14.96 TSelectFromWhere, TSelectFromWhere_inv, TTTContextDuplicate, TTTContextSwap, % 108.71/14.96 Ttvalue, Ttvalue_inv, append-0, append-1, append-INV, attachColToFrontRaw-0, % 108.71/14.96 attachColToFrontRaw-1, attachColToFrontRaw-2, attachColToFrontRaw-INV, % 108.71/14.96 dom-AttrL, dom-Exp, dom-OptFType, dom-OptQuery, dom-OptRawTable, dom-OptTType, % 108.71/14.96 dom-OptTable, dom-OptVal, dom-Pred, dom-Query, dom-RawTable, dom-Row, % 108.71/14.96 dom-Select, dom-TStore, dom-TTContext, dom-TType, dom-Table, dropFirstColRaw-0, % 108.71/14.96 dropFirstColRaw-1, dropFirstColRaw-2, dropFirstColRaw-INV, evalExpRow-0, % 108.71/14.96 evalExpRow-1, evalExpRow-2, evalExpRow-3, evalExpRow-INV, filterRows-0, % 108.71/14.96 filterRows-1, filterRows-2, filterRows-INV, filterSingleRow-0, % 108.71/14.96 filterSingleRow-1, filterSingleRow-2, filterSingleRow-3, filterSingleRow-4, % 108.71/14.96 filterSingleRow-5, filterSingleRow-false-INV, filterSingleRow-true-INV, % 108.71/14.96 filterTable-0, filterTable-INV, findCol-0, findCol-1, findCol-2, findCol-INV, % 108.71/14.96 findColType-0, findColType-1, findColType-2, findColType-INV, getAttrL-0, % 108.71/14.96 getAttrL-INV, getFType-0, getRaw-0, getRaw-INV, getRawTable-0, getTType-0, % 108.71/14.96 getTable-0, getVal-0, isSomeFType-0, isSomeFType-1, isSomeFType-false-INV, % 108.71/14.96 isSomeFType-true-INV, isSomeQuery-false-INV, isSomeRawTable-0, isSomeRawTable-1, % 108.71/14.96 isSomeRawTable-false-INV, isSomeRawTable-true-INV, isSomeTType-0, isSomeTType-1, % 108.71/14.96 isSomeTType-false-INV, isSomeTType-true-INV, isSomeTable-0, isSomeTable-1, % 108.71/14.96 isSomeTable-false-INV, isSomeTable-true-INV, isSomeVal-0, isSomeVal-1, % 108.71/14.96 isSomeVal-false-INV, isSomeVal-true-INV, isValue-false-INV, isValue-true-INV, % 108.71/14.96 lookupContext-0, lookupContext-1, lookupContext-2, lookupContext-INV, % 108.71/14.96 lookupStore-0, lookupStore-1, lookupStore-2, lookupStore-INV, matchingAttrL-0, % 108.71/14.96 matchingAttrL-1, matchingAttrL-2, matchingAttrL-false-INV, % 108.71/14.96 matchingAttrL-true-INV, projectCols-0, projectCols-1, projectCols-2, % 108.71/14.96 projectCols-INV, projectEmptyCol-0, projectEmptyCol-1, projectEmptyCol-INV, % 108.71/14.96 projectFirstRaw-0, projectFirstRaw-1, projectFirstRaw-2, projectFirstRaw-INV, % 108.71/14.96 projectTable-0, projectTable-1, projectTable-2, projectTable-INV, projectType-0, % 108.71/14.96 projectType-1, projectType-INV, projectTypeAttrL-0, projectTypeAttrL-1, % 108.71/14.96 projectTypeAttrL-2, projectTypeAttrL-INV, rawDifference-0, rawDifference-1, % 108.71/14.96 rawDifference-2, rawDifference-3, rawDifference-4, rawDifference-INV, % 108.71/14.96 rawIntersection-0, rawIntersection-1, rawIntersection-2, rawIntersection-3, % 108.71/14.96 rawIntersection-4, rawIntersection-INV, rawUnion-0, rawUnion-1, rawUnion-2, % 108.71/14.96 rawUnion-INV, reduce-0, reduce-1, reduce-10, reduce-11, reduce-12, reduce-13, % 108.71/14.96 reduce-14, reduce-15, reduce-16, reduce-17, reduce-18, reduce-2, reduce-3, % 108.71/14.96 reduce-4, reduce-5, reduce-6, reduce-7, reduce-8, reduce-9, rowIn-0, rowIn-1, % 108.71/14.96 rowIn-false-INV, rowIn-true-INV, sameLength-0, sameLength-1, sameLength-2, % 108.71/14.96 sameLength-false-INV, sameLength-true-INV, storeContextConsistent-0, % 108.71/14.96 storeContextConsistent-1, storeContextConsistent-2, % 108.71/14.96 storeContextConsistent-false-INV, storeContextConsistent-true-INV, tcheckPred-0, % 108.71/14.96 tcheckPred-1, tcheckPred-2, tcheckPred-3, tcheckPred-4, tcheckPred-5, % 108.71/14.96 tcheckPred-false-INV, tcheckPred-true-INV, typeOfExp-0, typeOfExp-1, % 108.71/14.96 typeOfExp-2, typeOfExp-3, typeOfExp-INV, welltypedRawtable-0, % 108.71/14.96 welltypedRawtable-1, welltypedRawtable-false-INV, welltypedRawtable-true-INV, % 108.71/14.96 welltypedRow-0, welltypedRow-1, welltypedRow-2, welltypedRow-false-INV, % 108.71/14.96 welltypedRow-true-INV, welltypedtable-0, welltypedtable-false-INV, % 108.71/14.96 welltypedtable-true-INV % 108.71/14.96 % 108.71/14.96 Those formulas are unsatisfiable: % 108.71/14.96 --------------------------------- % 108.71/14.96 % 108.71/14.96 Begin of proof % 108.71/14.97 | % 108.71/14.97 | ALPHA: (isSomeQuery-0) implies: % 108.71/14.97 | (1) ? [v0: int] : ( ~ (v0 = 0) & visSomeQuery(vnoQuery) = v0) % 108.71/14.97 | % 108.71/14.97 | ALPHA: (reduce-INV) implies: % 108.71/14.99 | (2) ! [v0: vQuery] : ! [v1: vTStore] : ! [v2: vOptQuery] : ( ~ % 108.71/14.99 | (vreduce(v0, v1) = v2) | ~ vTStore(v1) | ~ vQuery(v0) | ? [v3: % 108.71/14.99 | vTable] : ? [v4: vTable] : ? [v5: vQuery] : ? [v6: vQuery] : ? % 108.71/14.99 | [v7: vAttrL] : ? [v8: vRawTable] : ? [v9: vRawTable] : ? [v10: % 108.71/14.99 | vRawTable] : ? [v11: vTable] : ? [v12: vQuery] : % 108.71/14.99 | (vrawDifference(v8, v9) = v10 & vgetAttrL(v3) = v7 & vgetRaw(v4) = v9 % 108.71/14.99 | & vgetRaw(v3) = v8 & vtable(v7, v10) = v11 & vsomeQuery(v12) = v2 & % 108.71/14.99 | vDifference(v5, v6) = v0 & vtvalue(v11) = v12 & vtvalue(v4) = v6 & % 108.71/14.99 | vtvalue(v3) = v5 & vOptQuery(v2) & vTable(v11) & vTable(v4) & % 108.71/14.99 | vTable(v3) & vQuery(v12) & vQuery(v6) & vQuery(v5) & vRawTable(v10) % 108.71/14.99 | & vRawTable(v9) & vRawTable(v8) & vAttrL(v7)) | ? [v3: vTable] : % 108.71/14.99 | ? [v4: vTable] : ? [v5: vQuery] : ? [v6: vQuery] : ? [v7: vAttrL] % 108.71/14.99 | : ? [v8: vRawTable] : ? [v9: vRawTable] : ? [v10: vRawTable] : ? % 108.71/14.99 | [v11: vTable] : ? [v12: vQuery] : (vrawIntersection(v8, v9) = v10 & % 108.71/14.99 | vgetAttrL(v3) = v7 & vgetRaw(v4) = v9 & vgetRaw(v3) = v8 & % 108.71/14.99 | vtable(v7, v10) = v11 & vsomeQuery(v12) = v2 & vIntersection(v5, % 108.71/14.99 | v6) = v0 & vtvalue(v11) = v12 & vtvalue(v4) = v6 & vtvalue(v3) = % 108.71/14.99 | v5 & vOptQuery(v2) & vTable(v11) & vTable(v4) & vTable(v3) & % 108.71/14.99 | vQuery(v12) & vQuery(v6) & vQuery(v5) & vRawTable(v10) & % 108.71/14.99 | vRawTable(v9) & vRawTable(v8) & vAttrL(v7)) | ? [v3: vTable] : ? % 108.71/14.99 | [v4: vTable] : ? [v5: vQuery] : ? [v6: vQuery] : ? [v7: vAttrL] : % 108.71/14.99 | ? [v8: vRawTable] : ? [v9: vRawTable] : ? [v10: vRawTable] : ? % 108.71/14.99 | [v11: vTable] : ? [v12: vQuery] : (vrawUnion(v8, v9) = v10 & % 108.71/14.99 | vgetAttrL(v3) = v7 & vgetRaw(v4) = v9 & vgetRaw(v3) = v8 & % 108.71/14.99 | vtable(v7, v10) = v11 & vsomeQuery(v12) = v2 & vUnion(v5, v6) = v0 % 108.71/14.99 | & vtvalue(v11) = v12 & vtvalue(v4) = v6 & vtvalue(v3) = v5 & % 108.71/14.99 | vOptQuery(v2) & vTable(v11) & vTable(v4) & vTable(v3) & vQuery(v12) % 108.71/14.99 | & vQuery(v6) & vQuery(v5) & vRawTable(v10) & vRawTable(v9) & % 108.71/14.99 | vRawTable(v8) & vAttrL(v7)) | ? [v3: vPred] : ? [v4: vTable] : ? % 108.71/14.99 | [v5: vSelect] : ? [v6: vOptTable] : ? [v7: vOptTable] : ? [v8: % 108.71/14.99 | vName] : ? [v9: vTable] : ? [v10: vTable] : ? [v11: vQuery] : % 108.71/14.99 | (vfilterTable(v9, v3) = v4 & vprojectTable(v5, v4) = v7 & % 108.71/14.99 | vlookupStore(v8, v1) = v6 & visSomeTable(v7) = 0 & visSomeTable(v6) % 108.71/14.99 | = 0 & vgetTable(v7) = v10 & vgetTable(v6) = v9 & vsomeQuery(v11) = % 108.71/14.99 | v2 & vselectFromWhere(v5, v8, v3) = v0 & vtvalue(v10) = v11 & % 108.71/14.99 | vOptQuery(v2) & vSelect(v5) & vTable(v10) & vTable(v9) & vTable(v4) % 108.71/14.99 | & vOptTable(v7) & vOptTable(v6) & vQuery(v11) & vName(v8) & % 108.71/14.99 | vPred(v3)) | ? [v3: vPred] : ? [v4: vTable] : ? [v5: vSelect] : % 108.71/14.99 | ? [v6: vOptTable] : ? [v7: vOptTable] : ? [v8: vName] : ? [v9: % 108.71/14.99 | vTable] : ? [v10: int] : (v2 = vnoQuery & ~ (v10 = 0) & % 108.71/14.99 | vfilterTable(v9, v3) = v4 & vprojectTable(v5, v4) = v7 & % 108.71/14.99 | vlookupStore(v8, v1) = v6 & visSomeTable(v7) = v10 & % 108.71/14.99 | visSomeTable(v6) = 0 & vgetTable(v6) = v9 & vselectFromWhere(v5, % 108.71/14.99 | v8, v3) = v0 & vSelect(v5) & vTable(v9) & vTable(v4) & % 108.71/14.99 | vOptTable(v7) & vOptTable(v6) & vName(v8) & vPred(v3)) | ? [v3: % 108.71/14.99 | vTable] : ? [v4: vQuery] : ? [v5: vOptQuery] : ? [v6: vQuery] : % 108.71/14.99 | ? [v7: vQuery] : ? [v8: vQuery] : (vreduce(v4, v1) = v5 & % 108.71/14.99 | visSomeQuery(v5) = 0 & vgetQuery(v5) = v7 & vsomeQuery(v8) = v2 & % 108.71/14.99 | vDifference(v6, v7) = v8 & vDifference(v6, v4) = v0 & vtvalue(v3) = % 108.71/14.99 | v6 & vOptQuery(v5) & vOptQuery(v2) & vTable(v3) & vQuery(v8) & % 108.71/14.99 | vQuery(v7) & vQuery(v6) & vQuery(v4) & ! [v9: vTable] : ( ~ % 108.71/14.99 | (vtvalue(v9) = v4) | ~ vTable(v9))) | ? [v3: vTable] : ? [v4: % 108.71/14.99 | vQuery] : ? [v5: vOptQuery] : ? [v6: vQuery] : ? [v7: vQuery] : % 108.71/14.99 | ? [v8: vQuery] : (vreduce(v4, v1) = v5 & visSomeQuery(v5) = 0 & % 108.71/14.99 | vgetQuery(v5) = v7 & vsomeQuery(v8) = v2 & vIntersection(v6, v7) = % 108.71/14.99 | v8 & vIntersection(v6, v4) = v0 & vtvalue(v3) = v6 & vOptQuery(v5) % 108.71/14.99 | & vOptQuery(v2) & vTable(v3) & vQuery(v8) & vQuery(v7) & vQuery(v6) % 108.71/14.99 | & vQuery(v4) & ! [v9: vTable] : ( ~ (vtvalue(v9) = v4) | ~ % 108.71/14.99 | vTable(v9))) | ? [v3: vTable] : ? [v4: vQuery] : ? [v5: % 108.71/14.99 | vOptQuery] : ? [v6: vQuery] : ? [v7: vQuery] : ? [v8: vQuery] : % 108.71/14.99 | (vreduce(v4, v1) = v5 & visSomeQuery(v5) = 0 & vgetQuery(v5) = v7 & % 108.71/14.99 | vsomeQuery(v8) = v2 & vUnion(v6, v7) = v8 & vUnion(v6, v4) = v0 & % 108.71/14.99 | vtvalue(v3) = v6 & vOptQuery(v5) & vOptQuery(v2) & vTable(v3) & % 108.71/14.99 | vQuery(v8) & vQuery(v7) & vQuery(v6) & vQuery(v4) & ! [v9: vTable] % 108.71/14.99 | : ( ~ (vtvalue(v9) = v4) | ~ vTable(v9))) | ? [v3: vPred] : ? % 108.71/14.99 | [v4: vSelect] : ? [v5: vOptTable] : ? [v6: vName] : ? [v7: int] : % 108.71/14.99 | (v2 = vnoQuery & ~ (v7 = 0) & vlookupStore(v6, v1) = v5 & % 108.71/14.99 | visSomeTable(v5) = v7 & vselectFromWhere(v4, v6, v3) = v0 & % 108.71/14.99 | vSelect(v4) & vOptTable(v5) & vName(v6) & vPred(v3)) | ? [v3: % 108.71/14.99 | vTable] : ? [v4: vQuery] : ? [v5: vOptQuery] : ? [v6: int] : ? % 108.71/14.99 | [v7: vQuery] : (v2 = vnoQuery & ~ (v6 = 0) & vreduce(v4, v1) = v5 & % 108.71/14.99 | visSomeQuery(v5) = v6 & vDifference(v7, v4) = v0 & vtvalue(v3) = v7 % 108.71/14.99 | & vOptQuery(v5) & vTable(v3) & vQuery(v7) & vQuery(v4) & ! [v8: % 108.71/14.99 | vTable] : ( ~ (vtvalue(v8) = v4) | ~ vTable(v8))) | ? [v3: % 108.71/14.99 | vTable] : ? [v4: vQuery] : ? [v5: vOptQuery] : ? [v6: int] : ? % 108.71/14.99 | [v7: vQuery] : (v2 = vnoQuery & ~ (v6 = 0) & vreduce(v4, v1) = v5 & % 108.71/14.99 | visSomeQuery(v5) = v6 & vIntersection(v7, v4) = v0 & vtvalue(v3) = % 108.71/14.99 | v7 & vOptQuery(v5) & vTable(v3) & vQuery(v7) & vQuery(v4) & ! [v8: % 108.71/14.99 | vTable] : ( ~ (vtvalue(v8) = v4) | ~ vTable(v8))) | ? [v3: % 108.71/14.99 | vTable] : ? [v4: vQuery] : ? [v5: vOptQuery] : ? [v6: int] : ? % 108.71/14.99 | [v7: vQuery] : (v2 = vnoQuery & ~ (v6 = 0) & vreduce(v4, v1) = v5 & % 108.71/14.99 | visSomeQuery(v5) = v6 & vUnion(v7, v4) = v0 & vtvalue(v3) = v7 & % 108.71/14.99 | vOptQuery(v5) & vTable(v3) & vQuery(v7) & vQuery(v4) & ! [v8: % 108.71/14.99 | vTable] : ( ~ (vtvalue(v8) = v4) | ~ vTable(v8))) | ? [v3: % 108.71/14.99 | vQuery] : ? [v4: vQuery] : ? [v5: vOptQuery] : ? [v6: vQuery] : % 108.71/14.99 | ? [v7: vQuery] : (vreduce(v3, v1) = v5 & visSomeQuery(v5) = 0 & % 108.71/14.99 | vgetQuery(v5) = v6 & vsomeQuery(v7) = v2 & vDifference(v6, v4) = v7 % 108.71/14.99 | & vDifference(v3, v4) = v0 & vOptQuery(v5) & vOptQuery(v2) & % 108.71/14.99 | vQuery(v7) & vQuery(v6) & vQuery(v4) & vQuery(v3) & ! [v8: vTable] % 108.71/14.99 | : ! [v9: vTable] : ( ~ (vtvalue(v9) = v4) | ~ (vtvalue(v8) = v3) % 108.71/14.99 | | ~ vTable(v9) | ~ vTable(v8)) & ! [v8: vTable] : ( ~ % 108.71/14.99 | (vtvalue(v8) = v3) | ~ vTable(v8))) | ? [v3: vQuery] : ? [v4: % 108.71/14.99 | vQuery] : ? [v5: vOptQuery] : ? [v6: vQuery] : ? [v7: vQuery] : % 108.71/14.99 | (vreduce(v3, v1) = v5 & visSomeQuery(v5) = 0 & vgetQuery(v5) = v6 & % 108.71/14.99 | vsomeQuery(v7) = v2 & vIntersection(v6, v4) = v7 & % 108.71/14.99 | vIntersection(v3, v4) = v0 & vOptQuery(v5) & vOptQuery(v2) & % 108.71/14.99 | vQuery(v7) & vQuery(v6) & vQuery(v4) & vQuery(v3) & ! [v8: vTable] % 108.71/14.99 | : ! [v9: vTable] : ( ~ (vtvalue(v9) = v4) | ~ (vtvalue(v8) = v3) % 108.71/14.99 | | ~ vTable(v9) | ~ vTable(v8)) & ! [v8: vTable] : ( ~ % 108.71/14.99 | (vtvalue(v8) = v3) | ~ vTable(v8))) | ? [v3: vQuery] : ? [v4: % 108.71/14.99 | vQuery] : ? [v5: vOptQuery] : ? [v6: vQuery] : ? [v7: vQuery] : % 108.71/14.99 | (vreduce(v3, v1) = v5 & visSomeQuery(v5) = 0 & vgetQuery(v5) = v6 & % 108.71/14.99 | vsomeQuery(v7) = v2 & vUnion(v6, v4) = v7 & vUnion(v3, v4) = v0 & % 108.71/14.99 | vOptQuery(v5) & vOptQuery(v2) & vQuery(v7) & vQuery(v6) & % 108.71/14.99 | vQuery(v4) & vQuery(v3) & ! [v8: vTable] : ! [v9: vTable] : ( ~ % 108.71/14.99 | (vtvalue(v9) = v4) | ~ (vtvalue(v8) = v3) | ~ vTable(v9) | ~ % 108.71/14.99 | vTable(v8)) & ! [v8: vTable] : ( ~ (vtvalue(v8) = v3) | ~ % 108.71/14.99 | vTable(v8))) | ? [v3: vQuery] : ? [v4: vQuery] : ? [v5: % 108.71/14.99 | vOptQuery] : ? [v6: int] : (v2 = vnoQuery & ~ (v6 = 0) & % 108.71/14.99 | vreduce(v3, v1) = v5 & visSomeQuery(v5) = v6 & vDifference(v3, v4) % 108.71/14.99 | = v0 & vOptQuery(v5) & vQuery(v4) & vQuery(v3) & ! [v7: vTable] : % 108.71/14.99 | ! [v8: vTable] : ( ~ (vtvalue(v8) = v4) | ~ (vtvalue(v7) = v3) | % 108.71/14.99 | ~ vTable(v8) | ~ vTable(v7)) & ! [v7: vTable] : ( ~ % 108.71/14.99 | (vtvalue(v7) = v3) | ~ vTable(v7))) | ? [v3: vQuery] : ? [v4: % 108.71/14.99 | vQuery] : ? [v5: vOptQuery] : ? [v6: int] : (v2 = vnoQuery & ~ % 108.71/14.99 | (v6 = 0) & vreduce(v3, v1) = v5 & visSomeQuery(v5) = v6 & % 108.71/14.99 | vIntersection(v3, v4) = v0 & vOptQuery(v5) & vQuery(v4) & % 108.71/14.99 | vQuery(v3) & ! [v7: vTable] : ! [v8: vTable] : ( ~ (vtvalue(v8) = % 108.71/14.99 | v4) | ~ (vtvalue(v7) = v3) | ~ vTable(v8) | ~ vTable(v7)) & % 108.71/14.99 | ! [v7: vTable] : ( ~ (vtvalue(v7) = v3) | ~ vTable(v7))) | ? [v3: % 108.71/14.99 | vQuery] : ? [v4: vQuery] : ? [v5: vOptQuery] : ? [v6: int] : (v2 % 108.71/14.99 | = vnoQuery & ~ (v6 = 0) & vreduce(v3, v1) = v5 & visSomeQuery(v5) % 108.71/14.99 | = v6 & vUnion(v3, v4) = v0 & vOptQuery(v5) & vQuery(v4) & % 108.71/14.99 | vQuery(v3) & ! [v7: vTable] : ! [v8: vTable] : ( ~ (vtvalue(v8) = % 108.71/14.99 | v4) | ~ (vtvalue(v7) = v3) | ~ vTable(v8) | ~ vTable(v7)) & % 108.71/14.99 | ! [v7: vTable] : ( ~ (vtvalue(v7) = v3) | ~ vTable(v7))) | ? [v3: % 108.71/14.99 | vTable] : (v2 = vnoQuery & vtvalue(v3) = v0 & vTable(v3))) % 108.71/14.99 | % 108.71/14.99 | ALPHA: (Preservation-Union-IH0) implies: % 108.71/15.00 | (3) ! [v0: vTStore] : ! [v1: vTTContext] : ! [v2: vTType] : ! [v3: % 108.71/15.00 | vQuery] : ! [v4: vOptQuery] : ( ~ (vptcheck(v1, vq1, v2) = 0) | ~ % 108.71/15.00 | (vreduce(vq1, v0) = v4) | ~ (vsomeQuery(v3) = v4) | ~ vTType(v2) | % 108.71/15.00 | ~ vTStore(v0) | ~ vQuery(v3) | ~ vTTContext(v1) | ? [v5: any] : ? % 108.71/15.00 | [v6: any] : (vptcheck(v1, v3, v2) = v6 & vstoreContextConsistent(v0, % 108.71/15.00 | v1) = v5 & ( ~ (v5 = 0) | v6 = 0))) % 108.71/15.00 | % 108.71/15.00 | ALPHA: (Preservation-Union-q1-isSomeQuery-True) implies: % 108.71/15.00 | (4) vQuery(vq1) % 108.71/15.00 | (5) vQuery(vq2) % 108.71/15.00 | (6) ? [v0: vQuery] : (vUnion(vq1, vq2) = v0 & vQuery(v0) & ? [v1: % 108.71/15.00 | vTStore] : ? [v2: vTTContext] : ? [v3: vTType] : ? [v4: vQuery] % 108.71/15.00 | : ? [v5: vOptQuery] : ? [v6: vOptQuery] : ? [v7: int] : ( ~ (v7 = % 108.71/15.00 | 0) & vptcheck(v2, v4, v3) = v7 & vptcheck(v2, v0, v3) = 0 & % 108.71/15.00 | vstoreContextConsistent(v1, v2) = 0 & vreduce(v0, v1) = v6 & % 108.71/15.00 | vreduce(vq1, v1) = v5 & visSomeQuery(v5) = 0 & vsomeQuery(v4) = v6 % 108.71/15.00 | & vOptQuery(v6) & vOptQuery(v5) & vTType(v3) & vTStore(v1) & % 108.71/15.00 | vQuery(v4) & vTTContext(v2) & ! [v8: vTable] : ( ~ (vtvalue(v8) = % 108.71/15.00 | vq1) | ~ vTable(v8)))) % 108.71/15.00 | % 108.71/15.00 | ALPHA: (function-axioms) implies: % 108.71/15.00 | (7) ! [v0: vQuery] : ! [v1: vQuery] : ! [v2: vOptQuery] : (v1 = v0 | ~ % 108.71/15.00 | (vgetQuery(v2) = v1) | ~ (vgetQuery(v2) = v0)) % 108.71/15.00 | (8) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 108.71/15.00 | vQuery] : (v1 = v0 | ~ (visValue(v2) = v1) | ~ (visValue(v2) = v0)) % 108.71/15.00 | (9) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 108.71/15.00 | vOptQuery] : (v1 = v0 | ~ (visSomeQuery(v2) = v1) | ~ % 108.71/15.00 | (visSomeQuery(v2) = v0)) % 108.71/15.00 | (10) ! [v0: vOptQuery] : ! [v1: vOptQuery] : ! [v2: vTStore] : ! [v3: % 108.71/15.00 | vQuery] : (v1 = v0 | ~ (vreduce(v3, v2) = v1) | ~ (vreduce(v3, v2) % 108.71/15.00 | = v0)) % 108.71/15.00 | (11) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 108.71/15.00 | vTTContext] : ! [v3: vTStore] : (v1 = v0 | ~ % 108.71/15.00 | (vstoreContextConsistent(v3, v2) = v1) | ~ % 108.71/15.00 | (vstoreContextConsistent(v3, v2) = v0)) % 108.71/15.00 | (12) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 108.71/15.00 | vTType] : ! [v3: vQuery] : ! [v4: vTTContext] : (v1 = v0 | ~ % 108.71/15.00 | (vptcheck(v4, v3, v2) = v1) | ~ (vptcheck(v4, v3, v2) = v0)) % 108.71/15.00 | % 108.71/15.00 | DELTA: instantiating (1) with fresh symbol all_307_0 gives: % 108.71/15.00 | (13) ~ (all_307_0 = 0) & visSomeQuery(vnoQuery) = all_307_0 % 108.71/15.00 | % 108.71/15.00 | ALPHA: (13) implies: % 108.71/15.00 | (14) ~ (all_307_0 = 0) % 108.71/15.00 | (15) visSomeQuery(vnoQuery) = all_307_0 % 108.71/15.00 | % 108.71/15.00 | DELTA: instantiating (6) with fresh symbol all_338_0 gives: % 108.71/15.00 | (16) vUnion(vq1, vq2) = all_338_0 & vQuery(all_338_0) & ? [v0: vTStore] : % 108.71/15.00 | ? [v1: vTTContext] : ? [v2: vTType] : ? [v3: vQuery] : ? [v4: % 108.71/15.00 | vOptQuery] : ? [v5: vOptQuery] : ? [v6: int] : ( ~ (v6 = 0) & % 108.71/15.00 | vptcheck(v1, v3, v2) = v6 & vptcheck(v1, all_338_0, v2) = 0 & % 108.71/15.00 | vstoreContextConsistent(v0, v1) = 0 & vreduce(all_338_0, v0) = v5 & % 108.71/15.00 | vreduce(vq1, v0) = v4 & visSomeQuery(v4) = 0 & vsomeQuery(v3) = v5 & % 108.71/15.00 | vOptQuery(v5) & vOptQuery(v4) & vTType(v2) & vTStore(v0) & % 108.71/15.00 | vQuery(v3) & vTTContext(v1) & ! [v7: vTable] : ( ~ (vtvalue(v7) = % 108.71/15.00 | vq1) | ~ vTable(v7))) % 108.71/15.00 | % 108.71/15.00 | ALPHA: (16) implies: % 108.71/15.00 | (17) vQuery(all_338_0) % 108.71/15.00 | (18) vUnion(vq1, vq2) = all_338_0 % 108.71/15.01 | (19) ? [v0: vTStore] : ? [v1: vTTContext] : ? [v2: vTType] : ? [v3: % 108.71/15.01 | vQuery] : ? [v4: vOptQuery] : ? [v5: vOptQuery] : ? [v6: int] : ( % 108.71/15.01 | ~ (v6 = 0) & vptcheck(v1, v3, v2) = v6 & vptcheck(v1, all_338_0, v2) % 108.71/15.01 | = 0 & vstoreContextConsistent(v0, v1) = 0 & vreduce(all_338_0, v0) = % 108.71/15.01 | v5 & vreduce(vq1, v0) = v4 & visSomeQuery(v4) = 0 & vsomeQuery(v3) = % 108.71/15.01 | v5 & vOptQuery(v5) & vOptQuery(v4) & vTType(v2) & vTStore(v0) & % 108.71/15.01 | vQuery(v3) & vTTContext(v1) & ! [v7: vTable] : ( ~ (vtvalue(v7) = % 108.71/15.01 | vq1) | ~ vTable(v7))) % 108.71/15.01 | % 108.71/15.01 | DELTA: instantiating (19) with fresh symbols all_346_0, all_346_1, all_346_2, % 108.71/15.01 | all_346_3, all_346_4, all_346_5, all_346_6 gives: % 108.71/15.01 | (20) ~ (all_346_0 = 0) & vptcheck(all_346_5, all_346_3, all_346_4) = % 108.71/15.01 | all_346_0 & vptcheck(all_346_5, all_338_0, all_346_4) = 0 & % 108.71/15.01 | vstoreContextConsistent(all_346_6, all_346_5) = 0 & vreduce(all_338_0, % 108.71/15.01 | all_346_6) = all_346_1 & vreduce(vq1, all_346_6) = all_346_2 & % 108.71/15.01 | visSomeQuery(all_346_2) = 0 & vsomeQuery(all_346_3) = all_346_1 & % 108.71/15.01 | vOptQuery(all_346_1) & vOptQuery(all_346_2) & vTType(all_346_4) & % 108.71/15.01 | vTStore(all_346_6) & vQuery(all_346_3) & vTTContext(all_346_5) & ! % 108.71/15.01 | [v0: vTable] : ( ~ (vtvalue(v0) = vq1) | ~ vTable(v0)) % 108.71/15.01 | % 108.71/15.01 | ALPHA: (20) implies: % 108.71/15.01 | (21) ~ (all_346_0 = 0) % 108.71/15.01 | (22) vTTContext(all_346_5) % 108.71/15.01 | (23) vQuery(all_346_3) % 108.71/15.01 | (24) vTStore(all_346_6) % 108.71/15.01 | (25) vTType(all_346_4) % 108.71/15.01 | (26) vOptQuery(all_346_2) % 108.71/15.01 | (27) vOptQuery(all_346_1) % 108.71/15.01 | (28) vsomeQuery(all_346_3) = all_346_1 % 108.71/15.01 | (29) visSomeQuery(all_346_2) = 0 % 108.71/15.01 | (30) vreduce(vq1, all_346_6) = all_346_2 % 108.71/15.01 | (31) vreduce(all_338_0, all_346_6) = all_346_1 % 108.71/15.01 | (32) vstoreContextConsistent(all_346_6, all_346_5) = 0 % 108.71/15.01 | (33) vptcheck(all_346_5, all_338_0, all_346_4) = 0 % 108.71/15.01 | (34) vptcheck(all_346_5, all_346_3, all_346_4) = all_346_0 % 108.71/15.01 | % 108.71/15.01 | GROUND_INST: instantiating (isSomeQuery-1) with all_346_3, all_346_1, % 108.71/15.01 | simplifying with (23), (28) gives: % 108.71/15.01 | (35) visSomeQuery(all_346_1) = 0 % 108.71/15.01 | % 108.71/15.01 | GROUND_INST: instantiating (isSomeQuery-true-INV) with all_346_2, simplifying % 108.71/15.01 | with (26), (29) gives: % 108.71/15.01 | (36) ? [v0: vQuery] : (vsomeQuery(v0) = all_346_2 & vQuery(v0)) % 108.71/15.01 | % 108.71/15.01 | GROUND_INST: instantiating (2) with vq1, all_346_6, all_346_2, simplifying % 108.71/15.01 | with (4), (24), (30) gives: % 108.71/15.03 | (37) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] % 108.71/15.03 | : ? [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 108.71/15.03 | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : (vrawDifference(v5, % 108.71/15.03 | v6) = v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 108.71/15.03 | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_2 & % 108.71/15.03 | vDifference(v2, v3) = vq1 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 108.71/15.03 | vtvalue(v0) = v2 & vOptQuery(all_346_2) & vTable(v8) & vTable(v1) & % 108.71/15.03 | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & vRawTable(v7) & % 108.71/15.03 | vRawTable(v6) & vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? % 108.71/15.03 | [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : % 108.71/15.03 | ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: % 108.71/15.03 | vTable] : ? [v9: vQuery] : (vrawIntersection(v5, v6) = v7 & % 108.71/15.03 | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 108.71/15.03 | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_2 & vIntersection(v2, % 108.71/15.03 | v3) = vq1 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 % 108.71/15.03 | & vOptQuery(all_346_2) & vTable(v8) & vTable(v1) & vTable(v0) & % 108.71/15.03 | vQuery(v9) & vQuery(v3) & vQuery(v2) & vRawTable(v7) & vRawTable(v6) % 108.71/15.03 | & vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : % 108.71/15.03 | ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 108.71/15.03 | vRawTable] : ? [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: % 108.71/15.03 | vTable] : ? [v9: vQuery] : (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) % 108.71/15.03 | = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 108.71/15.03 | vsomeQuery(v9) = all_346_2 & vUnion(v2, v3) = vq1 & vtvalue(v8) = v9 % 108.71/15.03 | & vtvalue(v1) = v3 & vtvalue(v0) = v2 & vOptQuery(all_346_2) & % 108.71/15.03 | vTable(v8) & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 108.71/15.03 | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 108.71/15.03 | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 108.71/15.03 | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] : ? [v6: % 108.71/15.03 | vTable] : ? [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, v0) % 108.71/15.03 | = v1 & vprojectTable(v2, v1) = v4 & vlookupStore(v5, all_346_6) = v3 % 108.71/15.03 | & visSomeTable(v4) = 0 & visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 108.71/15.03 | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_2 & % 108.71/15.03 | vselectFromWhere(v2, v5, v0) = vq1 & vtvalue(v7) = v8 & % 108.71/15.03 | vOptQuery(all_346_2) & vSelect(v2) & vTable(v7) & vTable(v6) & % 108.71/15.03 | vTable(v1) & vOptTable(v4) & vOptTable(v3) & vQuery(v8) & vName(v5) % 108.71/15.03 | & vPred(v0)) | ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 108.71/15.03 | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] : ? [v6: % 108.71/15.03 | vTable] : ? [v7: int] : (all_346_2 = vnoQuery & ~ (v7 = 0) & % 108.71/15.03 | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = v4 & % 108.71/15.03 | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) = v7 & % 108.71/15.03 | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & vselectFromWhere(v2, v5, % 108.71/15.03 | v0) = vq1 & vSelect(v2) & vTable(v6) & vTable(v1) & vOptTable(v4) % 108.71/15.03 | & vOptTable(v3) & vName(v5) & vPred(v0)) | ? [v0: vTable] : ? [v1: % 108.71/15.03 | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 108.71/15.03 | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 108.71/15.03 | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_2 & vDifference(v3, % 108.71/15.03 | v4) = v5 & vDifference(v3, v1) = vq1 & vtvalue(v0) = v3 & % 108.71/15.03 | vOptQuery(v2) & vOptQuery(all_346_2) & vTable(v0) & vQuery(v5) & % 108.71/15.03 | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 108.71/15.03 | (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: vTable] : ? [v1: % 108.71/15.03 | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 108.71/15.03 | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 108.71/15.03 | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_2 & vIntersection(v3, % 108.71/15.03 | v4) = v5 & vIntersection(v3, v1) = vq1 & vtvalue(v0) = v3 & % 108.71/15.03 | vOptQuery(v2) & vOptQuery(all_346_2) & vTable(v0) & vQuery(v5) & % 108.71/15.03 | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 108.71/15.03 | (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: vTable] : ? [v1: % 108.71/15.03 | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 108.71/15.03 | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 108.71/15.03 | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_2 & vUnion(v3, v4) = % 108.71/15.03 | v5 & vUnion(v3, v1) = vq1 & vtvalue(v0) = v3 & vOptQuery(v2) & % 108.71/15.03 | vOptQuery(all_346_2) & vTable(v0) & vQuery(v5) & vQuery(v4) & % 108.71/15.03 | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | % 108.71/15.03 | ~ vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 108.71/15.03 | vOptTable] : ? [v3: vName] : ? [v4: int] : (all_346_2 = vnoQuery & % 108.71/15.03 | ~ (v4 = 0) & vlookupStore(v3, all_346_6) = v2 & visSomeTable(v2) = % 108.71/15.03 | v4 & vselectFromWhere(v1, v3, v0) = vq1 & vSelect(v1) & % 108.71/15.03 | vOptTable(v2) & vName(v3) & vPred(v0)) | ? [v0: vTable] : ? [v1: % 108.71/15.03 | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 108.71/15.03 | (all_346_2 = vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 108.71/15.03 | visSomeQuery(v2) = v3 & vDifference(v4, v1) = vq1 & vtvalue(v0) = v4 % 108.71/15.03 | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 108.71/15.03 | vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 108.71/15.03 | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? % 108.71/15.03 | [v4: vQuery] : (all_346_2 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 108.71/15.03 | all_346_6) = v2 & visSomeQuery(v2) = v3 & vIntersection(v4, v1) = % 108.71/15.03 | vq1 & vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 108.71/15.03 | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 108.71/15.03 | vTable(v5))) | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 108.71/15.03 | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : (all_346_2 = vnoQuery % 108.71/15.03 | & ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 % 108.71/15.03 | & vUnion(v4, v1) = vq1 & vtvalue(v0) = v4 & vOptQuery(v2) & % 108.71/15.03 | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 108.71/15.03 | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 108.71/15.03 | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 108.71/15.03 | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = % 108.71/15.03 | v3 & vsomeQuery(v4) = all_346_2 & vDifference(v3, v1) = v4 & % 108.71/15.03 | vDifference(v0, v1) = vq1 & vOptQuery(v2) & vOptQuery(all_346_2) & % 108.71/15.03 | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: vTable] % 108.71/15.03 | : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 108.71/15.03 | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 108.71/15.03 | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 108.71/15.03 | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 108.71/15.03 | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = % 108.71/15.03 | v3 & vsomeQuery(v4) = all_346_2 & vIntersection(v3, v1) = v4 & % 108.71/15.03 | vIntersection(v0, v1) = vq1 & vOptQuery(v2) & vOptQuery(all_346_2) & % 108.71/15.03 | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: vTable] % 108.71/15.03 | : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 108.71/15.03 | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 108.71/15.03 | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 108.71/15.03 | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 108.71/15.03 | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = % 108.71/15.03 | v3 & vsomeQuery(v4) = all_346_2 & vUnion(v3, v1) = v4 & vUnion(v0, % 108.71/15.03 | v1) = vq1 & vOptQuery(v2) & vOptQuery(all_346_2) & vQuery(v4) & % 108.71/15.03 | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 108.71/15.03 | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | ~ % 108.71/15.03 | vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 108.71/15.03 | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : ? % 108.71/15.03 | [v2: vOptQuery] : ? [v3: int] : (all_346_2 = vnoQuery & ~ (v3 = 0) & % 108.71/15.03 | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 108.71/15.03 | vDifference(v0, v1) = vq1 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) % 108.71/15.03 | & ! [v4: vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 108.71/15.03 | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 108.71/15.03 | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 108.71/15.03 | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 108.71/15.03 | (all_346_2 = vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 108.71/15.03 | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = vq1 & vOptQuery(v2) % 108.71/15.03 | & vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 108.71/15.03 | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 108.71/15.03 | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 108.71/15.03 | vTable(v4))) | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 108.71/15.03 | vOptQuery] : ? [v3: int] : (all_346_2 = vnoQuery & ~ (v3 = 0) & % 108.71/15.03 | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) % 108.71/15.03 | = vq1 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: vTable] : % 108.71/15.03 | ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 108.71/15.03 | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) = % 108.71/15.03 | v0) | ~ vTable(v4))) | ? [v0: vTable] : (all_346_2 = vnoQuery % 108.71/15.03 | & vtvalue(v0) = vq1 & vTable(v0)) % 108.71/15.03 | % 108.71/15.03 | GROUND_INST: instantiating (2) with all_338_0, all_346_6, all_346_1, % 108.71/15.03 | simplifying with (17), (24), (31) gives: % 109.31/15.04 | (38) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] % 109.31/15.04 | : ? [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.31/15.04 | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : (vrawDifference(v5, % 109.31/15.04 | v6) = v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 109.31/15.04 | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 & % 109.31/15.04 | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = % 109.31/15.04 | v3 & vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) & % 109.31/15.04 | vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 109.31/15.04 | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & vAttrL(v4)) | ? % 109.31/15.04 | [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : % 109.31/15.04 | ? [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.31/15.04 | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.31/15.04 | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 % 109.31/15.04 | & vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = % 109.31/15.04 | all_346_1 & vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 109.31/15.04 | vtvalue(v1) = v3 & vtvalue(v0) = v2 & vOptQuery(all_346_1) & % 109.31/15.04 | vTable(v8) & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 109.31/15.04 | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.31/15.04 | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 109.31/15.04 | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: % 109.31/15.04 | vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: vQuery] % 109.31/15.04 | : (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & % 109.31/15.04 | vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 109.31/15.04 | & vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 109.31/15.04 | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.31/15.04 | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & vRawTable(v7) & % 109.31/15.04 | vRawTable(v6) & vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? % 109.31/15.04 | [v1: vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : ? [v4: % 109.31/15.04 | vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? [v7: vTable] : ? % 109.31/15.04 | [v8: vQuery] : (vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = v4 % 109.31/15.04 | & vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) = 0 & % 109.31/15.04 | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & vgetTable(v3) = v6 & % 109.31/15.04 | vsomeQuery(v8) = all_346_1 & vselectFromWhere(v2, v5, v0) = % 109.31/15.04 | all_338_0 & vtvalue(v7) = v8 & vOptQuery(all_346_1) & vSelect(v2) & % 109.31/15.04 | vTable(v7) & vTable(v6) & vTable(v1) & vOptTable(v4) & vOptTable(v3) % 109.31/15.04 | & vQuery(v8) & vName(v5) & vPred(v0)) | ? [v0: vPred] : ? [v1: % 109.31/15.04 | vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : ? [v4: vOptTable] % 109.31/15.04 | : ? [v5: vName] : ? [v6: vTable] : ? [v7: int] : (all_346_1 = % 109.31/15.04 | vnoQuery & ~ (v7 = 0) & vfilterTable(v6, v0) = v1 & % 109.31/15.04 | vprojectTable(v2, v1) = v4 & vlookupStore(v5, all_346_6) = v3 & % 109.31/15.04 | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 109.31/15.04 | vselectFromWhere(v2, v5, v0) = all_338_0 & vSelect(v2) & vTable(v6) % 109.31/15.04 | & vTable(v1) & vOptTable(v4) & vOptTable(v3) & vName(v5) & % 109.31/15.04 | vPred(v0)) | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] % 109.31/15.04 | : ? [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 109.31/15.04 | all_346_6) = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.31/15.04 | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) = v5 & % 109.31/15.04 | vDifference(v3, v1) = all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 109.31/15.04 | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & vQuery(v4) & % 109.31/15.04 | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | % 109.31/15.04 | ~ vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.31/15.04 | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 109.31/15.04 | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = % 109.31/15.04 | v4 & vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) = v5 & % 109.31/15.04 | vIntersection(v3, v1) = all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) % 109.31/15.04 | & vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & vQuery(v4) & % 109.31/15.04 | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | % 109.31/15.04 | ~ vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.31/15.04 | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 109.31/15.04 | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = % 109.31/15.04 | v4 & vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 & vUnion(v3, % 109.31/15.04 | v1) = all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 109.31/15.04 | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & vQuery(v4) & % 109.31/15.04 | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | % 109.31/15.04 | ~ vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 109.31/15.04 | vOptTable] : ? [v3: vName] : ? [v4: int] : (all_346_1 = vnoQuery & % 109.31/15.04 | ~ (v4 = 0) & vlookupStore(v3, all_346_6) = v2 & visSomeTable(v2) = % 109.31/15.04 | v4 & vselectFromWhere(v1, v3, v0) = all_338_0 & vSelect(v1) & % 109.31/15.04 | vOptTable(v2) & vName(v3) & vPred(v0)) | ? [v0: vTable] : ? [v1: % 109.31/15.04 | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 109.31/15.04 | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 109.31/15.04 | visSomeQuery(v2) = v3 & vDifference(v4, v1) = all_338_0 & % 109.31/15.04 | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.31/15.04 | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 109.31/15.04 | vTable(v5))) | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.31/15.04 | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery % 109.31/15.04 | & ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 % 109.31/15.04 | & vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 109.31/15.04 | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 109.31/15.04 | vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 109.31/15.04 | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? % 109.31/15.04 | [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 109.31/15.04 | all_346_6) = v2 & visSomeQuery(v2) = v3 & vUnion(v4, v1) = % 109.31/15.04 | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 109.31/15.04 | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | % 109.31/15.04 | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.31/15.04 | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 109.31/15.04 | all_346_6) = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 109.31/15.04 | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = v4 & % 109.31/15.04 | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.31/15.04 | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 109.31/15.04 | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.31/15.04 | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ vTable(v5)) & % 109.31/15.04 | ! [v5: vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 109.31/15.04 | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 109.31/15.04 | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.31/15.04 | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & vIntersection(v3, % 109.31/15.04 | v1) = v4 & vIntersection(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.31/15.04 | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 109.31/15.04 | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.31/15.04 | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ vTable(v5)) & % 109.31/15.04 | ! [v5: vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 109.31/15.04 | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 109.31/15.04 | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.31/15.04 | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & vUnion(v3, v1) = % 109.31/15.04 | v4 & vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.31/15.04 | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 109.31/15.04 | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.31/15.04 | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ vTable(v5)) & % 109.31/15.04 | ! [v5: vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 109.31/15.04 | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 109.31/15.04 | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 109.31/15.04 | visSomeQuery(v2) = v3 & vDifference(v0, v1) = all_338_0 & % 109.31/15.04 | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 109.31/15.04 | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 109.31/15.04 | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) = % 109.31/15.04 | v0) | ~ vTable(v4))) | ? [v0: vQuery] : ? [v1: vQuery] : ? % 109.31/15.04 | [v2: vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 109.31/15.04 | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.31/15.04 | vIntersection(v0, v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) & % 109.31/15.04 | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.31/15.04 | v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | ~ vTable(v4)) & % 109.31/15.04 | ! [v4: vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 109.31/15.04 | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 109.31/15.04 | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 109.31/15.04 | visSomeQuery(v2) = v3 & vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.31/15.04 | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 109.31/15.04 | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 109.31/15.04 | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 109.31/15.04 | vTable(v4))) | ? [v0: vTable] : (all_346_1 = vnoQuery & % 109.31/15.04 | vtvalue(v0) = all_338_0 & vTable(v0)) % 109.31/15.04 | % 109.31/15.04 | GROUND_INST: instantiating (TUnion_inv1) with all_346_5, vq1, vq2, all_346_4, % 109.31/15.04 | all_338_0, simplifying with (4), (5), (18), (22), (25), (33) % 109.31/15.04 | gives: % 109.31/15.05 | (39) vptcheck(all_346_5, vq1, all_346_4) = 0 % 109.31/15.05 | % 109.31/15.05 | DELTA: instantiating (36) with fresh symbol all_359_0 gives: % 109.31/15.05 | (40) vsomeQuery(all_359_0) = all_346_2 & vQuery(all_359_0) % 109.31/15.05 | % 109.31/15.05 | ALPHA: (40) implies: % 109.31/15.05 | (41) vQuery(all_359_0) % 109.31/15.05 | (42) vsomeQuery(all_359_0) = all_346_2 % 109.31/15.05 | % 109.31/15.05 | GROUND_INST: instantiating (isSomeQuery-true-INV) with all_346_1, simplifying % 109.31/15.05 | with (27), (35) gives: % 109.31/15.05 | (43) ? [v0: vQuery] : (vsomeQuery(v0) = all_346_1 & vQuery(v0)) % 109.31/15.05 | % 109.31/15.05 | GROUND_INST: instantiating (3) with all_346_6, all_346_5, all_346_4, % 109.31/15.05 | all_359_0, all_346_2, simplifying with (22), (24), (25), (30), % 109.31/15.05 | (39), (41), (42) gives: % 109.31/15.05 | (44) ? [v0: any] : ? [v1: any] : (vptcheck(all_346_5, all_359_0, % 109.31/15.05 | all_346_4) = v1 & vstoreContextConsistent(all_346_6, all_346_5) = % 109.31/15.05 | v0 & ( ~ (v0 = 0) | v1 = 0)) % 109.31/15.05 | % 109.31/15.05 | DELTA: instantiating (43) with fresh symbol all_385_0 gives: % 109.31/15.05 | (45) vsomeQuery(all_385_0) = all_346_1 & vQuery(all_385_0) % 109.31/15.05 | % 109.31/15.05 | ALPHA: (45) implies: % 109.31/15.05 | (46) vQuery(all_385_0) % 109.31/15.05 | (47) vsomeQuery(all_385_0) = all_346_1 % 109.31/15.05 | % 109.31/15.05 | DELTA: instantiating (44) with fresh symbols all_387_0, all_387_1 gives: % 109.31/15.05 | (48) vptcheck(all_346_5, all_359_0, all_346_4) = all_387_0 & % 109.31/15.05 | vstoreContextConsistent(all_346_6, all_346_5) = all_387_1 & ( ~ % 109.31/15.05 | (all_387_1 = 0) | all_387_0 = 0) % 109.31/15.05 | % 109.31/15.05 | ALPHA: (48) implies: % 109.31/15.05 | (49) vstoreContextConsistent(all_346_6, all_346_5) = all_387_1 % 109.31/15.05 | (50) vptcheck(all_346_5, all_359_0, all_346_4) = all_387_0 % 109.31/15.05 | (51) ~ (all_387_1 = 0) | all_387_0 = 0 % 109.31/15.05 | % 109.31/15.05 | GROUND_INST: instantiating (11) with 0, all_387_1, all_346_5, all_346_6, % 109.31/15.05 | simplifying with (32), (49) gives: % 109.31/15.05 | (52) all_387_1 = 0 % 109.31/15.05 | % 109.31/15.05 | BETA: splitting (51) gives: % 109.31/15.05 | % 109.31/15.05 | Case 1: % 109.31/15.05 | | % 109.31/15.05 | | (53) ~ (all_387_1 = 0) % 109.31/15.05 | | % 109.31/15.05 | | REDUCE: (52), (53) imply: % 109.31/15.05 | | (54) $false % 109.31/15.05 | | % 109.31/15.05 | | CLOSE: (54) is inconsistent. % 109.31/15.05 | | % 109.31/15.05 | Case 2: % 109.31/15.05 | | % 109.31/15.05 | | (55) all_387_0 = 0 % 109.31/15.05 | | % 109.31/15.05 | | REDUCE: (50), (55) imply: % 109.31/15.05 | | (56) vptcheck(all_346_5, all_359_0, all_346_4) = 0 % 109.31/15.05 | | % 109.31/15.05 | | GROUND_INST: instantiating (EQ-someQuery) with all_346_3, all_385_0, % 109.31/15.05 | | all_346_1, simplifying with (23), (28), (46), (47) gives: % 109.31/15.05 | | (57) all_385_0 = all_346_3 % 109.31/15.05 | | % 109.31/15.05 | | BETA: splitting (37) gives: % 109.31/15.05 | | % 109.31/15.05 | | Case 1: % 109.31/15.05 | | | % 109.31/15.06 | | | (58) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? [v3: % 109.31/15.06 | | | vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: % 109.31/15.06 | | | vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 109.31/15.06 | | | vQuery] : (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.31/15.06 | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 109.31/15.06 | | | vsomeQuery(v9) = all_346_2 & vDifference(v2, v3) = vq1 & % 109.31/15.06 | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.31/15.06 | | | vOptQuery(all_346_2) & vTable(v8) & vTable(v1) & vTable(v0) & % 109.31/15.06 | | | vQuery(v9) & vQuery(v3) & vQuery(v2) & vRawTable(v7) & % 109.31/15.06 | | | vRawTable(v6) & vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : % 109.31/15.06 | | | ? [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: % 109.31/15.06 | | | vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.31/15.06 | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.31/15.06 | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) % 109.31/15.06 | | | = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = % 109.31/15.06 | | | all_346_2 & vIntersection(v2, v3) = vq1 & vtvalue(v8) = v9 & % 109.31/15.06 | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & vOptQuery(all_346_2) & % 109.31/15.06 | | | vTable(v8) & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 109.31/15.06 | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.31/15.06 | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 109.31/15.06 | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] % 109.31/15.06 | | | : ? [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : ? % 109.31/15.06 | | | [v9: vQuery] : (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.31/15.06 | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 109.31/15.06 | | | vsomeQuery(v9) = all_346_2 & vUnion(v2, v3) = vq1 & vtvalue(v8) % 109.31/15.06 | | | = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.31/15.06 | | | vOptQuery(all_346_2) & vTable(v8) & vTable(v1) & vTable(v0) & % 109.31/15.06 | | | vQuery(v9) & vQuery(v3) & vQuery(v2) & vRawTable(v7) & % 109.31/15.06 | | | vRawTable(v6) & vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : % 109.31/15.06 | | | ? [v1: vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : ? [v4: % 109.31/15.06 | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? [v7: vTable] % 109.31/15.06 | | | : ? [v8: vQuery] : (vfilterTable(v6, v0) = v1 & vprojectTable(v2, % 109.31/15.06 | | | v1) = v4 & vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) % 109.31/15.06 | | | = 0 & visSomeTable(v3) = 0 & vgetTable(v4) = v7 & vgetTable(v3) % 109.31/15.06 | | | = v6 & vsomeQuery(v8) = all_346_2 & vselectFromWhere(v2, v5, v0) % 109.31/15.06 | | | = vq1 & vtvalue(v7) = v8 & vOptQuery(all_346_2) & vSelect(v2) & % 109.31/15.06 | | | vTable(v7) & vTable(v6) & vTable(v1) & vOptTable(v4) & % 109.31/15.06 | | | vOptTable(v3) & vQuery(v8) & vName(v5) & vPred(v0)) | ? [v0: % 109.31/15.06 | | | vPred] : ? [v1: vTable] : ? [v2: vSelect] : ? [v3: vOptTable] % 109.31/15.06 | | | : ? [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? [v7: % 109.31/15.06 | | | int] : (all_346_2 = vnoQuery & ~ (v7 = 0) & vfilterTable(v6, % 109.31/15.06 | | | v0) = v1 & vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 109.31/15.06 | | | all_346_6) = v3 & visSomeTable(v4) = v7 & visSomeTable(v3) = 0 % 109.31/15.06 | | | & vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) = vq1 & % 109.31/15.06 | | | vSelect(v2) & vTable(v6) & vTable(v1) & vOptTable(v4) & % 109.31/15.06 | | | vOptTable(v3) & vName(v5) & vPred(v0)) | ? [v0: vTable] : ? % 109.31/15.06 | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 109.31/15.06 | | | vQuery] : ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.31/15.06 | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & vsomeQuery(v5) = % 109.31/15.06 | | | all_346_2 & vDifference(v3, v4) = v5 & vDifference(v3, v1) = vq1 % 109.31/15.06 | | | & vtvalue(v0) = v3 & vOptQuery(v2) & vOptQuery(all_346_2) & % 109.31/15.06 | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 109.31/15.06 | | | ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? % 109.31/15.06 | | | [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: % 109.31/15.06 | | | vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 109.31/15.06 | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.31/15.06 | | | vsomeQuery(v5) = all_346_2 & vIntersection(v3, v4) = v5 & % 109.31/15.06 | | | vIntersection(v3, v1) = vq1 & vtvalue(v0) = v3 & vOptQuery(v2) & % 109.31/15.06 | | | vOptQuery(all_346_2) & vTable(v0) & vQuery(v5) & vQuery(v4) & % 109.31/15.06 | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.31/15.06 | | | v1) | ~ vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] : % 109.31/15.06 | | | ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? [v5: % 109.31/15.06 | | | vQuery] : (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.31/15.06 | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_2 & vUnion(v3, v4) % 109.31/15.06 | | | = v5 & vUnion(v3, v1) = vq1 & vtvalue(v0) = v3 & vOptQuery(v2) & % 109.31/15.06 | | | vOptQuery(all_346_2) & vTable(v0) & vQuery(v5) & vQuery(v4) & % 109.31/15.06 | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.31/15.06 | | | v1) | ~ vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] : % 109.31/15.06 | | | ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] : (all_346_2 = % 109.31/15.06 | | | vnoQuery & ~ (v4 = 0) & vlookupStore(v3, all_346_6) = v2 & % 109.31/15.06 | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, v0) = vq1 & % 109.31/15.06 | | | vSelect(v1) & vOptTable(v2) & vName(v3) & vPred(v0)) % 109.31/15.06 | | | % 109.31/15.06 | | | BETA: splitting (58) gives: % 109.31/15.06 | | | % 109.31/15.06 | | | Case 1: % 109.31/15.06 | | | | % 109.31/15.06 | | | | (59) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? [v3: % 109.31/15.06 | | | | vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: % 109.31/15.06 | | | | vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 109.31/15.06 | | | | vQuery] : (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.31/15.06 | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 109.31/15.06 | | | | vsomeQuery(v9) = all_346_2 & vDifference(v2, v3) = vq1 & % 109.31/15.06 | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.31/15.06 | | | | vOptQuery(all_346_2) & vTable(v8) & vTable(v1) & vTable(v0) & % 109.31/15.06 | | | | vQuery(v9) & vQuery(v3) & vQuery(v2) & vRawTable(v7) & % 109.31/15.06 | | | | vRawTable(v6) & vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] % 109.31/15.06 | | | | : ? [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: % 109.31/15.06 | | | | vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.31/15.06 | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.31/15.06 | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.31/15.06 | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 109.31/15.06 | | | | vsomeQuery(v9) = all_346_2 & vIntersection(v2, v3) = vq1 & % 109.31/15.06 | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.31/15.06 | | | | vOptQuery(all_346_2) & vTable(v8) & vTable(v1) & vTable(v0) & % 109.31/15.06 | | | | vQuery(v9) & vQuery(v3) & vQuery(v2) & vRawTable(v7) & % 109.31/15.06 | | | | vRawTable(v6) & vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] % 109.31/15.06 | | | | : ? [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: % 109.31/15.06 | | | | vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.31/15.06 | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.31/15.06 | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 % 109.31/15.06 | | | | & vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = % 109.31/15.06 | | | | all_346_2 & vUnion(v2, v3) = vq1 & vtvalue(v8) = v9 & % 109.31/15.06 | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & vOptQuery(all_346_2) & % 109.31/15.06 | | | | vTable(v8) & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) % 109.31/15.06 | | | | & vQuery(v2) & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.31/15.06 | | | | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : ? [v2: % 109.31/15.06 | | | | vSelect] : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 109.31/15.06 | | | | vName] : ? [v6: vTable] : ? [v7: vTable] : ? [v8: vQuery] : % 109.31/15.06 | | | | (vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = v4 & % 109.31/15.06 | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) = 0 & % 109.31/15.06 | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & vgetTable(v3) = v6 % 109.31/15.06 | | | | & vsomeQuery(v8) = all_346_2 & vselectFromWhere(v2, v5, v0) = % 109.31/15.06 | | | | vq1 & vtvalue(v7) = v8 & vOptQuery(all_346_2) & vSelect(v2) & % 109.31/15.06 | | | | vTable(v7) & vTable(v6) & vTable(v1) & vOptTable(v4) & % 109.31/15.06 | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & vPred(v0)) % 109.31/15.06 | | | | % 109.31/15.06 | | | | BETA: splitting (59) gives: % 109.31/15.06 | | | | % 109.31/15.06 | | | | Case 1: % 109.31/15.06 | | | | | % 109.31/15.07 | | | | | (60) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? [v3: % 109.31/15.07 | | | | | vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: % 109.31/15.07 | | | | | vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 109.31/15.07 | | | | | vQuery] : (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 % 109.31/15.07 | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = v8 % 109.31/15.07 | | | | | & vsomeQuery(v9) = all_346_2 & vDifference(v2, v3) = vq1 & % 109.31/15.07 | | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.31/15.07 | | | | | vOptQuery(all_346_2) & vTable(v8) & vTable(v1) & vTable(v0) % 109.31/15.07 | | | | | & vQuery(v9) & vQuery(v3) & vQuery(v2) & vRawTable(v7) & % 109.31/15.07 | | | | | vRawTable(v6) & vRawTable(v5) & vAttrL(v4)) | ? [v0: % 109.31/15.07 | | | | | vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? [v3: % 109.31/15.07 | | | | | vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: % 109.31/15.07 | | | | | vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 109.31/15.07 | | | | | vQuery] : (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = % 109.31/15.07 | | | | | v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = % 109.31/15.07 | | | | | v8 & vsomeQuery(v9) = all_346_2 & vIntersection(v2, v3) = % 109.31/15.07 | | | | | vq1 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 % 109.31/15.07 | | | | | & vOptQuery(all_346_2) & vTable(v8) & vTable(v1) & % 109.31/15.07 | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 109.31/15.07 | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & vAttrL(v4)) % 109.31/15.07 | | | | | % 109.31/15.07 | | | | | BETA: splitting (60) gives: % 109.31/15.07 | | | | | % 109.31/15.07 | | | | | Case 1: % 109.31/15.07 | | | | | | % 109.31/15.07 | | | | | | (61) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? % 109.31/15.07 | | | | | | [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? % 109.31/15.07 | | | | | | [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : ? % 109.31/15.07 | | | | | | [v9: vQuery] : (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) % 109.31/15.07 | | | | | | = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 109.31/15.07 | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_2 & vDifference(v2, % 109.31/15.07 | | | | | | v3) = vq1 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 109.31/15.07 | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_2) & vTable(v8) & % 109.31/15.07 | | | | | | vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 109.31/15.07 | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) % 109.31/15.07 | | | | | | & vAttrL(v4)) % 109.31/15.07 | | | | | | % 109.31/15.07 | | | | | | DELTA: instantiating (61) with fresh symbols all_605_0, all_605_1, % 109.31/15.07 | | | | | | all_605_2, all_605_3, all_605_4, all_605_5, all_605_6, % 109.31/15.07 | | | | | | all_605_7, all_605_8, all_605_9 gives: % 109.31/15.07 | | | | | | (62) vrawDifference(all_605_4, all_605_3) = all_605_2 & % 109.31/15.07 | | | | | | vgetAttrL(all_605_9) = all_605_5 & vgetRaw(all_605_8) = % 109.31/15.07 | | | | | | all_605_3 & vgetRaw(all_605_9) = all_605_4 & % 109.31/15.07 | | | | | | vtable(all_605_5, all_605_2) = all_605_1 & % 109.31/15.07 | | | | | | vsomeQuery(all_605_0) = all_346_2 & vDifference(all_605_7, % 109.31/15.07 | | | | | | all_605_6) = vq1 & vtvalue(all_605_1) = all_605_0 & % 109.31/15.07 | | | | | | vtvalue(all_605_8) = all_605_6 & vtvalue(all_605_9) = % 109.31/15.07 | | | | | | all_605_7 & vOptQuery(all_346_2) & vTable(all_605_1) & % 109.31/15.07 | | | | | | vTable(all_605_8) & vTable(all_605_9) & vQuery(all_605_0) & % 109.31/15.07 | | | | | | vQuery(all_605_6) & vQuery(all_605_7) & vRawTable(all_605_2) % 109.31/15.07 | | | | | | & vRawTable(all_605_3) & vRawTable(all_605_4) & % 109.31/15.07 | | | | | | vAttrL(all_605_5) % 109.31/15.07 | | | | | | % 109.31/15.07 | | | | | | ALPHA: (62) implies: % 109.31/15.07 | | | | | | (63) vQuery(all_605_7) % 109.31/15.07 | | | | | | (64) vQuery(all_605_6) % 109.31/15.07 | | | | | | (65) vQuery(all_605_0) % 109.31/15.07 | | | | | | (66) vDifference(all_605_7, all_605_6) = vq1 % 109.31/15.07 | | | | | | (67) vsomeQuery(all_605_0) = all_346_2 % 109.31/15.07 | | | | | | % 109.31/15.07 | | | | | | BETA: splitting (38) gives: % 109.31/15.07 | | | | | | % 109.31/15.07 | | | | | | Case 1: % 109.31/15.07 | | | | | | | % 109.31/15.08 | | | | | | | (68) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? % 109.31/15.08 | | | | | | | [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? % 109.31/15.08 | | | | | | | [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : % 109.31/15.08 | | | | | | | ? [v9: vQuery] : (vrawDifference(v5, v6) = v7 & % 109.31/15.08 | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 % 109.31/15.08 | | | | | | | & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 & % 109.31/15.08 | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 109.31/15.08 | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.31/15.08 | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.31/15.08 | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 109.31/15.08 | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.31/15.08 | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 109.31/15.08 | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 109.31/15.08 | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: vRawTable] : % 109.31/15.08 | | | | | | | ? [v8: vTable] : ? [v9: vQuery] : (vrawIntersection(v5, % 109.31/15.08 | | | | | | | v6) = v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & % 109.31/15.08 | | | | | | | vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) % 109.31/15.08 | | | | | | | = all_346_1 & vIntersection(v2, v3) = all_338_0 & % 109.31/15.08 | | | | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.31/15.08 | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.31/15.08 | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 109.31/15.08 | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.31/15.08 | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 109.31/15.08 | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 109.31/15.08 | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: vRawTable] : % 109.31/15.08 | | | | | | | ? [v8: vTable] : ? [v9: vQuery] : (vrawUnion(v5, v6) = v7 % 109.31/15.08 | | | | | | | & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 109.31/15.08 | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 & % 109.31/15.08 | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 109.31/15.08 | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.31/15.08 | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.31/15.08 | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 109.31/15.08 | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.31/15.08 | | | | | | | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : ? [v2: % 109.31/15.08 | | | | | | | vSelect] : ? [v3: vOptTable] : ? [v4: vOptTable] : ? % 109.31/15.08 | | | | | | | [v5: vName] : ? [v6: vTable] : ? [v7: vTable] : ? [v8: % 109.31/15.08 | | | | | | | vQuery] : (vfilterTable(v6, v0) = v1 & vprojectTable(v2, % 109.31/15.08 | | | | | | | v1) = v4 & vlookupStore(v5, all_346_6) = v3 & % 109.31/15.08 | | | | | | | visSomeTable(v4) = 0 & visSomeTable(v3) = 0 & % 109.31/15.08 | | | | | | | vgetTable(v4) = v7 & vgetTable(v3) = v6 & vsomeQuery(v8) % 109.31/15.08 | | | | | | | = all_346_1 & vselectFromWhere(v2, v5, v0) = all_338_0 & % 109.31/15.08 | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & vSelect(v2) & % 109.31/15.08 | | | | | | | vTable(v7) & vTable(v6) & vTable(v1) & vOptTable(v4) & % 109.31/15.08 | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & vPred(v0)) | ? % 109.31/15.08 | | | | | | | [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : ? [v3: % 109.31/15.08 | | | | | | | vOptTable] : ? [v4: vOptTable] : ? [v5: vName] : ? % 109.31/15.08 | | | | | | | [v6: vTable] : ? [v7: int] : (all_346_1 = vnoQuery & ~ % 109.31/15.08 | | | | | | | (v7 = 0) & vfilterTable(v6, v0) = v1 & vprojectTable(v2, % 109.31/15.08 | | | | | | | v1) = v4 & vlookupStore(v5, all_346_6) = v3 & % 109.31/15.08 | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 109.31/15.08 | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) = % 109.31/15.08 | | | | | | | all_338_0 & vSelect(v2) & vTable(v6) & vTable(v1) & % 109.31/15.08 | | | | | | | vOptTable(v4) & vOptTable(v3) & vName(v5) & vPred(v0)) | % 109.31/15.08 | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 109.31/15.08 | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 109.31/15.08 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.31/15.08 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 109.31/15.08 | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 109.31/15.08 | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 109.31/15.08 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 109.31/15.08 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] : % 109.31/15.08 | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 109.31/15.08 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: % 109.31/15.08 | | | | | | | vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 109.31/15.08 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.31/15.08 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 109.31/15.08 | | | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) = % 109.31/15.08 | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 109.31/15.08 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 109.31/15.08 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] : % 109.31/15.08 | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 109.31/15.08 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: % 109.31/15.08 | | | | | | | vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 109.31/15.08 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.31/15.08 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 109.31/15.08 | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 109.31/15.08 | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & vOptQuery(all_346_1) % 109.31/15.08 | | | | | | | & vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 109.31/15.08 | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | % 109.31/15.08 | | | | | | | ~ vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] : % 109.31/15.08 | | | | | | | ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] : % 109.31/15.08 | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 109.31/15.08 | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 109.31/15.08 | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & vSelect(v1) & % 109.31/15.08 | | | | | | | vOptTable(v2) & vName(v3) & vPred(v0)) % 109.31/15.08 | | | | | | | % 109.31/15.08 | | | | | | | BETA: splitting (68) gives: % 109.31/15.08 | | | | | | | % 109.31/15.08 | | | | | | | Case 1: % 109.31/15.08 | | | | | | | | % 109.31/15.08 | | | | | | | | (69) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? % 109.31/15.08 | | | | | | | | [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? % 109.31/15.08 | | | | | | | | [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : % 109.31/15.08 | | | | | | | | ? [v9: vQuery] : (vrawDifference(v5, v6) = v7 & % 109.31/15.08 | | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 109.31/15.08 | | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 109.31/15.08 | | | | | | | | & vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 109.31/15.08 | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.31/15.08 | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.31/15.08 | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 109.31/15.08 | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.31/15.08 | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 109.31/15.08 | | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 109.31/15.08 | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.31/15.08 | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.31/15.08 | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.31/15.08 | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = % 109.31/15.08 | | | | | | | | v8 & vsomeQuery(v9) = all_346_1 & vIntersection(v2, % 109.31/15.08 | | | | | | | | v3) = all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = % 109.31/15.08 | | | | | | | | v3 & vtvalue(v0) = v2 & vOptQuery(all_346_1) & % 109.31/15.08 | | | | | | | | vTable(v8) & vTable(v1) & vTable(v0) & vQuery(v9) & % 109.31/15.08 | | | | | | | | vQuery(v3) & vQuery(v2) & vRawTable(v7) & % 109.31/15.08 | | | | | | | | vRawTable(v6) & vRawTable(v5) & vAttrL(v4)) | ? [v0: % 109.31/15.08 | | | | | | | | vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? [v3: % 109.31/15.08 | | | | | | | | vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? % 109.31/15.08 | | | | | | | | [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : % 109.31/15.08 | | | | | | | | ? [v9: vQuery] : (vrawUnion(v5, v6) = v7 & % 109.31/15.08 | | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 109.31/15.08 | | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 109.31/15.08 | | | | | | | | & vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 109.31/15.08 | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.31/15.08 | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.31/15.08 | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 109.31/15.08 | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.31/15.08 | | | | | | | | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : ? % 109.31/15.08 | | | | | | | | [v2: vSelect] : ? [v3: vOptTable] : ? [v4: vOptTable] % 109.31/15.08 | | | | | | | | : ? [v5: vName] : ? [v6: vTable] : ? [v7: vTable] : % 109.31/15.08 | | | | | | | | ? [v8: vQuery] : (vfilterTable(v6, v0) = v1 & % 109.31/15.08 | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 109.31/15.08 | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 109.31/15.08 | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 109.31/15.08 | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 109.31/15.08 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & vtvalue(v7) % 109.31/15.08 | | | | | | | | = v8 & vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) % 109.31/15.08 | | | | | | | | & vTable(v6) & vTable(v1) & vOptTable(v4) & % 109.31/15.08 | | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & vPred(v0)) % 109.31/15.08 | | | | | | | | % 109.31/15.08 | | | | | | | | BETA: splitting (69) gives: % 109.31/15.08 | | | | | | | | % 109.31/15.08 | | | | | | | | Case 1: % 109.31/15.08 | | | | | | | | | % 109.31/15.08 | | | | | | | | | (70) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 109.31/15.08 | | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] % 109.31/15.08 | | | | | | | | | : ? [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: % 109.31/15.08 | | | | | | | | | vTable] : ? [v9: vQuery] : (vrawDifference(v5, v6) % 109.31/15.08 | | | | | | | | | = v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & % 109.31/15.08 | | | | | | | | | vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 109.31/15.08 | | | | | | | | | vsomeQuery(v9) = all_346_1 & vDifference(v2, v3) = % 109.31/15.08 | | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 109.31/15.08 | | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 109.31/15.08 | | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) % 109.31/15.08 | | | | | | | | | & vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 109.31/15.08 | | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? % 109.31/15.08 | | | | | | | | | [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? % 109.31/15.08 | | | | | | | | | [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] % 109.31/15.08 | | | | | | | | | : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 109.31/15.08 | | | | | | | | | vQuery] : (vrawIntersection(v5, v6) = v7 & % 109.31/15.08 | | | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) % 109.31/15.08 | | | | | | | | | = v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = % 109.31/15.08 | | | | | | | | | all_346_1 & vIntersection(v2, v3) = all_338_0 & % 109.31/15.08 | | | | | | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & vtvalue(v0) = % 109.31/15.08 | | | | | | | | | v2 & vOptQuery(all_346_1) & vTable(v8) & vTable(v1) % 109.31/15.08 | | | | | | | | | & vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 109.31/15.08 | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.31/15.08 | | | | | | | | | vAttrL(v4)) % 109.31/15.08 | | | | | | | | | % 109.31/15.08 | | | | | | | | | BETA: splitting (70) gives: % 109.31/15.08 | | | | | | | | | % 109.31/15.08 | | | | | | | | | Case 1: % 109.31/15.08 | | | | | | | | | | % 109.31/15.08 | | | | | | | | | | (71) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 109.31/15.08 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 109.31/15.08 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.31/15.08 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.31/15.08 | | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.31/15.08 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 109.31/15.08 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 109.31/15.08 | | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 % 109.31/15.08 | | | | | | | | | | & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.31/15.08 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.31/15.08 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 109.31/15.08 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.31/15.08 | | | | | | | | | | vAttrL(v4)) % 109.31/15.08 | | | | | | | | | | % 109.31/15.08 | | | | | | | | | | DELTA: instantiating (71) with fresh symbols all_612_0, % 109.31/15.08 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 109.31/15.08 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8, all_612_9 % 109.31/15.08 | | | | | | | | | | gives: % 109.31/15.08 | | | | | | | | | | (72) vrawDifference(all_612_4, all_612_3) = all_612_2 & % 109.31/15.08 | | | | | | | | | | vgetAttrL(all_612_9) = all_612_5 & % 109.31/15.08 | | | | | | | | | | vgetRaw(all_612_8) = all_612_3 & vgetRaw(all_612_9) % 109.31/15.08 | | | | | | | | | | = all_612_4 & vtable(all_612_5, all_612_2) = % 109.31/15.08 | | | | | | | | | | all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.31/15.08 | | | | | | | | | | vDifference(all_612_7, all_612_6) = all_338_0 & % 109.31/15.08 | | | | | | | | | | vtvalue(all_612_1) = all_612_0 & vtvalue(all_612_8) % 109.31/15.08 | | | | | | | | | | = all_612_6 & vtvalue(all_612_9) = all_612_7 & % 109.31/15.08 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_612_1) & % 109.31/15.08 | | | | | | | | | | vTable(all_612_8) & vTable(all_612_9) & % 109.31/15.08 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_6) & % 109.31/15.08 | | | | | | | | | | vQuery(all_612_7) & vRawTable(all_612_2) & % 109.31/15.08 | | | | | | | | | | vRawTable(all_612_3) & vRawTable(all_612_4) & % 109.31/15.08 | | | | | | | | | | vAttrL(all_612_5) % 109.31/15.08 | | | | | | | | | | % 109.31/15.08 | | | | | | | | | | ALPHA: (72) implies: % 109.31/15.09 | | | | | | | | | | (73) vQuery(all_612_7) % 109.31/15.09 | | | | | | | | | | (74) vQuery(all_612_6) % 109.31/15.09 | | | | | | | | | | (75) vDifference(all_612_7, all_612_6) = all_338_0 % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 109.31/15.09 | | | | | | | | | | vq2, all_612_7, all_612_6, all_338_0, simplifying % 109.31/15.09 | | | | | | | | | | with (4), (5), (18), (73), (74), (75) gives: % 109.31/15.09 | | | | | | | | | | (76) $false % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | | CLOSE: (76) is inconsistent. % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | Case 2: % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | | (77) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 109.31/15.09 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 109.31/15.09 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.31/15.09 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.31/15.09 | | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 % 109.31/15.09 | | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 109.31/15.09 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 109.31/15.09 | | | | | | | | | | vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 109.31/15.09 | | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.31/15.09 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.31/15.09 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 109.31/15.09 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.31/15.09 | | | | | | | | | | vAttrL(v4)) % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | | DELTA: instantiating (77) with fresh symbols all_612_0, % 109.31/15.09 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 109.31/15.09 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8, all_612_9 % 109.31/15.09 | | | | | | | | | | gives: % 109.31/15.09 | | | | | | | | | | (78) vrawIntersection(all_612_4, all_612_3) = all_612_2 & % 109.31/15.09 | | | | | | | | | | vgetAttrL(all_612_9) = all_612_5 & % 109.31/15.09 | | | | | | | | | | vgetRaw(all_612_8) = all_612_3 & vgetRaw(all_612_9) % 109.31/15.09 | | | | | | | | | | = all_612_4 & vtable(all_612_5, all_612_2) = % 109.31/15.09 | | | | | | | | | | all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.31/15.09 | | | | | | | | | | vIntersection(all_612_7, all_612_6) = all_338_0 & % 109.31/15.09 | | | | | | | | | | vtvalue(all_612_1) = all_612_0 & vtvalue(all_612_8) % 109.31/15.09 | | | | | | | | | | = all_612_6 & vtvalue(all_612_9) = all_612_7 & % 109.31/15.09 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_612_1) & % 109.31/15.09 | | | | | | | | | | vTable(all_612_8) & vTable(all_612_9) & % 109.31/15.09 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_6) & % 109.31/15.09 | | | | | | | | | | vQuery(all_612_7) & vRawTable(all_612_2) & % 109.31/15.09 | | | | | | | | | | vRawTable(all_612_3) & vRawTable(all_612_4) & % 109.31/15.09 | | | | | | | | | | vAttrL(all_612_5) % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | | ALPHA: (78) implies: % 109.31/15.09 | | | | | | | | | | (79) vQuery(all_612_7) % 109.31/15.09 | | | | | | | | | | (80) vQuery(all_612_6) % 109.31/15.09 | | | | | | | | | | (81) vIntersection(all_612_7, all_612_6) = all_338_0 % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 109.31/15.09 | | | | | | | | | | vq2, all_612_7, all_612_6, all_338_0, simplifying % 109.31/15.09 | | | | | | | | | | with (4), (5), (18), (79), (80), (81) gives: % 109.31/15.09 | | | | | | | | | | (82) $false % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | | CLOSE: (82) is inconsistent. % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | End of split % 109.31/15.09 | | | | | | | | | % 109.31/15.09 | | | | | | | | Case 2: % 109.31/15.09 | | | | | | | | | % 109.31/15.09 | | | | | | | | | (83) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 109.31/15.09 | | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] % 109.31/15.09 | | | | | | | | | : ? [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: % 109.31/15.09 | | | | | | | | | vTable] : ? [v9: vQuery] : (vrawUnion(v5, v6) = v7 % 109.31/15.09 | | | | | | | | | & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & % 109.31/15.09 | | | | | | | | | vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 109.31/15.09 | | | | | | | | | vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 109.31/15.09 | | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 109.31/15.09 | | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 109.31/15.09 | | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) % 109.31/15.09 | | | | | | | | | & vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 109.31/15.09 | | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? % 109.31/15.09 | | | | | | | | | [v1: vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : % 109.31/15.09 | | | | | | | | | ? [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] % 109.31/15.09 | | | | | | | | | : ? [v7: vTable] : ? [v8: vQuery] : % 109.31/15.09 | | | | | | | | | (vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = % 109.31/15.09 | | | | | | | | | v4 & vlookupStore(v5, all_346_6) = v3 & % 109.31/15.09 | | | | | | | | | visSomeTable(v4) = 0 & visSomeTable(v3) = 0 & % 109.31/15.09 | | | | | | | | | vgetTable(v4) = v7 & vgetTable(v3) = v6 & % 109.31/15.09 | | | | | | | | | vsomeQuery(v8) = all_346_1 & vselectFromWhere(v2, % 109.31/15.09 | | | | | | | | | v5, v0) = all_338_0 & vtvalue(v7) = v8 & % 109.31/15.09 | | | | | | | | | vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) & % 109.31/15.09 | | | | | | | | | vTable(v6) & vTable(v1) & vOptTable(v4) & % 109.31/15.09 | | | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & vPred(v0)) % 109.31/15.09 | | | | | | | | | % 109.31/15.09 | | | | | | | | | BETA: splitting (83) gives: % 109.31/15.09 | | | | | | | | | % 109.31/15.09 | | | | | | | | | Case 1: % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | | (84) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 109.31/15.09 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 109.31/15.09 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.31/15.09 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.31/15.09 | | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.31/15.09 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 109.31/15.09 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 109.31/15.09 | | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 109.31/15.09 | | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.31/15.09 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.31/15.09 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 109.31/15.09 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.31/15.09 | | | | | | | | | | vAttrL(v4)) % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | | DELTA: instantiating (84) with fresh symbols all_612_0, % 109.31/15.09 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 109.31/15.09 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8, all_612_9 % 109.31/15.09 | | | | | | | | | | gives: % 109.31/15.09 | | | | | | | | | | (85) vrawUnion(all_612_4, all_612_3) = all_612_2 & % 109.31/15.09 | | | | | | | | | | vgetAttrL(all_612_9) = all_612_5 & % 109.31/15.09 | | | | | | | | | | vgetRaw(all_612_8) = all_612_3 & vgetRaw(all_612_9) % 109.31/15.09 | | | | | | | | | | = all_612_4 & vtable(all_612_5, all_612_2) = % 109.31/15.09 | | | | | | | | | | all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.31/15.09 | | | | | | | | | | vUnion(all_612_7, all_612_6) = all_338_0 & % 109.31/15.09 | | | | | | | | | | vtvalue(all_612_1) = all_612_0 & vtvalue(all_612_8) % 109.31/15.09 | | | | | | | | | | = all_612_6 & vtvalue(all_612_9) = all_612_7 & % 109.31/15.09 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_612_1) & % 109.31/15.09 | | | | | | | | | | vTable(all_612_8) & vTable(all_612_9) & % 109.31/15.09 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_6) & % 109.31/15.09 | | | | | | | | | | vQuery(all_612_7) & vRawTable(all_612_2) & % 109.31/15.09 | | | | | | | | | | vRawTable(all_612_3) & vRawTable(all_612_4) & % 109.31/15.09 | | | | | | | | | | vAttrL(all_612_5) % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | | ALPHA: (85) implies: % 109.31/15.09 | | | | | | | | | | (86) vQuery(all_612_7) % 109.31/15.09 | | | | | | | | | | (87) vQuery(all_612_6) % 109.31/15.09 | | | | | | | | | | (88) vTable(all_612_9) % 109.31/15.09 | | | | | | | | | | (89) vtvalue(all_612_9) = all_612_7 % 109.31/15.09 | | | | | | | | | | (90) vUnion(all_612_7, all_612_6) = all_338_0 % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_612_9, % 109.31/15.09 | | | | | | | | | | all_612_7, simplifying with (88), (89) gives: % 109.31/15.09 | | | | | | | | | | (91) visValue(all_612_7) = 0 % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_612_7, % 109.31/15.09 | | | | | | | | | | all_612_6, all_338_0, simplifying with (4), (5), % 109.31/15.09 | | | | | | | | | | (18), (86), (87), (90) gives: % 109.31/15.09 | | | | | | | | | | (92) all_612_6 = vq2 & all_612_7 = vq1 % 109.31/15.09 | | | | | | | | | | % 109.31/15.09 | | | | | | | | | | ALPHA: (92) implies: % 109.31/15.09 | | | | | | | | | | (93) all_612_7 = vq1 % 109.31/15.09 | | | | | | | | | | % 109.31/15.10 | | | | | | | | | | GROUND_INST: instantiating (isValue-4) with all_605_7, % 109.31/15.10 | | | | | | | | | | all_605_6, vq1, simplifying with (63), (64), (66) % 109.31/15.10 | | | | | | | | | | gives: % 109.31/15.10 | | | | | | | | | | (94) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 109.31/15.10 | | | | | | | | | | % 109.31/15.10 | | | | | | | | | | DELTA: instantiating (94) with fresh symbol all_628_0 gives: % 109.31/15.10 | | | | | | | | | | (95) ~ (all_628_0 = 0) & visValue(vq1) = all_628_0 % 109.31/15.10 | | | | | | | | | | % 109.31/15.10 | | | | | | | | | | ALPHA: (95) implies: % 109.31/15.10 | | | | | | | | | | (96) ~ (all_628_0 = 0) % 109.31/15.10 | | | | | | | | | | (97) visValue(vq1) = all_628_0 % 109.31/15.10 | | | | | | | | | | % 109.31/15.10 | | | | | | | | | | REDUCE: (91), (93) imply: % 109.31/15.10 | | | | | | | | | | (98) visValue(vq1) = 0 % 109.31/15.10 | | | | | | | | | | % 109.31/15.10 | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_628_0, vq1, % 109.31/15.10 | | | | | | | | | | simplifying with (97), (98) gives: % 109.31/15.10 | | | | | | | | | | (99) all_628_0 = 0 % 109.31/15.10 | | | | | | | | | | % 109.31/15.10 | | | | | | | | | | REDUCE: (96), (99) imply: % 109.31/15.10 | | | | | | | | | | (100) $false % 109.31/15.10 | | | | | | | | | | % 109.31/15.10 | | | | | | | | | | CLOSE: (100) is inconsistent. % 109.31/15.10 | | | | | | | | | | % 109.31/15.10 | | | | | | | | | Case 2: % 109.31/15.10 | | | | | | | | | | % 109.31/15.10 | | | | | | | | | | (101) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 109.31/15.10 | | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 109.31/15.10 | | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: vTable] : ? % 109.31/15.10 | | | | | | | | | | [v8: vQuery] : (vfilterTable(v6, v0) = v1 & % 109.31/15.10 | | | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 109.31/15.10 | | | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 109.31/15.10 | | | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 109.31/15.10 | | | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 109.31/15.10 | | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 109.31/15.10 | | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 109.31/15.10 | | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & % 109.31/15.10 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 109.31/15.10 | | | | | | | | | | vQuery(v8) & vName(v5) & vPred(v0)) % 109.31/15.10 | | | | | | | | | | % 109.31/15.10 | | | | | | | | | | DELTA: instantiating (101) with fresh symbols all_612_0, % 109.31/15.10 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 109.31/15.10 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8 gives: % 109.31/15.10 | | | | | | | | | | (102) vfilterTable(all_612_2, all_612_8) = all_612_7 & % 109.31/15.10 | | | | | | | | | | vprojectTable(all_612_6, all_612_7) = all_612_4 & % 109.31/15.10 | | | | | | | | | | vlookupStore(all_612_3, all_346_6) = all_612_5 & % 109.31/15.10 | | | | | | | | | | visSomeTable(all_612_4) = 0 & % 109.31/15.10 | | | | | | | | | | visSomeTable(all_612_5) = 0 & vgetTable(all_612_4) % 109.31/15.10 | | | | | | | | | | = all_612_1 & vgetTable(all_612_5) = all_612_2 & % 109.31/15.10 | | | | | | | | | | vsomeQuery(all_612_0) = all_346_1 & % 109.31/15.10 | | | | | | | | | | vselectFromWhere(all_612_6, all_612_3, all_612_8) = % 109.31/15.10 | | | | | | | | | | all_338_0 & vtvalue(all_612_1) = all_612_0 & % 109.31/15.10 | | | | | | | | | | vOptQuery(all_346_1) & vSelect(all_612_6) & % 109.31/15.10 | | | | | | | | | | vTable(all_612_1) & vTable(all_612_2) & % 109.31/15.10 | | | | | | | | | | vTable(all_612_7) & vOptTable(all_612_4) & % 109.31/15.10 | | | | | | | | | | vOptTable(all_612_5) & vQuery(all_612_0) & % 109.31/15.10 | | | | | | | | | | vName(all_612_3) & vPred(all_612_8) % 109.31/15.10 | | | | | | | | | | % 109.31/15.10 | | | | | | | | | | ALPHA: (102) implies: % 109.31/15.10 | | | | | | | | | | (103) vPred(all_612_8) % 109.31/15.10 | | | | | | | | | | (104) vName(all_612_3) % 109.31/15.10 | | | | | | | | | | (105) vSelect(all_612_6) % 109.31/15.10 | | | | | | | | | | (106) vselectFromWhere(all_612_6, all_612_3, all_612_8) = % 109.31/15.10 | | | | | | | | | | all_338_0 % 109.31/15.10 | | | | | | | | | | % 109.31/15.10 | | | | | | | | | | GROUND_INST: instantiating (DIFF-selectFromWhere-Union) with % 109.31/15.10 | | | | | | | | | | all_612_3, all_612_8, all_612_6, vq2, vq1, % 109.31/15.10 | | | | | | | | | | all_338_0, simplifying with (4), (5), (18), (103), % 109.31/15.10 | | | | | | | | | | (104), (105), (106) gives: % 109.31/15.10 | | | | | | | | | | (107) $false % 109.31/15.10 | | | | | | | | | | % 109.31/15.10 | | | | | | | | | | CLOSE: (107) is inconsistent. % 109.31/15.10 | | | | | | | | | | % 109.31/15.10 | | | | | | | | | End of split % 109.31/15.10 | | | | | | | | | % 109.31/15.10 | | | | | | | | End of split % 109.31/15.10 | | | | | | | | % 109.31/15.10 | | | | | | | Case 2: % 109.31/15.10 | | | | | | | | % 109.31/15.10 | | | | | | | | (108) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 109.31/15.10 | | | | | | | | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] % 109.31/15.10 | | | | | | | | : ? [v6: vTable] : ? [v7: int] : (all_346_1 = % 109.31/15.10 | | | | | | | | vnoQuery & ~ (v7 = 0) & vfilterTable(v6, v0) = v1 & % 109.31/15.10 | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 109.31/15.10 | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 109.31/15.10 | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 109.31/15.10 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 109.31/15.10 | | | | | | | | vSelect(v2) & vTable(v6) & vTable(v1) & vOptTable(v4) % 109.31/15.10 | | | | | | | | & vOptTable(v3) & vName(v5) & vPred(v0)) | ? [v0: % 109.31/15.10 | | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.31/15.10 | | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 109.31/15.10 | | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.31/15.10 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 109.31/15.10 | | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 109.31/15.10 | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 109.31/15.10 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 109.31/15.10 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 109.31/15.10 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 109.31/15.10 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.31/15.10 | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 109.31/15.10 | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.31/15.10 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.31/15.10 | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) = % 109.31/15.10 | | | | | | | | v5 & vIntersection(v3, v1) = all_338_0 & vtvalue(v0) % 109.31/15.10 | | | | | | | | = v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 109.31/15.10 | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 109.31/15.10 | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 109.31/15.10 | | | | | | | | | ~ vTable(v6))) | ? [v0: vTable] : ? [v1: % 109.31/15.10 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 109.31/15.10 | | | | | | | | [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 109.31/15.10 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.31/15.10 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 109.31/15.10 | | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 109.31/15.10 | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 109.31/15.10 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 109.31/15.10 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 109.31/15.10 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 109.31/15.10 | | | | | | | | | ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 109.31/15.10 | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 109.31/15.10 | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 109.31/15.10 | | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 109.31/15.10 | | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & % 109.31/15.10 | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & vPred(v0)) % 109.31/15.10 | | | | | | | | % 109.31/15.10 | | | | | | | | BETA: splitting (108) gives: % 109.31/15.10 | | | | | | | | % 109.31/15.10 | | | | | | | | Case 1: % 109.31/15.10 | | | | | | | | | % 109.31/15.11 | | | | | | | | | (109) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 109.31/15.11 | | | | | | | | | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 109.31/15.11 | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 109.31/15.11 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 109.31/15.11 | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = % 109.31/15.11 | | | | | | | | | v4 & vlookupStore(v5, all_346_6) = v3 & % 109.31/15.11 | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 109.31/15.11 | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) = % 109.31/15.11 | | | | | | | | | all_338_0 & vSelect(v2) & vTable(v6) & vTable(v1) & % 109.31/15.11 | | | | | | | | | vOptTable(v4) & vOptTable(v3) & vName(v5) & % 109.31/15.11 | | | | | | | | | vPred(v0)) | ? [v0: vTable] : ? [v1: vQuery] : ? % 109.31/15.11 | | | | | | | | | [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.31/15.11 | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.31/15.11 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.31/15.11 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) = % 109.31/15.11 | | | | | | | | | v5 & vDifference(v3, v1) = all_338_0 & vtvalue(v0) % 109.31/15.11 | | | | | | | | | = v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 109.31/15.11 | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 109.31/15.11 | | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.31/15.11 | | | | | | | | | v1) | ~ vTable(v6))) % 109.31/15.11 | | | | | | | | | % 109.31/15.11 | | | | | | | | | BETA: splitting (109) gives: % 109.31/15.11 | | | | | | | | | % 109.31/15.11 | | | | | | | | | Case 1: % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | | (110) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 109.31/15.11 | | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 109.31/15.11 | | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 109.31/15.11 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 109.31/15.11 | | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 109.31/15.11 | | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 109.31/15.11 | | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 109.31/15.11 | | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) % 109.31/15.11 | | | | | | | | | | = all_338_0 & vSelect(v2) & vTable(v6) & % 109.31/15.11 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 109.31/15.11 | | | | | | | | | | vName(v5) & vPred(v0)) % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | | DELTA: instantiating (110) with fresh symbols all_612_0, % 109.31/15.11 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 109.31/15.11 | | | | | | | | | | all_612_5, all_612_6, all_612_7 gives: % 109.31/15.11 | | | | | | | | | | (111) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 109.31/15.11 | | | | | | | | | | vfilterTable(all_612_1, all_612_7) = all_612_6 & % 109.31/15.11 | | | | | | | | | | vprojectTable(all_612_5, all_612_6) = all_612_3 & % 109.31/15.11 | | | | | | | | | | vlookupStore(all_612_2, all_346_6) = all_612_4 & % 109.31/15.11 | | | | | | | | | | visSomeTable(all_612_3) = all_612_0 & % 109.31/15.11 | | | | | | | | | | visSomeTable(all_612_4) = 0 & vgetTable(all_612_4) % 109.31/15.11 | | | | | | | | | | = all_612_1 & vselectFromWhere(all_612_5, % 109.31/15.11 | | | | | | | | | | all_612_2, all_612_7) = all_338_0 & % 109.31/15.11 | | | | | | | | | | vSelect(all_612_5) & vTable(all_612_1) & % 109.31/15.11 | | | | | | | | | | vTable(all_612_6) & vOptTable(all_612_3) & % 109.31/15.11 | | | | | | | | | | vOptTable(all_612_4) & vName(all_612_2) & % 109.31/15.11 | | | | | | | | | | vPred(all_612_7) % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (111) are inconsistent by % 109.31/15.11 | | | | | | | | | | sub-proof #10. % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | Case 2: % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | | (112) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.31/15.11 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.31/15.11 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.31/15.11 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.31/15.11 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) % 109.31/15.11 | | | | | | | | | | = v5 & vDifference(v3, v1) = all_338_0 & % 109.31/15.11 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 109.31/15.11 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 109.31/15.11 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 109.31/15.11 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 109.31/15.11 | | | | | | | | | | vTable(v6))) % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | | DELTA: instantiating (112) with fresh symbols all_612_0, % 109.31/15.11 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, all_612_5 % 109.31/15.11 | | | | | | | | | | gives: % 109.31/15.11 | | | | | | | | | | (113) vreduce(all_612_4, all_346_6) = all_612_3 & % 109.31/15.11 | | | | | | | | | | visSomeQuery(all_612_3) = 0 & vgetQuery(all_612_3) % 109.31/15.11 | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.31/15.11 | | | | | | | | | | vDifference(all_612_2, all_612_1) = all_612_0 & % 109.31/15.11 | | | | | | | | | | vDifference(all_612_2, all_612_4) = all_338_0 & % 109.31/15.11 | | | | | | | | | | vtvalue(all_612_5) = all_612_2 & % 109.31/15.11 | | | | | | | | | | vOptQuery(all_612_3) & vOptQuery(all_346_1) & % 109.31/15.11 | | | | | | | | | | vTable(all_612_5) & vQuery(all_612_0) & % 109.31/15.11 | | | | | | | | | | vQuery(all_612_1) & vQuery(all_612_2) & % 109.31/15.11 | | | | | | | | | | vQuery(all_612_4) & ! [v0: vTable] : ( ~ % 109.31/15.11 | | | | | | | | | | (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | | ALPHA: (113) implies: % 109.31/15.11 | | | | | | | | | | (114) vQuery(all_612_4) % 109.31/15.11 | | | | | | | | | | (115) vQuery(all_612_2) % 109.31/15.11 | | | | | | | | | | (116) vDifference(all_612_2, all_612_4) = all_338_0 % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 109.31/15.11 | | | | | | | | | | vq2, all_612_2, all_612_4, all_338_0, simplifying % 109.31/15.11 | | | | | | | | | | with (4), (5), (18), (114), (115), (116) gives: % 109.31/15.11 | | | | | | | | | | (117) $false % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | | CLOSE: (117) is inconsistent. % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | End of split % 109.31/15.11 | | | | | | | | | % 109.31/15.11 | | | | | | | | Case 2: % 109.31/15.11 | | | | | | | | | % 109.31/15.11 | | | | | | | | | (118) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.31/15.11 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 109.31/15.11 | | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.31/15.11 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.31/15.11 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) % 109.31/15.11 | | | | | | | | | = v5 & vIntersection(v3, v1) = all_338_0 & % 109.31/15.11 | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 109.31/15.11 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 109.31/15.11 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 109.31/15.11 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 109.31/15.11 | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] % 109.31/15.11 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 109.31/15.11 | | | | | | | | | vQuery] : ? [v5: vQuery] : (vreduce(v1, all_346_6) % 109.31/15.11 | | | | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.31/15.11 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 & % 109.31/15.11 | | | | | | | | | vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 109.31/15.11 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) & % 109.31/15.11 | | | | | | | | | vQuery(v5) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 109.31/15.11 | | | | | | | | | ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 109.31/15.11 | | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] % 109.31/15.11 | | | | | | | | | : ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] % 109.31/15.11 | | | | | | | | | : (all_346_1 = vnoQuery & ~ (v4 = 0) & % 109.31/15.11 | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & visSomeTable(v2) % 109.31/15.11 | | | | | | | | | = v4 & vselectFromWhere(v1, v3, v0) = all_338_0 & % 109.31/15.11 | | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & % 109.31/15.11 | | | | | | | | | vPred(v0)) % 109.31/15.11 | | | | | | | | | % 109.31/15.11 | | | | | | | | | BETA: splitting (118) gives: % 109.31/15.11 | | | | | | | | | % 109.31/15.11 | | | | | | | | | Case 1: % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | | (119) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.31/15.11 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.31/15.11 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.31/15.11 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.31/15.11 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, % 109.31/15.11 | | | | | | | | | | v4) = v5 & vIntersection(v3, v1) = all_338_0 & % 109.31/15.11 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 109.31/15.11 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 109.31/15.11 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 109.31/15.11 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 109.31/15.11 | | | | | | | | | | vTable(v6))) % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | | DELTA: instantiating (119) with fresh symbols all_612_0, % 109.31/15.11 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, all_612_5 % 109.31/15.11 | | | | | | | | | | gives: % 109.31/15.11 | | | | | | | | | | (120) vreduce(all_612_4, all_346_6) = all_612_3 & % 109.31/15.11 | | | | | | | | | | visSomeQuery(all_612_3) = 0 & vgetQuery(all_612_3) % 109.31/15.11 | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.31/15.11 | | | | | | | | | | vIntersection(all_612_2, all_612_1) = all_612_0 & % 109.31/15.11 | | | | | | | | | | vIntersection(all_612_2, all_612_4) = all_338_0 & % 109.31/15.11 | | | | | | | | | | vtvalue(all_612_5) = all_612_2 & % 109.31/15.11 | | | | | | | | | | vOptQuery(all_612_3) & vOptQuery(all_346_1) & % 109.31/15.11 | | | | | | | | | | vTable(all_612_5) & vQuery(all_612_0) & % 109.31/15.11 | | | | | | | | | | vQuery(all_612_1) & vQuery(all_612_2) & % 109.31/15.11 | | | | | | | | | | vQuery(all_612_4) & ! [v0: vTable] : ( ~ % 109.31/15.11 | | | | | | | | | | (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | | ALPHA: (120) implies: % 109.31/15.11 | | | | | | | | | | (121) vQuery(all_612_4) % 109.31/15.11 | | | | | | | | | | (122) vQuery(all_612_2) % 109.31/15.11 | | | | | | | | | | (123) vIntersection(all_612_2, all_612_4) = all_338_0 % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 109.31/15.11 | | | | | | | | | | vq2, all_612_2, all_612_4, all_338_0, simplifying % 109.31/15.11 | | | | | | | | | | with (4), (5), (18), (121), (122), (123) gives: % 109.31/15.11 | | | | | | | | | | (124) $false % 109.31/15.11 | | | | | | | | | | % 109.31/15.11 | | | | | | | | | | CLOSE: (124) is inconsistent. % 109.31/15.12 | | | | | | | | | | % 109.31/15.12 | | | | | | | | | Case 2: % 109.31/15.12 | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | (125) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.31/15.12 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.31/15.12 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.31/15.12 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.31/15.12 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 109.31/15.12 | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 109.31/15.12 | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) % 109.31/15.12 | | | | | | | | | | & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 109.31/15.12 | | | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.31/15.12 | | | | | | | | | | v1) | ~ vTable(v6))) | ? [v0: vPred] : ? % 109.31/15.12 | | | | | | | | | | [v1: vSelect] : ? [v2: vOptTable] : ? [v3: vName] % 109.31/15.12 | | | | | | | | | | : ? [v4: int] : (all_346_1 = vnoQuery & ~ (v4 = % 109.31/15.12 | | | | | | | | | | 0) & vlookupStore(v3, all_346_6) = v2 & % 109.31/15.12 | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 109.31/15.12 | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) & % 109.31/15.12 | | | | | | | | | | vName(v3) & vPred(v0)) % 109.31/15.12 | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | BETA: splitting (125) gives: % 109.31/15.12 | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | Case 1: % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | (126) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.31/15.12 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.31/15.12 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.31/15.12 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.31/15.12 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 109.31/15.12 | | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 109.31/15.12 | | | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 109.31/15.12 | | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 109.31/15.12 | | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 109.31/15.12 | | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | DELTA: instantiating (126) with fresh symbols all_612_0, % 109.31/15.12 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 109.31/15.12 | | | | | | | | | | | all_612_5 gives: % 109.31/15.12 | | | | | | | | | | | (127) vreduce(all_612_4, all_346_6) = all_612_3 & % 109.31/15.12 | | | | | | | | | | | visSomeQuery(all_612_3) = 0 & vgetQuery(all_612_3) % 109.31/15.12 | | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.31/15.12 | | | | | | | | | | | vUnion(all_612_2, all_612_1) = all_612_0 & % 109.31/15.12 | | | | | | | | | | | vUnion(all_612_2, all_612_4) = all_338_0 & % 109.31/15.12 | | | | | | | | | | | vtvalue(all_612_5) = all_612_2 & % 109.31/15.12 | | | | | | | | | | | vOptQuery(all_612_3) & vOptQuery(all_346_1) & % 109.31/15.12 | | | | | | | | | | | vTable(all_612_5) & vQuery(all_612_0) & % 109.31/15.12 | | | | | | | | | | | vQuery(all_612_1) & vQuery(all_612_2) & % 109.31/15.12 | | | | | | | | | | | vQuery(all_612_4) & ! [v0: vTable] : ( ~ % 109.31/15.12 | | | | | | | | | | | (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | ALPHA: (127) implies: % 109.31/15.12 | | | | | | | | | | | (128) vQuery(all_612_4) % 109.31/15.12 | | | | | | | | | | | (129) vQuery(all_612_2) % 109.31/15.12 | | | | | | | | | | | (130) vTable(all_612_5) % 109.31/15.12 | | | | | | | | | | | (131) vtvalue(all_612_5) = all_612_2 % 109.31/15.12 | | | | | | | | | | | (132) vUnion(all_612_2, all_612_4) = all_338_0 % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_612_5, % 109.31/15.12 | | | | | | | | | | | all_612_2, simplifying with (130), (131) gives: % 109.31/15.12 | | | | | | | | | | | (133) visValue(all_612_2) = 0 % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_612_2, % 109.31/15.12 | | | | | | | | | | | all_612_4, all_338_0, simplifying with (4), (5), % 109.31/15.12 | | | | | | | | | | | (18), (128), (129), (132) gives: % 109.31/15.12 | | | | | | | | | | | (134) all_612_2 = vq1 & all_612_4 = vq2 % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | ALPHA: (134) implies: % 109.31/15.12 | | | | | | | | | | | (135) all_612_2 = vq1 % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | GROUND_INST: instantiating (isValue-4) with all_605_7, % 109.31/15.12 | | | | | | | | | | | all_605_6, vq1, simplifying with (63), (64), (66) % 109.31/15.12 | | | | | | | | | | | gives: % 109.31/15.12 | | | | | | | | | | | (136) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | DELTA: instantiating (136) with fresh symbol all_633_0 % 109.31/15.12 | | | | | | | | | | | gives: % 109.31/15.12 | | | | | | | | | | | (137) ~ (all_633_0 = 0) & visValue(vq1) = all_633_0 % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | ALPHA: (137) implies: % 109.31/15.12 | | | | | | | | | | | (138) ~ (all_633_0 = 0) % 109.31/15.12 | | | | | | | | | | | (139) visValue(vq1) = all_633_0 % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | REDUCE: (133), (135) imply: % 109.31/15.12 | | | | | | | | | | | (140) visValue(vq1) = 0 % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_633_0, vq1, % 109.31/15.12 | | | | | | | | | | | simplifying with (139), (140) gives: % 109.31/15.12 | | | | | | | | | | | (141) all_633_0 = 0 % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | REDUCE: (138), (141) imply: % 109.31/15.12 | | | | | | | | | | | (142) $false % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | CLOSE: (142) is inconsistent. % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | Case 2: % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | (143) ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 109.31/15.12 | | | | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 109.31/15.12 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & % 109.31/15.12 | | | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & % 109.31/15.12 | | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 109.31/15.12 | | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) % 109.31/15.12 | | | | | | | | | | | & vName(v3) & vPred(v0)) % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | DELTA: instantiating (143) with fresh symbols all_612_0, % 109.31/15.12 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 109.31/15.12 | | | | | | | | | | | (144) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 109.31/15.12 | | | | | | | | | | | vlookupStore(all_612_1, all_346_6) = all_612_2 & % 109.31/15.12 | | | | | | | | | | | visSomeTable(all_612_2) = all_612_0 & % 109.31/15.12 | | | | | | | | | | | vselectFromWhere(all_612_3, all_612_1, all_612_4) % 109.31/15.12 | | | | | | | | | | | = all_338_0 & vSelect(all_612_3) & % 109.31/15.12 | | | | | | | | | | | vOptTable(all_612_2) & vName(all_612_1) & % 109.31/15.12 | | | | | | | | | | | vPred(all_612_4) % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (144) are inconsistent by % 109.31/15.12 | | | | | | | | | | | sub-proof #9. % 109.31/15.12 | | | | | | | | | | | % 109.31/15.12 | | | | | | | | | | End of split % 109.31/15.12 | | | | | | | | | | % 109.31/15.12 | | | | | | | | | End of split % 109.31/15.12 | | | | | | | | | % 109.31/15.12 | | | | | | | | End of split % 109.31/15.12 | | | | | | | | % 109.31/15.12 | | | | | | | End of split % 109.31/15.12 | | | | | | | % 109.31/15.12 | | | | | | Case 2: % 109.31/15.12 | | | | | | | % 109.31/15.13 | | | | | | | (145) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 109.31/15.13 | | | | | | | ? [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & % 109.31/15.13 | | | | | | | ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 109.31/15.13 | | | | | | | visSomeQuery(v2) = v3 & vDifference(v4, v1) = all_338_0 % 109.31/15.13 | | | | | | | & vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 109.31/15.13 | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 109.31/15.13 | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 109.31/15.13 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.31/15.13 | | | | | | | [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ % 109.31/15.13 | | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 109.31/15.13 | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v4, v1) = % 109.31/15.13 | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 109.31/15.13 | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: vTable] % 109.31/15.13 | | | | | | | : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 109.31/15.13 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.31/15.13 | | | | | | | [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ % 109.31/15.13 | | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 109.31/15.13 | | | | | | | visSomeQuery(v2) = v3 & vUnion(v4, v1) = all_338_0 & % 109.31/15.13 | | | | | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 109.31/15.13 | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 109.31/15.13 | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 109.31/15.13 | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.31/15.13 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, all_346_6) % 109.31/15.13 | | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 109.31/15.13 | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = v4 & % 109.31/15.13 | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.31/15.13 | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 109.31/15.13 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 109.31/15.13 | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 109.31/15.13 | | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 109.31/15.13 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 109.31/15.13 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 109.31/15.13 | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 109.31/15.13 | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.31/15.13 | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 109.31/15.13 | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) = % 109.31/15.13 | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 109.31/15.13 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! % 109.31/15.13 | | | | | | | [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 109.31/15.13 | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 109.31/15.13 | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.31/15.13 | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 109.31/15.13 | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 109.31/15.13 | | | | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 109.31/15.13 | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 109.31/15.13 | | | | | | | vsomeQuery(v4) = all_346_1 & vUnion(v3, v1) = v4 & % 109.31/15.13 | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.31/15.13 | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 109.31/15.13 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 109.31/15.13 | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 109.31/15.13 | | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 109.31/15.13 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 109.31/15.13 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 109.31/15.13 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 109.31/15.13 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.31/15.13 | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.31/15.13 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 109.31/15.13 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 109.31/15.13 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 109.31/15.13 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 109.31/15.13 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 109.31/15.13 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 109.31/15.13 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.31/15.13 | | | | | | | vIntersection(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.31/15.13 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 109.31/15.13 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 109.31/15.13 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 109.31/15.13 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 109.31/15.13 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 109.31/15.13 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 109.31/15.13 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.31/15.13 | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) % 109.31/15.13 | | | | | | | & vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 109.31/15.13 | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 109.31/15.13 | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 109.31/15.13 | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 109.31/15.13 | | | | | | | vTable] : (all_346_1 = vnoQuery & vtvalue(v0) = % 109.31/15.13 | | | | | | | all_338_0 & vTable(v0)) % 109.31/15.13 | | | | | | | % 109.31/15.13 | | | | | | | BETA: splitting (145) gives: % 109.31/15.13 | | | | | | | % 109.31/15.13 | | | | | | | Case 1: % 109.31/15.13 | | | | | | | | % 109.31/15.13 | | | | | | | | (146) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] % 109.31/15.13 | | | | | | | | : ? [v3: int] : ? [v4: vQuery] : (all_346_1 = % 109.31/15.13 | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 % 109.31/15.13 | | | | | | | | & visSomeQuery(v2) = v3 & vDifference(v4, v1) = % 109.31/15.13 | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 109.31/15.13 | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 109.31/15.13 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) % 109.31/15.13 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.31/15.13 | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 109.31/15.13 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 109.31/15.13 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.31/15.13 | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 109.31/15.13 | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.31/15.13 | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) % 109.31/15.13 | | | | | | | | | ~ vTable(v5))) | ? [v0: vTable] : ? [v1: % 109.31/15.13 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? [v4: % 109.31/15.13 | | | | | | | | vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 109.31/15.13 | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.31/15.13 | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 109.31/15.13 | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) % 109.31/15.13 | | | | | | | | & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 109.31/15.13 | | | | | | | | vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : % 109.31/15.13 | | | | | | | | ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.31/15.13 | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.31/15.13 | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 109.31/15.13 | | | | | | | | vDifference(v3, v1) = v4 & vDifference(v0, v1) = % 109.31/15.13 | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 109.31/15.13 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & % 109.31/15.13 | | | | | | | | ! [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.31/15.13 | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 109.31/15.13 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.31/15.13 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 109.31/15.13 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 109.31/15.13 | | | | | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 109.31/15.13 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 109.31/15.13 | | | | | | | | vsomeQuery(v4) = all_346_1 & vIntersection(v3, v1) = % 109.31/15.13 | | | | | | | | v4 & vIntersection(v0, v1) = all_338_0 & % 109.31/15.13 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 109.31/15.13 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 109.31/15.13 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 109.31/15.13 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 109.31/15.13 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.31/15.13 | | | | | | | | v0) | ~ vTable(v5))) % 109.31/15.13 | | | | | | | | % 109.31/15.13 | | | | | | | | BETA: splitting (146) gives: % 109.31/15.13 | | | | | | | | % 109.31/15.13 | | | | | | | | Case 1: % 109.31/15.13 | | | | | | | | | % 109.31/15.13 | | | | | | | | | (147) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.31/15.13 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 109.31/15.13 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 109.31/15.13 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.31/15.13 | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 109.31/15.13 | | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.31/15.13 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.31/15.13 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 109.31/15.13 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? % 109.31/15.13 | | | | | | | | | [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 109.31/15.13 | | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 % 109.31/15.13 | | | | | | | | | & vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = % 109.31/15.13 | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.31/15.13 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.31/15.13 | | | | | | | | | v1) | ~ vTable(v5))) % 109.31/15.13 | | | | | | | | | % 109.31/15.13 | | | | | | | | | BETA: splitting (147) gives: % 109.31/15.13 | | | | | | | | | % 109.31/15.13 | | | | | | | | | Case 1: % 109.31/15.13 | | | | | | | | | | % 109.31/15.13 | | | | | | | | | | (148) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.31/15.13 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 109.31/15.13 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 109.31/15.13 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.31/15.13 | | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = % 109.31/15.13 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.31/15.13 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.31/15.13 | | | | | | | | | | v1) | ~ vTable(v5))) % 109.31/15.13 | | | | | | | | | | % 109.31/15.13 | | | | | | | | | | DELTA: instantiating (148) with fresh symbols all_612_0, % 109.31/15.13 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 109.31/15.13 | | | | | | | | | | (149) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 109.31/15.13 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 109.31/15.13 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 109.31/15.13 | | | | | | | | | | vDifference(all_612_0, all_612_3) = all_338_0 & % 109.31/15.13 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 109.31/15.13 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 109.31/15.13 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 109.31/15.13 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 109.31/15.13 | | | | | | | | | | vTable(v0)) % 109.31/15.13 | | | | | | | | | | % 109.31/15.13 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (149) are inconsistent by % 109.31/15.13 | | | | | | | | | | sub-proof #8. % 109.31/15.13 | | | | | | | | | | % 109.31/15.13 | | | | | | | | | Case 2: % 109.31/15.13 | | | | | | | | | | % 109.31/15.13 | | | | | | | | | | (150) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.31/15.13 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 109.31/15.13 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 109.31/15.13 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.31/15.13 | | | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = % 109.31/15.13 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.31/15.13 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.31/15.13 | | | | | | | | | | v1) | ~ vTable(v5))) % 109.31/15.13 | | | | | | | | | | % 109.31/15.13 | | | | | | | | | | DELTA: instantiating (150) with fresh symbols all_612_0, % 109.31/15.13 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 109.31/15.13 | | | | | | | | | | (151) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 109.31/15.13 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 109.31/15.13 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 109.31/15.13 | | | | | | | | | | vIntersection(all_612_0, all_612_3) = all_338_0 & % 109.31/15.13 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 109.31/15.13 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 109.31/15.13 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 109.31/15.13 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 109.31/15.13 | | | | | | | | | | vTable(v0)) % 109.31/15.13 | | | | | | | | | | % 109.31/15.13 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (151) are inconsistent by % 109.31/15.13 | | | | | | | | | | sub-proof #7. % 109.31/15.13 | | | | | | | | | | % 109.31/15.13 | | | | | | | | | End of split % 109.31/15.13 | | | | | | | | | % 109.31/15.13 | | | | | | | | Case 2: % 109.31/15.13 | | | | | | | | | % 109.78/15.13 | | | | | | | | | (152) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.78/15.13 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 109.78/15.13 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 109.78/15.13 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.13 | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 109.78/15.13 | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.78/15.13 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.78/15.13 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 109.78/15.13 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 109.78/15.13 | | | | | | | | | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 109.78/15.13 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 109.78/15.13 | | | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = % 109.78/15.13 | | | | | | | | | v4 & vDifference(v0, v1) = all_338_0 & % 109.78/15.13 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 109.78/15.13 | | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 109.78/15.13 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.78/15.13 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 109.78/15.13 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 109.78/15.13 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 109.78/15.13 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.78/15.13 | | | | | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 109.78/15.13 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.13 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 109.78/15.13 | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) % 109.78/15.13 | | | | | | | | | = all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 109.78/15.13 | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) % 109.78/15.13 | | | | | | | | | & ! [v5: vTable] : ! [v6: vTable] : ( ~ % 109.78/15.13 | | | | | | | | | (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | ~ % 109.78/15.13 | | | | | | | | | vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : ( % 109.78/15.13 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 109.78/15.13 | | | | | | | | | % 109.78/15.13 | | | | | | | | | BETA: splitting (152) gives: % 109.78/15.13 | | | | | | | | | % 109.78/15.13 | | | | | | | | | Case 1: % 109.78/15.13 | | | | | | | | | | % 109.78/15.13 | | | | | | | | | | (153) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.78/15.13 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 109.78/15.13 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 109.78/15.13 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.13 | | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 109.78/15.13 | | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.78/15.13 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.78/15.13 | | | | | | | | | | v1) | ~ vTable(v5))) % 109.78/15.13 | | | | | | | | | | % 109.78/15.13 | | | | | | | | | | DELTA: instantiating (153) with fresh symbols all_612_0, % 109.78/15.13 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 109.78/15.13 | | | | | | | | | | (154) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 109.78/15.13 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 109.78/15.13 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 109.78/15.13 | | | | | | | | | | vUnion(all_612_0, all_612_3) = all_338_0 & % 109.78/15.13 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 109.78/15.13 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 109.78/15.13 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 109.78/15.13 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 109.78/15.13 | | | | | | | | | | vTable(v0)) % 109.78/15.13 | | | | | | | | | | % 109.78/15.13 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (154) are inconsistent by % 109.78/15.13 | | | | | | | | | | sub-proof #6. % 109.78/15.13 | | | | | | | | | | % 109.78/15.13 | | | | | | | | | Case 2: % 109.78/15.13 | | | | | | | | | | % 109.78/15.13 | | | | | | | | | | (155) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.13 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.13 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 109.78/15.13 | | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 109.78/15.13 | | | | | | | | | | & vDifference(v3, v1) = v4 & vDifference(v0, v1) % 109.78/15.13 | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 109.78/15.13 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 109.78/15.13 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 109.78/15.13 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 109.78/15.13 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 109.78/15.13 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 109.78/15.13 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 109.78/15.13 | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 109.78/15.13 | | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 109.78/15.13 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.13 | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 109.78/15.13 | | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, % 109.78/15.13 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & % 109.78/15.13 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 109.78/15.13 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 109.78/15.13 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 109.78/15.13 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 109.78/15.13 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 109.78/15.13 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 109.78/15.13 | | | | | | | | | | % 109.78/15.13 | | | | | | | | | | BETA: splitting (155) gives: % 109.78/15.13 | | | | | | | | | | % 109.78/15.13 | | | | | | | | | | Case 1: % 109.78/15.13 | | | | | | | | | | | % 109.78/15.13 | | | | | | | | | | | (156) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.13 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.13 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 109.78/15.13 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 109.78/15.13 | | | | | | | | | | | all_346_1 & vDifference(v3, v1) = v4 & % 109.78/15.13 | | | | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) % 109.78/15.13 | | | | | | | | | | | & vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) % 109.78/15.13 | | | | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 109.78/15.13 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 109.78/15.13 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 109.78/15.13 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 109.78/15.13 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 109.78/15.13 | | | | | | | | | | | % 109.78/15.13 | | | | | | | | | | | DELTA: instantiating (156) with fresh symbols all_612_0, % 109.78/15.13 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 109.78/15.13 | | | | | | | | | | | (157) vreduce(all_612_4, all_346_6) = all_612_2 & % 109.78/15.13 | | | | | | | | | | | visSomeQuery(all_612_2) = 0 & vgetQuery(all_612_2) % 109.78/15.13 | | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.78/15.13 | | | | | | | | | | | vDifference(all_612_1, all_612_3) = all_612_0 & % 109.78/15.13 | | | | | | | | | | | vDifference(all_612_4, all_612_3) = all_338_0 & % 109.78/15.13 | | | | | | | | | | | vOptQuery(all_612_2) & vOptQuery(all_346_1) & % 109.78/15.13 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_1) & % 109.78/15.13 | | | | | | | | | | | vQuery(all_612_3) & vQuery(all_612_4) & ! [v0: % 109.78/15.13 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 109.78/15.13 | | | | | | | | | | | all_612_3) | ~ (vtvalue(v0) = all_612_4) | ~ % 109.78/15.13 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 109.78/15.13 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 109.78/15.13 | | | | | | | | | | | % 109.78/15.13 | | | | | | | | | | | ALPHA: (157) implies: % 109.78/15.13 | | | | | | | | | | | (158) vQuery(all_612_4) % 109.78/15.13 | | | | | | | | | | | (159) vQuery(all_612_3) % 109.78/15.13 | | | | | | | | | | | (160) vDifference(all_612_4, all_612_3) = all_338_0 % 109.78/15.13 | | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 109.78/15.14 | | | | | | | | | | | vq2, all_612_4, all_612_3, all_338_0, simplifying % 109.78/15.14 | | | | | | | | | | | with (4), (5), (18), (158), (159), (160) gives: % 109.78/15.14 | | | | | | | | | | | (161) $false % 109.78/15.14 | | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | | CLOSE: (161) is inconsistent. % 109.78/15.14 | | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | Case 2: % 109.78/15.14 | | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | | (162) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.14 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.14 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 109.78/15.14 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 109.78/15.14 | | | | | | | | | | | all_346_1 & vIntersection(v3, v1) = v4 & % 109.78/15.14 | | | | | | | | | | | vIntersection(v0, v1) = all_338_0 & % 109.78/15.14 | | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & % 109.78/15.14 | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & % 109.78/15.14 | | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 109.78/15.14 | | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 109.78/15.14 | | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 109.78/15.14 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ % 109.78/15.14 | | | | | | | | | | | vTable(v5))) % 109.78/15.14 | | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | | DELTA: instantiating (162) with fresh symbols all_612_0, % 109.78/15.14 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 109.78/15.14 | | | | | | | | | | | (163) vreduce(all_612_4, all_346_6) = all_612_2 & % 109.78/15.14 | | | | | | | | | | | visSomeQuery(all_612_2) = 0 & vgetQuery(all_612_2) % 109.78/15.14 | | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.78/15.14 | | | | | | | | | | | vIntersection(all_612_1, all_612_3) = all_612_0 & % 109.78/15.14 | | | | | | | | | | | vIntersection(all_612_4, all_612_3) = all_338_0 & % 109.78/15.14 | | | | | | | | | | | vOptQuery(all_612_2) & vOptQuery(all_346_1) & % 109.78/15.14 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_1) & % 109.78/15.14 | | | | | | | | | | | vQuery(all_612_3) & vQuery(all_612_4) & ! [v0: % 109.78/15.14 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 109.78/15.14 | | | | | | | | | | | all_612_3) | ~ (vtvalue(v0) = all_612_4) | ~ % 109.78/15.14 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 109.78/15.14 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 109.78/15.14 | | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | | ALPHA: (163) implies: % 109.78/15.14 | | | | | | | | | | | (164) vQuery(all_612_4) % 109.78/15.14 | | | | | | | | | | | (165) vQuery(all_612_3) % 109.78/15.14 | | | | | | | | | | | (166) vIntersection(all_612_4, all_612_3) = all_338_0 % 109.78/15.14 | | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 109.78/15.14 | | | | | | | | | | | vq2, all_612_4, all_612_3, all_338_0, simplifying % 109.78/15.14 | | | | | | | | | | | with (4), (5), (18), (164), (165), (166) gives: % 109.78/15.14 | | | | | | | | | | | (167) $false % 109.78/15.14 | | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | | CLOSE: (167) is inconsistent. % 109.78/15.14 | | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | End of split % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | End of split % 109.78/15.14 | | | | | | | | | % 109.78/15.14 | | | | | | | | End of split % 109.78/15.14 | | | | | | | | % 109.78/15.14 | | | | | | | Case 2: % 109.78/15.14 | | | | | | | | % 109.78/15.14 | | | | | | | | (168) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] % 109.78/15.14 | | | | | | | | : ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 109.78/15.14 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.14 | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 109.78/15.14 | | | | | | | | vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 & % 109.78/15.14 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 109.78/15.14 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 109.78/15.14 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 109.78/15.14 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 109.78/15.14 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.78/15.14 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 109.78/15.14 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 109.78/15.14 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 109.78/15.14 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.14 | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.78/15.14 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 109.78/15.14 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 109.78/15.14 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 109.78/15.14 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 109.78/15.14 | | | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.14 | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 109.78/15.14 | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 109.78/15.14 | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 109.78/15.14 | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) & % 109.78/15.14 | | | | | | | | ! [v4: vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) % 109.78/15.14 | | | | | | | | = v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | % 109.78/15.14 | | | | | | | | ~ vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 109.78/15.14 | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vQuery] : ? % 109.78/15.14 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 109.78/15.14 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 109.78/15.14 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.14 | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.78/15.14 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 109.78/15.14 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 109.78/15.14 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 109.78/15.14 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 109.78/15.14 | | | | | | | | | ? [v0: vTable] : (all_346_1 = vnoQuery & vtvalue(v0) % 109.78/15.14 | | | | | | | | = all_338_0 & vTable(v0)) % 109.78/15.14 | | | | | | | | % 109.78/15.14 | | | | | | | | BETA: splitting (168) gives: % 109.78/15.14 | | | | | | | | % 109.78/15.14 | | | | | | | | Case 1: % 109.78/15.14 | | | | | | | | | % 109.78/15.14 | | | | | | | | | (169) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.14 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.14 | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.14 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 109.78/15.14 | | | | | | | | | vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 & % 109.78/15.14 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 109.78/15.14 | | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 109.78/15.14 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.78/15.14 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 109.78/15.14 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 109.78/15.14 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 109.78/15.14 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.78/15.14 | | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 109.78/15.14 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 109.78/15.14 | | | | | | | | | & vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.78/15.14 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 109.78/15.14 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 109.78/15.14 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 109.78/15.14 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 109.78/15.14 | | | | | | | | | = v0) | ~ vTable(v4))) % 109.78/15.14 | | | | | | | | | % 109.78/15.14 | | | | | | | | | BETA: splitting (169) gives: % 109.78/15.14 | | | | | | | | | % 109.78/15.14 | | | | | | | | | Case 1: % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | (170) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.14 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.14 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 109.78/15.14 | | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 109.78/15.14 | | | | | | | | | | & vUnion(v3, v1) = v4 & vUnion(v0, v1) = % 109.78/15.14 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 109.78/15.14 | | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 109.78/15.14 | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 109.78/15.14 | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 109.78/15.14 | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] % 109.78/15.14 | | | | | | | | | | : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | DELTA: instantiating (170) with fresh symbols all_612_0, % 109.78/15.14 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 109.78/15.14 | | | | | | | | | | (171) vreduce(all_612_4, all_346_6) = all_612_2 & % 109.78/15.14 | | | | | | | | | | visSomeQuery(all_612_2) = 0 & vgetQuery(all_612_2) % 109.78/15.14 | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.78/15.14 | | | | | | | | | | vUnion(all_612_1, all_612_3) = all_612_0 & % 109.78/15.14 | | | | | | | | | | vUnion(all_612_4, all_612_3) = all_338_0 & % 109.78/15.14 | | | | | | | | | | vOptQuery(all_612_2) & vOptQuery(all_346_1) & % 109.78/15.14 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_1) & % 109.78/15.14 | | | | | | | | | | vQuery(all_612_3) & vQuery(all_612_4) & ! [v0: % 109.78/15.14 | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 109.78/15.14 | | | | | | | | | | all_612_3) | ~ (vtvalue(v0) = all_612_4) | ~ % 109.78/15.14 | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : ( % 109.78/15.14 | | | | | | | | | | ~ (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | ALPHA: (171) implies: % 109.78/15.14 | | | | | | | | | | (172) vUnion(all_612_1, all_612_3) = all_612_0 % 109.78/15.14 | | | | | | | | | | (173) vreduce(all_612_4, all_346_6) = all_612_2 % 109.78/15.14 | | | | | | | | | | (174) vQuery(all_612_1) % 109.78/15.14 | | | | | | | | | | (175) vUnion(all_612_4, all_612_3) = all_338_0 % 109.78/15.14 | | | | | | | | | | (176) vQuery(all_612_3) % 109.78/15.14 | | | | | | | | | | (177) vQuery(all_612_4) % 109.78/15.14 | | | | | | | | | | (178) vgetQuery(all_612_2) = all_612_1 % 109.78/15.14 | | | | | | | | | | (179) vQuery(all_612_0) % 109.78/15.14 | | | | | | | | | | (180) vsomeQuery(all_612_0) = all_346_1 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | GROUND_INST: instantiating (TUnion_inv2) with all_346_5, % 109.78/15.14 | | | | | | | | | | all_612_4, all_612_3, all_346_4, all_338_0, % 109.78/15.14 | | | | | | | | | | simplifying with (22), (25), (33), (175), (176), % 109.78/15.14 | | | | | | | | | | (177) gives: % 109.78/15.14 | | | | | | | | | | (181) vptcheck(all_346_5, all_612_3, all_346_4) = 0 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_612_4, % 109.78/15.14 | | | | | | | | | | all_612_3, all_338_0, simplifying with (4), (5), % 109.78/15.14 | | | | | | | | | | (18), (175), (176), (177) gives: % 109.78/15.14 | | | | | | | | | | (182) all_612_3 = vq2 & all_612_4 = vq1 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | ALPHA: (182) implies: % 109.78/15.14 | | | | | | | | | | (183) all_612_3 = vq2 % 109.78/15.14 | | | | | | | | | | (184) all_612_4 = vq1 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | GROUND_INST: instantiating (3) with all_346_6, all_346_5, % 109.78/15.14 | | | | | | | | | | all_346_4, all_605_0, all_346_2, simplifying with % 109.78/15.14 | | | | | | | | | | (22), (24), (25), (30), (39), (65), (67) gives: % 109.78/15.14 | | | | | | | | | | (185) ? [v0: any] : ? [v1: any] : (vptcheck(all_346_5, % 109.78/15.14 | | | | | | | | | | all_605_0, all_346_4) = v1 & % 109.78/15.14 | | | | | | | | | | vstoreContextConsistent(all_346_6, all_346_5) = % 109.78/15.14 | | | | | | | | | | v0 & ( ~ (v0 = 0) | v1 = 0)) % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_359_0, % 109.78/15.14 | | | | | | | | | | all_605_0, all_346_2, simplifying with (41), (42), % 109.78/15.14 | | | | | | | | | | (65), (67) gives: % 109.78/15.14 | | | | | | | | | | (186) all_605_0 = all_359_0 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | GROUND_INST: instantiating (getQuery-0) with all_605_0, % 109.78/15.14 | | | | | | | | | | all_346_2, simplifying with (65), (67) gives: % 109.78/15.14 | | | | | | | | | | (187) vgetQuery(all_346_2) = all_605_0 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_346_3, % 109.78/15.14 | | | | | | | | | | all_612_0, all_346_1, simplifying with (23), (28), % 109.78/15.14 | | | | | | | | | | (179), (180) gives: % 109.78/15.14 | | | | | | | | | | (188) all_612_0 = all_346_3 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | DELTA: instantiating (185) with fresh symbols all_639_0, % 109.78/15.14 | | | | | | | | | | all_639_1 gives: % 109.78/15.14 | | | | | | | | | | (189) vptcheck(all_346_5, all_605_0, all_346_4) = % 109.78/15.14 | | | | | | | | | | all_639_0 & vstoreContextConsistent(all_346_6, % 109.78/15.14 | | | | | | | | | | all_346_5) = all_639_1 & ( ~ (all_639_1 = 0) | % 109.78/15.14 | | | | | | | | | | all_639_0 = 0) % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | ALPHA: (189) implies: % 109.78/15.14 | | | | | | | | | | (190) vptcheck(all_346_5, all_605_0, all_346_4) = % 109.78/15.14 | | | | | | | | | | all_639_0 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | REDUCE: (181), (183) imply: % 109.78/15.14 | | | | | | | | | | (191) vptcheck(all_346_5, vq2, all_346_4) = 0 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | REDUCE: (186), (190) imply: % 109.78/15.14 | | | | | | | | | | (192) vptcheck(all_346_5, all_359_0, all_346_4) = % 109.78/15.14 | | | | | | | | | | all_639_0 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | REDUCE: (173), (184) imply: % 109.78/15.14 | | | | | | | | | | (193) vreduce(vq1, all_346_6) = all_612_2 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | REDUCE: (186), (187) imply: % 109.78/15.14 | | | | | | | | | | (194) vgetQuery(all_346_2) = all_359_0 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | REDUCE: (172), (183), (188) imply: % 109.78/15.14 | | | | | | | | | | (195) vUnion(all_612_1, vq2) = all_346_3 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | GROUND_INST: instantiating (10) with all_346_2, all_612_2, % 109.78/15.14 | | | | | | | | | | all_346_6, vq1, simplifying with (30), (193) % 109.78/15.14 | | | | | | | | | | gives: % 109.78/15.14 | | | | | | | | | | (196) all_612_2 = all_346_2 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | GROUND_INST: instantiating (12) with 0, all_639_0, all_346_4, % 109.78/15.14 | | | | | | | | | | all_359_0, all_346_5, simplifying with (56), (192) % 109.78/15.14 | | | | | | | | | | gives: % 109.78/15.14 | | | | | | | | | | (197) all_639_0 = 0 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | REDUCE: (178), (196) imply: % 109.78/15.14 | | | | | | | | | | (198) vgetQuery(all_346_2) = all_612_1 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | GROUND_INST: instantiating (7) with all_359_0, all_612_1, % 109.78/15.14 | | | | | | | | | | all_346_2, simplifying with (194), (198) gives: % 109.78/15.14 | | | | | | | | | | (199) all_612_1 = all_359_0 % 109.78/15.14 | | | | | | | | | | % 109.78/15.14 | | | | | | | | | | REDUCE: (195), (199) imply: % 109.78/15.14 | | | | | | | | | | (200) vUnion(all_359_0, vq2) = all_346_3 % 109.78/15.14 | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | REF_CLOSE: (5), (12), (21), (22), (25), (34), (41), (56), % 109.78/15.15 | | | | | | | | | | (191), (200), (TUnion) are inconsistent by % 109.78/15.15 | | | | | | | | | | sub-proof #5. % 109.78/15.15 | | | | | | | | | | % 109.78/15.15 | | | | | | | | | Case 2: % 109.78/15.15 | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | (201) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.15 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 109.78/15.15 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 109.78/15.15 | | | | | | | | | | visSomeQuery(v2) = v3 & vDifference(v0, v1) = % 109.78/15.15 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 109.78/15.15 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 109.78/15.15 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 109.78/15.15 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 109.78/15.15 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 109.78/15.15 | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | DELTA: instantiating (201) with fresh symbols all_612_0, % 109.78/15.15 | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 109.78/15.15 | | | | | | | | | | (202) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 109.78/15.15 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 109.78/15.15 | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 109.78/15.15 | | | | | | | | | | vDifference(all_612_3, all_612_2) = all_338_0 & % 109.78/15.15 | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 109.78/15.15 | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 109.78/15.15 | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 109.78/15.15 | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 109.78/15.15 | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 109.78/15.15 | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 109.78/15.15 | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (202) are inconsistent by % 109.78/15.15 | | | | | | | | | | sub-proof #4. % 109.78/15.15 | | | | | | | | | | % 109.78/15.15 | | | | | | | | | End of split % 109.78/15.15 | | | | | | | | | % 109.78/15.15 | | | | | | | | Case 2: % 109.78/15.15 | | | | | | | | | % 109.78/15.15 | | | | | | | | | (203) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.15 | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 109.78/15.15 | | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 109.78/15.15 | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 109.78/15.15 | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) % 109.78/15.15 | | | | | | | | | & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 109.78/15.15 | | | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 109.78/15.15 | | | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( % 109.78/15.15 | | | | | | | | | ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 109.78/15.15 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.78/15.15 | | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 109.78/15.15 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 109.78/15.15 | | | | | | | | | & vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.78/15.15 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 109.78/15.15 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 109.78/15.15 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 109.78/15.15 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 109.78/15.15 | | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vTable] : % 109.78/15.15 | | | | | | | | | (all_346_1 = vnoQuery & vtvalue(v0) = all_338_0 & % 109.78/15.15 | | | | | | | | | vTable(v0)) % 109.78/15.15 | | | | | | | | | % 109.78/15.15 | | | | | | | | | BETA: splitting (203) gives: % 109.78/15.15 | | | | | | | | | % 109.78/15.15 | | | | | | | | | Case 1: % 109.78/15.15 | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | (204) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.15 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 109.78/15.15 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 109.78/15.15 | | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 109.78/15.15 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 109.78/15.15 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 109.78/15.15 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 109.78/15.15 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 109.78/15.15 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 109.78/15.15 | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | DELTA: instantiating (204) with fresh symbols all_612_0, % 109.78/15.15 | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 109.78/15.15 | | | | | | | | | | (205) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 109.78/15.15 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 109.78/15.15 | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 109.78/15.15 | | | | | | | | | | vIntersection(all_612_3, all_612_2) = all_338_0 & % 109.78/15.15 | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 109.78/15.15 | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 109.78/15.15 | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 109.78/15.15 | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 109.78/15.15 | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 109.78/15.15 | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 109.78/15.15 | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (205) are inconsistent by % 109.78/15.15 | | | | | | | | | | sub-proof #3. % 109.78/15.15 | | | | | | | | | | % 109.78/15.15 | | | | | | | | | Case 2: % 109.78/15.15 | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | (206) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.15 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 109.78/15.15 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 109.78/15.15 | | | | | | | | | | visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 109.78/15.15 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 109.78/15.15 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 109.78/15.15 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 109.78/15.15 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 109.78/15.15 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? % 109.78/15.15 | | | | | | | | | | [v0: vTable] : (all_346_1 = vnoQuery & vtvalue(v0) % 109.78/15.15 | | | | | | | | | | = all_338_0 & vTable(v0)) % 109.78/15.15 | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | BETA: splitting (206) gives: % 109.78/15.15 | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | Case 1: % 109.78/15.15 | | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | | (207) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.15 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 109.78/15.15 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 109.78/15.15 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 109.78/15.15 | | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 109.78/15.15 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 109.78/15.15 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 109.78/15.15 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 109.78/15.15 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 109.78/15.15 | | | | | | | | | | | vTable(v4))) % 109.78/15.15 | | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | | DELTA: instantiating (207) with fresh symbols all_612_0, % 109.78/15.15 | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 109.78/15.15 | | | | | | | | | | | (208) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 109.78/15.15 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 109.78/15.15 | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 109.78/15.15 | | | | | | | | | | | vUnion(all_612_3, all_612_2) = all_338_0 & % 109.78/15.15 | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 109.78/15.15 | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 109.78/15.15 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 109.78/15.15 | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 109.78/15.15 | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 109.78/15.15 | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 109.78/15.15 | | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (208) are inconsistent by % 109.78/15.15 | | | | | | | | | | | sub-proof #2. % 109.78/15.15 | | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | Case 2: % 109.78/15.15 | | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | | (209) ? [v0: vTable] : (all_346_1 = vnoQuery & % 109.78/15.15 | | | | | | | | | | | vtvalue(v0) = all_338_0 & vTable(v0)) % 109.78/15.15 | | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | | DELTA: instantiating (209) with fresh symbol all_612_0 % 109.78/15.15 | | | | | | | | | | | gives: % 109.78/15.15 | | | | | | | | | | | (210) all_346_1 = vnoQuery & vtvalue(all_612_0) = % 109.78/15.15 | | | | | | | | | | | all_338_0 & vTable(all_612_0) % 109.78/15.15 | | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (210) are inconsistent by % 109.78/15.15 | | | | | | | | | | | sub-proof #1. % 109.78/15.15 | | | | | | | | | | | % 109.78/15.15 | | | | | | | | | | End of split % 109.78/15.15 | | | | | | | | | | % 109.78/15.15 | | | | | | | | | End of split % 109.78/15.15 | | | | | | | | | % 109.78/15.15 | | | | | | | | End of split % 109.78/15.15 | | | | | | | | % 109.78/15.15 | | | | | | | End of split % 109.78/15.15 | | | | | | | % 109.78/15.15 | | | | | | End of split % 109.78/15.15 | | | | | | % 109.78/15.15 | | | | | Case 2: % 109.78/15.15 | | | | | | % 109.78/15.15 | | | | | | (211) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? % 109.78/15.15 | | | | | | [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? % 109.78/15.15 | | | | | | [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : ? % 109.78/15.15 | | | | | | [v9: vQuery] : (vrawIntersection(v5, v6) = v7 & % 109.78/15.15 | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 % 109.78/15.15 | | | | | | & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_2 & % 109.78/15.15 | | | | | | vIntersection(v2, v3) = vq1 & vtvalue(v8) = v9 & % 109.78/15.15 | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.78/15.15 | | | | | | vOptQuery(all_346_2) & vTable(v8) & vTable(v1) & % 109.78/15.15 | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 109.78/15.15 | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.78/15.15 | | | | | | vAttrL(v4)) % 109.78/15.15 | | | | | | % 109.78/15.15 | | | | | | DELTA: instantiating (211) with fresh symbols all_605_0, all_605_1, % 109.78/15.15 | | | | | | all_605_2, all_605_3, all_605_4, all_605_5, all_605_6, % 109.78/15.15 | | | | | | all_605_7, all_605_8, all_605_9 gives: % 109.78/15.15 | | | | | | (212) vrawIntersection(all_605_4, all_605_3) = all_605_2 & % 109.78/15.15 | | | | | | vgetAttrL(all_605_9) = all_605_5 & vgetRaw(all_605_8) = % 109.78/15.15 | | | | | | all_605_3 & vgetRaw(all_605_9) = all_605_4 & % 109.78/15.15 | | | | | | vtable(all_605_5, all_605_2) = all_605_1 & % 109.78/15.15 | | | | | | vsomeQuery(all_605_0) = all_346_2 & % 109.78/15.15 | | | | | | vIntersection(all_605_7, all_605_6) = vq1 & % 109.78/15.15 | | | | | | vtvalue(all_605_1) = all_605_0 & vtvalue(all_605_8) = % 109.78/15.15 | | | | | | all_605_6 & vtvalue(all_605_9) = all_605_7 & % 109.78/15.15 | | | | | | vOptQuery(all_346_2) & vTable(all_605_1) & % 109.78/15.15 | | | | | | vTable(all_605_8) & vTable(all_605_9) & vQuery(all_605_0) & % 109.78/15.15 | | | | | | vQuery(all_605_6) & vQuery(all_605_7) & % 109.78/15.15 | | | | | | vRawTable(all_605_2) & vRawTable(all_605_3) & % 109.78/15.15 | | | | | | vRawTable(all_605_4) & vAttrL(all_605_5) % 109.78/15.15 | | | | | | % 109.78/15.15 | | | | | | ALPHA: (212) implies: % 109.78/15.15 | | | | | | (213) vQuery(all_605_7) % 109.78/15.15 | | | | | | (214) vQuery(all_605_6) % 109.78/15.15 | | | | | | (215) vQuery(all_605_0) % 109.78/15.15 | | | | | | (216) vIntersection(all_605_7, all_605_6) = vq1 % 109.78/15.15 | | | | | | (217) vsomeQuery(all_605_0) = all_346_2 % 109.78/15.15 | | | | | | % 109.78/15.15 | | | | | | BETA: splitting (38) gives: % 109.78/15.15 | | | | | | % 109.78/15.15 | | | | | | Case 1: % 109.78/15.15 | | | | | | | % 109.78/15.15 | | | | | | | (218) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? % 109.78/15.15 | | | | | | | [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? % 109.78/15.15 | | | | | | | [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : % 109.78/15.15 | | | | | | | ? [v9: vQuery] : (vrawDifference(v5, v6) = v7 & % 109.78/15.15 | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 109.78/15.15 | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 & % 109.78/15.15 | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 109.78/15.15 | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.78/15.15 | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.78/15.15 | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 109.78/15.15 | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.78/15.15 | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 109.78/15.15 | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 109.78/15.15 | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: vRawTable] % 109.78/15.15 | | | | | | | : ? [v8: vTable] : ? [v9: vQuery] : % 109.78/15.15 | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.78/15.15 | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = % 109.78/15.15 | | | | | | | v8 & vsomeQuery(v9) = all_346_1 & vIntersection(v2, v3) % 109.78/15.15 | | | | | | | = all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 109.78/15.15 | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) & % 109.78/15.15 | | | | | | | vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 109.78/15.15 | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 109.78/15.15 | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? [v1: % 109.78/15.15 | | | | | | | vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: % 109.78/15.15 | | | | | | | vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] : ? % 109.78/15.15 | | | | | | | [v7: vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.78/15.15 | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.78/15.15 | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = % 109.78/15.15 | | | | | | | v8 & vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 109.78/15.15 | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 109.78/15.15 | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) & % 109.78/15.15 | | | | | | | vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 109.78/15.15 | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 109.78/15.15 | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? [v1: % 109.78/15.15 | | | | | | | vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : ? % 109.78/15.15 | | | | | | | [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 109.78/15.15 | | | | | | | [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, v0) = % 109.78/15.15 | | | | | | | v1 & vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 109.78/15.15 | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 109.78/15.15 | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 109.78/15.15 | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 109.78/15.15 | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & vtvalue(v7) % 109.78/15.15 | | | | | | | = v8 & vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) % 109.78/15.15 | | | | | | | & vTable(v6) & vTable(v1) & vOptTable(v4) & % 109.78/15.15 | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & vPred(v0)) | % 109.78/15.15 | | | | | | | ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : ? % 109.78/15.15 | | | | | | | [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] : % 109.78/15.15 | | | | | | | ? [v6: vTable] : ? [v7: int] : (all_346_1 = vnoQuery & % 109.78/15.15 | | | | | | | ~ (v7 = 0) & vfilterTable(v6, v0) = v1 & % 109.78/15.15 | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 109.78/15.15 | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 109.78/15.15 | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 109.78/15.15 | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & vSelect(v2) % 109.78/15.15 | | | | | | | & vTable(v6) & vTable(v1) & vOptTable(v4) & % 109.78/15.15 | | | | | | | vOptTable(v3) & vName(v5) & vPred(v0)) | ? [v0: % 109.78/15.15 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.78/15.15 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 109.78/15.15 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.15 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 109.78/15.15 | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 109.78/15.15 | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 109.78/15.15 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 109.78/15.15 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] % 109.78/15.15 | | | | | | | : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 109.78/15.15 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.78/15.15 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 109.78/15.15 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.15 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 109.78/15.15 | | | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) = % 109.78/15.15 | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 109.78/15.15 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 109.78/15.15 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] % 109.78/15.15 | | | | | | | : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 109.78/15.15 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.78/15.15 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 109.78/15.15 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.15 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 109.78/15.15 | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 109.78/15.15 | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & vOptQuery(all_346_1) % 109.78/15.15 | | | | | | | & vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 109.78/15.15 | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | % 109.78/15.15 | | | | | | | ~ vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] : % 109.78/15.15 | | | | | | | ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] : % 109.78/15.15 | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 109.78/15.15 | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 109.78/15.15 | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & vSelect(v1) % 109.78/15.15 | | | | | | | & vOptTable(v2) & vName(v3) & vPred(v0)) % 109.78/15.15 | | | | | | | % 109.78/15.15 | | | | | | | BETA: splitting (218) gives: % 109.78/15.15 | | | | | | | % 109.78/15.15 | | | | | | | Case 1: % 109.78/15.15 | | | | | | | | % 109.78/15.16 | | | | | | | | (219) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 109.78/15.16 | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : % 109.78/15.16 | | | | | | | | ? [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: % 109.78/15.16 | | | | | | | | vTable] : ? [v9: vQuery] : (vrawDifference(v5, v6) = % 109.78/15.16 | | | | | | | | v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & % 109.78/15.16 | | | | | | | | vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 109.78/15.16 | | | | | | | | vsomeQuery(v9) = all_346_1 & vDifference(v2, v3) = % 109.78/15.16 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 109.78/15.16 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 109.78/15.16 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 109.78/15.16 | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 109.78/15.16 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? % 109.78/15.16 | | | | | | | | [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? % 109.78/15.16 | | | | | | | | [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] % 109.78/15.16 | | | | | | | | : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 109.78/15.16 | | | | | | | | vQuery] : (vrawIntersection(v5, v6) = v7 & % 109.78/15.16 | | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 109.78/15.16 | | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 109.78/15.16 | | | | | | | | & vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 109.78/15.16 | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.78/15.16 | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.78/15.16 | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 109.78/15.16 | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.78/15.16 | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 109.78/15.16 | | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 109.78/15.16 | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.78/15.16 | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.78/15.16 | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.78/15.16 | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) % 109.78/15.16 | | | | | | | | = v8 & vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 109.78/15.16 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 109.78/15.16 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 109.78/15.16 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 109.78/15.16 | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 109.78/15.16 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? % 109.78/15.16 | | | | | | | | [v1: vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : % 109.78/15.16 | | | | | | | | ? [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 109.78/15.16 | | | | | | | | ? [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 109.78/15.16 | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 109.78/15.16 | | | | | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) = % 109.78/15.16 | | | | | | | | 0 & visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 109.78/15.16 | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 109.78/15.16 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 109.78/15.16 | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & vSelect(v2) % 109.78/15.16 | | | | | | | | & vTable(v7) & vTable(v6) & vTable(v1) & % 109.78/15.16 | | | | | | | | vOptTable(v4) & vOptTable(v3) & vQuery(v8) & % 109.78/15.16 | | | | | | | | vName(v5) & vPred(v0)) % 109.78/15.16 | | | | | | | | % 109.78/15.16 | | | | | | | | BETA: splitting (219) gives: % 109.78/15.16 | | | | | | | | % 109.78/15.16 | | | | | | | | Case 1: % 109.78/15.16 | | | | | | | | | % 109.78/15.16 | | | | | | | | | (220) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 109.78/15.16 | | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 109.78/15.16 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.78/15.16 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.78/15.16 | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.78/15.16 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 109.78/15.16 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 109.78/15.16 | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 % 109.78/15.16 | | | | | | | | | & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.78/15.16 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.78/15.16 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 109.78/15.16 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.78/15.16 | | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : % 109.78/15.16 | | | | | | | | | ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : % 109.78/15.16 | | | | | | | | | ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.78/15.16 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.78/15.16 | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.78/15.16 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 109.78/15.16 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 109.78/15.16 | | | | | | | | | vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 109.78/15.16 | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.78/15.16 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.78/15.16 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 109.78/15.16 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.78/15.16 | | | | | | | | | vAttrL(v4)) % 109.78/15.16 | | | | | | | | | % 109.78/15.16 | | | | | | | | | BETA: splitting (220) gives: % 109.78/15.16 | | | | | | | | | % 109.78/15.16 | | | | | | | | | Case 1: % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | (221) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 109.78/15.16 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 109.78/15.16 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.78/15.16 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.78/15.16 | | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.78/15.16 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 109.78/15.16 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 109.78/15.16 | | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = % 109.78/15.16 | | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.78/15.16 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.78/15.16 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 109.78/15.16 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.78/15.16 | | | | | | | | | | vAttrL(v4)) % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | DELTA: instantiating (221) with fresh symbols all_612_0, % 109.78/15.16 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 109.78/15.16 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8, all_612_9 % 109.78/15.16 | | | | | | | | | | gives: % 109.78/15.16 | | | | | | | | | | (222) vrawDifference(all_612_4, all_612_3) = all_612_2 & % 109.78/15.16 | | | | | | | | | | vgetAttrL(all_612_9) = all_612_5 & % 109.78/15.16 | | | | | | | | | | vgetRaw(all_612_8) = all_612_3 & vgetRaw(all_612_9) % 109.78/15.16 | | | | | | | | | | = all_612_4 & vtable(all_612_5, all_612_2) = % 109.78/15.16 | | | | | | | | | | all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.78/15.16 | | | | | | | | | | vDifference(all_612_7, all_612_6) = all_338_0 & % 109.78/15.16 | | | | | | | | | | vtvalue(all_612_1) = all_612_0 & vtvalue(all_612_8) % 109.78/15.16 | | | | | | | | | | = all_612_6 & vtvalue(all_612_9) = all_612_7 & % 109.78/15.16 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_612_1) & % 109.78/15.16 | | | | | | | | | | vTable(all_612_8) & vTable(all_612_9) & % 109.78/15.16 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_6) & % 109.78/15.16 | | | | | | | | | | vQuery(all_612_7) & vRawTable(all_612_2) & % 109.78/15.16 | | | | | | | | | | vRawTable(all_612_3) & vRawTable(all_612_4) & % 109.78/15.16 | | | | | | | | | | vAttrL(all_612_5) % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | ALPHA: (222) implies: % 109.78/15.16 | | | | | | | | | | (223) vQuery(all_612_7) % 109.78/15.16 | | | | | | | | | | (224) vQuery(all_612_6) % 109.78/15.16 | | | | | | | | | | (225) vDifference(all_612_7, all_612_6) = all_338_0 % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 109.78/15.16 | | | | | | | | | | vq2, all_612_7, all_612_6, all_338_0, simplifying % 109.78/15.16 | | | | | | | | | | with (4), (5), (18), (223), (224), (225) gives: % 109.78/15.16 | | | | | | | | | | (226) $false % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | CLOSE: (226) is inconsistent. % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | Case 2: % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | (227) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 109.78/15.16 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 109.78/15.16 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.78/15.16 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.78/15.16 | | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 % 109.78/15.16 | | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 109.78/15.16 | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 109.78/15.16 | | | | | | | | | | & vIntersection(v2, v3) = all_338_0 & vtvalue(v8) % 109.78/15.16 | | | | | | | | | | = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.78/15.16 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.78/15.16 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 109.78/15.16 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.78/15.16 | | | | | | | | | | vAttrL(v4)) % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | DELTA: instantiating (227) with fresh symbols all_612_0, % 109.78/15.16 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 109.78/15.16 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8, all_612_9 % 109.78/15.16 | | | | | | | | | | gives: % 109.78/15.16 | | | | | | | | | | (228) vrawIntersection(all_612_4, all_612_3) = all_612_2 % 109.78/15.16 | | | | | | | | | | & vgetAttrL(all_612_9) = all_612_5 & % 109.78/15.16 | | | | | | | | | | vgetRaw(all_612_8) = all_612_3 & vgetRaw(all_612_9) % 109.78/15.16 | | | | | | | | | | = all_612_4 & vtable(all_612_5, all_612_2) = % 109.78/15.16 | | | | | | | | | | all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.78/15.16 | | | | | | | | | | vIntersection(all_612_7, all_612_6) = all_338_0 & % 109.78/15.16 | | | | | | | | | | vtvalue(all_612_1) = all_612_0 & vtvalue(all_612_8) % 109.78/15.16 | | | | | | | | | | = all_612_6 & vtvalue(all_612_9) = all_612_7 & % 109.78/15.16 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_612_1) & % 109.78/15.16 | | | | | | | | | | vTable(all_612_8) & vTable(all_612_9) & % 109.78/15.16 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_6) & % 109.78/15.16 | | | | | | | | | | vQuery(all_612_7) & vRawTable(all_612_2) & % 109.78/15.16 | | | | | | | | | | vRawTable(all_612_3) & vRawTable(all_612_4) & % 109.78/15.16 | | | | | | | | | | vAttrL(all_612_5) % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | ALPHA: (228) implies: % 109.78/15.16 | | | | | | | | | | (229) vQuery(all_612_7) % 109.78/15.16 | | | | | | | | | | (230) vQuery(all_612_6) % 109.78/15.16 | | | | | | | | | | (231) vIntersection(all_612_7, all_612_6) = all_338_0 % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 109.78/15.16 | | | | | | | | | | vq2, all_612_7, all_612_6, all_338_0, simplifying % 109.78/15.16 | | | | | | | | | | with (4), (5), (18), (229), (230), (231) gives: % 109.78/15.16 | | | | | | | | | | (232) $false % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | CLOSE: (232) is inconsistent. % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | End of split % 109.78/15.16 | | | | | | | | | % 109.78/15.16 | | | | | | | | Case 2: % 109.78/15.16 | | | | | | | | | % 109.78/15.16 | | | | | | | | | (233) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 109.78/15.16 | | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 109.78/15.16 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.78/15.16 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.78/15.16 | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.78/15.16 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 109.78/15.16 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 109.78/15.16 | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 109.78/15.16 | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.78/15.16 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.78/15.16 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 109.78/15.16 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.78/15.16 | | | | | | | | | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : ? % 109.78/15.16 | | | | | | | | | [v2: vSelect] : ? [v3: vOptTable] : ? [v4: % 109.78/15.16 | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 109.78/15.16 | | | | | | | | | [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 109.78/15.16 | | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 109.78/15.16 | | | | | | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) % 109.78/15.16 | | | | | | | | | = 0 & visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 109.78/15.16 | | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 109.78/15.16 | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 109.78/15.16 | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 109.78/15.16 | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & vTable(v1) % 109.78/15.16 | | | | | | | | | & vOptTable(v4) & vOptTable(v3) & vQuery(v8) & % 109.78/15.16 | | | | | | | | | vName(v5) & vPred(v0)) % 109.78/15.16 | | | | | | | | | % 109.78/15.16 | | | | | | | | | BETA: splitting (233) gives: % 109.78/15.16 | | | | | | | | | % 109.78/15.16 | | | | | | | | | Case 1: % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | (234) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 109.78/15.16 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 109.78/15.16 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 109.78/15.16 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 109.78/15.16 | | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 109.78/15.16 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 109.78/15.16 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 109.78/15.16 | | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 109.78/15.16 | | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 109.78/15.16 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 109.78/15.16 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 109.78/15.16 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 109.78/15.16 | | | | | | | | | | vAttrL(v4)) % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | DELTA: instantiating (234) with fresh symbols all_612_0, % 109.78/15.16 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 109.78/15.16 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8, all_612_9 % 109.78/15.16 | | | | | | | | | | gives: % 109.78/15.16 | | | | | | | | | | (235) vrawUnion(all_612_4, all_612_3) = all_612_2 & % 109.78/15.16 | | | | | | | | | | vgetAttrL(all_612_9) = all_612_5 & % 109.78/15.16 | | | | | | | | | | vgetRaw(all_612_8) = all_612_3 & vgetRaw(all_612_9) % 109.78/15.16 | | | | | | | | | | = all_612_4 & vtable(all_612_5, all_612_2) = % 109.78/15.16 | | | | | | | | | | all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.78/15.16 | | | | | | | | | | vUnion(all_612_7, all_612_6) = all_338_0 & % 109.78/15.16 | | | | | | | | | | vtvalue(all_612_1) = all_612_0 & vtvalue(all_612_8) % 109.78/15.16 | | | | | | | | | | = all_612_6 & vtvalue(all_612_9) = all_612_7 & % 109.78/15.16 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_612_1) & % 109.78/15.16 | | | | | | | | | | vTable(all_612_8) & vTable(all_612_9) & % 109.78/15.16 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_6) & % 109.78/15.16 | | | | | | | | | | vQuery(all_612_7) & vRawTable(all_612_2) & % 109.78/15.16 | | | | | | | | | | vRawTable(all_612_3) & vRawTable(all_612_4) & % 109.78/15.16 | | | | | | | | | | vAttrL(all_612_5) % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | ALPHA: (235) implies: % 109.78/15.16 | | | | | | | | | | (236) vQuery(all_612_7) % 109.78/15.16 | | | | | | | | | | (237) vQuery(all_612_6) % 109.78/15.16 | | | | | | | | | | (238) vTable(all_612_9) % 109.78/15.16 | | | | | | | | | | (239) vtvalue(all_612_9) = all_612_7 % 109.78/15.16 | | | | | | | | | | (240) vUnion(all_612_7, all_612_6) = all_338_0 % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_612_9, % 109.78/15.16 | | | | | | | | | | all_612_7, simplifying with (238), (239) gives: % 109.78/15.16 | | | | | | | | | | (241) visValue(all_612_7) = 0 % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_612_7, % 109.78/15.16 | | | | | | | | | | all_612_6, all_338_0, simplifying with (4), (5), % 109.78/15.16 | | | | | | | | | | (18), (236), (237), (240) gives: % 109.78/15.16 | | | | | | | | | | (242) all_612_6 = vq2 & all_612_7 = vq1 % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | ALPHA: (242) implies: % 109.78/15.16 | | | | | | | | | | (243) all_612_7 = vq1 % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | GROUND_INST: instantiating (isValue-3) with all_605_7, % 109.78/15.16 | | | | | | | | | | all_605_6, vq1, simplifying with (213), (214), % 109.78/15.16 | | | | | | | | | | (216) gives: % 109.78/15.16 | | | | | | | | | | (244) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | DELTA: instantiating (244) with fresh symbol all_628_0 % 109.78/15.16 | | | | | | | | | | gives: % 109.78/15.16 | | | | | | | | | | (245) ~ (all_628_0 = 0) & visValue(vq1) = all_628_0 % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | ALPHA: (245) implies: % 109.78/15.16 | | | | | | | | | | (246) ~ (all_628_0 = 0) % 109.78/15.16 | | | | | | | | | | (247) visValue(vq1) = all_628_0 % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | REDUCE: (241), (243) imply: % 109.78/15.16 | | | | | | | | | | (248) visValue(vq1) = 0 % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_628_0, vq1, % 109.78/15.16 | | | | | | | | | | simplifying with (247), (248) gives: % 109.78/15.16 | | | | | | | | | | (249) all_628_0 = 0 % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | REDUCE: (246), (249) imply: % 109.78/15.16 | | | | | | | | | | (250) $false % 109.78/15.16 | | | | | | | | | | % 109.78/15.16 | | | | | | | | | | CLOSE: (250) is inconsistent. % 109.78/15.16 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | Case 2: % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | (251) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 109.78/15.17 | | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 109.78/15.17 | | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: vTable] : ? % 109.78/15.17 | | | | | | | | | | [v8: vQuery] : (vfilterTable(v6, v0) = v1 & % 109.78/15.17 | | | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 109.78/15.17 | | | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 109.78/15.17 | | | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 109.78/15.17 | | | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 109.78/15.17 | | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 109.78/15.17 | | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 109.78/15.17 | | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & % 109.78/15.17 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 109.78/15.17 | | | | | | | | | | vQuery(v8) & vName(v5) & vPred(v0)) % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | DELTA: instantiating (251) with fresh symbols all_612_0, % 109.78/15.17 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 109.78/15.17 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8 gives: % 109.78/15.17 | | | | | | | | | | (252) vfilterTable(all_612_2, all_612_8) = all_612_7 & % 109.78/15.17 | | | | | | | | | | vprojectTable(all_612_6, all_612_7) = all_612_4 & % 109.78/15.17 | | | | | | | | | | vlookupStore(all_612_3, all_346_6) = all_612_5 & % 109.78/15.17 | | | | | | | | | | visSomeTable(all_612_4) = 0 & % 109.78/15.17 | | | | | | | | | | visSomeTable(all_612_5) = 0 & vgetTable(all_612_4) % 109.78/15.17 | | | | | | | | | | = all_612_1 & vgetTable(all_612_5) = all_612_2 & % 109.78/15.17 | | | | | | | | | | vsomeQuery(all_612_0) = all_346_1 & % 109.78/15.17 | | | | | | | | | | vselectFromWhere(all_612_6, all_612_3, all_612_8) = % 109.78/15.17 | | | | | | | | | | all_338_0 & vtvalue(all_612_1) = all_612_0 & % 109.78/15.17 | | | | | | | | | | vOptQuery(all_346_1) & vSelect(all_612_6) & % 109.78/15.17 | | | | | | | | | | vTable(all_612_1) & vTable(all_612_2) & % 109.78/15.17 | | | | | | | | | | vTable(all_612_7) & vOptTable(all_612_4) & % 109.78/15.17 | | | | | | | | | | vOptTable(all_612_5) & vQuery(all_612_0) & % 109.78/15.17 | | | | | | | | | | vName(all_612_3) & vPred(all_612_8) % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | ALPHA: (252) implies: % 109.78/15.17 | | | | | | | | | | (253) vPred(all_612_8) % 109.78/15.17 | | | | | | | | | | (254) vName(all_612_3) % 109.78/15.17 | | | | | | | | | | (255) vSelect(all_612_6) % 109.78/15.17 | | | | | | | | | | (256) vselectFromWhere(all_612_6, all_612_3, all_612_8) = % 109.78/15.17 | | | | | | | | | | all_338_0 % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | GROUND_INST: instantiating (DIFF-selectFromWhere-Union) with % 109.78/15.17 | | | | | | | | | | all_612_3, all_612_8, all_612_6, vq2, vq1, % 109.78/15.17 | | | | | | | | | | all_338_0, simplifying with (4), (5), (18), (253), % 109.78/15.17 | | | | | | | | | | (254), (255), (256) gives: % 109.78/15.17 | | | | | | | | | | (257) $false % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | CLOSE: (257) is inconsistent. % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | End of split % 109.78/15.17 | | | | | | | | | % 109.78/15.17 | | | | | | | | End of split % 109.78/15.17 | | | | | | | | % 109.78/15.17 | | | | | | | Case 2: % 109.78/15.17 | | | | | | | | % 109.78/15.17 | | | | | | | | (258) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 109.78/15.17 | | | | | | | | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] % 109.78/15.17 | | | | | | | | : ? [v6: vTable] : ? [v7: int] : (all_346_1 = % 109.78/15.17 | | | | | | | | vnoQuery & ~ (v7 = 0) & vfilterTable(v6, v0) = v1 & % 109.78/15.17 | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 109.78/15.17 | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 109.78/15.17 | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 109.78/15.17 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 109.78/15.17 | | | | | | | | vSelect(v2) & vTable(v6) & vTable(v1) & vOptTable(v4) % 109.78/15.17 | | | | | | | | & vOptTable(v3) & vName(v5) & vPred(v0)) | ? [v0: % 109.78/15.17 | | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.78/15.17 | | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 109.78/15.17 | | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.17 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 109.78/15.17 | | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 109.78/15.17 | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 109.78/15.17 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 109.78/15.17 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 109.78/15.17 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 109.78/15.17 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.78/15.17 | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 109.78/15.17 | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.78/15.17 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.78/15.17 | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) = % 109.78/15.17 | | | | | | | | v5 & vIntersection(v3, v1) = all_338_0 & vtvalue(v0) % 109.78/15.17 | | | | | | | | = v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 109.78/15.17 | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 109.78/15.17 | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 109.78/15.17 | | | | | | | | | ~ vTable(v6))) | ? [v0: vTable] : ? [v1: % 109.78/15.17 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 109.78/15.17 | | | | | | | | [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 109.78/15.17 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.17 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 109.78/15.17 | | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 109.78/15.17 | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 109.78/15.17 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 109.78/15.17 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 109.78/15.17 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 109.78/15.17 | | | | | | | | | ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 109.78/15.17 | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 109.78/15.17 | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 109.78/15.17 | | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 109.78/15.17 | | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & % 109.78/15.17 | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & vPred(v0)) % 109.78/15.17 | | | | | | | | % 109.78/15.17 | | | | | | | | BETA: splitting (258) gives: % 109.78/15.17 | | | | | | | | % 109.78/15.17 | | | | | | | | Case 1: % 109.78/15.17 | | | | | | | | | % 109.78/15.17 | | | | | | | | | (259) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 109.78/15.17 | | | | | | | | | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 109.78/15.17 | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 109.78/15.17 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 109.78/15.17 | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = % 109.78/15.17 | | | | | | | | | v4 & vlookupStore(v5, all_346_6) = v3 & % 109.78/15.17 | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 109.78/15.17 | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) = % 109.78/15.17 | | | | | | | | | all_338_0 & vSelect(v2) & vTable(v6) & vTable(v1) & % 109.78/15.17 | | | | | | | | | vOptTable(v4) & vOptTable(v3) & vName(v5) & % 109.78/15.17 | | | | | | | | | vPred(v0)) | ? [v0: vTable] : ? [v1: vQuery] : ? % 109.78/15.17 | | | | | | | | | [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.17 | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.78/15.17 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.78/15.17 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) = % 109.78/15.17 | | | | | | | | | v5 & vDifference(v3, v1) = all_338_0 & vtvalue(v0) % 109.78/15.17 | | | | | | | | | = v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 109.78/15.17 | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 109.78/15.17 | | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.78/15.17 | | | | | | | | | v1) | ~ vTable(v6))) % 109.78/15.17 | | | | | | | | | % 109.78/15.17 | | | | | | | | | BETA: splitting (259) gives: % 109.78/15.17 | | | | | | | | | % 109.78/15.17 | | | | | | | | | Case 1: % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | (260) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 109.78/15.17 | | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 109.78/15.17 | | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 109.78/15.17 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 109.78/15.17 | | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 109.78/15.17 | | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 109.78/15.17 | | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 109.78/15.17 | | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) % 109.78/15.17 | | | | | | | | | | = all_338_0 & vSelect(v2) & vTable(v6) & % 109.78/15.17 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 109.78/15.17 | | | | | | | | | | vName(v5) & vPred(v0)) % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | DELTA: instantiating (260) with fresh symbols all_612_0, % 109.78/15.17 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 109.78/15.17 | | | | | | | | | | all_612_5, all_612_6, all_612_7 gives: % 109.78/15.17 | | | | | | | | | | (261) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 109.78/15.17 | | | | | | | | | | vfilterTable(all_612_1, all_612_7) = all_612_6 & % 109.78/15.17 | | | | | | | | | | vprojectTable(all_612_5, all_612_6) = all_612_3 & % 109.78/15.17 | | | | | | | | | | vlookupStore(all_612_2, all_346_6) = all_612_4 & % 109.78/15.17 | | | | | | | | | | visSomeTable(all_612_3) = all_612_0 & % 109.78/15.17 | | | | | | | | | | visSomeTable(all_612_4) = 0 & vgetTable(all_612_4) % 109.78/15.17 | | | | | | | | | | = all_612_1 & vselectFromWhere(all_612_5, % 109.78/15.17 | | | | | | | | | | all_612_2, all_612_7) = all_338_0 & % 109.78/15.17 | | | | | | | | | | vSelect(all_612_5) & vTable(all_612_1) & % 109.78/15.17 | | | | | | | | | | vTable(all_612_6) & vOptTable(all_612_3) & % 109.78/15.17 | | | | | | | | | | vOptTable(all_612_4) & vName(all_612_2) & % 109.78/15.17 | | | | | | | | | | vPred(all_612_7) % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (261) are inconsistent by % 109.78/15.17 | | | | | | | | | | sub-proof #10. % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | Case 2: % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | (262) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.78/15.17 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.17 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.78/15.17 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.78/15.17 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) % 109.78/15.17 | | | | | | | | | | = v5 & vDifference(v3, v1) = all_338_0 & % 109.78/15.17 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 109.78/15.17 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 109.78/15.17 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 109.78/15.17 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 109.78/15.17 | | | | | | | | | | vTable(v6))) % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | DELTA: instantiating (262) with fresh symbols all_612_0, % 109.78/15.17 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, all_612_5 % 109.78/15.17 | | | | | | | | | | gives: % 109.78/15.17 | | | | | | | | | | (263) vreduce(all_612_4, all_346_6) = all_612_3 & % 109.78/15.17 | | | | | | | | | | visSomeQuery(all_612_3) = 0 & vgetQuery(all_612_3) % 109.78/15.17 | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.78/15.17 | | | | | | | | | | vDifference(all_612_2, all_612_1) = all_612_0 & % 109.78/15.17 | | | | | | | | | | vDifference(all_612_2, all_612_4) = all_338_0 & % 109.78/15.17 | | | | | | | | | | vtvalue(all_612_5) = all_612_2 & % 109.78/15.17 | | | | | | | | | | vOptQuery(all_612_3) & vOptQuery(all_346_1) & % 109.78/15.17 | | | | | | | | | | vTable(all_612_5) & vQuery(all_612_0) & % 109.78/15.17 | | | | | | | | | | vQuery(all_612_1) & vQuery(all_612_2) & % 109.78/15.17 | | | | | | | | | | vQuery(all_612_4) & ! [v0: vTable] : ( ~ % 109.78/15.17 | | | | | | | | | | (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | ALPHA: (263) implies: % 109.78/15.17 | | | | | | | | | | (264) vQuery(all_612_4) % 109.78/15.17 | | | | | | | | | | (265) vQuery(all_612_2) % 109.78/15.17 | | | | | | | | | | (266) vDifference(all_612_2, all_612_4) = all_338_0 % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 109.78/15.17 | | | | | | | | | | vq2, all_612_2, all_612_4, all_338_0, simplifying % 109.78/15.17 | | | | | | | | | | with (4), (5), (18), (264), (265), (266) gives: % 109.78/15.17 | | | | | | | | | | (267) $false % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | CLOSE: (267) is inconsistent. % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | End of split % 109.78/15.17 | | | | | | | | | % 109.78/15.17 | | | | | | | | Case 2: % 109.78/15.17 | | | | | | | | | % 109.78/15.17 | | | | | | | | | (268) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.78/15.17 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 109.78/15.17 | | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.78/15.17 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.78/15.17 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) % 109.78/15.17 | | | | | | | | | = v5 & vIntersection(v3, v1) = all_338_0 & % 109.78/15.17 | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 109.78/15.17 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 109.78/15.17 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 109.78/15.17 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 109.78/15.17 | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] % 109.78/15.17 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 109.78/15.17 | | | | | | | | | vQuery] : ? [v5: vQuery] : (vreduce(v1, all_346_6) % 109.78/15.17 | | | | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.78/15.17 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 & % 109.78/15.17 | | | | | | | | | vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 109.78/15.17 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) & % 109.78/15.17 | | | | | | | | | vQuery(v5) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 109.78/15.17 | | | | | | | | | ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 109.78/15.17 | | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] % 109.78/15.17 | | | | | | | | | : ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] % 109.78/15.17 | | | | | | | | | : (all_346_1 = vnoQuery & ~ (v4 = 0) & % 109.78/15.17 | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & visSomeTable(v2) % 109.78/15.17 | | | | | | | | | = v4 & vselectFromWhere(v1, v3, v0) = all_338_0 & % 109.78/15.17 | | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & % 109.78/15.17 | | | | | | | | | vPred(v0)) % 109.78/15.17 | | | | | | | | | % 109.78/15.17 | | | | | | | | | BETA: splitting (268) gives: % 109.78/15.17 | | | | | | | | | % 109.78/15.17 | | | | | | | | | Case 1: % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | (269) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.78/15.17 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.17 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.78/15.17 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.78/15.17 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, % 109.78/15.17 | | | | | | | | | | v4) = v5 & vIntersection(v3, v1) = all_338_0 & % 109.78/15.17 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 109.78/15.17 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 109.78/15.17 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 109.78/15.17 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 109.78/15.17 | | | | | | | | | | vTable(v6))) % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | DELTA: instantiating (269) with fresh symbols all_612_0, % 109.78/15.17 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, all_612_5 % 109.78/15.17 | | | | | | | | | | gives: % 109.78/15.17 | | | | | | | | | | (270) vreduce(all_612_4, all_346_6) = all_612_3 & % 109.78/15.17 | | | | | | | | | | visSomeQuery(all_612_3) = 0 & vgetQuery(all_612_3) % 109.78/15.17 | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.78/15.17 | | | | | | | | | | vIntersection(all_612_2, all_612_1) = all_612_0 & % 109.78/15.17 | | | | | | | | | | vIntersection(all_612_2, all_612_4) = all_338_0 & % 109.78/15.17 | | | | | | | | | | vtvalue(all_612_5) = all_612_2 & % 109.78/15.17 | | | | | | | | | | vOptQuery(all_612_3) & vOptQuery(all_346_1) & % 109.78/15.17 | | | | | | | | | | vTable(all_612_5) & vQuery(all_612_0) & % 109.78/15.17 | | | | | | | | | | vQuery(all_612_1) & vQuery(all_612_2) & % 109.78/15.17 | | | | | | | | | | vQuery(all_612_4) & ! [v0: vTable] : ( ~ % 109.78/15.17 | | | | | | | | | | (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | ALPHA: (270) implies: % 109.78/15.17 | | | | | | | | | | (271) vQuery(all_612_4) % 109.78/15.17 | | | | | | | | | | (272) vQuery(all_612_2) % 109.78/15.17 | | | | | | | | | | (273) vIntersection(all_612_2, all_612_4) = all_338_0 % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 109.78/15.17 | | | | | | | | | | vq2, all_612_2, all_612_4, all_338_0, simplifying % 109.78/15.17 | | | | | | | | | | with (4), (5), (18), (271), (272), (273) gives: % 109.78/15.17 | | | | | | | | | | (274) $false % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | CLOSE: (274) is inconsistent. % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | Case 2: % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | (275) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.78/15.17 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.17 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.78/15.17 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.78/15.17 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 109.78/15.17 | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 109.78/15.17 | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) % 109.78/15.17 | | | | | | | | | | & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 109.78/15.17 | | | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.78/15.17 | | | | | | | | | | v1) | ~ vTable(v6))) | ? [v0: vPred] : ? % 109.78/15.17 | | | | | | | | | | [v1: vSelect] : ? [v2: vOptTable] : ? [v3: vName] % 109.78/15.17 | | | | | | | | | | : ? [v4: int] : (all_346_1 = vnoQuery & ~ (v4 = % 109.78/15.17 | | | | | | | | | | 0) & vlookupStore(v3, all_346_6) = v2 & % 109.78/15.17 | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 109.78/15.17 | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) & % 109.78/15.17 | | | | | | | | | | vName(v3) & vPred(v0)) % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | BETA: splitting (275) gives: % 109.78/15.17 | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | Case 1: % 109.78/15.17 | | | | | | | | | | | % 109.78/15.17 | | | | | | | | | | | (276) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.78/15.17 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.17 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 109.78/15.17 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 109.78/15.18 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 109.78/15.18 | | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 109.78/15.18 | | | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 109.78/15.18 | | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 109.78/15.18 | | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 109.78/15.18 | | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | DELTA: instantiating (276) with fresh symbols all_612_0, % 109.78/15.18 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 109.78/15.18 | | | | | | | | | | | all_612_5 gives: % 109.78/15.18 | | | | | | | | | | | (277) vreduce(all_612_4, all_346_6) = all_612_3 & % 109.78/15.18 | | | | | | | | | | | visSomeQuery(all_612_3) = 0 & vgetQuery(all_612_3) % 109.78/15.18 | | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.78/15.18 | | | | | | | | | | | vUnion(all_612_2, all_612_1) = all_612_0 & % 109.78/15.18 | | | | | | | | | | | vUnion(all_612_2, all_612_4) = all_338_0 & % 109.78/15.18 | | | | | | | | | | | vtvalue(all_612_5) = all_612_2 & % 109.78/15.18 | | | | | | | | | | | vOptQuery(all_612_3) & vOptQuery(all_346_1) & % 109.78/15.18 | | | | | | | | | | | vTable(all_612_5) & vQuery(all_612_0) & % 109.78/15.18 | | | | | | | | | | | vQuery(all_612_1) & vQuery(all_612_2) & % 109.78/15.18 | | | | | | | | | | | vQuery(all_612_4) & ! [v0: vTable] : ( ~ % 109.78/15.18 | | | | | | | | | | | (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | ALPHA: (277) implies: % 109.78/15.18 | | | | | | | | | | | (278) vQuery(all_612_4) % 109.78/15.18 | | | | | | | | | | | (279) vQuery(all_612_2) % 109.78/15.18 | | | | | | | | | | | (280) vTable(all_612_5) % 109.78/15.18 | | | | | | | | | | | (281) vtvalue(all_612_5) = all_612_2 % 109.78/15.18 | | | | | | | | | | | (282) vUnion(all_612_2, all_612_4) = all_338_0 % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_612_5, % 109.78/15.18 | | | | | | | | | | | all_612_2, simplifying with (280), (281) gives: % 109.78/15.18 | | | | | | | | | | | (283) visValue(all_612_2) = 0 % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_612_2, % 109.78/15.18 | | | | | | | | | | | all_612_4, all_338_0, simplifying with (4), (5), % 109.78/15.18 | | | | | | | | | | | (18), (278), (279), (282) gives: % 109.78/15.18 | | | | | | | | | | | (284) all_612_2 = vq1 & all_612_4 = vq2 % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | ALPHA: (284) implies: % 109.78/15.18 | | | | | | | | | | | (285) all_612_2 = vq1 % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | GROUND_INST: instantiating (isValue-3) with all_605_7, % 109.78/15.18 | | | | | | | | | | | all_605_6, vq1, simplifying with (213), (214), % 109.78/15.18 | | | | | | | | | | | (216) gives: % 109.78/15.18 | | | | | | | | | | | (286) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | DELTA: instantiating (286) with fresh symbol all_633_0 % 109.78/15.18 | | | | | | | | | | | gives: % 109.78/15.18 | | | | | | | | | | | (287) ~ (all_633_0 = 0) & visValue(vq1) = all_633_0 % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | ALPHA: (287) implies: % 109.78/15.18 | | | | | | | | | | | (288) ~ (all_633_0 = 0) % 109.78/15.18 | | | | | | | | | | | (289) visValue(vq1) = all_633_0 % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | REDUCE: (283), (285) imply: % 109.78/15.18 | | | | | | | | | | | (290) visValue(vq1) = 0 % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_633_0, vq1, % 109.78/15.18 | | | | | | | | | | | simplifying with (289), (290) gives: % 109.78/15.18 | | | | | | | | | | | (291) all_633_0 = 0 % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | REDUCE: (288), (291) imply: % 109.78/15.18 | | | | | | | | | | | (292) $false % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | CLOSE: (292) is inconsistent. % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | Case 2: % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | (293) ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 109.78/15.18 | | | | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 109.78/15.18 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & % 109.78/15.18 | | | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & % 109.78/15.18 | | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 109.78/15.18 | | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) % 109.78/15.18 | | | | | | | | | | | & vName(v3) & vPred(v0)) % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | DELTA: instantiating (293) with fresh symbols all_612_0, % 109.78/15.18 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 109.78/15.18 | | | | | | | | | | | (294) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 109.78/15.18 | | | | | | | | | | | vlookupStore(all_612_1, all_346_6) = all_612_2 & % 109.78/15.18 | | | | | | | | | | | visSomeTable(all_612_2) = all_612_0 & % 109.78/15.18 | | | | | | | | | | | vselectFromWhere(all_612_3, all_612_1, all_612_4) % 109.78/15.18 | | | | | | | | | | | = all_338_0 & vSelect(all_612_3) & % 109.78/15.18 | | | | | | | | | | | vOptTable(all_612_2) & vName(all_612_1) & % 109.78/15.18 | | | | | | | | | | | vPred(all_612_4) % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (294) are inconsistent by % 109.78/15.18 | | | | | | | | | | | sub-proof #9. % 109.78/15.18 | | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | End of split % 109.78/15.18 | | | | | | | | | | % 109.78/15.18 | | | | | | | | | End of split % 109.78/15.18 | | | | | | | | | % 109.78/15.18 | | | | | | | | End of split % 109.78/15.18 | | | | | | | | % 109.78/15.18 | | | | | | | End of split % 109.78/15.18 | | | | | | | % 109.78/15.18 | | | | | | Case 2: % 109.78/15.18 | | | | | | | % 109.78/15.18 | | | | | | | (295) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 109.78/15.18 | | | | | | | ? [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & % 109.78/15.18 | | | | | | | ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 109.78/15.18 | | | | | | | visSomeQuery(v2) = v3 & vDifference(v4, v1) = all_338_0 % 109.78/15.18 | | | | | | | & vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 109.78/15.18 | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 109.78/15.18 | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 109.78/15.18 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.78/15.18 | | | | | | | [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ % 109.78/15.18 | | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 109.78/15.18 | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v4, v1) = % 109.78/15.18 | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 109.78/15.18 | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: vTable] % 109.78/15.18 | | | | | | | : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 109.78/15.18 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.78/15.18 | | | | | | | [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ % 109.78/15.18 | | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 109.78/15.18 | | | | | | | visSomeQuery(v2) = v3 & vUnion(v4, v1) = all_338_0 & % 109.78/15.18 | | | | | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 109.78/15.18 | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 109.78/15.18 | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 109.78/15.18 | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.78/15.18 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, all_346_6) % 109.78/15.18 | | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 109.78/15.18 | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = v4 & % 109.78/15.18 | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.78/15.18 | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 109.78/15.18 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 109.78/15.18 | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 109.78/15.18 | | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 109.78/15.18 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 109.78/15.18 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 109.78/15.18 | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 109.78/15.18 | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.18 | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 109.78/15.18 | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) = % 109.78/15.18 | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 109.78/15.18 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! % 109.78/15.18 | | | | | | | [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 109.78/15.18 | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 109.78/15.18 | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.78/15.18 | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 109.78/15.18 | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 109.78/15.18 | | | | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 109.78/15.18 | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 109.78/15.18 | | | | | | | vsomeQuery(v4) = all_346_1 & vUnion(v3, v1) = v4 & % 109.78/15.18 | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.78/15.18 | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 109.78/15.18 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 109.78/15.18 | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 109.78/15.18 | | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 109.78/15.18 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 109.78/15.18 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 109.78/15.18 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 109.78/15.18 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.18 | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.78/15.18 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 109.78/15.18 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 109.78/15.18 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 109.78/15.18 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 109.78/15.18 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 109.78/15.18 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 109.78/15.18 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.18 | | | | | | | vIntersection(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.78/15.18 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 109.78/15.18 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 109.78/15.18 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 109.78/15.18 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 109.78/15.18 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 109.78/15.18 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 109.78/15.18 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.18 | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) % 109.78/15.18 | | | | | | | & vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 109.78/15.18 | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 109.78/15.18 | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 109.78/15.18 | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 109.78/15.18 | | | | | | | vTable] : (all_346_1 = vnoQuery & vtvalue(v0) = % 109.78/15.18 | | | | | | | all_338_0 & vTable(v0)) % 109.78/15.18 | | | | | | | % 109.78/15.18 | | | | | | | BETA: splitting (295) gives: % 109.78/15.18 | | | | | | | % 109.78/15.18 | | | | | | | Case 1: % 109.78/15.18 | | | | | | | | % 109.78/15.18 | | | | | | | | (296) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] % 109.78/15.18 | | | | | | | | : ? [v3: int] : ? [v4: vQuery] : (all_346_1 = % 109.78/15.18 | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 % 109.78/15.18 | | | | | | | | & visSomeQuery(v2) = v3 & vDifference(v4, v1) = % 109.78/15.18 | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 109.78/15.18 | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 109.78/15.18 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) % 109.78/15.18 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.78/15.18 | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 109.78/15.18 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 109.78/15.18 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.18 | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 109.78/15.18 | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.78/15.18 | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) % 109.78/15.18 | | | | | | | | | ~ vTable(v5))) | ? [v0: vTable] : ? [v1: % 109.78/15.18 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? [v4: % 109.78/15.18 | | | | | | | | vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 109.78/15.18 | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.18 | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 109.78/15.18 | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) % 109.78/15.18 | | | | | | | | & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 109.78/15.18 | | | | | | | | vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : % 109.78/15.18 | | | | | | | | ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.18 | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.18 | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 109.78/15.18 | | | | | | | | vDifference(v3, v1) = v4 & vDifference(v0, v1) = % 109.78/15.18 | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 109.78/15.18 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & % 109.78/15.18 | | | | | | | | ! [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.78/15.18 | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 109.78/15.18 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.78/15.18 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 109.78/15.18 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 109.78/15.18 | | | | | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 109.78/15.18 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 109.78/15.18 | | | | | | | | vsomeQuery(v4) = all_346_1 & vIntersection(v3, v1) = % 109.78/15.18 | | | | | | | | v4 & vIntersection(v0, v1) = all_338_0 & % 109.78/15.18 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 109.78/15.18 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 109.78/15.18 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 109.78/15.18 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 109.78/15.18 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.78/15.18 | | | | | | | | v0) | ~ vTable(v5))) % 109.78/15.18 | | | | | | | | % 109.78/15.18 | | | | | | | | BETA: splitting (296) gives: % 109.78/15.18 | | | | | | | | % 109.78/15.18 | | | | | | | | Case 1: % 109.78/15.18 | | | | | | | | | % 109.78/15.18 | | | | | | | | | (297) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.78/15.18 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 109.78/15.18 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 109.78/15.18 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.18 | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 109.78/15.18 | | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.78/15.18 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.78/15.18 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 109.78/15.18 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? % 109.78/15.18 | | | | | | | | | [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 109.78/15.18 | | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 % 109.78/15.18 | | | | | | | | | & vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = % 109.78/15.18 | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.78/15.18 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.78/15.18 | | | | | | | | | v1) | ~ vTable(v5))) % 109.78/15.18 | | | | | | | | | % 109.78/15.18 | | | | | | | | | BETA: splitting (297) gives: % 109.78/15.18 | | | | | | | | | % 109.78/15.18 | | | | | | | | | Case 1: % 109.78/15.18 | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | (298) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.78/15.18 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 109.78/15.18 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 109.78/15.18 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.18 | | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = % 109.78/15.18 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.78/15.18 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.78/15.18 | | | | | | | | | | v1) | ~ vTable(v5))) % 109.78/15.18 | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | DELTA: instantiating (298) with fresh symbols all_612_0, % 109.78/15.18 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 109.78/15.18 | | | | | | | | | | (299) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 109.78/15.18 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 109.78/15.18 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 109.78/15.18 | | | | | | | | | | vDifference(all_612_0, all_612_3) = all_338_0 & % 109.78/15.18 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 109.78/15.18 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 109.78/15.18 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 109.78/15.18 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 109.78/15.18 | | | | | | | | | | vTable(v0)) % 109.78/15.18 | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (299) are inconsistent by % 109.78/15.18 | | | | | | | | | | sub-proof #8. % 109.78/15.18 | | | | | | | | | | % 109.78/15.18 | | | | | | | | | Case 2: % 109.78/15.18 | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | (300) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.78/15.18 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 109.78/15.18 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 109.78/15.18 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.18 | | | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = % 109.78/15.18 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.78/15.18 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.78/15.18 | | | | | | | | | | v1) | ~ vTable(v5))) % 109.78/15.18 | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | DELTA: instantiating (300) with fresh symbols all_612_0, % 109.78/15.18 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 109.78/15.18 | | | | | | | | | | (301) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 109.78/15.18 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 109.78/15.18 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 109.78/15.18 | | | | | | | | | | vIntersection(all_612_0, all_612_3) = all_338_0 & % 109.78/15.18 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 109.78/15.18 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 109.78/15.18 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 109.78/15.18 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 109.78/15.18 | | | | | | | | | | vTable(v0)) % 109.78/15.18 | | | | | | | | | | % 109.78/15.18 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (301) are inconsistent by % 109.78/15.18 | | | | | | | | | | sub-proof #7. % 109.78/15.18 | | | | | | | | | | % 109.78/15.18 | | | | | | | | | End of split % 109.78/15.18 | | | | | | | | | % 109.78/15.18 | | | | | | | | Case 2: % 109.78/15.18 | | | | | | | | | % 109.78/15.18 | | | | | | | | | (302) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.78/15.18 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 109.78/15.18 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 109.78/15.18 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.19 | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 109.78/15.19 | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.78/15.19 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.78/15.19 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 109.78/15.19 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 109.78/15.19 | | | | | | | | | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 109.78/15.19 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 109.78/15.19 | | | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = % 109.78/15.19 | | | | | | | | | v4 & vDifference(v0, v1) = all_338_0 & % 109.78/15.19 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 109.78/15.19 | | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 109.78/15.19 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.78/15.19 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 109.78/15.19 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 109.78/15.19 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 109.78/15.19 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.78/15.19 | | | | | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 109.78/15.19 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.19 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 109.78/15.19 | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) % 109.78/15.19 | | | | | | | | | = all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 109.78/15.19 | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) % 109.78/15.19 | | | | | | | | | & ! [v5: vTable] : ! [v6: vTable] : ( ~ % 109.78/15.19 | | | | | | | | | (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | ~ % 109.78/15.19 | | | | | | | | | vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : ( % 109.78/15.19 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 109.78/15.19 | | | | | | | | | % 109.78/15.19 | | | | | | | | | BETA: splitting (302) gives: % 109.78/15.19 | | | | | | | | | % 109.78/15.19 | | | | | | | | | Case 1: % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | (303) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 109.78/15.19 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 109.78/15.19 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 109.78/15.19 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.19 | | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 109.78/15.19 | | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 109.78/15.19 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.78/15.19 | | | | | | | | | | v1) | ~ vTable(v5))) % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | DELTA: instantiating (303) with fresh symbols all_612_0, % 109.78/15.19 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 109.78/15.19 | | | | | | | | | | (304) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 109.78/15.19 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 109.78/15.19 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 109.78/15.19 | | | | | | | | | | vUnion(all_612_0, all_612_3) = all_338_0 & % 109.78/15.19 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 109.78/15.19 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 109.78/15.19 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 109.78/15.19 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 109.78/15.19 | | | | | | | | | | vTable(v0)) % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (304) are inconsistent by % 109.78/15.19 | | | | | | | | | | sub-proof #6. % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | Case 2: % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | (305) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.19 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.19 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 109.78/15.19 | | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 109.78/15.19 | | | | | | | | | | & vDifference(v3, v1) = v4 & vDifference(v0, v1) % 109.78/15.19 | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 109.78/15.19 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 109.78/15.19 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 109.78/15.19 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 109.78/15.19 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 109.78/15.19 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 109.78/15.19 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 109.78/15.19 | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 109.78/15.19 | | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 109.78/15.19 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.19 | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 109.78/15.19 | | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, % 109.78/15.19 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & % 109.78/15.19 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 109.78/15.19 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 109.78/15.19 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 109.78/15.19 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 109.78/15.19 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 109.78/15.19 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | BETA: splitting (305) gives: % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | Case 1: % 109.78/15.19 | | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | | (306) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.19 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.19 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 109.78/15.19 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 109.78/15.19 | | | | | | | | | | | all_346_1 & vDifference(v3, v1) = v4 & % 109.78/15.19 | | | | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) % 109.78/15.19 | | | | | | | | | | | & vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) % 109.78/15.19 | | | | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 109.78/15.19 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 109.78/15.19 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 109.78/15.19 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 109.78/15.19 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 109.78/15.19 | | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | | DELTA: instantiating (306) with fresh symbols all_612_0, % 109.78/15.19 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 109.78/15.19 | | | | | | | | | | | (307) vreduce(all_612_4, all_346_6) = all_612_2 & % 109.78/15.19 | | | | | | | | | | | visSomeQuery(all_612_2) = 0 & vgetQuery(all_612_2) % 109.78/15.19 | | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.78/15.19 | | | | | | | | | | | vDifference(all_612_1, all_612_3) = all_612_0 & % 109.78/15.19 | | | | | | | | | | | vDifference(all_612_4, all_612_3) = all_338_0 & % 109.78/15.19 | | | | | | | | | | | vOptQuery(all_612_2) & vOptQuery(all_346_1) & % 109.78/15.19 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_1) & % 109.78/15.19 | | | | | | | | | | | vQuery(all_612_3) & vQuery(all_612_4) & ! [v0: % 109.78/15.19 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 109.78/15.19 | | | | | | | | | | | all_612_3) | ~ (vtvalue(v0) = all_612_4) | ~ % 109.78/15.19 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 109.78/15.19 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 109.78/15.19 | | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | | ALPHA: (307) implies: % 109.78/15.19 | | | | | | | | | | | (308) vQuery(all_612_4) % 109.78/15.19 | | | | | | | | | | | (309) vQuery(all_612_3) % 109.78/15.19 | | | | | | | | | | | (310) vDifference(all_612_4, all_612_3) = all_338_0 % 109.78/15.19 | | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 109.78/15.19 | | | | | | | | | | | vq2, all_612_4, all_612_3, all_338_0, simplifying % 109.78/15.19 | | | | | | | | | | | with (4), (5), (18), (308), (309), (310) gives: % 109.78/15.19 | | | | | | | | | | | (311) $false % 109.78/15.19 | | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | | CLOSE: (311) is inconsistent. % 109.78/15.19 | | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | Case 2: % 109.78/15.19 | | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | | (312) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.19 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.19 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 109.78/15.19 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 109.78/15.19 | | | | | | | | | | | all_346_1 & vIntersection(v3, v1) = v4 & % 109.78/15.19 | | | | | | | | | | | vIntersection(v0, v1) = all_338_0 & % 109.78/15.19 | | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & % 109.78/15.19 | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & % 109.78/15.19 | | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 109.78/15.19 | | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 109.78/15.19 | | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 109.78/15.19 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ % 109.78/15.19 | | | | | | | | | | | vTable(v5))) % 109.78/15.19 | | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | | DELTA: instantiating (312) with fresh symbols all_612_0, % 109.78/15.19 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 109.78/15.19 | | | | | | | | | | | (313) vreduce(all_612_4, all_346_6) = all_612_2 & % 109.78/15.19 | | | | | | | | | | | visSomeQuery(all_612_2) = 0 & vgetQuery(all_612_2) % 109.78/15.19 | | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.78/15.19 | | | | | | | | | | | vIntersection(all_612_1, all_612_3) = all_612_0 & % 109.78/15.19 | | | | | | | | | | | vIntersection(all_612_4, all_612_3) = all_338_0 & % 109.78/15.19 | | | | | | | | | | | vOptQuery(all_612_2) & vOptQuery(all_346_1) & % 109.78/15.19 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_1) & % 109.78/15.19 | | | | | | | | | | | vQuery(all_612_3) & vQuery(all_612_4) & ! [v0: % 109.78/15.19 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 109.78/15.19 | | | | | | | | | | | all_612_3) | ~ (vtvalue(v0) = all_612_4) | ~ % 109.78/15.19 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 109.78/15.19 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 109.78/15.19 | | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | | ALPHA: (313) implies: % 109.78/15.19 | | | | | | | | | | | (314) vQuery(all_612_4) % 109.78/15.19 | | | | | | | | | | | (315) vQuery(all_612_3) % 109.78/15.19 | | | | | | | | | | | (316) vIntersection(all_612_4, all_612_3) = all_338_0 % 109.78/15.19 | | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 109.78/15.19 | | | | | | | | | | | vq2, all_612_4, all_612_3, all_338_0, simplifying % 109.78/15.19 | | | | | | | | | | | with (4), (5), (18), (314), (315), (316) gives: % 109.78/15.19 | | | | | | | | | | | (317) $false % 109.78/15.19 | | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | | CLOSE: (317) is inconsistent. % 109.78/15.19 | | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | End of split % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | End of split % 109.78/15.19 | | | | | | | | | % 109.78/15.19 | | | | | | | | End of split % 109.78/15.19 | | | | | | | | % 109.78/15.19 | | | | | | | Case 2: % 109.78/15.19 | | | | | | | | % 109.78/15.19 | | | | | | | | (318) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] % 109.78/15.19 | | | | | | | | : ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 109.78/15.19 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.19 | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 109.78/15.19 | | | | | | | | vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 & % 109.78/15.19 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 109.78/15.19 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 109.78/15.19 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 109.78/15.19 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 109.78/15.19 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 109.78/15.19 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 109.78/15.19 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 109.78/15.19 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 109.78/15.19 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.19 | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.78/15.19 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 109.78/15.19 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 109.78/15.19 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 109.78/15.19 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 109.78/15.19 | | | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.19 | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 109.78/15.19 | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 109.78/15.19 | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 109.78/15.19 | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) & % 109.78/15.19 | | | | | | | | ! [v4: vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) % 109.78/15.19 | | | | | | | | = v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | % 109.78/15.19 | | | | | | | | ~ vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 109.78/15.19 | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vQuery] : ? % 109.78/15.19 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 109.78/15.19 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 109.78/15.19 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 109.78/15.19 | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.78/15.19 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 109.78/15.19 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 109.78/15.19 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 109.78/15.19 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 109.78/15.19 | | | | | | | | | ? [v0: vTable] : (all_346_1 = vnoQuery & vtvalue(v0) % 109.78/15.19 | | | | | | | | = all_338_0 & vTable(v0)) % 109.78/15.19 | | | | | | | | % 109.78/15.19 | | | | | | | | BETA: splitting (318) gives: % 109.78/15.19 | | | | | | | | % 109.78/15.19 | | | | | | | | Case 1: % 109.78/15.19 | | | | | | | | | % 109.78/15.19 | | | | | | | | | (319) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.19 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.19 | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 109.78/15.19 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 109.78/15.19 | | | | | | | | | vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 & % 109.78/15.19 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 109.78/15.19 | | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 109.78/15.19 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 109.78/15.19 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 109.78/15.19 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 109.78/15.19 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 109.78/15.19 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 109.78/15.19 | | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 109.78/15.19 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 109.78/15.19 | | | | | | | | | & vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 109.78/15.19 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 109.78/15.19 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 109.78/15.19 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 109.78/15.19 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 109.78/15.19 | | | | | | | | | = v0) | ~ vTable(v4))) % 109.78/15.19 | | | | | | | | | % 109.78/15.19 | | | | | | | | | BETA: splitting (319) gives: % 109.78/15.19 | | | | | | | | | % 109.78/15.19 | | | | | | | | | Case 1: % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | (320) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.19 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 109.78/15.19 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 109.78/15.19 | | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 109.78/15.19 | | | | | | | | | | & vUnion(v3, v1) = v4 & vUnion(v0, v1) = % 109.78/15.19 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 109.78/15.19 | | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 109.78/15.19 | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 109.78/15.19 | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 109.78/15.19 | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] % 109.78/15.19 | | | | | | | | | | : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | DELTA: instantiating (320) with fresh symbols all_612_0, % 109.78/15.19 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 109.78/15.19 | | | | | | | | | | (321) vreduce(all_612_4, all_346_6) = all_612_2 & % 109.78/15.19 | | | | | | | | | | visSomeQuery(all_612_2) = 0 & vgetQuery(all_612_2) % 109.78/15.19 | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 109.78/15.19 | | | | | | | | | | vUnion(all_612_1, all_612_3) = all_612_0 & % 109.78/15.19 | | | | | | | | | | vUnion(all_612_4, all_612_3) = all_338_0 & % 109.78/15.19 | | | | | | | | | | vOptQuery(all_612_2) & vOptQuery(all_346_1) & % 109.78/15.19 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_1) & % 109.78/15.19 | | | | | | | | | | vQuery(all_612_3) & vQuery(all_612_4) & ! [v0: % 109.78/15.19 | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 109.78/15.19 | | | | | | | | | | all_612_3) | ~ (vtvalue(v0) = all_612_4) | ~ % 109.78/15.19 | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : ( % 109.78/15.19 | | | | | | | | | | ~ (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | ALPHA: (321) implies: % 109.78/15.19 | | | | | | | | | | (322) vQuery(all_612_0) % 109.78/15.19 | | | | | | | | | | (323) vQuery(all_612_3) % 109.78/15.19 | | | | | | | | | | (324) vQuery(all_612_4) % 109.78/15.19 | | | | | | | | | | (325) vreduce(all_612_4, all_346_6) = all_612_2 % 109.78/15.19 | | | | | | | | | | (326) vsomeQuery(all_612_0) = all_346_1 % 109.78/15.19 | | | | | | | | | | (327) vUnion(all_612_1, all_612_3) = all_612_0 % 109.78/15.19 | | | | | | | | | | (328) vUnion(all_612_4, all_612_3) = all_338_0 % 109.78/15.19 | | | | | | | | | | (329) vQuery(all_612_1) % 109.78/15.19 | | | | | | | | | | (330) vgetQuery(all_612_2) = all_612_1 % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | GROUND_INST: instantiating (TUnion_inv2) with all_346_5, % 109.78/15.19 | | | | | | | | | | all_612_4, all_612_3, all_346_4, all_338_0, % 109.78/15.19 | | | | | | | | | | simplifying with (22), (25), (33), (323), (324), % 109.78/15.19 | | | | | | | | | | (328) gives: % 109.78/15.19 | | | | | | | | | | (331) vptcheck(all_346_5, all_612_3, all_346_4) = 0 % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_612_4, % 109.78/15.19 | | | | | | | | | | all_612_3, all_338_0, simplifying with (4), (5), % 109.78/15.19 | | | | | | | | | | (18), (323), (324), (328) gives: % 109.78/15.19 | | | | | | | | | | (332) all_612_3 = vq2 & all_612_4 = vq1 % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | ALPHA: (332) implies: % 109.78/15.19 | | | | | | | | | | (333) all_612_3 = vq2 % 109.78/15.19 | | | | | | | | | | (334) all_612_4 = vq1 % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | GROUND_INST: instantiating (3) with all_346_6, all_346_5, % 109.78/15.19 | | | | | | | | | | all_346_4, all_605_0, all_346_2, simplifying with % 109.78/15.19 | | | | | | | | | | (22), (24), (25), (30), (39), (215), (217) gives: % 109.78/15.19 | | | | | | | | | | (335) ? [v0: any] : ? [v1: any] : (vptcheck(all_346_5, % 109.78/15.19 | | | | | | | | | | all_605_0, all_346_4) = v1 & % 109.78/15.19 | | | | | | | | | | vstoreContextConsistent(all_346_6, all_346_5) = % 109.78/15.19 | | | | | | | | | | v0 & ( ~ (v0 = 0) | v1 = 0)) % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_359_0, % 109.78/15.19 | | | | | | | | | | all_605_0, all_346_2, simplifying with (41), (42), % 109.78/15.19 | | | | | | | | | | (215), (217) gives: % 109.78/15.19 | | | | | | | | | | (336) all_605_0 = all_359_0 % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | GROUND_INST: instantiating (getQuery-0) with all_605_0, % 109.78/15.19 | | | | | | | | | | all_346_2, simplifying with (215), (217) gives: % 109.78/15.19 | | | | | | | | | | (337) vgetQuery(all_346_2) = all_605_0 % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_346_3, % 109.78/15.19 | | | | | | | | | | all_612_0, all_346_1, simplifying with (23), (28), % 109.78/15.19 | | | | | | | | | | (322), (326) gives: % 109.78/15.19 | | | | | | | | | | (338) all_612_0 = all_346_3 % 109.78/15.19 | | | | | | | | | | % 109.78/15.19 | | | | | | | | | | DELTA: instantiating (335) with fresh symbols all_639_0, % 109.78/15.19 | | | | | | | | | | all_639_1 gives: % 109.78/15.20 | | | | | | | | | | (339) vptcheck(all_346_5, all_605_0, all_346_4) = % 109.78/15.20 | | | | | | | | | | all_639_0 & vstoreContextConsistent(all_346_6, % 109.78/15.20 | | | | | | | | | | all_346_5) = all_639_1 & ( ~ (all_639_1 = 0) | % 109.78/15.20 | | | | | | | | | | all_639_0 = 0) % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | ALPHA: (339) implies: % 109.78/15.20 | | | | | | | | | | (340) vptcheck(all_346_5, all_605_0, all_346_4) = % 109.78/15.20 | | | | | | | | | | all_639_0 % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | REDUCE: (331), (333) imply: % 109.78/15.20 | | | | | | | | | | (341) vptcheck(all_346_5, vq2, all_346_4) = 0 % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | REDUCE: (336), (340) imply: % 109.78/15.20 | | | | | | | | | | (342) vptcheck(all_346_5, all_359_0, all_346_4) = % 109.78/15.20 | | | | | | | | | | all_639_0 % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | REDUCE: (325), (334) imply: % 109.78/15.20 | | | | | | | | | | (343) vreduce(vq1, all_346_6) = all_612_2 % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | REDUCE: (336), (337) imply: % 109.78/15.20 | | | | | | | | | | (344) vgetQuery(all_346_2) = all_359_0 % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | REDUCE: (327), (333), (338) imply: % 109.78/15.20 | | | | | | | | | | (345) vUnion(all_612_1, vq2) = all_346_3 % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | GROUND_INST: instantiating (10) with all_346_2, all_612_2, % 109.78/15.20 | | | | | | | | | | all_346_6, vq1, simplifying with (30), (343) % 109.78/15.20 | | | | | | | | | | gives: % 109.78/15.20 | | | | | | | | | | (346) all_612_2 = all_346_2 % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | GROUND_INST: instantiating (12) with 0, all_639_0, all_346_4, % 109.78/15.20 | | | | | | | | | | all_359_0, all_346_5, simplifying with (56), (342) % 109.78/15.20 | | | | | | | | | | gives: % 109.78/15.20 | | | | | | | | | | (347) all_639_0 = 0 % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | REDUCE: (330), (346) imply: % 109.78/15.20 | | | | | | | | | | (348) vgetQuery(all_346_2) = all_612_1 % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | GROUND_INST: instantiating (7) with all_359_0, all_612_1, % 109.78/15.20 | | | | | | | | | | all_346_2, simplifying with (344), (348) gives: % 109.78/15.20 | | | | | | | | | | (349) all_612_1 = all_359_0 % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | REDUCE: (345), (349) imply: % 109.78/15.20 | | | | | | | | | | (350) vUnion(all_359_0, vq2) = all_346_3 % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | REF_CLOSE: (5), (12), (21), (22), (25), (34), (41), (56), % 109.78/15.20 | | | | | | | | | | (341), (350), (TUnion) are inconsistent by % 109.78/15.20 | | | | | | | | | | sub-proof #5. % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | Case 2: % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | (351) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 109.78/15.20 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 109.78/15.20 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 109.78/15.20 | | | | | | | | | | visSomeQuery(v2) = v3 & vDifference(v0, v1) = % 109.78/15.20 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 109.78/15.20 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 109.78/15.20 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 109.78/15.20 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 109.78/15.20 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | DELTA: instantiating (351) with fresh symbols all_612_0, % 109.78/15.20 | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 109.78/15.20 | | | | | | | | | | (352) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 109.78/15.20 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 109.78/15.20 | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 109.78/15.20 | | | | | | | | | | vDifference(all_612_3, all_612_2) = all_338_0 & % 109.78/15.20 | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 109.78/15.20 | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 109.78/15.20 | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 109.78/15.20 | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 109.78/15.20 | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 109.78/15.20 | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (352) are inconsistent by % 109.78/15.20 | | | | | | | | | | sub-proof #4. % 109.78/15.20 | | | | | | | | | | % 109.78/15.20 | | | | | | | | | End of split % 109.78/15.20 | | | | | | | | | % 109.78/15.20 | | | | | | | | Case 2: % 109.78/15.20 | | | | | | | | | % 110.07/15.20 | | | | | | | | | (353) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.20 | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 110.07/15.20 | | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.07/15.20 | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 110.07/15.20 | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) % 110.07/15.20 | | | | | | | | | & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 110.07/15.20 | | | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 110.07/15.20 | | | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( % 110.07/15.20 | | | | | | | | | ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.07/15.20 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.20 | | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.20 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.07/15.20 | | | | | | | | | & vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.20 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.07/15.20 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.07/15.20 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.07/15.20 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.07/15.20 | | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vTable] : % 110.07/15.20 | | | | | | | | | (all_346_1 = vnoQuery & vtvalue(v0) = all_338_0 & % 110.07/15.20 | | | | | | | | | vTable(v0)) % 110.07/15.20 | | | | | | | | | % 110.07/15.20 | | | | | | | | | BETA: splitting (353) gives: % 110.07/15.20 | | | | | | | | | % 110.07/15.20 | | | | | | | | | Case 1: % 110.07/15.20 | | | | | | | | | | % 110.07/15.20 | | | | | | | | | | (354) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.20 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 110.07/15.20 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.07/15.20 | | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 110.07/15.20 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.07/15.20 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.07/15.20 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.07/15.20 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 110.07/15.20 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.07/15.20 | | | | | | | | | | % 110.07/15.20 | | | | | | | | | | DELTA: instantiating (354) with fresh symbols all_612_0, % 110.07/15.20 | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.07/15.20 | | | | | | | | | | (355) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.07/15.20 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.07/15.20 | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.07/15.20 | | | | | | | | | | vIntersection(all_612_3, all_612_2) = all_338_0 & % 110.07/15.20 | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.07/15.20 | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.07/15.20 | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.07/15.20 | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.07/15.20 | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.07/15.20 | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.07/15.20 | | | | | | | | | | % 110.07/15.20 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (355) are inconsistent by % 110.07/15.20 | | | | | | | | | | sub-proof #3. % 110.07/15.20 | | | | | | | | | | % 110.07/15.20 | | | | | | | | | Case 2: % 110.07/15.20 | | | | | | | | | | % 110.07/15.20 | | | | | | | | | | (356) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.20 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 110.07/15.20 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.07/15.20 | | | | | | | | | | visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.07/15.20 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.07/15.20 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.07/15.20 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.07/15.20 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 110.07/15.20 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? % 110.07/15.20 | | | | | | | | | | [v0: vTable] : (all_346_1 = vnoQuery & vtvalue(v0) % 110.07/15.20 | | | | | | | | | | = all_338_0 & vTable(v0)) % 110.07/15.20 | | | | | | | | | | % 110.07/15.20 | | | | | | | | | | BETA: splitting (356) gives: % 110.07/15.20 | | | | | | | | | | % 110.07/15.20 | | | | | | | | | | Case 1: % 110.07/15.20 | | | | | | | | | | | % 110.07/15.20 | | | | | | | | | | | (357) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.20 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.07/15.20 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.07/15.20 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.07/15.20 | | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.07/15.20 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.07/15.20 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.07/15.20 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.07/15.20 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.07/15.20 | | | | | | | | | | | vTable(v4))) % 110.07/15.20 | | | | | | | | | | | % 110.07/15.20 | | | | | | | | | | | DELTA: instantiating (357) with fresh symbols all_612_0, % 110.07/15.20 | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.07/15.20 | | | | | | | | | | | (358) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.07/15.20 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.07/15.20 | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.07/15.20 | | | | | | | | | | | vUnion(all_612_3, all_612_2) = all_338_0 & % 110.07/15.20 | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.07/15.20 | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.07/15.20 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.07/15.20 | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.07/15.20 | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.07/15.20 | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.07/15.20 | | | | | | | | | | | % 110.07/15.20 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (358) are inconsistent by % 110.07/15.20 | | | | | | | | | | | sub-proof #2. % 110.07/15.20 | | | | | | | | | | | % 110.07/15.20 | | | | | | | | | | Case 2: % 110.07/15.20 | | | | | | | | | | | % 110.07/15.20 | | | | | | | | | | | (359) ? [v0: vTable] : (all_346_1 = vnoQuery & % 110.07/15.20 | | | | | | | | | | | vtvalue(v0) = all_338_0 & vTable(v0)) % 110.07/15.20 | | | | | | | | | | | % 110.07/15.20 | | | | | | | | | | | DELTA: instantiating (359) with fresh symbol all_612_0 % 110.07/15.20 | | | | | | | | | | | gives: % 110.07/15.20 | | | | | | | | | | | (360) all_346_1 = vnoQuery & vtvalue(all_612_0) = % 110.07/15.20 | | | | | | | | | | | all_338_0 & vTable(all_612_0) % 110.07/15.20 | | | | | | | | | | | % 110.07/15.20 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (360) are inconsistent by % 110.07/15.20 | | | | | | | | | | | sub-proof #1. % 110.07/15.20 | | | | | | | | | | | % 110.07/15.20 | | | | | | | | | | End of split % 110.07/15.20 | | | | | | | | | | % 110.07/15.20 | | | | | | | | | End of split % 110.07/15.20 | | | | | | | | | % 110.07/15.20 | | | | | | | | End of split % 110.07/15.20 | | | | | | | | % 110.07/15.20 | | | | | | | End of split % 110.07/15.20 | | | | | | | % 110.07/15.20 | | | | | | End of split % 110.07/15.20 | | | | | | % 110.07/15.20 | | | | | End of split % 110.07/15.20 | | | | | % 110.07/15.20 | | | | Case 2: % 110.07/15.20 | | | | | % 110.07/15.20 | | | | | (361) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? [v3: % 110.07/15.20 | | | | | vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: % 110.07/15.20 | | | | | vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 110.07/15.20 | | | | | vQuery] : (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.20 | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 110.07/15.20 | | | | | vsomeQuery(v9) = all_346_2 & vUnion(v2, v3) = vq1 & % 110.07/15.20 | | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.20 | | | | | vOptQuery(all_346_2) & vTable(v8) & vTable(v1) & vTable(v0) % 110.07/15.20 | | | | | & vQuery(v9) & vQuery(v3) & vQuery(v2) & vRawTable(v7) & % 110.07/15.20 | | | | | vRawTable(v6) & vRawTable(v5) & vAttrL(v4)) | ? [v0: % 110.07/15.20 | | | | | vPred] : ? [v1: vTable] : ? [v2: vSelect] : ? [v3: % 110.07/15.20 | | | | | vOptTable] : ? [v4: vOptTable] : ? [v5: vName] : ? [v6: % 110.07/15.20 | | | | | vTable] : ? [v7: vTable] : ? [v8: vQuery] : % 110.07/15.20 | | | | | (vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.07/15.20 | | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) = 0 & % 110.07/15.20 | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & vgetTable(v3) = % 110.07/15.20 | | | | | v6 & vsomeQuery(v8) = all_346_2 & vselectFromWhere(v2, v5, % 110.07/15.20 | | | | | v0) = vq1 & vtvalue(v7) = v8 & vOptQuery(all_346_2) & % 110.07/15.20 | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & vTable(v1) & % 110.07/15.20 | | | | | vOptTable(v4) & vOptTable(v3) & vQuery(v8) & vName(v5) & % 110.07/15.20 | | | | | vPred(v0)) % 110.07/15.20 | | | | | % 110.07/15.20 | | | | | BETA: splitting (361) gives: % 110.07/15.20 | | | | | % 110.07/15.20 | | | | | Case 1: % 110.07/15.20 | | | | | | % 110.07/15.20 | | | | | | (362) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? % 110.07/15.20 | | | | | | [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? % 110.07/15.20 | | | | | | [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : ? % 110.07/15.20 | | | | | | [v9: vQuery] : (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 % 110.07/15.20 | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = % 110.07/15.20 | | | | | | v8 & vsomeQuery(v9) = all_346_2 & vUnion(v2, v3) = vq1 & % 110.07/15.20 | | | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.20 | | | | | | vOptQuery(all_346_2) & vTable(v8) & vTable(v1) & % 110.07/15.20 | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.07/15.20 | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.20 | | | | | | vAttrL(v4)) % 110.07/15.20 | | | | | | % 110.07/15.20 | | | | | | DELTA: instantiating (362) with fresh symbols all_605_0, all_605_1, % 110.07/15.20 | | | | | | all_605_2, all_605_3, all_605_4, all_605_5, all_605_6, % 110.07/15.20 | | | | | | all_605_7, all_605_8, all_605_9 gives: % 110.07/15.20 | | | | | | (363) vrawUnion(all_605_4, all_605_3) = all_605_2 & % 110.07/15.20 | | | | | | vgetAttrL(all_605_9) = all_605_5 & vgetRaw(all_605_8) = % 110.07/15.20 | | | | | | all_605_3 & vgetRaw(all_605_9) = all_605_4 & % 110.07/15.20 | | | | | | vtable(all_605_5, all_605_2) = all_605_1 & % 110.07/15.20 | | | | | | vsomeQuery(all_605_0) = all_346_2 & vUnion(all_605_7, % 110.07/15.20 | | | | | | all_605_6) = vq1 & vtvalue(all_605_1) = all_605_0 & % 110.07/15.20 | | | | | | vtvalue(all_605_8) = all_605_6 & vtvalue(all_605_9) = % 110.07/15.20 | | | | | | all_605_7 & vOptQuery(all_346_2) & vTable(all_605_1) & % 110.07/15.20 | | | | | | vTable(all_605_8) & vTable(all_605_9) & vQuery(all_605_0) & % 110.07/15.20 | | | | | | vQuery(all_605_6) & vQuery(all_605_7) & % 110.07/15.20 | | | | | | vRawTable(all_605_2) & vRawTable(all_605_3) & % 110.07/15.20 | | | | | | vRawTable(all_605_4) & vAttrL(all_605_5) % 110.07/15.20 | | | | | | % 110.07/15.20 | | | | | | ALPHA: (363) implies: % 110.07/15.20 | | | | | | (364) vQuery(all_605_7) % 110.07/15.20 | | | | | | (365) vQuery(all_605_6) % 110.07/15.20 | | | | | | (366) vQuery(all_605_0) % 110.07/15.20 | | | | | | (367) vUnion(all_605_7, all_605_6) = vq1 % 110.07/15.20 | | | | | | (368) vsomeQuery(all_605_0) = all_346_2 % 110.07/15.20 | | | | | | % 110.07/15.20 | | | | | | BETA: splitting (38) gives: % 110.07/15.20 | | | | | | % 110.07/15.20 | | | | | | Case 1: % 110.07/15.20 | | | | | | | % 110.07/15.21 | | | | | | | (369) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? % 110.07/15.21 | | | | | | | [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? % 110.07/15.21 | | | | | | | [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : % 110.07/15.21 | | | | | | | ? [v9: vQuery] : (vrawDifference(v5, v6) = v7 & % 110.07/15.21 | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 110.07/15.21 | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.07/15.21 | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.07/15.21 | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.21 | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.21 | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.07/15.21 | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.21 | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 110.07/15.21 | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.07/15.21 | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: vRawTable] % 110.07/15.21 | | | | | | | : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.21 | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.21 | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = % 110.07/15.21 | | | | | | | v8 & vsomeQuery(v9) = all_346_1 & vIntersection(v2, v3) % 110.07/15.21 | | | | | | | = all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.07/15.21 | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) & % 110.07/15.21 | | | | | | | vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.07/15.21 | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.07/15.21 | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? [v1: % 110.07/15.21 | | | | | | | vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: % 110.07/15.21 | | | | | | | vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] : ? % 110.07/15.21 | | | | | | | [v7: vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.21 | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.21 | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = % 110.07/15.21 | | | | | | | v8 & vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 110.07/15.21 | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.07/15.21 | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) & % 110.07/15.21 | | | | | | | vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.07/15.21 | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.07/15.21 | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? [v1: % 110.07/15.21 | | | | | | | vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : ? % 110.07/15.21 | | | | | | | [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 110.07/15.21 | | | | | | | [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, v0) = % 110.07/15.21 | | | | | | | v1 & vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.07/15.21 | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 110.07/15.21 | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.07/15.21 | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.07/15.21 | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & vtvalue(v7) % 110.07/15.21 | | | | | | | = v8 & vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) % 110.07/15.21 | | | | | | | & vTable(v6) & vTable(v1) & vOptTable(v4) & % 110.07/15.21 | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & vPred(v0)) | % 110.07/15.21 | | | | | | | ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : ? % 110.07/15.21 | | | | | | | [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] : % 110.07/15.21 | | | | | | | ? [v6: vTable] : ? [v7: int] : (all_346_1 = vnoQuery & % 110.07/15.21 | | | | | | | ~ (v7 = 0) & vfilterTable(v6, v0) = v1 & % 110.07/15.21 | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.07/15.21 | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 110.07/15.21 | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 110.07/15.21 | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & vSelect(v2) % 110.07/15.21 | | | | | | | & vTable(v6) & vTable(v1) & vOptTable(v4) & % 110.07/15.21 | | | | | | | vOptTable(v3) & vName(v5) & vPred(v0)) | ? [v0: % 110.07/15.21 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.21 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.07/15.21 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.21 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.07/15.21 | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 110.07/15.21 | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.21 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.07/15.21 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] % 110.07/15.21 | | | | | | | : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 110.07/15.21 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.21 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.07/15.21 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.21 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.07/15.21 | | | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) = % 110.07/15.21 | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.21 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.07/15.21 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] % 110.07/15.21 | | | | | | | : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 110.07/15.21 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.21 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.07/15.21 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.21 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.07/15.21 | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 110.07/15.21 | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.07/15.21 | | | | | | | & vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.07/15.21 | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | % 110.07/15.21 | | | | | | | ~ vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] : % 110.07/15.21 | | | | | | | ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.07/15.21 | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 110.07/15.21 | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.07/15.21 | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & vSelect(v1) % 110.07/15.21 | | | | | | | & vOptTable(v2) & vName(v3) & vPred(v0)) % 110.07/15.21 | | | | | | | % 110.07/15.21 | | | | | | | BETA: splitting (369) gives: % 110.07/15.21 | | | | | | | % 110.07/15.21 | | | | | | | Case 1: % 110.07/15.21 | | | | | | | | % 110.07/15.21 | | | | | | | | (370) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.07/15.21 | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : % 110.07/15.21 | | | | | | | | ? [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: % 110.07/15.21 | | | | | | | | vTable] : ? [v9: vQuery] : (vrawDifference(v5, v6) = % 110.07/15.21 | | | | | | | | v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & % 110.07/15.21 | | | | | | | | vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 110.07/15.21 | | | | | | | | vsomeQuery(v9) = all_346_1 & vDifference(v2, v3) = % 110.07/15.21 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.07/15.21 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 110.07/15.21 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.07/15.21 | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.07/15.21 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? % 110.07/15.21 | | | | | | | | [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? % 110.07/15.21 | | | | | | | | [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] % 110.07/15.21 | | | | | | | | : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 110.07/15.21 | | | | | | | | vQuery] : (vrawIntersection(v5, v6) = v7 & % 110.07/15.21 | | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 110.07/15.21 | | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.07/15.21 | | | | | | | | & vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 110.07/15.21 | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.21 | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.21 | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.07/15.21 | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.21 | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 110.07/15.21 | | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.07/15.21 | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.07/15.21 | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.21 | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.21 | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) % 110.07/15.21 | | | | | | | | = v8 & vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 110.07/15.21 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.07/15.21 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 110.07/15.21 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.07/15.21 | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.07/15.21 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? % 110.07/15.21 | | | | | | | | [v1: vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : % 110.07/15.21 | | | | | | | | ? [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.07/15.21 | | | | | | | | ? [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 110.07/15.21 | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.07/15.21 | | | | | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) = % 110.07/15.21 | | | | | | | | 0 & visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.07/15.21 | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.07/15.21 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.07/15.21 | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & vSelect(v2) % 110.07/15.21 | | | | | | | | & vTable(v7) & vTable(v6) & vTable(v1) & % 110.07/15.21 | | | | | | | | vOptTable(v4) & vOptTable(v3) & vQuery(v8) & % 110.07/15.21 | | | | | | | | vName(v5) & vPred(v0)) % 110.07/15.21 | | | | | | | | % 110.07/15.21 | | | | | | | | BETA: splitting (370) gives: % 110.07/15.21 | | | | | | | | % 110.07/15.21 | | | | | | | | Case 1: % 110.07/15.21 | | | | | | | | | % 110.07/15.21 | | | | | | | | | (371) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.07/15.21 | | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.07/15.21 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.07/15.21 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.21 | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.21 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.07/15.21 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.07/15.21 | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 % 110.07/15.21 | | | | | | | | | & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.21 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.21 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.07/15.21 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.21 | | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : % 110.07/15.21 | | | | | | | | | ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : % 110.07/15.21 | | | | | | | | | ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.07/15.21 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.21 | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.21 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.07/15.21 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.07/15.21 | | | | | | | | | vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 110.07/15.21 | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.21 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.21 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.07/15.21 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.21 | | | | | | | | | vAttrL(v4)) % 110.07/15.21 | | | | | | | | | % 110.07/15.21 | | | | | | | | | BETA: splitting (371) gives: % 110.07/15.21 | | | | | | | | | % 110.07/15.21 | | | | | | | | | Case 1: % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | | (372) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.07/15.21 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.07/15.21 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.07/15.21 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.21 | | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.21 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.07/15.21 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.07/15.21 | | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = % 110.07/15.21 | | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.21 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.21 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.07/15.21 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.21 | | | | | | | | | | vAttrL(v4)) % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | | DELTA: instantiating (372) with fresh symbols all_612_0, % 110.07/15.21 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.07/15.21 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8, all_612_9 % 110.07/15.21 | | | | | | | | | | gives: % 110.07/15.21 | | | | | | | | | | (373) vrawDifference(all_612_4, all_612_3) = all_612_2 & % 110.07/15.21 | | | | | | | | | | vgetAttrL(all_612_9) = all_612_5 & % 110.07/15.21 | | | | | | | | | | vgetRaw(all_612_8) = all_612_3 & vgetRaw(all_612_9) % 110.07/15.21 | | | | | | | | | | = all_612_4 & vtable(all_612_5, all_612_2) = % 110.07/15.21 | | | | | | | | | | all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.21 | | | | | | | | | | vDifference(all_612_7, all_612_6) = all_338_0 & % 110.07/15.21 | | | | | | | | | | vtvalue(all_612_1) = all_612_0 & vtvalue(all_612_8) % 110.07/15.21 | | | | | | | | | | = all_612_6 & vtvalue(all_612_9) = all_612_7 & % 110.07/15.21 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_612_1) & % 110.07/15.21 | | | | | | | | | | vTable(all_612_8) & vTable(all_612_9) & % 110.07/15.21 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_6) & % 110.07/15.21 | | | | | | | | | | vQuery(all_612_7) & vRawTable(all_612_2) & % 110.07/15.21 | | | | | | | | | | vRawTable(all_612_3) & vRawTable(all_612_4) & % 110.07/15.21 | | | | | | | | | | vAttrL(all_612_5) % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | | ALPHA: (373) implies: % 110.07/15.21 | | | | | | | | | | (374) vQuery(all_612_7) % 110.07/15.21 | | | | | | | | | | (375) vQuery(all_612_6) % 110.07/15.21 | | | | | | | | | | (376) vDifference(all_612_7, all_612_6) = all_338_0 % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.07/15.21 | | | | | | | | | | vq2, all_612_7, all_612_6, all_338_0, simplifying % 110.07/15.21 | | | | | | | | | | with (4), (5), (18), (374), (375), (376) gives: % 110.07/15.21 | | | | | | | | | | (377) $false % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | | CLOSE: (377) is inconsistent. % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | Case 2: % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | | (378) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.07/15.21 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.07/15.21 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.07/15.21 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.21 | | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 % 110.07/15.21 | | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.07/15.21 | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.07/15.21 | | | | | | | | | | & vIntersection(v2, v3) = all_338_0 & vtvalue(v8) % 110.07/15.21 | | | | | | | | | | = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.21 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.21 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.07/15.21 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.21 | | | | | | | | | | vAttrL(v4)) % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | | DELTA: instantiating (378) with fresh symbols all_612_0, % 110.07/15.21 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.07/15.21 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8, all_612_9 % 110.07/15.21 | | | | | | | | | | gives: % 110.07/15.21 | | | | | | | | | | (379) vrawIntersection(all_612_4, all_612_3) = all_612_2 % 110.07/15.21 | | | | | | | | | | & vgetAttrL(all_612_9) = all_612_5 & % 110.07/15.21 | | | | | | | | | | vgetRaw(all_612_8) = all_612_3 & vgetRaw(all_612_9) % 110.07/15.21 | | | | | | | | | | = all_612_4 & vtable(all_612_5, all_612_2) = % 110.07/15.21 | | | | | | | | | | all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.21 | | | | | | | | | | vIntersection(all_612_7, all_612_6) = all_338_0 & % 110.07/15.21 | | | | | | | | | | vtvalue(all_612_1) = all_612_0 & vtvalue(all_612_8) % 110.07/15.21 | | | | | | | | | | = all_612_6 & vtvalue(all_612_9) = all_612_7 & % 110.07/15.21 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_612_1) & % 110.07/15.21 | | | | | | | | | | vTable(all_612_8) & vTable(all_612_9) & % 110.07/15.21 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_6) & % 110.07/15.21 | | | | | | | | | | vQuery(all_612_7) & vRawTable(all_612_2) & % 110.07/15.21 | | | | | | | | | | vRawTable(all_612_3) & vRawTable(all_612_4) & % 110.07/15.21 | | | | | | | | | | vAttrL(all_612_5) % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | | ALPHA: (379) implies: % 110.07/15.21 | | | | | | | | | | (380) vQuery(all_612_7) % 110.07/15.21 | | | | | | | | | | (381) vQuery(all_612_6) % 110.07/15.21 | | | | | | | | | | (382) vIntersection(all_612_7, all_612_6) = all_338_0 % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.07/15.21 | | | | | | | | | | vq2, all_612_7, all_612_6, all_338_0, simplifying % 110.07/15.21 | | | | | | | | | | with (4), (5), (18), (380), (381), (382) gives: % 110.07/15.21 | | | | | | | | | | (383) $false % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | | CLOSE: (383) is inconsistent. % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | End of split % 110.07/15.21 | | | | | | | | | % 110.07/15.21 | | | | | | | | Case 2: % 110.07/15.21 | | | | | | | | | % 110.07/15.21 | | | | | | | | | (384) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.07/15.21 | | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.07/15.21 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.07/15.21 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.21 | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.21 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.07/15.21 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.07/15.21 | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.07/15.21 | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.21 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.21 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.07/15.21 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.21 | | | | | | | | | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : ? % 110.07/15.21 | | | | | | | | | [v2: vSelect] : ? [v3: vOptTable] : ? [v4: % 110.07/15.21 | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 110.07/15.21 | | | | | | | | | [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 110.07/15.21 | | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.07/15.21 | | | | | | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) % 110.07/15.21 | | | | | | | | | = 0 & visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.07/15.21 | | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.07/15.21 | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.07/15.21 | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 110.07/15.21 | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & vTable(v1) % 110.07/15.21 | | | | | | | | | & vOptTable(v4) & vOptTable(v3) & vQuery(v8) & % 110.07/15.21 | | | | | | | | | vName(v5) & vPred(v0)) % 110.07/15.21 | | | | | | | | | % 110.07/15.21 | | | | | | | | | BETA: splitting (384) gives: % 110.07/15.21 | | | | | | | | | % 110.07/15.21 | | | | | | | | | Case 1: % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | | (385) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.07/15.21 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.07/15.21 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.07/15.21 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.21 | | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.21 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.07/15.21 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.07/15.21 | | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.07/15.21 | | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.21 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.21 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.07/15.21 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.21 | | | | | | | | | | vAttrL(v4)) % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | | DELTA: instantiating (385) with fresh symbols all_612_0, % 110.07/15.21 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.07/15.21 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8, all_612_9 % 110.07/15.21 | | | | | | | | | | gives: % 110.07/15.21 | | | | | | | | | | (386) vrawUnion(all_612_4, all_612_3) = all_612_2 & % 110.07/15.21 | | | | | | | | | | vgetAttrL(all_612_9) = all_612_5 & % 110.07/15.21 | | | | | | | | | | vgetRaw(all_612_8) = all_612_3 & vgetRaw(all_612_9) % 110.07/15.21 | | | | | | | | | | = all_612_4 & vtable(all_612_5, all_612_2) = % 110.07/15.21 | | | | | | | | | | all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.21 | | | | | | | | | | vUnion(all_612_7, all_612_6) = all_338_0 & % 110.07/15.21 | | | | | | | | | | vtvalue(all_612_1) = all_612_0 & vtvalue(all_612_8) % 110.07/15.21 | | | | | | | | | | = all_612_6 & vtvalue(all_612_9) = all_612_7 & % 110.07/15.21 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_612_1) & % 110.07/15.21 | | | | | | | | | | vTable(all_612_8) & vTable(all_612_9) & % 110.07/15.21 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_6) & % 110.07/15.21 | | | | | | | | | | vQuery(all_612_7) & vRawTable(all_612_2) & % 110.07/15.21 | | | | | | | | | | vRawTable(all_612_3) & vRawTable(all_612_4) & % 110.07/15.21 | | | | | | | | | | vAttrL(all_612_5) % 110.07/15.21 | | | | | | | | | | % 110.07/15.21 | | | | | | | | | | ALPHA: (386) implies: % 110.07/15.21 | | | | | | | | | | (387) vQuery(all_612_7) % 110.07/15.21 | | | | | | | | | | (388) vQuery(all_612_6) % 110.07/15.21 | | | | | | | | | | (389) vTable(all_612_9) % 110.07/15.21 | | | | | | | | | | (390) vtvalue(all_612_9) = all_612_7 % 110.07/15.21 | | | | | | | | | | (391) vUnion(all_612_7, all_612_6) = all_338_0 % 110.07/15.21 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_612_9, % 110.07/15.22 | | | | | | | | | | all_612_7, simplifying with (389), (390) gives: % 110.07/15.22 | | | | | | | | | | (392) visValue(all_612_7) = 0 % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | GROUND_INST: instantiating (isValue-2) with all_605_7, % 110.07/15.22 | | | | | | | | | | all_605_6, vq1, simplifying with (364), (365), % 110.07/15.22 | | | | | | | | | | (367) gives: % 110.07/15.22 | | | | | | | | | | (393) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_612_7, % 110.07/15.22 | | | | | | | | | | all_612_6, all_338_0, simplifying with (4), (5), % 110.07/15.22 | | | | | | | | | | (18), (387), (388), (391) gives: % 110.07/15.22 | | | | | | | | | | (394) all_612_6 = vq2 & all_612_7 = vq1 % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | ALPHA: (394) implies: % 110.07/15.22 | | | | | | | | | | (395) all_612_7 = vq1 % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | DELTA: instantiating (393) with fresh symbol all_628_0 % 110.07/15.22 | | | | | | | | | | gives: % 110.07/15.22 | | | | | | | | | | (396) ~ (all_628_0 = 0) & visValue(vq1) = all_628_0 % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | ALPHA: (396) implies: % 110.07/15.22 | | | | | | | | | | (397) ~ (all_628_0 = 0) % 110.07/15.22 | | | | | | | | | | (398) visValue(vq1) = all_628_0 % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | REDUCE: (392), (395) imply: % 110.07/15.22 | | | | | | | | | | (399) visValue(vq1) = 0 % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_628_0, vq1, % 110.07/15.22 | | | | | | | | | | simplifying with (398), (399) gives: % 110.07/15.22 | | | | | | | | | | (400) all_628_0 = 0 % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | REDUCE: (397), (400) imply: % 110.07/15.22 | | | | | | | | | | (401) $false % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | CLOSE: (401) is inconsistent. % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | Case 2: % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | (402) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 110.07/15.22 | | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.07/15.22 | | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: vTable] : ? % 110.07/15.22 | | | | | | | | | | [v8: vQuery] : (vfilterTable(v6, v0) = v1 & % 110.07/15.22 | | | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.07/15.22 | | | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 110.07/15.22 | | | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.07/15.22 | | | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.07/15.22 | | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.07/15.22 | | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 110.07/15.22 | | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & % 110.07/15.22 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.07/15.22 | | | | | | | | | | vQuery(v8) & vName(v5) & vPred(v0)) % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | DELTA: instantiating (402) with fresh symbols all_612_0, % 110.07/15.22 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.07/15.22 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8 gives: % 110.07/15.22 | | | | | | | | | | (403) vfilterTable(all_612_2, all_612_8) = all_612_7 & % 110.07/15.22 | | | | | | | | | | vprojectTable(all_612_6, all_612_7) = all_612_4 & % 110.07/15.22 | | | | | | | | | | vlookupStore(all_612_3, all_346_6) = all_612_5 & % 110.07/15.22 | | | | | | | | | | visSomeTable(all_612_4) = 0 & % 110.07/15.22 | | | | | | | | | | visSomeTable(all_612_5) = 0 & vgetTable(all_612_4) % 110.07/15.22 | | | | | | | | | | = all_612_1 & vgetTable(all_612_5) = all_612_2 & % 110.07/15.22 | | | | | | | | | | vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.22 | | | | | | | | | | vselectFromWhere(all_612_6, all_612_3, all_612_8) = % 110.07/15.22 | | | | | | | | | | all_338_0 & vtvalue(all_612_1) = all_612_0 & % 110.07/15.22 | | | | | | | | | | vOptQuery(all_346_1) & vSelect(all_612_6) & % 110.07/15.22 | | | | | | | | | | vTable(all_612_1) & vTable(all_612_2) & % 110.07/15.22 | | | | | | | | | | vTable(all_612_7) & vOptTable(all_612_4) & % 110.07/15.22 | | | | | | | | | | vOptTable(all_612_5) & vQuery(all_612_0) & % 110.07/15.22 | | | | | | | | | | vName(all_612_3) & vPred(all_612_8) % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | ALPHA: (403) implies: % 110.07/15.22 | | | | | | | | | | (404) vPred(all_612_8) % 110.07/15.22 | | | | | | | | | | (405) vName(all_612_3) % 110.07/15.22 | | | | | | | | | | (406) vSelect(all_612_6) % 110.07/15.22 | | | | | | | | | | (407) vselectFromWhere(all_612_6, all_612_3, all_612_8) = % 110.07/15.22 | | | | | | | | | | all_338_0 % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | GROUND_INST: instantiating (DIFF-selectFromWhere-Union) with % 110.07/15.22 | | | | | | | | | | all_612_3, all_612_8, all_612_6, vq2, vq1, % 110.07/15.22 | | | | | | | | | | all_338_0, simplifying with (4), (5), (18), (404), % 110.07/15.22 | | | | | | | | | | (405), (406), (407) gives: % 110.07/15.22 | | | | | | | | | | (408) $false % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | CLOSE: (408) is inconsistent. % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | End of split % 110.07/15.22 | | | | | | | | | % 110.07/15.22 | | | | | | | | End of split % 110.07/15.22 | | | | | | | | % 110.07/15.22 | | | | | | | Case 2: % 110.07/15.22 | | | | | | | | % 110.07/15.22 | | | | | | | | (409) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 110.07/15.22 | | | | | | | | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] % 110.07/15.22 | | | | | | | | : ? [v6: vTable] : ? [v7: int] : (all_346_1 = % 110.07/15.22 | | | | | | | | vnoQuery & ~ (v7 = 0) & vfilterTable(v6, v0) = v1 & % 110.07/15.22 | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.07/15.22 | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 110.07/15.22 | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 110.07/15.22 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.07/15.22 | | | | | | | | vSelect(v2) & vTable(v6) & vTable(v1) & vOptTable(v4) % 110.07/15.22 | | | | | | | | & vOptTable(v3) & vName(v5) & vPred(v0)) | ? [v0: % 110.07/15.22 | | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.22 | | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.07/15.22 | | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.22 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.07/15.22 | | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 110.07/15.22 | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.22 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.07/15.22 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.07/15.22 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.07/15.22 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.22 | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 110.07/15.22 | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.22 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.22 | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) = % 110.07/15.22 | | | | | | | | v5 & vIntersection(v3, v1) = all_338_0 & vtvalue(v0) % 110.07/15.22 | | | | | | | | = v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.07/15.22 | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.07/15.22 | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.07/15.22 | | | | | | | | | ~ vTable(v6))) | ? [v0: vTable] : ? [v1: % 110.07/15.22 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.07/15.22 | | | | | | | | [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.07/15.22 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.22 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.07/15.22 | | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 110.07/15.22 | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.22 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.07/15.22 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.07/15.22 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.07/15.22 | | | | | | | | | ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 110.07/15.22 | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.07/15.22 | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 110.07/15.22 | | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.07/15.22 | | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & % 110.07/15.22 | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & vPred(v0)) % 110.07/15.22 | | | | | | | | % 110.07/15.22 | | | | | | | | BETA: splitting (409) gives: % 110.07/15.22 | | | | | | | | % 110.07/15.22 | | | | | | | | Case 1: % 110.07/15.22 | | | | | | | | | % 110.07/15.22 | | | | | | | | | (410) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 110.07/15.22 | | | | | | | | | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.07/15.22 | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 110.07/15.22 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 110.07/15.22 | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = % 110.07/15.22 | | | | | | | | | v4 & vlookupStore(v5, all_346_6) = v3 & % 110.07/15.22 | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.07/15.22 | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) = % 110.07/15.22 | | | | | | | | | all_338_0 & vSelect(v2) & vTable(v6) & vTable(v1) & % 110.07/15.22 | | | | | | | | | vOptTable(v4) & vOptTable(v3) & vName(v5) & % 110.07/15.22 | | | | | | | | | vPred(v0)) | ? [v0: vTable] : ? [v1: vQuery] : ? % 110.07/15.22 | | | | | | | | | [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.22 | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.22 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.22 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) = % 110.07/15.22 | | | | | | | | | v5 & vDifference(v3, v1) = all_338_0 & vtvalue(v0) % 110.07/15.22 | | | | | | | | | = v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.07/15.22 | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.07/15.22 | | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.07/15.22 | | | | | | | | | v1) | ~ vTable(v6))) % 110.07/15.22 | | | | | | | | | % 110.07/15.22 | | | | | | | | | BETA: splitting (410) gives: % 110.07/15.22 | | | | | | | | | % 110.07/15.22 | | | | | | | | | Case 1: % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | (411) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 110.07/15.22 | | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.07/15.22 | | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 110.07/15.22 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 110.07/15.22 | | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 110.07/15.22 | | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.07/15.22 | | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.07/15.22 | | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) % 110.07/15.22 | | | | | | | | | | = all_338_0 & vSelect(v2) & vTable(v6) & % 110.07/15.22 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.07/15.22 | | | | | | | | | | vName(v5) & vPred(v0)) % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | DELTA: instantiating (411) with fresh symbols all_612_0, % 110.07/15.22 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.07/15.22 | | | | | | | | | | all_612_5, all_612_6, all_612_7 gives: % 110.07/15.22 | | | | | | | | | | (412) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.07/15.22 | | | | | | | | | | vfilterTable(all_612_1, all_612_7) = all_612_6 & % 110.07/15.22 | | | | | | | | | | vprojectTable(all_612_5, all_612_6) = all_612_3 & % 110.07/15.22 | | | | | | | | | | vlookupStore(all_612_2, all_346_6) = all_612_4 & % 110.07/15.22 | | | | | | | | | | visSomeTable(all_612_3) = all_612_0 & % 110.07/15.22 | | | | | | | | | | visSomeTable(all_612_4) = 0 & vgetTable(all_612_4) % 110.07/15.22 | | | | | | | | | | = all_612_1 & vselectFromWhere(all_612_5, % 110.07/15.22 | | | | | | | | | | all_612_2, all_612_7) = all_338_0 & % 110.07/15.22 | | | | | | | | | | vSelect(all_612_5) & vTable(all_612_1) & % 110.07/15.22 | | | | | | | | | | vTable(all_612_6) & vOptTable(all_612_3) & % 110.07/15.22 | | | | | | | | | | vOptTable(all_612_4) & vName(all_612_2) & % 110.07/15.22 | | | | | | | | | | vPred(all_612_7) % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (412) are inconsistent by % 110.07/15.22 | | | | | | | | | | sub-proof #10. % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | Case 2: % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | (413) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.22 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.22 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.22 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.22 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) % 110.07/15.22 | | | | | | | | | | = v5 & vDifference(v3, v1) = all_338_0 & % 110.07/15.22 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.22 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.07/15.22 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.07/15.22 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.22 | | | | | | | | | | vTable(v6))) % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | DELTA: instantiating (413) with fresh symbols all_612_0, % 110.07/15.22 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, all_612_5 % 110.07/15.22 | | | | | | | | | | gives: % 110.07/15.22 | | | | | | | | | | (414) vreduce(all_612_4, all_346_6) = all_612_3 & % 110.07/15.22 | | | | | | | | | | visSomeQuery(all_612_3) = 0 & vgetQuery(all_612_3) % 110.07/15.22 | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.22 | | | | | | | | | | vDifference(all_612_2, all_612_1) = all_612_0 & % 110.07/15.22 | | | | | | | | | | vDifference(all_612_2, all_612_4) = all_338_0 & % 110.07/15.22 | | | | | | | | | | vtvalue(all_612_5) = all_612_2 & % 110.07/15.22 | | | | | | | | | | vOptQuery(all_612_3) & vOptQuery(all_346_1) & % 110.07/15.22 | | | | | | | | | | vTable(all_612_5) & vQuery(all_612_0) & % 110.07/15.22 | | | | | | | | | | vQuery(all_612_1) & vQuery(all_612_2) & % 110.07/15.22 | | | | | | | | | | vQuery(all_612_4) & ! [v0: vTable] : ( ~ % 110.07/15.22 | | | | | | | | | | (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | ALPHA: (414) implies: % 110.07/15.22 | | | | | | | | | | (415) vQuery(all_612_4) % 110.07/15.22 | | | | | | | | | | (416) vQuery(all_612_2) % 110.07/15.22 | | | | | | | | | | (417) vDifference(all_612_2, all_612_4) = all_338_0 % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.07/15.22 | | | | | | | | | | vq2, all_612_2, all_612_4, all_338_0, simplifying % 110.07/15.22 | | | | | | | | | | with (4), (5), (18), (415), (416), (417) gives: % 110.07/15.22 | | | | | | | | | | (418) $false % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | CLOSE: (418) is inconsistent. % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | End of split % 110.07/15.22 | | | | | | | | | % 110.07/15.22 | | | | | | | | Case 2: % 110.07/15.22 | | | | | | | | | % 110.07/15.22 | | | | | | | | | (419) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.22 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 110.07/15.22 | | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.22 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.22 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) % 110.07/15.22 | | | | | | | | | = v5 & vIntersection(v3, v1) = all_338_0 & % 110.07/15.22 | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.22 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.07/15.22 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.07/15.22 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.22 | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] % 110.07/15.22 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 110.07/15.22 | | | | | | | | | vQuery] : ? [v5: vQuery] : (vreduce(v1, all_346_6) % 110.07/15.22 | | | | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.22 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 & % 110.07/15.22 | | | | | | | | | vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 110.07/15.22 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) & % 110.07/15.22 | | | | | | | | | vQuery(v5) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.07/15.22 | | | | | | | | | ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.22 | | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] % 110.07/15.22 | | | | | | | | | : ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] % 110.07/15.22 | | | | | | | | | : (all_346_1 = vnoQuery & ~ (v4 = 0) & % 110.07/15.22 | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & visSomeTable(v2) % 110.07/15.22 | | | | | | | | | = v4 & vselectFromWhere(v1, v3, v0) = all_338_0 & % 110.07/15.22 | | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & % 110.07/15.22 | | | | | | | | | vPred(v0)) % 110.07/15.22 | | | | | | | | | % 110.07/15.22 | | | | | | | | | BETA: splitting (419) gives: % 110.07/15.22 | | | | | | | | | % 110.07/15.22 | | | | | | | | | Case 1: % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | (420) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.22 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.22 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.22 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.22 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, % 110.07/15.22 | | | | | | | | | | v4) = v5 & vIntersection(v3, v1) = all_338_0 & % 110.07/15.22 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.22 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.07/15.22 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.07/15.22 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.22 | | | | | | | | | | vTable(v6))) % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | DELTA: instantiating (420) with fresh symbols all_612_0, % 110.07/15.22 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, all_612_5 % 110.07/15.22 | | | | | | | | | | gives: % 110.07/15.22 | | | | | | | | | | (421) vreduce(all_612_4, all_346_6) = all_612_3 & % 110.07/15.22 | | | | | | | | | | visSomeQuery(all_612_3) = 0 & vgetQuery(all_612_3) % 110.07/15.22 | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.22 | | | | | | | | | | vIntersection(all_612_2, all_612_1) = all_612_0 & % 110.07/15.22 | | | | | | | | | | vIntersection(all_612_2, all_612_4) = all_338_0 & % 110.07/15.22 | | | | | | | | | | vtvalue(all_612_5) = all_612_2 & % 110.07/15.22 | | | | | | | | | | vOptQuery(all_612_3) & vOptQuery(all_346_1) & % 110.07/15.22 | | | | | | | | | | vTable(all_612_5) & vQuery(all_612_0) & % 110.07/15.22 | | | | | | | | | | vQuery(all_612_1) & vQuery(all_612_2) & % 110.07/15.22 | | | | | | | | | | vQuery(all_612_4) & ! [v0: vTable] : ( ~ % 110.07/15.22 | | | | | | | | | | (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | ALPHA: (421) implies: % 110.07/15.22 | | | | | | | | | | (422) vQuery(all_612_4) % 110.07/15.22 | | | | | | | | | | (423) vQuery(all_612_2) % 110.07/15.22 | | | | | | | | | | (424) vIntersection(all_612_2, all_612_4) = all_338_0 % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.07/15.22 | | | | | | | | | | vq2, all_612_2, all_612_4, all_338_0, simplifying % 110.07/15.22 | | | | | | | | | | with (4), (5), (18), (422), (423), (424) gives: % 110.07/15.22 | | | | | | | | | | (425) $false % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | | CLOSE: (425) is inconsistent. % 110.07/15.22 | | | | | | | | | | % 110.07/15.22 | | | | | | | | | Case 2: % 110.07/15.22 | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | (426) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.23 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.23 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.23 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.23 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 110.07/15.23 | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 110.07/15.23 | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) % 110.07/15.23 | | | | | | | | | | & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.07/15.23 | | | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.07/15.23 | | | | | | | | | | v1) | ~ vTable(v6))) | ? [v0: vPred] : ? % 110.07/15.23 | | | | | | | | | | [v1: vSelect] : ? [v2: vOptTable] : ? [v3: vName] % 110.07/15.23 | | | | | | | | | | : ? [v4: int] : (all_346_1 = vnoQuery & ~ (v4 = % 110.07/15.23 | | | | | | | | | | 0) & vlookupStore(v3, all_346_6) = v2 & % 110.07/15.23 | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.07/15.23 | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) & % 110.07/15.23 | | | | | | | | | | vName(v3) & vPred(v0)) % 110.07/15.23 | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | BETA: splitting (426) gives: % 110.07/15.23 | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | Case 1: % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | (427) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.23 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.23 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.23 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.23 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 110.07/15.23 | | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 110.07/15.23 | | | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.07/15.23 | | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 110.07/15.23 | | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 110.07/15.23 | | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | DELTA: instantiating (427) with fresh symbols all_612_0, % 110.07/15.23 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.07/15.23 | | | | | | | | | | | all_612_5 gives: % 110.07/15.23 | | | | | | | | | | | (428) vreduce(all_612_4, all_346_6) = all_612_3 & % 110.07/15.23 | | | | | | | | | | | visSomeQuery(all_612_3) = 0 & vgetQuery(all_612_3) % 110.07/15.23 | | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.23 | | | | | | | | | | | vUnion(all_612_2, all_612_1) = all_612_0 & % 110.07/15.23 | | | | | | | | | | | vUnion(all_612_2, all_612_4) = all_338_0 & % 110.07/15.23 | | | | | | | | | | | vtvalue(all_612_5) = all_612_2 & % 110.07/15.23 | | | | | | | | | | | vOptQuery(all_612_3) & vOptQuery(all_346_1) & % 110.07/15.23 | | | | | | | | | | | vTable(all_612_5) & vQuery(all_612_0) & % 110.07/15.23 | | | | | | | | | | | vQuery(all_612_1) & vQuery(all_612_2) & % 110.07/15.23 | | | | | | | | | | | vQuery(all_612_4) & ! [v0: vTable] : ( ~ % 110.07/15.23 | | | | | | | | | | | (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | ALPHA: (428) implies: % 110.07/15.23 | | | | | | | | | | | (429) vQuery(all_612_4) % 110.07/15.23 | | | | | | | | | | | (430) vQuery(all_612_2) % 110.07/15.23 | | | | | | | | | | | (431) vTable(all_612_5) % 110.07/15.23 | | | | | | | | | | | (432) vtvalue(all_612_5) = all_612_2 % 110.07/15.23 | | | | | | | | | | | (433) vUnion(all_612_2, all_612_4) = all_338_0 % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_612_5, % 110.07/15.23 | | | | | | | | | | | all_612_2, simplifying with (431), (432) gives: % 110.07/15.23 | | | | | | | | | | | (434) visValue(all_612_2) = 0 % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | GROUND_INST: instantiating (isValue-2) with all_605_7, % 110.07/15.23 | | | | | | | | | | | all_605_6, vq1, simplifying with (364), (365), % 110.07/15.23 | | | | | | | | | | | (367) gives: % 110.07/15.23 | | | | | | | | | | | (435) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_612_2, % 110.07/15.23 | | | | | | | | | | | all_612_4, all_338_0, simplifying with (4), (5), % 110.07/15.23 | | | | | | | | | | | (18), (429), (430), (433) gives: % 110.07/15.23 | | | | | | | | | | | (436) all_612_2 = vq1 & all_612_4 = vq2 % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | ALPHA: (436) implies: % 110.07/15.23 | | | | | | | | | | | (437) all_612_2 = vq1 % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | DELTA: instantiating (435) with fresh symbol all_631_0 % 110.07/15.23 | | | | | | | | | | | gives: % 110.07/15.23 | | | | | | | | | | | (438) ~ (all_631_0 = 0) & visValue(vq1) = all_631_0 % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | ALPHA: (438) implies: % 110.07/15.23 | | | | | | | | | | | (439) ~ (all_631_0 = 0) % 110.07/15.23 | | | | | | | | | | | (440) visValue(vq1) = all_631_0 % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | REDUCE: (434), (437) imply: % 110.07/15.23 | | | | | | | | | | | (441) visValue(vq1) = 0 % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_631_0, vq1, % 110.07/15.23 | | | | | | | | | | | simplifying with (440), (441) gives: % 110.07/15.23 | | | | | | | | | | | (442) all_631_0 = 0 % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | REDUCE: (439), (442) imply: % 110.07/15.23 | | | | | | | | | | | (443) $false % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | CLOSE: (443) is inconsistent. % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | Case 2: % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | (444) ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 110.07/15.23 | | | | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.07/15.23 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & % 110.07/15.23 | | | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & % 110.07/15.23 | | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.07/15.23 | | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) % 110.07/15.23 | | | | | | | | | | | & vName(v3) & vPred(v0)) % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | DELTA: instantiating (444) with fresh symbols all_612_0, % 110.07/15.23 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.07/15.23 | | | | | | | | | | | (445) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.07/15.23 | | | | | | | | | | | vlookupStore(all_612_1, all_346_6) = all_612_2 & % 110.07/15.23 | | | | | | | | | | | visSomeTable(all_612_2) = all_612_0 & % 110.07/15.23 | | | | | | | | | | | vselectFromWhere(all_612_3, all_612_1, all_612_4) % 110.07/15.23 | | | | | | | | | | | = all_338_0 & vSelect(all_612_3) & % 110.07/15.23 | | | | | | | | | | | vOptTable(all_612_2) & vName(all_612_1) & % 110.07/15.23 | | | | | | | | | | | vPred(all_612_4) % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (445) are inconsistent by % 110.07/15.23 | | | | | | | | | | | sub-proof #9. % 110.07/15.23 | | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | End of split % 110.07/15.23 | | | | | | | | | | % 110.07/15.23 | | | | | | | | | End of split % 110.07/15.23 | | | | | | | | | % 110.07/15.23 | | | | | | | | End of split % 110.07/15.23 | | | | | | | | % 110.07/15.23 | | | | | | | End of split % 110.07/15.23 | | | | | | | % 110.07/15.23 | | | | | | Case 2: % 110.07/15.23 | | | | | | | % 110.07/15.23 | | | | | | | (446) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.07/15.23 | | | | | | | ? [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & % 110.07/15.23 | | | | | | | ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.07/15.23 | | | | | | | visSomeQuery(v2) = v3 & vDifference(v4, v1) = all_338_0 % 110.07/15.23 | | | | | | | & vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.07/15.23 | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.07/15.23 | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.07/15.23 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.23 | | | | | | | [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ % 110.07/15.23 | | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.07/15.23 | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v4, v1) = % 110.07/15.23 | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.07/15.23 | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: vTable] % 110.07/15.23 | | | | | | | : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.07/15.23 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.23 | | | | | | | [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ % 110.07/15.23 | | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.07/15.23 | | | | | | | visSomeQuery(v2) = v3 & vUnion(v4, v1) = all_338_0 & % 110.07/15.23 | | | | | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.07/15.23 | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.07/15.23 | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.07/15.23 | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.23 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, all_346_6) % 110.07/15.23 | | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.07/15.23 | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = v4 & % 110.07/15.23 | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.23 | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.07/15.23 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.07/15.23 | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 110.07/15.23 | | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.07/15.23 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 110.07/15.23 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.07/15.23 | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.07/15.23 | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.23 | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.07/15.23 | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) = % 110.07/15.23 | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.07/15.23 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! % 110.07/15.23 | | | | | | | [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.07/15.23 | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.07/15.23 | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.23 | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 110.07/15.23 | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.07/15.23 | | | | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.07/15.23 | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.07/15.23 | | | | | | | vsomeQuery(v4) = all_346_1 & vUnion(v3, v1) = v4 & % 110.07/15.23 | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.23 | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.07/15.23 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.07/15.23 | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 110.07/15.23 | | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.07/15.23 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 110.07/15.23 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.07/15.23 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.23 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.23 | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.23 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.07/15.23 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 110.07/15.23 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.07/15.23 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 110.07/15.23 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.07/15.23 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.23 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.23 | | | | | | | vIntersection(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.23 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.07/15.23 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 110.07/15.23 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.07/15.23 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 110.07/15.23 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.07/15.23 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.23 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.23 | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) % 110.07/15.23 | | | | | | | & vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 110.07/15.23 | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 110.07/15.23 | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 110.07/15.23 | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.07/15.23 | | | | | | | vTable] : (all_346_1 = vnoQuery & vtvalue(v0) = % 110.07/15.23 | | | | | | | all_338_0 & vTable(v0)) % 110.07/15.23 | | | | | | | % 110.07/15.23 | | | | | | | BETA: splitting (446) gives: % 110.07/15.23 | | | | | | | % 110.07/15.23 | | | | | | | Case 1: % 110.07/15.23 | | | | | | | | % 110.07/15.23 | | | | | | | | (447) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] % 110.07/15.23 | | | | | | | | : ? [v3: int] : ? [v4: vQuery] : (all_346_1 = % 110.07/15.23 | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 % 110.07/15.23 | | | | | | | | & visSomeQuery(v2) = v3 & vDifference(v4, v1) = % 110.07/15.23 | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.07/15.23 | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 110.07/15.23 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) % 110.07/15.23 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.23 | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.07/15.23 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.07/15.23 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.23 | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 110.07/15.23 | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.07/15.23 | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) % 110.07/15.23 | | | | | | | | | ~ vTable(v5))) | ? [v0: vTable] : ? [v1: % 110.07/15.23 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? [v4: % 110.07/15.23 | | | | | | | | vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.23 | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.23 | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.07/15.23 | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) % 110.07/15.23 | | | | | | | | & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.07/15.23 | | | | | | | | vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : % 110.07/15.23 | | | | | | | | ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.23 | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.23 | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.07/15.23 | | | | | | | | vDifference(v3, v1) = v4 & vDifference(v0, v1) = % 110.07/15.23 | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.07/15.23 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & % 110.07/15.23 | | | | | | | | ! [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.07/15.23 | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.07/15.23 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.23 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 110.07/15.23 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.07/15.23 | | | | | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.07/15.23 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.07/15.23 | | | | | | | | vsomeQuery(v4) = all_346_1 & vIntersection(v3, v1) = % 110.07/15.23 | | | | | | | | v4 & vIntersection(v0, v1) = all_338_0 & % 110.07/15.23 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.07/15.23 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.07/15.23 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.07/15.23 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.07/15.23 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.23 | | | | | | | | v0) | ~ vTable(v5))) % 110.07/15.23 | | | | | | | | % 110.07/15.23 | | | | | | | | BETA: splitting (447) gives: % 110.07/15.23 | | | | | | | | % 110.07/15.23 | | | | | | | | Case 1: % 110.07/15.23 | | | | | | | | | % 110.07/15.23 | | | | | | | | | (448) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.23 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.07/15.23 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.07/15.23 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.23 | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 110.07/15.23 | | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.07/15.23 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.23 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 110.07/15.23 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? % 110.07/15.23 | | | | | | | | | [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.23 | | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.07/15.23 | | | | | | | | | & vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = % 110.07/15.23 | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.07/15.23 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.23 | | | | | | | | | v1) | ~ vTable(v5))) % 110.07/15.23 | | | | | | | | | % 110.07/15.23 | | | | | | | | | BETA: splitting (448) gives: % 110.07/15.23 | | | | | | | | | % 110.07/15.23 | | | | | | | | | Case 1: % 110.07/15.23 | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | (449) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.23 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.07/15.23 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.07/15.23 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.23 | | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = % 110.07/15.23 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.07/15.23 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.23 | | | | | | | | | | v1) | ~ vTable(v5))) % 110.07/15.23 | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | DELTA: instantiating (449) with fresh symbols all_612_0, % 110.07/15.23 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.07/15.23 | | | | | | | | | | (450) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.07/15.23 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.07/15.23 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.07/15.23 | | | | | | | | | | vDifference(all_612_0, all_612_3) = all_338_0 & % 110.07/15.23 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.07/15.23 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.07/15.23 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.07/15.23 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.07/15.23 | | | | | | | | | | vTable(v0)) % 110.07/15.23 | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (450) are inconsistent by % 110.07/15.23 | | | | | | | | | | sub-proof #8. % 110.07/15.23 | | | | | | | | | | % 110.07/15.23 | | | | | | | | | Case 2: % 110.07/15.23 | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | (451) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.23 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.07/15.23 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.07/15.23 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.23 | | | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = % 110.07/15.23 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.07/15.23 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.23 | | | | | | | | | | v1) | ~ vTable(v5))) % 110.07/15.23 | | | | | | | | | | % 110.07/15.23 | | | | | | | | | | DELTA: instantiating (451) with fresh symbols all_612_0, % 110.07/15.23 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.07/15.24 | | | | | | | | | | (452) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.07/15.24 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.07/15.24 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.07/15.24 | | | | | | | | | | vIntersection(all_612_0, all_612_3) = all_338_0 & % 110.07/15.24 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.07/15.24 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.07/15.24 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.07/15.24 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.07/15.24 | | | | | | | | | | vTable(v0)) % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (452) are inconsistent by % 110.07/15.24 | | | | | | | | | | sub-proof #7. % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | End of split % 110.07/15.24 | | | | | | | | | % 110.07/15.24 | | | | | | | | Case 2: % 110.07/15.24 | | | | | | | | | % 110.07/15.24 | | | | | | | | | (453) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.24 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.07/15.24 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.07/15.24 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.24 | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.07/15.24 | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.07/15.24 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.24 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 110.07/15.24 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.07/15.24 | | | | | | | | | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.07/15.24 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.07/15.24 | | | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = % 110.07/15.24 | | | | | | | | | v4 & vDifference(v0, v1) = all_338_0 & % 110.07/15.24 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.07/15.24 | | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.07/15.24 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.07/15.24 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.07/15.24 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 110.07/15.24 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.07/15.24 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.24 | | | | | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.07/15.24 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.24 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.07/15.24 | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) % 110.07/15.24 | | | | | | | | | = all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.07/15.24 | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) % 110.07/15.24 | | | | | | | | | & ! [v5: vTable] : ! [v6: vTable] : ( ~ % 110.07/15.24 | | | | | | | | | (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | ~ % 110.07/15.24 | | | | | | | | | vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : ( % 110.07/15.24 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.07/15.24 | | | | | | | | | % 110.07/15.24 | | | | | | | | | BETA: splitting (453) gives: % 110.07/15.24 | | | | | | | | | % 110.07/15.24 | | | | | | | | | Case 1: % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | (454) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.24 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.07/15.24 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.07/15.24 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.24 | | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.07/15.24 | | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.07/15.24 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.24 | | | | | | | | | | v1) | ~ vTable(v5))) % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | DELTA: instantiating (454) with fresh symbols all_612_0, % 110.07/15.24 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.07/15.24 | | | | | | | | | | (455) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.07/15.24 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.07/15.24 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.07/15.24 | | | | | | | | | | vUnion(all_612_0, all_612_3) = all_338_0 & % 110.07/15.24 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.07/15.24 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.07/15.24 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.07/15.24 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.07/15.24 | | | | | | | | | | vTable(v0)) % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (455) are inconsistent by % 110.07/15.24 | | | | | | | | | | sub-proof #6. % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | Case 2: % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | (456) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.24 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.24 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.07/15.24 | | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.07/15.24 | | | | | | | | | | & vDifference(v3, v1) = v4 & vDifference(v0, v1) % 110.07/15.24 | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 110.07/15.24 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.07/15.24 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.07/15.24 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.24 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.07/15.24 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.07/15.24 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.07/15.24 | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.07/15.24 | | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.07/15.24 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.24 | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.07/15.24 | | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, % 110.07/15.24 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.24 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.07/15.24 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.07/15.24 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.24 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.07/15.24 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.07/15.24 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | BETA: splitting (456) gives: % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | Case 1: % 110.07/15.24 | | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | | (457) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.24 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.24 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.07/15.24 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.07/15.24 | | | | | | | | | | | all_346_1 & vDifference(v3, v1) = v4 & % 110.07/15.24 | | | | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) % 110.07/15.24 | | | | | | | | | | | & vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) % 110.07/15.24 | | | | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.07/15.24 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.24 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.07/15.24 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.07/15.24 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.07/15.24 | | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | | DELTA: instantiating (457) with fresh symbols all_612_0, % 110.07/15.24 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.07/15.24 | | | | | | | | | | | (458) vreduce(all_612_4, all_346_6) = all_612_2 & % 110.07/15.24 | | | | | | | | | | | visSomeQuery(all_612_2) = 0 & vgetQuery(all_612_2) % 110.07/15.24 | | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.24 | | | | | | | | | | | vDifference(all_612_1, all_612_3) = all_612_0 & % 110.07/15.24 | | | | | | | | | | | vDifference(all_612_4, all_612_3) = all_338_0 & % 110.07/15.24 | | | | | | | | | | | vOptQuery(all_612_2) & vOptQuery(all_346_1) & % 110.07/15.24 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_1) & % 110.07/15.24 | | | | | | | | | | | vQuery(all_612_3) & vQuery(all_612_4) & ! [v0: % 110.07/15.24 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.07/15.24 | | | | | | | | | | | all_612_3) | ~ (vtvalue(v0) = all_612_4) | ~ % 110.07/15.24 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.07/15.24 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 110.07/15.24 | | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | | ALPHA: (458) implies: % 110.07/15.24 | | | | | | | | | | | (459) vQuery(all_612_4) % 110.07/15.24 | | | | | | | | | | | (460) vQuery(all_612_3) % 110.07/15.24 | | | | | | | | | | | (461) vDifference(all_612_4, all_612_3) = all_338_0 % 110.07/15.24 | | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.07/15.24 | | | | | | | | | | | vq2, all_612_4, all_612_3, all_338_0, simplifying % 110.07/15.24 | | | | | | | | | | | with (4), (5), (18), (459), (460), (461) gives: % 110.07/15.24 | | | | | | | | | | | (462) $false % 110.07/15.24 | | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | | CLOSE: (462) is inconsistent. % 110.07/15.24 | | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | Case 2: % 110.07/15.24 | | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | | (463) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.24 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.24 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.07/15.24 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.07/15.24 | | | | | | | | | | | all_346_1 & vIntersection(v3, v1) = v4 & % 110.07/15.24 | | | | | | | | | | | vIntersection(v0, v1) = all_338_0 & % 110.07/15.24 | | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & % 110.07/15.24 | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.07/15.24 | | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 110.07/15.24 | | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 110.07/15.24 | | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.07/15.24 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ % 110.07/15.24 | | | | | | | | | | | vTable(v5))) % 110.07/15.24 | | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | | DELTA: instantiating (463) with fresh symbols all_612_0, % 110.07/15.24 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.07/15.24 | | | | | | | | | | | (464) vreduce(all_612_4, all_346_6) = all_612_2 & % 110.07/15.24 | | | | | | | | | | | visSomeQuery(all_612_2) = 0 & vgetQuery(all_612_2) % 110.07/15.24 | | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.24 | | | | | | | | | | | vIntersection(all_612_1, all_612_3) = all_612_0 & % 110.07/15.24 | | | | | | | | | | | vIntersection(all_612_4, all_612_3) = all_338_0 & % 110.07/15.24 | | | | | | | | | | | vOptQuery(all_612_2) & vOptQuery(all_346_1) & % 110.07/15.24 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_1) & % 110.07/15.24 | | | | | | | | | | | vQuery(all_612_3) & vQuery(all_612_4) & ! [v0: % 110.07/15.24 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.07/15.24 | | | | | | | | | | | all_612_3) | ~ (vtvalue(v0) = all_612_4) | ~ % 110.07/15.24 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.07/15.24 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 110.07/15.24 | | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | | ALPHA: (464) implies: % 110.07/15.24 | | | | | | | | | | | (465) vQuery(all_612_4) % 110.07/15.24 | | | | | | | | | | | (466) vQuery(all_612_3) % 110.07/15.24 | | | | | | | | | | | (467) vIntersection(all_612_4, all_612_3) = all_338_0 % 110.07/15.24 | | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.07/15.24 | | | | | | | | | | | vq2, all_612_4, all_612_3, all_338_0, simplifying % 110.07/15.24 | | | | | | | | | | | with (4), (5), (18), (465), (466), (467) gives: % 110.07/15.24 | | | | | | | | | | | (468) $false % 110.07/15.24 | | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | | CLOSE: (468) is inconsistent. % 110.07/15.24 | | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | End of split % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | End of split % 110.07/15.24 | | | | | | | | | % 110.07/15.24 | | | | | | | | End of split % 110.07/15.24 | | | | | | | | % 110.07/15.24 | | | | | | | Case 2: % 110.07/15.24 | | | | | | | | % 110.07/15.24 | | | | | | | | (469) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] % 110.07/15.24 | | | | | | | | : ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.07/15.24 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.24 | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.07/15.24 | | | | | | | | vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 & % 110.07/15.24 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.07/15.24 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.07/15.24 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.07/15.24 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.07/15.24 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.24 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 110.07/15.24 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.07/15.24 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.07/15.24 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.24 | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.24 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.07/15.24 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 110.07/15.24 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.07/15.24 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.07/15.24 | | | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.24 | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 110.07/15.24 | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.07/15.24 | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 110.07/15.24 | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) & % 110.07/15.24 | | | | | | | | ! [v4: vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.07/15.24 | | | | | | | | = v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | % 110.07/15.24 | | | | | | | | ~ vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.07/15.24 | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vQuery] : ? % 110.07/15.24 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.07/15.24 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.07/15.24 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.24 | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.24 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.07/15.24 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 110.07/15.24 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.07/15.24 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.07/15.24 | | | | | | | | | ? [v0: vTable] : (all_346_1 = vnoQuery & vtvalue(v0) % 110.07/15.24 | | | | | | | | = all_338_0 & vTable(v0)) % 110.07/15.24 | | | | | | | | % 110.07/15.24 | | | | | | | | BETA: splitting (469) gives: % 110.07/15.24 | | | | | | | | % 110.07/15.24 | | | | | | | | Case 1: % 110.07/15.24 | | | | | | | | | % 110.07/15.24 | | | | | | | | | (470) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.24 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.24 | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.24 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.07/15.24 | | | | | | | | | vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 & % 110.07/15.24 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.07/15.24 | | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.07/15.24 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.07/15.24 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.07/15.24 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 110.07/15.24 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.07/15.24 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.24 | | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.24 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.07/15.24 | | | | | | | | | & vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.24 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.07/15.24 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.07/15.24 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.07/15.24 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.07/15.24 | | | | | | | | | = v0) | ~ vTable(v4))) % 110.07/15.24 | | | | | | | | | % 110.07/15.24 | | | | | | | | | BETA: splitting (470) gives: % 110.07/15.24 | | | | | | | | | % 110.07/15.24 | | | | | | | | | Case 1: % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | (471) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.24 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.24 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.07/15.24 | | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.07/15.24 | | | | | | | | | | & vUnion(v3, v1) = v4 & vUnion(v0, v1) = % 110.07/15.24 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.07/15.24 | | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.07/15.24 | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 110.07/15.24 | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 110.07/15.24 | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] % 110.07/15.24 | | | | | | | | | | : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | DELTA: instantiating (471) with fresh symbols all_612_0, % 110.07/15.24 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.07/15.24 | | | | | | | | | | (472) vreduce(all_612_4, all_346_6) = all_612_2 & % 110.07/15.24 | | | | | | | | | | visSomeQuery(all_612_2) = 0 & vgetQuery(all_612_2) % 110.07/15.24 | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.24 | | | | | | | | | | vUnion(all_612_1, all_612_3) = all_612_0 & % 110.07/15.24 | | | | | | | | | | vUnion(all_612_4, all_612_3) = all_338_0 & % 110.07/15.24 | | | | | | | | | | vOptQuery(all_612_2) & vOptQuery(all_346_1) & % 110.07/15.24 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_1) & % 110.07/15.24 | | | | | | | | | | vQuery(all_612_3) & vQuery(all_612_4) & ! [v0: % 110.07/15.24 | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.07/15.24 | | | | | | | | | | all_612_3) | ~ (vtvalue(v0) = all_612_4) | ~ % 110.07/15.24 | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : ( % 110.07/15.24 | | | | | | | | | | ~ (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | ALPHA: (472) implies: % 110.07/15.24 | | | | | | | | | | (473) vQuery(all_612_4) % 110.07/15.24 | | | | | | | | | | (474) vQuery(all_612_3) % 110.07/15.24 | | | | | | | | | | (475) vQuery(all_612_1) % 110.07/15.24 | | | | | | | | | | (476) vQuery(all_612_0) % 110.07/15.24 | | | | | | | | | | (477) vUnion(all_612_4, all_612_3) = all_338_0 % 110.07/15.24 | | | | | | | | | | (478) vUnion(all_612_1, all_612_3) = all_612_0 % 110.07/15.24 | | | | | | | | | | (479) vsomeQuery(all_612_0) = all_346_1 % 110.07/15.24 | | | | | | | | | | (480) vgetQuery(all_612_2) = all_612_1 % 110.07/15.24 | | | | | | | | | | (481) vreduce(all_612_4, all_346_6) = all_612_2 % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | GROUND_INST: instantiating (TUnion_inv2) with all_346_5, % 110.07/15.24 | | | | | | | | | | all_612_4, all_612_3, all_346_4, all_338_0, % 110.07/15.24 | | | | | | | | | | simplifying with (22), (25), (33), (473), (474), % 110.07/15.24 | | | | | | | | | | (477) gives: % 110.07/15.24 | | | | | | | | | | (482) vptcheck(all_346_5, all_612_3, all_346_4) = 0 % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_612_4, % 110.07/15.24 | | | | | | | | | | all_612_3, all_338_0, simplifying with (4), (5), % 110.07/15.24 | | | | | | | | | | (18), (473), (474), (477) gives: % 110.07/15.24 | | | | | | | | | | (483) all_612_3 = vq2 & all_612_4 = vq1 % 110.07/15.24 | | | | | | | | | | % 110.07/15.24 | | | | | | | | | | ALPHA: (483) implies: % 110.07/15.24 | | | | | | | | | | (484) all_612_4 = vq1 % 110.07/15.24 | | | | | | | | | | (485) all_612_3 = vq2 % 110.07/15.24 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | GROUND_INST: instantiating (3) with all_346_6, all_346_5, % 110.07/15.25 | | | | | | | | | | all_346_4, all_605_0, all_346_2, simplifying with % 110.07/15.25 | | | | | | | | | | (22), (24), (25), (30), (39), (366), (368) gives: % 110.07/15.25 | | | | | | | | | | (486) ? [v0: any] : ? [v1: any] : (vptcheck(all_346_5, % 110.07/15.25 | | | | | | | | | | all_605_0, all_346_4) = v1 & % 110.07/15.25 | | | | | | | | | | vstoreContextConsistent(all_346_6, all_346_5) = % 110.07/15.25 | | | | | | | | | | v0 & ( ~ (v0 = 0) | v1 = 0)) % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_359_0, % 110.07/15.25 | | | | | | | | | | all_605_0, all_346_2, simplifying with (41), (42), % 110.07/15.25 | | | | | | | | | | (366), (368) gives: % 110.07/15.25 | | | | | | | | | | (487) all_605_0 = all_359_0 % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | GROUND_INST: instantiating (getQuery-0) with all_605_0, % 110.07/15.25 | | | | | | | | | | all_346_2, simplifying with (366), (368) gives: % 110.07/15.25 | | | | | | | | | | (488) vgetQuery(all_346_2) = all_605_0 % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_346_3, % 110.07/15.25 | | | | | | | | | | all_612_0, all_346_1, simplifying with (23), (28), % 110.07/15.25 | | | | | | | | | | (476), (479) gives: % 110.07/15.25 | | | | | | | | | | (489) all_612_0 = all_346_3 % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | DELTA: instantiating (486) with fresh symbols all_639_0, % 110.07/15.25 | | | | | | | | | | all_639_1 gives: % 110.07/15.25 | | | | | | | | | | (490) vptcheck(all_346_5, all_605_0, all_346_4) = % 110.07/15.25 | | | | | | | | | | all_639_0 & vstoreContextConsistent(all_346_6, % 110.07/15.25 | | | | | | | | | | all_346_5) = all_639_1 & ( ~ (all_639_1 = 0) | % 110.07/15.25 | | | | | | | | | | all_639_0 = 0) % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | ALPHA: (490) implies: % 110.07/15.25 | | | | | | | | | | (491) vptcheck(all_346_5, all_605_0, all_346_4) = % 110.07/15.25 | | | | | | | | | | all_639_0 % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | REDUCE: (482), (485) imply: % 110.07/15.25 | | | | | | | | | | (492) vptcheck(all_346_5, vq2, all_346_4) = 0 % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | REDUCE: (487), (491) imply: % 110.07/15.25 | | | | | | | | | | (493) vptcheck(all_346_5, all_359_0, all_346_4) = % 110.07/15.25 | | | | | | | | | | all_639_0 % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | REDUCE: (481), (484) imply: % 110.07/15.25 | | | | | | | | | | (494) vreduce(vq1, all_346_6) = all_612_2 % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | REDUCE: (487), (488) imply: % 110.07/15.25 | | | | | | | | | | (495) vgetQuery(all_346_2) = all_359_0 % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | REDUCE: (478), (485), (489) imply: % 110.07/15.25 | | | | | | | | | | (496) vUnion(all_612_1, vq2) = all_346_3 % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | GROUND_INST: instantiating (10) with all_346_2, all_612_2, % 110.07/15.25 | | | | | | | | | | all_346_6, vq1, simplifying with (30), (494) % 110.07/15.25 | | | | | | | | | | gives: % 110.07/15.25 | | | | | | | | | | (497) all_612_2 = all_346_2 % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | GROUND_INST: instantiating (12) with 0, all_639_0, all_346_4, % 110.07/15.25 | | | | | | | | | | all_359_0, all_346_5, simplifying with (56), (493) % 110.07/15.25 | | | | | | | | | | gives: % 110.07/15.25 | | | | | | | | | | (498) all_639_0 = 0 % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | REDUCE: (480), (497) imply: % 110.07/15.25 | | | | | | | | | | (499) vgetQuery(all_346_2) = all_612_1 % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | GROUND_INST: instantiating (7) with all_359_0, all_612_1, % 110.07/15.25 | | | | | | | | | | all_346_2, simplifying with (495), (499) gives: % 110.07/15.25 | | | | | | | | | | (500) all_612_1 = all_359_0 % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | REDUCE: (496), (500) imply: % 110.07/15.25 | | | | | | | | | | (501) vUnion(all_359_0, vq2) = all_346_3 % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | REF_CLOSE: (5), (12), (21), (22), (25), (34), (41), (56), % 110.07/15.25 | | | | | | | | | | (492), (501), (TUnion) are inconsistent by % 110.07/15.25 | | | | | | | | | | sub-proof #5. % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | Case 2: % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | (502) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.25 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 110.07/15.25 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.07/15.25 | | | | | | | | | | visSomeQuery(v2) = v3 & vDifference(v0, v1) = % 110.07/15.25 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.07/15.25 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.07/15.25 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.07/15.25 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 110.07/15.25 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | DELTA: instantiating (502) with fresh symbols all_612_0, % 110.07/15.25 | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.07/15.25 | | | | | | | | | | (503) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.07/15.25 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.07/15.25 | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.07/15.25 | | | | | | | | | | vDifference(all_612_3, all_612_2) = all_338_0 & % 110.07/15.25 | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.07/15.25 | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.07/15.25 | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.07/15.25 | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.07/15.25 | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.07/15.25 | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (503) are inconsistent by % 110.07/15.25 | | | | | | | | | | sub-proof #4. % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | End of split % 110.07/15.25 | | | | | | | | | % 110.07/15.25 | | | | | | | | Case 2: % 110.07/15.25 | | | | | | | | | % 110.07/15.25 | | | | | | | | | (504) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.25 | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 110.07/15.25 | | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.07/15.25 | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 110.07/15.25 | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) % 110.07/15.25 | | | | | | | | | & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 110.07/15.25 | | | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 110.07/15.25 | | | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( % 110.07/15.25 | | | | | | | | | ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.07/15.25 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.25 | | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.25 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.07/15.25 | | | | | | | | | & vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.25 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.07/15.25 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.07/15.25 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.07/15.25 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.07/15.25 | | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vTable] : % 110.07/15.25 | | | | | | | | | (all_346_1 = vnoQuery & vtvalue(v0) = all_338_0 & % 110.07/15.25 | | | | | | | | | vTable(v0)) % 110.07/15.25 | | | | | | | | | % 110.07/15.25 | | | | | | | | | BETA: splitting (504) gives: % 110.07/15.25 | | | | | | | | | % 110.07/15.25 | | | | | | | | | Case 1: % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | (505) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.25 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 110.07/15.25 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.07/15.25 | | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 110.07/15.25 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.07/15.25 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.07/15.25 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.07/15.25 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 110.07/15.25 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | DELTA: instantiating (505) with fresh symbols all_612_0, % 110.07/15.25 | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.07/15.25 | | | | | | | | | | (506) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.07/15.25 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.07/15.25 | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.07/15.25 | | | | | | | | | | vIntersection(all_612_3, all_612_2) = all_338_0 & % 110.07/15.25 | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.07/15.25 | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.07/15.25 | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.07/15.25 | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.07/15.25 | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.07/15.25 | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (506) are inconsistent by % 110.07/15.25 | | | | | | | | | | sub-proof #3. % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | Case 2: % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | (507) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.25 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 110.07/15.25 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.07/15.25 | | | | | | | | | | visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.07/15.25 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.07/15.25 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.07/15.25 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.07/15.25 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 110.07/15.25 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? % 110.07/15.25 | | | | | | | | | | [v0: vTable] : (all_346_1 = vnoQuery & vtvalue(v0) % 110.07/15.25 | | | | | | | | | | = all_338_0 & vTable(v0)) % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | BETA: splitting (507) gives: % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | Case 1: % 110.07/15.25 | | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | | (508) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.25 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.07/15.25 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.07/15.25 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.07/15.25 | | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.07/15.25 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.07/15.25 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.07/15.25 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.07/15.25 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.07/15.25 | | | | | | | | | | | vTable(v4))) % 110.07/15.25 | | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | | DELTA: instantiating (508) with fresh symbols all_612_0, % 110.07/15.25 | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.07/15.25 | | | | | | | | | | | (509) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.07/15.25 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.07/15.25 | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.07/15.25 | | | | | | | | | | | vUnion(all_612_3, all_612_2) = all_338_0 & % 110.07/15.25 | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.07/15.25 | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.07/15.25 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.07/15.25 | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.07/15.25 | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.07/15.25 | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.07/15.25 | | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (509) are inconsistent by % 110.07/15.25 | | | | | | | | | | | sub-proof #2. % 110.07/15.25 | | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | Case 2: % 110.07/15.25 | | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | | (510) ? [v0: vTable] : (all_346_1 = vnoQuery & % 110.07/15.25 | | | | | | | | | | | vtvalue(v0) = all_338_0 & vTable(v0)) % 110.07/15.25 | | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | | DELTA: instantiating (510) with fresh symbol all_612_0 % 110.07/15.25 | | | | | | | | | | | gives: % 110.07/15.25 | | | | | | | | | | | (511) all_346_1 = vnoQuery & vtvalue(all_612_0) = % 110.07/15.25 | | | | | | | | | | | all_338_0 & vTable(all_612_0) % 110.07/15.25 | | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (511) are inconsistent by % 110.07/15.25 | | | | | | | | | | | sub-proof #1. % 110.07/15.25 | | | | | | | | | | | % 110.07/15.25 | | | | | | | | | | End of split % 110.07/15.25 | | | | | | | | | | % 110.07/15.25 | | | | | | | | | End of split % 110.07/15.25 | | | | | | | | | % 110.07/15.25 | | | | | | | | End of split % 110.07/15.25 | | | | | | | | % 110.07/15.25 | | | | | | | End of split % 110.07/15.25 | | | | | | | % 110.07/15.25 | | | | | | End of split % 110.07/15.25 | | | | | | % 110.07/15.25 | | | | | Case 2: % 110.07/15.25 | | | | | | % 110.07/15.25 | | | | | | (512) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : ? % 110.07/15.25 | | | | | | [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] : ? % 110.07/15.25 | | | | | | [v6: vTable] : ? [v7: vTable] : ? [v8: vQuery] : % 110.07/15.25 | | | | | | (vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.07/15.25 | | | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) = 0 & % 110.07/15.25 | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & vgetTable(v3) % 110.07/15.25 | | | | | | = v6 & vsomeQuery(v8) = all_346_2 & vselectFromWhere(v2, % 110.07/15.25 | | | | | | v5, v0) = vq1 & vtvalue(v7) = v8 & vOptQuery(all_346_2) % 110.07/15.25 | | | | | | & vSelect(v2) & vTable(v7) & vTable(v6) & vTable(v1) & % 110.07/15.25 | | | | | | vOptTable(v4) & vOptTable(v3) & vQuery(v8) & vName(v5) & % 110.07/15.25 | | | | | | vPred(v0)) % 110.07/15.25 | | | | | | % 110.07/15.25 | | | | | | DELTA: instantiating (512) with fresh symbols all_605_0, all_605_1, % 110.07/15.25 | | | | | | all_605_2, all_605_3, all_605_4, all_605_5, all_605_6, % 110.07/15.25 | | | | | | all_605_7, all_605_8 gives: % 110.07/15.25 | | | | | | (513) vfilterTable(all_605_2, all_605_8) = all_605_7 & % 110.07/15.25 | | | | | | vprojectTable(all_605_6, all_605_7) = all_605_4 & % 110.07/15.25 | | | | | | vlookupStore(all_605_3, all_346_6) = all_605_5 & % 110.07/15.25 | | | | | | visSomeTable(all_605_4) = 0 & visSomeTable(all_605_5) = 0 & % 110.07/15.25 | | | | | | vgetTable(all_605_4) = all_605_1 & vgetTable(all_605_5) = % 110.07/15.25 | | | | | | all_605_2 & vsomeQuery(all_605_0) = all_346_2 & % 110.07/15.25 | | | | | | vselectFromWhere(all_605_6, all_605_3, all_605_8) = vq1 & % 110.07/15.25 | | | | | | vtvalue(all_605_1) = all_605_0 & vOptQuery(all_346_2) & % 110.07/15.25 | | | | | | vSelect(all_605_6) & vTable(all_605_1) & vTable(all_605_2) % 110.07/15.25 | | | | | | & vTable(all_605_7) & vOptTable(all_605_4) & % 110.07/15.25 | | | | | | vOptTable(all_605_5) & vQuery(all_605_0) & vName(all_605_3) % 110.07/15.25 | | | | | | & vPred(all_605_8) % 110.07/15.25 | | | | | | % 110.07/15.25 | | | | | | ALPHA: (513) implies: % 110.07/15.25 | | | | | | (514) vPred(all_605_8) % 110.07/15.25 | | | | | | (515) vName(all_605_3) % 110.07/15.25 | | | | | | (516) vQuery(all_605_0) % 110.07/15.25 | | | | | | (517) vSelect(all_605_6) % 110.07/15.25 | | | | | | (518) vselectFromWhere(all_605_6, all_605_3, all_605_8) = vq1 % 110.07/15.25 | | | | | | (519) vsomeQuery(all_605_0) = all_346_2 % 110.07/15.25 | | | | | | % 110.07/15.25 | | | | | | BETA: splitting (38) gives: % 110.07/15.25 | | | | | | % 110.07/15.25 | | | | | | Case 1: % 110.07/15.25 | | | | | | | % 110.07/15.25 | | | | | | | (520) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? % 110.07/15.25 | | | | | | | [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? % 110.07/15.25 | | | | | | | [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : % 110.07/15.25 | | | | | | | ? [v9: vQuery] : (vrawDifference(v5, v6) = v7 & % 110.07/15.25 | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 110.07/15.25 | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.07/15.25 | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.07/15.25 | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.25 | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.25 | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.07/15.25 | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.25 | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 110.07/15.25 | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.07/15.25 | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: vRawTable] % 110.07/15.25 | | | | | | | : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.25 | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.25 | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = % 110.07/15.25 | | | | | | | v8 & vsomeQuery(v9) = all_346_1 & vIntersection(v2, v3) % 110.07/15.25 | | | | | | | = all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.07/15.25 | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) & % 110.07/15.25 | | | | | | | vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.07/15.25 | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.07/15.25 | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? [v1: % 110.07/15.25 | | | | | | | vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: % 110.07/15.25 | | | | | | | vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] : ? % 110.07/15.25 | | | | | | | [v7: vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.25 | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.25 | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = % 110.07/15.25 | | | | | | | v8 & vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 110.07/15.25 | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.07/15.25 | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) & % 110.07/15.25 | | | | | | | vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.07/15.25 | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.07/15.25 | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? [v1: % 110.07/15.25 | | | | | | | vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : ? % 110.07/15.25 | | | | | | | [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 110.07/15.25 | | | | | | | [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, v0) = % 110.07/15.25 | | | | | | | v1 & vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.07/15.25 | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 110.07/15.25 | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.07/15.25 | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.07/15.25 | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & vtvalue(v7) % 110.07/15.25 | | | | | | | = v8 & vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) % 110.07/15.25 | | | | | | | & vTable(v6) & vTable(v1) & vOptTable(v4) & % 110.07/15.25 | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & vPred(v0)) | % 110.07/15.25 | | | | | | | ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : ? % 110.07/15.25 | | | | | | | [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] : % 110.07/15.25 | | | | | | | ? [v6: vTable] : ? [v7: int] : (all_346_1 = vnoQuery & % 110.07/15.25 | | | | | | | ~ (v7 = 0) & vfilterTable(v6, v0) = v1 & % 110.07/15.25 | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.07/15.25 | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 110.07/15.25 | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 110.07/15.25 | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & vSelect(v2) % 110.07/15.25 | | | | | | | & vTable(v6) & vTable(v1) & vOptTable(v4) & % 110.07/15.25 | | | | | | | vOptTable(v3) & vName(v5) & vPred(v0)) | ? [v0: % 110.07/15.25 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.25 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.07/15.25 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.25 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.07/15.25 | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 110.07/15.25 | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.25 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.07/15.25 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] % 110.07/15.25 | | | | | | | : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 110.07/15.25 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.25 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.07/15.25 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.25 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.07/15.25 | | | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) = % 110.07/15.25 | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.25 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.07/15.25 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] % 110.07/15.26 | | | | | | | : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 110.07/15.26 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.26 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.07/15.26 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.26 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.07/15.26 | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 110.07/15.26 | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.07/15.26 | | | | | | | & vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.07/15.26 | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | % 110.07/15.26 | | | | | | | ~ vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] : % 110.07/15.26 | | | | | | | ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.07/15.26 | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 110.07/15.26 | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.07/15.26 | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & vSelect(v1) % 110.07/15.26 | | | | | | | & vOptTable(v2) & vName(v3) & vPred(v0)) % 110.07/15.26 | | | | | | | % 110.07/15.26 | | | | | | | BETA: splitting (520) gives: % 110.07/15.26 | | | | | | | % 110.07/15.26 | | | | | | | Case 1: % 110.07/15.26 | | | | | | | | % 110.07/15.26 | | | | | | | | (521) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.07/15.26 | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : % 110.07/15.26 | | | | | | | | ? [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: % 110.07/15.26 | | | | | | | | vTable] : ? [v9: vQuery] : (vrawDifference(v5, v6) = % 110.07/15.26 | | | | | | | | v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & % 110.07/15.26 | | | | | | | | vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 110.07/15.26 | | | | | | | | vsomeQuery(v9) = all_346_1 & vDifference(v2, v3) = % 110.07/15.26 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.07/15.26 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 110.07/15.26 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.07/15.26 | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.07/15.26 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? % 110.07/15.26 | | | | | | | | [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? % 110.07/15.26 | | | | | | | | [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] % 110.07/15.26 | | | | | | | | : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 110.07/15.26 | | | | | | | | vQuery] : (vrawIntersection(v5, v6) = v7 & % 110.07/15.26 | | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 110.07/15.26 | | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.07/15.26 | | | | | | | | & vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 110.07/15.26 | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.26 | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.26 | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.07/15.26 | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.26 | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 110.07/15.26 | | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.07/15.26 | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.07/15.26 | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.26 | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.26 | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) % 110.07/15.26 | | | | | | | | = v8 & vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 110.07/15.26 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.07/15.26 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 110.07/15.26 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.07/15.26 | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.07/15.26 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? % 110.07/15.26 | | | | | | | | [v1: vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : % 110.07/15.26 | | | | | | | | ? [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.07/15.26 | | | | | | | | ? [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 110.07/15.26 | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.07/15.26 | | | | | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) = % 110.07/15.26 | | | | | | | | 0 & visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.07/15.26 | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.07/15.26 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.07/15.26 | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & vSelect(v2) % 110.07/15.26 | | | | | | | | & vTable(v7) & vTable(v6) & vTable(v1) & % 110.07/15.26 | | | | | | | | vOptTable(v4) & vOptTable(v3) & vQuery(v8) & % 110.07/15.26 | | | | | | | | vName(v5) & vPred(v0)) % 110.07/15.26 | | | | | | | | % 110.07/15.26 | | | | | | | | BETA: splitting (521) gives: % 110.07/15.26 | | | | | | | | % 110.07/15.26 | | | | | | | | Case 1: % 110.07/15.26 | | | | | | | | | % 110.07/15.26 | | | | | | | | | (522) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.07/15.26 | | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.07/15.26 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.07/15.26 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.26 | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.26 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.07/15.26 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.07/15.26 | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 % 110.07/15.26 | | | | | | | | | & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.26 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.26 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.07/15.26 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.26 | | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : % 110.07/15.26 | | | | | | | | | ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : % 110.07/15.26 | | | | | | | | | ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.07/15.26 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.26 | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.26 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.07/15.26 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.07/15.26 | | | | | | | | | vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 110.07/15.26 | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.26 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.26 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.07/15.26 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.26 | | | | | | | | | vAttrL(v4)) % 110.07/15.26 | | | | | | | | | % 110.07/15.26 | | | | | | | | | BETA: splitting (522) gives: % 110.07/15.26 | | | | | | | | | % 110.07/15.26 | | | | | | | | | Case 1: % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | (523) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.07/15.26 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.07/15.26 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.07/15.26 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.26 | | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.26 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.07/15.26 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.07/15.26 | | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = % 110.07/15.26 | | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.26 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.26 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.07/15.26 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.26 | | | | | | | | | | vAttrL(v4)) % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | DELTA: instantiating (523) with fresh symbols all_612_0, % 110.07/15.26 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.07/15.26 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8, all_612_9 % 110.07/15.26 | | | | | | | | | | gives: % 110.07/15.26 | | | | | | | | | | (524) vrawDifference(all_612_4, all_612_3) = all_612_2 & % 110.07/15.26 | | | | | | | | | | vgetAttrL(all_612_9) = all_612_5 & % 110.07/15.26 | | | | | | | | | | vgetRaw(all_612_8) = all_612_3 & vgetRaw(all_612_9) % 110.07/15.26 | | | | | | | | | | = all_612_4 & vtable(all_612_5, all_612_2) = % 110.07/15.26 | | | | | | | | | | all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.26 | | | | | | | | | | vDifference(all_612_7, all_612_6) = all_338_0 & % 110.07/15.26 | | | | | | | | | | vtvalue(all_612_1) = all_612_0 & vtvalue(all_612_8) % 110.07/15.26 | | | | | | | | | | = all_612_6 & vtvalue(all_612_9) = all_612_7 & % 110.07/15.26 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_612_1) & % 110.07/15.26 | | | | | | | | | | vTable(all_612_8) & vTable(all_612_9) & % 110.07/15.26 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_6) & % 110.07/15.26 | | | | | | | | | | vQuery(all_612_7) & vRawTable(all_612_2) & % 110.07/15.26 | | | | | | | | | | vRawTable(all_612_3) & vRawTable(all_612_4) & % 110.07/15.26 | | | | | | | | | | vAttrL(all_612_5) % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | ALPHA: (524) implies: % 110.07/15.26 | | | | | | | | | | (525) vQuery(all_612_7) % 110.07/15.26 | | | | | | | | | | (526) vQuery(all_612_6) % 110.07/15.26 | | | | | | | | | | (527) vDifference(all_612_7, all_612_6) = all_338_0 % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.07/15.26 | | | | | | | | | | vq2, all_612_7, all_612_6, all_338_0, simplifying % 110.07/15.26 | | | | | | | | | | with (4), (5), (18), (525), (526), (527) gives: % 110.07/15.26 | | | | | | | | | | (528) $false % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | CLOSE: (528) is inconsistent. % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | Case 2: % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | (529) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.07/15.26 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.07/15.26 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.07/15.26 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.26 | | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 % 110.07/15.26 | | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.07/15.26 | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.07/15.26 | | | | | | | | | | & vIntersection(v2, v3) = all_338_0 & vtvalue(v8) % 110.07/15.26 | | | | | | | | | | = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.26 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.26 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.07/15.26 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.26 | | | | | | | | | | vAttrL(v4)) % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | DELTA: instantiating (529) with fresh symbols all_612_0, % 110.07/15.26 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.07/15.26 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8, all_612_9 % 110.07/15.26 | | | | | | | | | | gives: % 110.07/15.26 | | | | | | | | | | (530) vrawIntersection(all_612_4, all_612_3) = all_612_2 % 110.07/15.26 | | | | | | | | | | & vgetAttrL(all_612_9) = all_612_5 & % 110.07/15.26 | | | | | | | | | | vgetRaw(all_612_8) = all_612_3 & vgetRaw(all_612_9) % 110.07/15.26 | | | | | | | | | | = all_612_4 & vtable(all_612_5, all_612_2) = % 110.07/15.26 | | | | | | | | | | all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.26 | | | | | | | | | | vIntersection(all_612_7, all_612_6) = all_338_0 & % 110.07/15.26 | | | | | | | | | | vtvalue(all_612_1) = all_612_0 & vtvalue(all_612_8) % 110.07/15.26 | | | | | | | | | | = all_612_6 & vtvalue(all_612_9) = all_612_7 & % 110.07/15.26 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_612_1) & % 110.07/15.26 | | | | | | | | | | vTable(all_612_8) & vTable(all_612_9) & % 110.07/15.26 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_6) & % 110.07/15.26 | | | | | | | | | | vQuery(all_612_7) & vRawTable(all_612_2) & % 110.07/15.26 | | | | | | | | | | vRawTable(all_612_3) & vRawTable(all_612_4) & % 110.07/15.26 | | | | | | | | | | vAttrL(all_612_5) % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | ALPHA: (530) implies: % 110.07/15.26 | | | | | | | | | | (531) vQuery(all_612_7) % 110.07/15.26 | | | | | | | | | | (532) vQuery(all_612_6) % 110.07/15.26 | | | | | | | | | | (533) vIntersection(all_612_7, all_612_6) = all_338_0 % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.07/15.26 | | | | | | | | | | vq2, all_612_7, all_612_6, all_338_0, simplifying % 110.07/15.26 | | | | | | | | | | with (4), (5), (18), (531), (532), (533) gives: % 110.07/15.26 | | | | | | | | | | (534) $false % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | CLOSE: (534) is inconsistent. % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | End of split % 110.07/15.26 | | | | | | | | | % 110.07/15.26 | | | | | | | | Case 2: % 110.07/15.26 | | | | | | | | | % 110.07/15.26 | | | | | | | | | (535) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.07/15.26 | | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.07/15.26 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.07/15.26 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.26 | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.26 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.07/15.26 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.07/15.26 | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.07/15.26 | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.26 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.26 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.07/15.26 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.26 | | | | | | | | | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : ? % 110.07/15.26 | | | | | | | | | [v2: vSelect] : ? [v3: vOptTable] : ? [v4: % 110.07/15.26 | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 110.07/15.26 | | | | | | | | | [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 110.07/15.26 | | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.07/15.26 | | | | | | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) % 110.07/15.26 | | | | | | | | | = 0 & visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.07/15.26 | | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.07/15.26 | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.07/15.26 | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 110.07/15.26 | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & vTable(v1) % 110.07/15.26 | | | | | | | | | & vOptTable(v4) & vOptTable(v3) & vQuery(v8) & % 110.07/15.26 | | | | | | | | | vName(v5) & vPred(v0)) % 110.07/15.26 | | | | | | | | | % 110.07/15.26 | | | | | | | | | BETA: splitting (535) gives: % 110.07/15.26 | | | | | | | | | % 110.07/15.26 | | | | | | | | | Case 1: % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | (536) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.07/15.26 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.07/15.26 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.07/15.26 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.07/15.26 | | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.07/15.26 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.07/15.26 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.07/15.26 | | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.07/15.26 | | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.07/15.26 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.07/15.26 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.07/15.26 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.07/15.26 | | | | | | | | | | vAttrL(v4)) % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | DELTA: instantiating (536) with fresh symbols all_612_0, % 110.07/15.26 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.07/15.26 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8, all_612_9 % 110.07/15.26 | | | | | | | | | | gives: % 110.07/15.26 | | | | | | | | | | (537) vrawUnion(all_612_4, all_612_3) = all_612_2 & % 110.07/15.26 | | | | | | | | | | vgetAttrL(all_612_9) = all_612_5 & % 110.07/15.26 | | | | | | | | | | vgetRaw(all_612_8) = all_612_3 & vgetRaw(all_612_9) % 110.07/15.26 | | | | | | | | | | = all_612_4 & vtable(all_612_5, all_612_2) = % 110.07/15.26 | | | | | | | | | | all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.26 | | | | | | | | | | vUnion(all_612_7, all_612_6) = all_338_0 & % 110.07/15.26 | | | | | | | | | | vtvalue(all_612_1) = all_612_0 & vtvalue(all_612_8) % 110.07/15.26 | | | | | | | | | | = all_612_6 & vtvalue(all_612_9) = all_612_7 & % 110.07/15.26 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_612_1) & % 110.07/15.26 | | | | | | | | | | vTable(all_612_8) & vTable(all_612_9) & % 110.07/15.26 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_6) & % 110.07/15.26 | | | | | | | | | | vQuery(all_612_7) & vRawTable(all_612_2) & % 110.07/15.26 | | | | | | | | | | vRawTable(all_612_3) & vRawTable(all_612_4) & % 110.07/15.26 | | | | | | | | | | vAttrL(all_612_5) % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | ALPHA: (537) implies: % 110.07/15.26 | | | | | | | | | | (538) vQuery(all_612_7) % 110.07/15.26 | | | | | | | | | | (539) vQuery(all_612_6) % 110.07/15.26 | | | | | | | | | | (540) vTable(all_612_9) % 110.07/15.26 | | | | | | | | | | (541) vtvalue(all_612_9) = all_612_7 % 110.07/15.26 | | | | | | | | | | (542) vUnion(all_612_7, all_612_6) = all_338_0 % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_612_9, % 110.07/15.26 | | | | | | | | | | all_612_7, simplifying with (540), (541) gives: % 110.07/15.26 | | | | | | | | | | (543) visValue(all_612_7) = 0 % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | GROUND_INST: instantiating (isValue-1) with all_605_6, % 110.07/15.26 | | | | | | | | | | all_605_3, all_605_8, vq1, simplifying with (514), % 110.07/15.26 | | | | | | | | | | (515), (517), (518) gives: % 110.07/15.26 | | | | | | | | | | (544) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_612_7, % 110.07/15.26 | | | | | | | | | | all_612_6, all_338_0, simplifying with (4), (5), % 110.07/15.26 | | | | | | | | | | (18), (538), (539), (542) gives: % 110.07/15.26 | | | | | | | | | | (545) all_612_6 = vq2 & all_612_7 = vq1 % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | ALPHA: (545) implies: % 110.07/15.26 | | | | | | | | | | (546) all_612_7 = vq1 % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | DELTA: instantiating (544) with fresh symbol all_628_0 % 110.07/15.26 | | | | | | | | | | gives: % 110.07/15.26 | | | | | | | | | | (547) ~ (all_628_0 = 0) & visValue(vq1) = all_628_0 % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | ALPHA: (547) implies: % 110.07/15.26 | | | | | | | | | | (548) ~ (all_628_0 = 0) % 110.07/15.26 | | | | | | | | | | (549) visValue(vq1) = all_628_0 % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | REDUCE: (543), (546) imply: % 110.07/15.26 | | | | | | | | | | (550) visValue(vq1) = 0 % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_628_0, vq1, % 110.07/15.26 | | | | | | | | | | simplifying with (549), (550) gives: % 110.07/15.26 | | | | | | | | | | (551) all_628_0 = 0 % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | REDUCE: (548), (551) imply: % 110.07/15.26 | | | | | | | | | | (552) $false % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | CLOSE: (552) is inconsistent. % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | Case 2: % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | (553) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 110.07/15.26 | | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.07/15.26 | | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: vTable] : ? % 110.07/15.26 | | | | | | | | | | [v8: vQuery] : (vfilterTable(v6, v0) = v1 & % 110.07/15.26 | | | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.07/15.26 | | | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 110.07/15.26 | | | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.07/15.26 | | | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.07/15.26 | | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.07/15.26 | | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 110.07/15.26 | | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & % 110.07/15.26 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.07/15.26 | | | | | | | | | | vQuery(v8) & vName(v5) & vPred(v0)) % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | DELTA: instantiating (553) with fresh symbols all_612_0, % 110.07/15.26 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.07/15.26 | | | | | | | | | | all_612_5, all_612_6, all_612_7, all_612_8 gives: % 110.07/15.26 | | | | | | | | | | (554) vfilterTable(all_612_2, all_612_8) = all_612_7 & % 110.07/15.26 | | | | | | | | | | vprojectTable(all_612_6, all_612_7) = all_612_4 & % 110.07/15.26 | | | | | | | | | | vlookupStore(all_612_3, all_346_6) = all_612_5 & % 110.07/15.26 | | | | | | | | | | visSomeTable(all_612_4) = 0 & % 110.07/15.26 | | | | | | | | | | visSomeTable(all_612_5) = 0 & vgetTable(all_612_4) % 110.07/15.26 | | | | | | | | | | = all_612_1 & vgetTable(all_612_5) = all_612_2 & % 110.07/15.26 | | | | | | | | | | vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.26 | | | | | | | | | | vselectFromWhere(all_612_6, all_612_3, all_612_8) = % 110.07/15.26 | | | | | | | | | | all_338_0 & vtvalue(all_612_1) = all_612_0 & % 110.07/15.26 | | | | | | | | | | vOptQuery(all_346_1) & vSelect(all_612_6) & % 110.07/15.26 | | | | | | | | | | vTable(all_612_1) & vTable(all_612_2) & % 110.07/15.26 | | | | | | | | | | vTable(all_612_7) & vOptTable(all_612_4) & % 110.07/15.26 | | | | | | | | | | vOptTable(all_612_5) & vQuery(all_612_0) & % 110.07/15.26 | | | | | | | | | | vName(all_612_3) & vPred(all_612_8) % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | ALPHA: (554) implies: % 110.07/15.26 | | | | | | | | | | (555) vPred(all_612_8) % 110.07/15.26 | | | | | | | | | | (556) vName(all_612_3) % 110.07/15.26 | | | | | | | | | | (557) vSelect(all_612_6) % 110.07/15.26 | | | | | | | | | | (558) vselectFromWhere(all_612_6, all_612_3, all_612_8) = % 110.07/15.26 | | | | | | | | | | all_338_0 % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | GROUND_INST: instantiating (DIFF-selectFromWhere-Union) with % 110.07/15.26 | | | | | | | | | | all_612_3, all_612_8, all_612_6, vq2, vq1, % 110.07/15.26 | | | | | | | | | | all_338_0, simplifying with (4), (5), (18), (555), % 110.07/15.26 | | | | | | | | | | (556), (557), (558) gives: % 110.07/15.26 | | | | | | | | | | (559) $false % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | | CLOSE: (559) is inconsistent. % 110.07/15.26 | | | | | | | | | | % 110.07/15.26 | | | | | | | | | End of split % 110.07/15.26 | | | | | | | | | % 110.07/15.26 | | | | | | | | End of split % 110.07/15.26 | | | | | | | | % 110.07/15.26 | | | | | | | Case 2: % 110.07/15.26 | | | | | | | | % 110.07/15.27 | | | | | | | | (560) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 110.07/15.27 | | | | | | | | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] % 110.07/15.27 | | | | | | | | : ? [v6: vTable] : ? [v7: int] : (all_346_1 = % 110.07/15.27 | | | | | | | | vnoQuery & ~ (v7 = 0) & vfilterTable(v6, v0) = v1 & % 110.07/15.27 | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.07/15.27 | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 110.07/15.27 | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 110.07/15.27 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.07/15.27 | | | | | | | | vSelect(v2) & vTable(v6) & vTable(v1) & vOptTable(v4) % 110.07/15.27 | | | | | | | | & vOptTable(v3) & vName(v5) & vPred(v0)) | ? [v0: % 110.07/15.27 | | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.27 | | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.07/15.27 | | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.27 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.07/15.27 | | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 110.07/15.27 | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.27 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.07/15.27 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.07/15.27 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.07/15.27 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.27 | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 110.07/15.27 | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.27 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.27 | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) = % 110.07/15.27 | | | | | | | | v5 & vIntersection(v3, v1) = all_338_0 & vtvalue(v0) % 110.07/15.27 | | | | | | | | = v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.07/15.27 | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.07/15.27 | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.07/15.27 | | | | | | | | | ~ vTable(v6))) | ? [v0: vTable] : ? [v1: % 110.07/15.27 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.07/15.27 | | | | | | | | [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.07/15.27 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.27 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.07/15.27 | | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 110.07/15.27 | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.27 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.07/15.27 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.07/15.27 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.07/15.27 | | | | | | | | | ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 110.07/15.27 | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.07/15.27 | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 110.07/15.27 | | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.07/15.27 | | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & % 110.07/15.27 | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & vPred(v0)) % 110.07/15.27 | | | | | | | | % 110.07/15.27 | | | | | | | | BETA: splitting (560) gives: % 110.07/15.27 | | | | | | | | % 110.07/15.27 | | | | | | | | Case 1: % 110.07/15.27 | | | | | | | | | % 110.07/15.27 | | | | | | | | | (561) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 110.07/15.27 | | | | | | | | | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.07/15.27 | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 110.07/15.27 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 110.07/15.27 | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = % 110.07/15.27 | | | | | | | | | v4 & vlookupStore(v5, all_346_6) = v3 & % 110.07/15.27 | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.07/15.27 | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) = % 110.07/15.27 | | | | | | | | | all_338_0 & vSelect(v2) & vTable(v6) & vTable(v1) & % 110.07/15.27 | | | | | | | | | vOptTable(v4) & vOptTable(v3) & vName(v5) & % 110.07/15.27 | | | | | | | | | vPred(v0)) | ? [v0: vTable] : ? [v1: vQuery] : ? % 110.07/15.27 | | | | | | | | | [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.27 | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.27 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.27 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) = % 110.07/15.27 | | | | | | | | | v5 & vDifference(v3, v1) = all_338_0 & vtvalue(v0) % 110.07/15.27 | | | | | | | | | = v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.07/15.27 | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.07/15.27 | | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.07/15.27 | | | | | | | | | v1) | ~ vTable(v6))) % 110.07/15.27 | | | | | | | | | % 110.07/15.27 | | | | | | | | | BETA: splitting (561) gives: % 110.07/15.27 | | | | | | | | | % 110.07/15.27 | | | | | | | | | Case 1: % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | (562) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 110.07/15.27 | | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.07/15.27 | | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 110.07/15.27 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 110.07/15.27 | | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 110.07/15.27 | | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.07/15.27 | | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.07/15.27 | | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) % 110.07/15.27 | | | | | | | | | | = all_338_0 & vSelect(v2) & vTable(v6) & % 110.07/15.27 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.07/15.27 | | | | | | | | | | vName(v5) & vPred(v0)) % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | DELTA: instantiating (562) with fresh symbols all_612_0, % 110.07/15.27 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.07/15.27 | | | | | | | | | | all_612_5, all_612_6, all_612_7 gives: % 110.07/15.27 | | | | | | | | | | (563) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.07/15.27 | | | | | | | | | | vfilterTable(all_612_1, all_612_7) = all_612_6 & % 110.07/15.27 | | | | | | | | | | vprojectTable(all_612_5, all_612_6) = all_612_3 & % 110.07/15.27 | | | | | | | | | | vlookupStore(all_612_2, all_346_6) = all_612_4 & % 110.07/15.27 | | | | | | | | | | visSomeTable(all_612_3) = all_612_0 & % 110.07/15.27 | | | | | | | | | | visSomeTable(all_612_4) = 0 & vgetTable(all_612_4) % 110.07/15.27 | | | | | | | | | | = all_612_1 & vselectFromWhere(all_612_5, % 110.07/15.27 | | | | | | | | | | all_612_2, all_612_7) = all_338_0 & % 110.07/15.27 | | | | | | | | | | vSelect(all_612_5) & vTable(all_612_1) & % 110.07/15.27 | | | | | | | | | | vTable(all_612_6) & vOptTable(all_612_3) & % 110.07/15.27 | | | | | | | | | | vOptTable(all_612_4) & vName(all_612_2) & % 110.07/15.27 | | | | | | | | | | vPred(all_612_7) % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (563) are inconsistent by % 110.07/15.27 | | | | | | | | | | sub-proof #10. % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | Case 2: % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | (564) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.27 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.27 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.27 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.27 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) % 110.07/15.27 | | | | | | | | | | = v5 & vDifference(v3, v1) = all_338_0 & % 110.07/15.27 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.27 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.07/15.27 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.07/15.27 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.27 | | | | | | | | | | vTable(v6))) % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | DELTA: instantiating (564) with fresh symbols all_612_0, % 110.07/15.27 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, all_612_5 % 110.07/15.27 | | | | | | | | | | gives: % 110.07/15.27 | | | | | | | | | | (565) vreduce(all_612_4, all_346_6) = all_612_3 & % 110.07/15.27 | | | | | | | | | | visSomeQuery(all_612_3) = 0 & vgetQuery(all_612_3) % 110.07/15.27 | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.27 | | | | | | | | | | vDifference(all_612_2, all_612_1) = all_612_0 & % 110.07/15.27 | | | | | | | | | | vDifference(all_612_2, all_612_4) = all_338_0 & % 110.07/15.27 | | | | | | | | | | vtvalue(all_612_5) = all_612_2 & % 110.07/15.27 | | | | | | | | | | vOptQuery(all_612_3) & vOptQuery(all_346_1) & % 110.07/15.27 | | | | | | | | | | vTable(all_612_5) & vQuery(all_612_0) & % 110.07/15.27 | | | | | | | | | | vQuery(all_612_1) & vQuery(all_612_2) & % 110.07/15.27 | | | | | | | | | | vQuery(all_612_4) & ! [v0: vTable] : ( ~ % 110.07/15.27 | | | | | | | | | | (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | ALPHA: (565) implies: % 110.07/15.27 | | | | | | | | | | (566) vQuery(all_612_4) % 110.07/15.27 | | | | | | | | | | (567) vQuery(all_612_2) % 110.07/15.27 | | | | | | | | | | (568) vDifference(all_612_2, all_612_4) = all_338_0 % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.07/15.27 | | | | | | | | | | vq2, all_612_2, all_612_4, all_338_0, simplifying % 110.07/15.27 | | | | | | | | | | with (4), (5), (18), (566), (567), (568) gives: % 110.07/15.27 | | | | | | | | | | (569) $false % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | CLOSE: (569) is inconsistent. % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | End of split % 110.07/15.27 | | | | | | | | | % 110.07/15.27 | | | | | | | | Case 2: % 110.07/15.27 | | | | | | | | | % 110.07/15.27 | | | | | | | | | (570) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.27 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 110.07/15.27 | | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.27 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.27 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) % 110.07/15.27 | | | | | | | | | = v5 & vIntersection(v3, v1) = all_338_0 & % 110.07/15.27 | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.27 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.07/15.27 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.07/15.27 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.27 | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] % 110.07/15.27 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 110.07/15.27 | | | | | | | | | vQuery] : ? [v5: vQuery] : (vreduce(v1, all_346_6) % 110.07/15.27 | | | | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.27 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 & % 110.07/15.27 | | | | | | | | | vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 110.07/15.27 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) & % 110.07/15.27 | | | | | | | | | vQuery(v5) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.07/15.27 | | | | | | | | | ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.27 | | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] % 110.07/15.27 | | | | | | | | | : ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] % 110.07/15.27 | | | | | | | | | : (all_346_1 = vnoQuery & ~ (v4 = 0) & % 110.07/15.27 | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & visSomeTable(v2) % 110.07/15.27 | | | | | | | | | = v4 & vselectFromWhere(v1, v3, v0) = all_338_0 & % 110.07/15.27 | | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & % 110.07/15.27 | | | | | | | | | vPred(v0)) % 110.07/15.27 | | | | | | | | | % 110.07/15.27 | | | | | | | | | BETA: splitting (570) gives: % 110.07/15.27 | | | | | | | | | % 110.07/15.27 | | | | | | | | | Case 1: % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | (571) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.27 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.27 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.27 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.27 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, % 110.07/15.27 | | | | | | | | | | v4) = v5 & vIntersection(v3, v1) = all_338_0 & % 110.07/15.27 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.27 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.07/15.27 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.07/15.27 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.27 | | | | | | | | | | vTable(v6))) % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | DELTA: instantiating (571) with fresh symbols all_612_0, % 110.07/15.27 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, all_612_5 % 110.07/15.27 | | | | | | | | | | gives: % 110.07/15.27 | | | | | | | | | | (572) vreduce(all_612_4, all_346_6) = all_612_3 & % 110.07/15.27 | | | | | | | | | | visSomeQuery(all_612_3) = 0 & vgetQuery(all_612_3) % 110.07/15.27 | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.27 | | | | | | | | | | vIntersection(all_612_2, all_612_1) = all_612_0 & % 110.07/15.27 | | | | | | | | | | vIntersection(all_612_2, all_612_4) = all_338_0 & % 110.07/15.27 | | | | | | | | | | vtvalue(all_612_5) = all_612_2 & % 110.07/15.27 | | | | | | | | | | vOptQuery(all_612_3) & vOptQuery(all_346_1) & % 110.07/15.27 | | | | | | | | | | vTable(all_612_5) & vQuery(all_612_0) & % 110.07/15.27 | | | | | | | | | | vQuery(all_612_1) & vQuery(all_612_2) & % 110.07/15.27 | | | | | | | | | | vQuery(all_612_4) & ! [v0: vTable] : ( ~ % 110.07/15.27 | | | | | | | | | | (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | ALPHA: (572) implies: % 110.07/15.27 | | | | | | | | | | (573) vQuery(all_612_4) % 110.07/15.27 | | | | | | | | | | (574) vQuery(all_612_2) % 110.07/15.27 | | | | | | | | | | (575) vIntersection(all_612_2, all_612_4) = all_338_0 % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.07/15.27 | | | | | | | | | | vq2, all_612_2, all_612_4, all_338_0, simplifying % 110.07/15.27 | | | | | | | | | | with (4), (5), (18), (573), (574), (575) gives: % 110.07/15.27 | | | | | | | | | | (576) $false % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | CLOSE: (576) is inconsistent. % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | Case 2: % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | (577) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.27 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.27 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.27 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.27 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 110.07/15.27 | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 110.07/15.27 | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) % 110.07/15.27 | | | | | | | | | | & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.07/15.27 | | | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.07/15.27 | | | | | | | | | | v1) | ~ vTable(v6))) | ? [v0: vPred] : ? % 110.07/15.27 | | | | | | | | | | [v1: vSelect] : ? [v2: vOptTable] : ? [v3: vName] % 110.07/15.27 | | | | | | | | | | : ? [v4: int] : (all_346_1 = vnoQuery & ~ (v4 = % 110.07/15.27 | | | | | | | | | | 0) & vlookupStore(v3, all_346_6) = v2 & % 110.07/15.27 | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.07/15.27 | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) & % 110.07/15.27 | | | | | | | | | | vName(v3) & vPred(v0)) % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | BETA: splitting (577) gives: % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | Case 1: % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | (578) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.27 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.27 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.27 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.07/15.27 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 110.07/15.27 | | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 110.07/15.27 | | | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.07/15.27 | | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 110.07/15.27 | | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 110.07/15.27 | | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | DELTA: instantiating (578) with fresh symbols all_612_0, % 110.07/15.27 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.07/15.27 | | | | | | | | | | | all_612_5 gives: % 110.07/15.27 | | | | | | | | | | | (579) vreduce(all_612_4, all_346_6) = all_612_3 & % 110.07/15.27 | | | | | | | | | | | visSomeQuery(all_612_3) = 0 & vgetQuery(all_612_3) % 110.07/15.27 | | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.27 | | | | | | | | | | | vUnion(all_612_2, all_612_1) = all_612_0 & % 110.07/15.27 | | | | | | | | | | | vUnion(all_612_2, all_612_4) = all_338_0 & % 110.07/15.27 | | | | | | | | | | | vtvalue(all_612_5) = all_612_2 & % 110.07/15.27 | | | | | | | | | | | vOptQuery(all_612_3) & vOptQuery(all_346_1) & % 110.07/15.27 | | | | | | | | | | | vTable(all_612_5) & vQuery(all_612_0) & % 110.07/15.27 | | | | | | | | | | | vQuery(all_612_1) & vQuery(all_612_2) & % 110.07/15.27 | | | | | | | | | | | vQuery(all_612_4) & ! [v0: vTable] : ( ~ % 110.07/15.27 | | | | | | | | | | | (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | ALPHA: (579) implies: % 110.07/15.27 | | | | | | | | | | | (580) vQuery(all_612_4) % 110.07/15.27 | | | | | | | | | | | (581) vQuery(all_612_2) % 110.07/15.27 | | | | | | | | | | | (582) vTable(all_612_5) % 110.07/15.27 | | | | | | | | | | | (583) vtvalue(all_612_5) = all_612_2 % 110.07/15.27 | | | | | | | | | | | (584) vUnion(all_612_2, all_612_4) = all_338_0 % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_612_5, % 110.07/15.27 | | | | | | | | | | | all_612_2, simplifying with (582), (583) gives: % 110.07/15.27 | | | | | | | | | | | (585) visValue(all_612_2) = 0 % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | GROUND_INST: instantiating (isValue-1) with all_605_6, % 110.07/15.27 | | | | | | | | | | | all_605_3, all_605_8, vq1, simplifying with (514), % 110.07/15.27 | | | | | | | | | | | (515), (517), (518) gives: % 110.07/15.27 | | | | | | | | | | | (586) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_612_2, % 110.07/15.27 | | | | | | | | | | | all_612_4, all_338_0, simplifying with (4), (5), % 110.07/15.27 | | | | | | | | | | | (18), (580), (581), (584) gives: % 110.07/15.27 | | | | | | | | | | | (587) all_612_2 = vq1 & all_612_4 = vq2 % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | ALPHA: (587) implies: % 110.07/15.27 | | | | | | | | | | | (588) all_612_2 = vq1 % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | DELTA: instantiating (586) with fresh symbol all_629_0 % 110.07/15.27 | | | | | | | | | | | gives: % 110.07/15.27 | | | | | | | | | | | (589) ~ (all_629_0 = 0) & visValue(vq1) = all_629_0 % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | ALPHA: (589) implies: % 110.07/15.27 | | | | | | | | | | | (590) ~ (all_629_0 = 0) % 110.07/15.27 | | | | | | | | | | | (591) visValue(vq1) = all_629_0 % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | REDUCE: (585), (588) imply: % 110.07/15.27 | | | | | | | | | | | (592) visValue(vq1) = 0 % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_629_0, vq1, % 110.07/15.27 | | | | | | | | | | | simplifying with (591), (592) gives: % 110.07/15.27 | | | | | | | | | | | (593) all_629_0 = 0 % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | REDUCE: (590), (593) imply: % 110.07/15.27 | | | | | | | | | | | (594) $false % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | CLOSE: (594) is inconsistent. % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | Case 2: % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | (595) ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 110.07/15.27 | | | | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.07/15.27 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & % 110.07/15.27 | | | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & % 110.07/15.27 | | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.07/15.27 | | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) % 110.07/15.27 | | | | | | | | | | | & vName(v3) & vPred(v0)) % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | DELTA: instantiating (595) with fresh symbols all_612_0, % 110.07/15.27 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.07/15.27 | | | | | | | | | | | (596) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.07/15.27 | | | | | | | | | | | vlookupStore(all_612_1, all_346_6) = all_612_2 & % 110.07/15.27 | | | | | | | | | | | visSomeTable(all_612_2) = all_612_0 & % 110.07/15.27 | | | | | | | | | | | vselectFromWhere(all_612_3, all_612_1, all_612_4) % 110.07/15.27 | | | | | | | | | | | = all_338_0 & vSelect(all_612_3) & % 110.07/15.27 | | | | | | | | | | | vOptTable(all_612_2) & vName(all_612_1) & % 110.07/15.27 | | | | | | | | | | | vPred(all_612_4) % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (596) are inconsistent by % 110.07/15.27 | | | | | | | | | | | sub-proof #9. % 110.07/15.27 | | | | | | | | | | | % 110.07/15.27 | | | | | | | | | | End of split % 110.07/15.27 | | | | | | | | | | % 110.07/15.27 | | | | | | | | | End of split % 110.07/15.27 | | | | | | | | | % 110.07/15.27 | | | | | | | | End of split % 110.07/15.27 | | | | | | | | % 110.07/15.27 | | | | | | | End of split % 110.07/15.27 | | | | | | | % 110.07/15.27 | | | | | | Case 2: % 110.07/15.27 | | | | | | | % 110.07/15.28 | | | | | | | (597) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.07/15.28 | | | | | | | ? [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & % 110.07/15.28 | | | | | | | ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.07/15.28 | | | | | | | visSomeQuery(v2) = v3 & vDifference(v4, v1) = all_338_0 % 110.07/15.28 | | | | | | | & vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.07/15.28 | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.07/15.28 | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.07/15.28 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.28 | | | | | | | [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ % 110.07/15.28 | | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.07/15.28 | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v4, v1) = % 110.07/15.28 | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.07/15.28 | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: vTable] % 110.07/15.28 | | | | | | | : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.07/15.28 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.28 | | | | | | | [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ % 110.07/15.28 | | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.07/15.28 | | | | | | | visSomeQuery(v2) = v3 & vUnion(v4, v1) = all_338_0 & % 110.07/15.28 | | | | | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.07/15.28 | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.07/15.28 | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.07/15.28 | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.28 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, all_346_6) % 110.07/15.28 | | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.07/15.28 | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = v4 & % 110.07/15.28 | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.28 | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.07/15.28 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.07/15.28 | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 110.07/15.28 | | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.07/15.28 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 110.07/15.28 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.07/15.28 | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.07/15.28 | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.28 | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.07/15.28 | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) = % 110.07/15.28 | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.07/15.28 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! % 110.07/15.28 | | | | | | | [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.07/15.28 | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.07/15.28 | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.28 | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 110.07/15.28 | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.07/15.28 | | | | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.07/15.28 | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.07/15.28 | | | | | | | vsomeQuery(v4) = all_346_1 & vUnion(v3, v1) = v4 & % 110.07/15.28 | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.28 | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.07/15.28 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.07/15.28 | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 110.07/15.28 | | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.07/15.28 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 110.07/15.28 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.07/15.28 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.28 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.28 | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.28 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.07/15.28 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 110.07/15.28 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.07/15.28 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 110.07/15.28 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.07/15.28 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.28 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.28 | | | | | | | vIntersection(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.28 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.07/15.28 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 110.07/15.28 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.07/15.28 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 110.07/15.28 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.07/15.28 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.28 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.28 | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) % 110.07/15.28 | | | | | | | & vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 110.07/15.28 | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 110.07/15.28 | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 110.07/15.28 | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.07/15.28 | | | | | | | vTable] : (all_346_1 = vnoQuery & vtvalue(v0) = % 110.07/15.28 | | | | | | | all_338_0 & vTable(v0)) % 110.07/15.28 | | | | | | | % 110.07/15.28 | | | | | | | BETA: splitting (597) gives: % 110.07/15.28 | | | | | | | % 110.07/15.28 | | | | | | | Case 1: % 110.07/15.28 | | | | | | | | % 110.07/15.28 | | | | | | | | (598) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] % 110.07/15.28 | | | | | | | | : ? [v3: int] : ? [v4: vQuery] : (all_346_1 = % 110.07/15.28 | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 % 110.07/15.28 | | | | | | | | & visSomeQuery(v2) = v3 & vDifference(v4, v1) = % 110.07/15.28 | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.07/15.28 | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 110.07/15.28 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) % 110.07/15.28 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.28 | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.07/15.28 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.07/15.28 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.28 | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 110.07/15.28 | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.07/15.28 | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) % 110.07/15.28 | | | | | | | | | ~ vTable(v5))) | ? [v0: vTable] : ? [v1: % 110.07/15.28 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? [v4: % 110.07/15.28 | | | | | | | | vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.28 | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.28 | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.07/15.28 | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) % 110.07/15.28 | | | | | | | | & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.07/15.28 | | | | | | | | vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : % 110.07/15.28 | | | | | | | | ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.28 | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.28 | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.07/15.28 | | | | | | | | vDifference(v3, v1) = v4 & vDifference(v0, v1) = % 110.07/15.28 | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.07/15.28 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & % 110.07/15.28 | | | | | | | | ! [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.07/15.28 | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.07/15.28 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.28 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 110.07/15.28 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.07/15.28 | | | | | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.07/15.28 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.07/15.28 | | | | | | | | vsomeQuery(v4) = all_346_1 & vIntersection(v3, v1) = % 110.07/15.28 | | | | | | | | v4 & vIntersection(v0, v1) = all_338_0 & % 110.07/15.28 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.07/15.28 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.07/15.28 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.07/15.28 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.07/15.28 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.28 | | | | | | | | v0) | ~ vTable(v5))) % 110.07/15.28 | | | | | | | | % 110.07/15.28 | | | | | | | | BETA: splitting (598) gives: % 110.07/15.28 | | | | | | | | % 110.07/15.28 | | | | | | | | Case 1: % 110.07/15.28 | | | | | | | | | % 110.07/15.28 | | | | | | | | | (599) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.28 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.07/15.28 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.07/15.28 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.28 | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 110.07/15.28 | | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.07/15.28 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.28 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 110.07/15.28 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? % 110.07/15.28 | | | | | | | | | [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.28 | | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.07/15.28 | | | | | | | | | & vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = % 110.07/15.28 | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.07/15.28 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.28 | | | | | | | | | v1) | ~ vTable(v5))) % 110.07/15.28 | | | | | | | | | % 110.07/15.28 | | | | | | | | | BETA: splitting (599) gives: % 110.07/15.28 | | | | | | | | | % 110.07/15.28 | | | | | | | | | Case 1: % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | (600) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.28 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.07/15.28 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.07/15.28 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.28 | | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = % 110.07/15.28 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.07/15.28 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.28 | | | | | | | | | | v1) | ~ vTable(v5))) % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | DELTA: instantiating (600) with fresh symbols all_612_0, % 110.07/15.28 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.07/15.28 | | | | | | | | | | (601) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.07/15.28 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.07/15.28 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.07/15.28 | | | | | | | | | | vDifference(all_612_0, all_612_3) = all_338_0 & % 110.07/15.28 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.07/15.28 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.07/15.28 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.07/15.28 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.07/15.28 | | | | | | | | | | vTable(v0)) % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (601) are inconsistent by % 110.07/15.28 | | | | | | | | | | sub-proof #8. % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | Case 2: % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | (602) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.28 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.07/15.28 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.07/15.28 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.28 | | | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = % 110.07/15.28 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.07/15.28 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.28 | | | | | | | | | | v1) | ~ vTable(v5))) % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | DELTA: instantiating (602) with fresh symbols all_612_0, % 110.07/15.28 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.07/15.28 | | | | | | | | | | (603) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.07/15.28 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.07/15.28 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.07/15.28 | | | | | | | | | | vIntersection(all_612_0, all_612_3) = all_338_0 & % 110.07/15.28 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.07/15.28 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.07/15.28 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.07/15.28 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.07/15.28 | | | | | | | | | | vTable(v0)) % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (603) are inconsistent by % 110.07/15.28 | | | | | | | | | | sub-proof #7. % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | End of split % 110.07/15.28 | | | | | | | | | % 110.07/15.28 | | | | | | | | Case 2: % 110.07/15.28 | | | | | | | | | % 110.07/15.28 | | | | | | | | | (604) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.28 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.07/15.28 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.07/15.28 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.28 | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.07/15.28 | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.07/15.28 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.28 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 110.07/15.28 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.07/15.28 | | | | | | | | | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.07/15.28 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.07/15.28 | | | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = % 110.07/15.28 | | | | | | | | | v4 & vDifference(v0, v1) = all_338_0 & % 110.07/15.28 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.07/15.28 | | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.07/15.28 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.07/15.28 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.07/15.28 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 110.07/15.28 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.07/15.28 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.28 | | | | | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.07/15.28 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.28 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.07/15.28 | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) % 110.07/15.28 | | | | | | | | | = all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.07/15.28 | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) % 110.07/15.28 | | | | | | | | | & ! [v5: vTable] : ! [v6: vTable] : ( ~ % 110.07/15.28 | | | | | | | | | (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | ~ % 110.07/15.28 | | | | | | | | | vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : ( % 110.07/15.28 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.07/15.28 | | | | | | | | | % 110.07/15.28 | | | | | | | | | BETA: splitting (604) gives: % 110.07/15.28 | | | | | | | | | % 110.07/15.28 | | | | | | | | | Case 1: % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | (605) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.28 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.07/15.28 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.07/15.28 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.28 | | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.07/15.28 | | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.07/15.28 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.28 | | | | | | | | | | v1) | ~ vTable(v5))) % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | DELTA: instantiating (605) with fresh symbols all_612_0, % 110.07/15.28 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.07/15.28 | | | | | | | | | | (606) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.07/15.28 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.07/15.28 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.07/15.28 | | | | | | | | | | vUnion(all_612_0, all_612_3) = all_338_0 & % 110.07/15.28 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.07/15.28 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.07/15.28 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.07/15.28 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.07/15.28 | | | | | | | | | | vTable(v0)) % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (606) are inconsistent by % 110.07/15.28 | | | | | | | | | | sub-proof #6. % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | Case 2: % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | (607) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.28 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.28 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.07/15.28 | | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.07/15.28 | | | | | | | | | | & vDifference(v3, v1) = v4 & vDifference(v0, v1) % 110.07/15.28 | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 110.07/15.28 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.07/15.28 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.07/15.28 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.28 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.07/15.28 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.07/15.28 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.07/15.28 | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.07/15.28 | | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.07/15.28 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.28 | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.07/15.28 | | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, % 110.07/15.28 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.28 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.07/15.28 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.07/15.28 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.28 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.07/15.28 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.07/15.28 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | BETA: splitting (607) gives: % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | Case 1: % 110.07/15.28 | | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | | (608) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.28 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.28 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.07/15.28 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.07/15.28 | | | | | | | | | | | all_346_1 & vDifference(v3, v1) = v4 & % 110.07/15.28 | | | | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) % 110.07/15.28 | | | | | | | | | | | & vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) % 110.07/15.28 | | | | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.07/15.28 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.28 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.07/15.28 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.07/15.28 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.07/15.28 | | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | | DELTA: instantiating (608) with fresh symbols all_612_0, % 110.07/15.28 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.07/15.28 | | | | | | | | | | | (609) vreduce(all_612_4, all_346_6) = all_612_2 & % 110.07/15.28 | | | | | | | | | | | visSomeQuery(all_612_2) = 0 & vgetQuery(all_612_2) % 110.07/15.28 | | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.28 | | | | | | | | | | | vDifference(all_612_1, all_612_3) = all_612_0 & % 110.07/15.28 | | | | | | | | | | | vDifference(all_612_4, all_612_3) = all_338_0 & % 110.07/15.28 | | | | | | | | | | | vOptQuery(all_612_2) & vOptQuery(all_346_1) & % 110.07/15.28 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_1) & % 110.07/15.28 | | | | | | | | | | | vQuery(all_612_3) & vQuery(all_612_4) & ! [v0: % 110.07/15.28 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.07/15.28 | | | | | | | | | | | all_612_3) | ~ (vtvalue(v0) = all_612_4) | ~ % 110.07/15.28 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.07/15.28 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 110.07/15.28 | | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | | ALPHA: (609) implies: % 110.07/15.28 | | | | | | | | | | | (610) vQuery(all_612_4) % 110.07/15.28 | | | | | | | | | | | (611) vQuery(all_612_3) % 110.07/15.28 | | | | | | | | | | | (612) vDifference(all_612_4, all_612_3) = all_338_0 % 110.07/15.28 | | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.07/15.28 | | | | | | | | | | | vq2, all_612_4, all_612_3, all_338_0, simplifying % 110.07/15.28 | | | | | | | | | | | with (4), (5), (18), (610), (611), (612) gives: % 110.07/15.28 | | | | | | | | | | | (613) $false % 110.07/15.28 | | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | | CLOSE: (613) is inconsistent. % 110.07/15.28 | | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | Case 2: % 110.07/15.28 | | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | | (614) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.28 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.28 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.07/15.28 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.07/15.28 | | | | | | | | | | | all_346_1 & vIntersection(v3, v1) = v4 & % 110.07/15.28 | | | | | | | | | | | vIntersection(v0, v1) = all_338_0 & % 110.07/15.28 | | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & % 110.07/15.28 | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.07/15.28 | | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 110.07/15.28 | | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 110.07/15.28 | | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.07/15.28 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ % 110.07/15.28 | | | | | | | | | | | vTable(v5))) % 110.07/15.28 | | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | | DELTA: instantiating (614) with fresh symbols all_612_0, % 110.07/15.28 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.07/15.28 | | | | | | | | | | | (615) vreduce(all_612_4, all_346_6) = all_612_2 & % 110.07/15.28 | | | | | | | | | | | visSomeQuery(all_612_2) = 0 & vgetQuery(all_612_2) % 110.07/15.28 | | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.28 | | | | | | | | | | | vIntersection(all_612_1, all_612_3) = all_612_0 & % 110.07/15.28 | | | | | | | | | | | vIntersection(all_612_4, all_612_3) = all_338_0 & % 110.07/15.28 | | | | | | | | | | | vOptQuery(all_612_2) & vOptQuery(all_346_1) & % 110.07/15.28 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_1) & % 110.07/15.28 | | | | | | | | | | | vQuery(all_612_3) & vQuery(all_612_4) & ! [v0: % 110.07/15.28 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.07/15.28 | | | | | | | | | | | all_612_3) | ~ (vtvalue(v0) = all_612_4) | ~ % 110.07/15.28 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.07/15.28 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 110.07/15.28 | | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | | ALPHA: (615) implies: % 110.07/15.28 | | | | | | | | | | | (616) vQuery(all_612_4) % 110.07/15.28 | | | | | | | | | | | (617) vQuery(all_612_3) % 110.07/15.28 | | | | | | | | | | | (618) vIntersection(all_612_4, all_612_3) = all_338_0 % 110.07/15.28 | | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.07/15.28 | | | | | | | | | | | vq2, all_612_4, all_612_3, all_338_0, simplifying % 110.07/15.28 | | | | | | | | | | | with (4), (5), (18), (616), (617), (618) gives: % 110.07/15.28 | | | | | | | | | | | (619) $false % 110.07/15.28 | | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | | CLOSE: (619) is inconsistent. % 110.07/15.28 | | | | | | | | | | | % 110.07/15.28 | | | | | | | | | | End of split % 110.07/15.28 | | | | | | | | | | % 110.07/15.28 | | | | | | | | | End of split % 110.07/15.28 | | | | | | | | | % 110.07/15.28 | | | | | | | | End of split % 110.07/15.28 | | | | | | | | % 110.07/15.28 | | | | | | | Case 2: % 110.07/15.28 | | | | | | | | % 110.07/15.29 | | | | | | | | (620) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] % 110.07/15.29 | | | | | | | | : ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.07/15.29 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.29 | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.07/15.29 | | | | | | | | vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 & % 110.07/15.29 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.07/15.29 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.07/15.29 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.07/15.29 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.07/15.29 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.07/15.29 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 110.07/15.29 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.07/15.29 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.07/15.29 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.29 | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.29 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.07/15.29 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 110.07/15.29 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.07/15.29 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.07/15.29 | | | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.29 | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 110.07/15.29 | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.07/15.29 | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 110.07/15.29 | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) & % 110.07/15.29 | | | | | | | | ! [v4: vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.07/15.29 | | | | | | | | = v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | % 110.07/15.29 | | | | | | | | ~ vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.07/15.29 | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vQuery] : ? % 110.07/15.29 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.07/15.29 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.07/15.29 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.07/15.29 | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.29 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.07/15.29 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 110.07/15.29 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.07/15.29 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.07/15.29 | | | | | | | | | ? [v0: vTable] : (all_346_1 = vnoQuery & vtvalue(v0) % 110.07/15.29 | | | | | | | | = all_338_0 & vTable(v0)) % 110.07/15.29 | | | | | | | | % 110.07/15.29 | | | | | | | | BETA: splitting (620) gives: % 110.07/15.29 | | | | | | | | % 110.07/15.29 | | | | | | | | Case 1: % 110.07/15.29 | | | | | | | | | % 110.07/15.29 | | | | | | | | | (621) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.29 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.29 | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.07/15.29 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.07/15.29 | | | | | | | | | vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 & % 110.07/15.29 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.07/15.29 | | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.07/15.29 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.07/15.29 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.07/15.29 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 110.07/15.29 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.07/15.29 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.29 | | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.29 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.07/15.29 | | | | | | | | | & vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.29 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.07/15.29 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.07/15.29 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.07/15.29 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.07/15.29 | | | | | | | | | = v0) | ~ vTable(v4))) % 110.07/15.29 | | | | | | | | | % 110.07/15.29 | | | | | | | | | BETA: splitting (621) gives: % 110.07/15.29 | | | | | | | | | % 110.07/15.29 | | | | | | | | | Case 1: % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | (622) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.29 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.07/15.29 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.07/15.29 | | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.07/15.29 | | | | | | | | | | & vUnion(v3, v1) = v4 & vUnion(v0, v1) = % 110.07/15.29 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.07/15.29 | | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.07/15.29 | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 110.07/15.29 | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 110.07/15.29 | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] % 110.07/15.29 | | | | | | | | | | : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | DELTA: instantiating (622) with fresh symbols all_612_0, % 110.07/15.29 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.07/15.29 | | | | | | | | | | (623) vreduce(all_612_4, all_346_6) = all_612_2 & % 110.07/15.29 | | | | | | | | | | visSomeQuery(all_612_2) = 0 & vgetQuery(all_612_2) % 110.07/15.29 | | | | | | | | | | = all_612_1 & vsomeQuery(all_612_0) = all_346_1 & % 110.07/15.29 | | | | | | | | | | vUnion(all_612_1, all_612_3) = all_612_0 & % 110.07/15.29 | | | | | | | | | | vUnion(all_612_4, all_612_3) = all_338_0 & % 110.07/15.29 | | | | | | | | | | vOptQuery(all_612_2) & vOptQuery(all_346_1) & % 110.07/15.29 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_1) & % 110.07/15.29 | | | | | | | | | | vQuery(all_612_3) & vQuery(all_612_4) & ! [v0: % 110.07/15.29 | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.07/15.29 | | | | | | | | | | all_612_3) | ~ (vtvalue(v0) = all_612_4) | ~ % 110.07/15.29 | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : ( % 110.07/15.29 | | | | | | | | | | ~ (vtvalue(v0) = all_612_4) | ~ vTable(v0)) % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | ALPHA: (623) implies: % 110.07/15.29 | | | | | | | | | | (624) vUnion(all_612_4, all_612_3) = all_338_0 % 110.07/15.29 | | | | | | | | | | (625) vQuery(all_612_3) % 110.07/15.29 | | | | | | | | | | (626) vQuery(all_612_1) % 110.07/15.29 | | | | | | | | | | (627) vUnion(all_612_1, all_612_3) = all_612_0 % 110.07/15.29 | | | | | | | | | | (628) vQuery(all_612_4) % 110.07/15.29 | | | | | | | | | | (629) vsomeQuery(all_612_0) = all_346_1 % 110.07/15.29 | | | | | | | | | | (630) vgetQuery(all_612_2) = all_612_1 % 110.07/15.29 | | | | | | | | | | (631) vreduce(all_612_4, all_346_6) = all_612_2 % 110.07/15.29 | | | | | | | | | | (632) vQuery(all_612_0) % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | GROUND_INST: instantiating (TUnion_inv2) with all_346_5, % 110.07/15.29 | | | | | | | | | | all_612_4, all_612_3, all_346_4, all_338_0, % 110.07/15.29 | | | | | | | | | | simplifying with (22), (25), (33), (624), (625), % 110.07/15.29 | | | | | | | | | | (628) gives: % 110.07/15.29 | | | | | | | | | | (633) vptcheck(all_346_5, all_612_3, all_346_4) = 0 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_612_4, % 110.07/15.29 | | | | | | | | | | all_612_3, all_338_0, simplifying with (4), (5), % 110.07/15.29 | | | | | | | | | | (18), (624), (625), (628) gives: % 110.07/15.29 | | | | | | | | | | (634) all_612_3 = vq2 & all_612_4 = vq1 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | ALPHA: (634) implies: % 110.07/15.29 | | | | | | | | | | (635) all_612_3 = vq2 % 110.07/15.29 | | | | | | | | | | (636) all_612_4 = vq1 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | GROUND_INST: instantiating (3) with all_346_6, all_346_5, % 110.07/15.29 | | | | | | | | | | all_346_4, all_605_0, all_346_2, simplifying with % 110.07/15.29 | | | | | | | | | | (22), (24), (25), (30), (39), (516), (519) gives: % 110.07/15.29 | | | | | | | | | | (637) ? [v0: any] : ? [v1: any] : (vptcheck(all_346_5, % 110.07/15.29 | | | | | | | | | | all_605_0, all_346_4) = v1 & % 110.07/15.29 | | | | | | | | | | vstoreContextConsistent(all_346_6, all_346_5) = % 110.07/15.29 | | | | | | | | | | v0 & ( ~ (v0 = 0) | v1 = 0)) % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_359_0, % 110.07/15.29 | | | | | | | | | | all_605_0, all_346_2, simplifying with (41), (42), % 110.07/15.29 | | | | | | | | | | (516), (519) gives: % 110.07/15.29 | | | | | | | | | | (638) all_605_0 = all_359_0 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | GROUND_INST: instantiating (getQuery-0) with all_605_0, % 110.07/15.29 | | | | | | | | | | all_346_2, simplifying with (516), (519) gives: % 110.07/15.29 | | | | | | | | | | (639) vgetQuery(all_346_2) = all_605_0 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_346_3, % 110.07/15.29 | | | | | | | | | | all_612_0, all_346_1, simplifying with (23), (28), % 110.07/15.29 | | | | | | | | | | (629), (632) gives: % 110.07/15.29 | | | | | | | | | | (640) all_612_0 = all_346_3 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | DELTA: instantiating (637) with fresh symbols all_639_0, % 110.07/15.29 | | | | | | | | | | all_639_1 gives: % 110.07/15.29 | | | | | | | | | | (641) vptcheck(all_346_5, all_605_0, all_346_4) = % 110.07/15.29 | | | | | | | | | | all_639_0 & vstoreContextConsistent(all_346_6, % 110.07/15.29 | | | | | | | | | | all_346_5) = all_639_1 & ( ~ (all_639_1 = 0) | % 110.07/15.29 | | | | | | | | | | all_639_0 = 0) % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | ALPHA: (641) implies: % 110.07/15.29 | | | | | | | | | | (642) vptcheck(all_346_5, all_605_0, all_346_4) = % 110.07/15.29 | | | | | | | | | | all_639_0 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | REDUCE: (633), (635) imply: % 110.07/15.29 | | | | | | | | | | (643) vptcheck(all_346_5, vq2, all_346_4) = 0 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | REDUCE: (638), (642) imply: % 110.07/15.29 | | | | | | | | | | (644) vptcheck(all_346_5, all_359_0, all_346_4) = % 110.07/15.29 | | | | | | | | | | all_639_0 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | REDUCE: (631), (636) imply: % 110.07/15.29 | | | | | | | | | | (645) vreduce(vq1, all_346_6) = all_612_2 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | REDUCE: (638), (639) imply: % 110.07/15.29 | | | | | | | | | | (646) vgetQuery(all_346_2) = all_359_0 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | REDUCE: (627), (635), (640) imply: % 110.07/15.29 | | | | | | | | | | (647) vUnion(all_612_1, vq2) = all_346_3 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | GROUND_INST: instantiating (10) with all_346_2, all_612_2, % 110.07/15.29 | | | | | | | | | | all_346_6, vq1, simplifying with (30), (645) % 110.07/15.29 | | | | | | | | | | gives: % 110.07/15.29 | | | | | | | | | | (648) all_612_2 = all_346_2 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | GROUND_INST: instantiating (12) with 0, all_639_0, all_346_4, % 110.07/15.29 | | | | | | | | | | all_359_0, all_346_5, simplifying with (56), (644) % 110.07/15.29 | | | | | | | | | | gives: % 110.07/15.29 | | | | | | | | | | (649) all_639_0 = 0 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | REDUCE: (630), (648) imply: % 110.07/15.29 | | | | | | | | | | (650) vgetQuery(all_346_2) = all_612_1 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | GROUND_INST: instantiating (7) with all_359_0, all_612_1, % 110.07/15.29 | | | | | | | | | | all_346_2, simplifying with (646), (650) gives: % 110.07/15.29 | | | | | | | | | | (651) all_612_1 = all_359_0 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | REDUCE: (647), (651) imply: % 110.07/15.29 | | | | | | | | | | (652) vUnion(all_359_0, vq2) = all_346_3 % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | REF_CLOSE: (5), (12), (21), (22), (25), (34), (41), (56), % 110.07/15.29 | | | | | | | | | | (643), (652), (TUnion) are inconsistent by % 110.07/15.29 | | | | | | | | | | sub-proof #5. % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | Case 2: % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | (653) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.29 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 110.07/15.29 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.07/15.29 | | | | | | | | | | visSomeQuery(v2) = v3 & vDifference(v0, v1) = % 110.07/15.29 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.07/15.29 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.07/15.29 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.07/15.29 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 110.07/15.29 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | DELTA: instantiating (653) with fresh symbols all_612_0, % 110.07/15.29 | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.07/15.29 | | | | | | | | | | (654) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.07/15.29 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.07/15.29 | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.07/15.29 | | | | | | | | | | vDifference(all_612_3, all_612_2) = all_338_0 & % 110.07/15.29 | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.07/15.29 | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.07/15.29 | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.07/15.29 | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.07/15.29 | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.07/15.29 | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (654) are inconsistent by % 110.07/15.29 | | | | | | | | | | sub-proof #4. % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | End of split % 110.07/15.29 | | | | | | | | | % 110.07/15.29 | | | | | | | | Case 2: % 110.07/15.29 | | | | | | | | | % 110.07/15.29 | | | | | | | | | (655) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.29 | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 110.07/15.29 | | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.07/15.29 | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 110.07/15.29 | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) % 110.07/15.29 | | | | | | | | | & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 110.07/15.29 | | | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 110.07/15.29 | | | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( % 110.07/15.29 | | | | | | | | | ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.07/15.29 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.07/15.29 | | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.07/15.29 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.07/15.29 | | | | | | | | | & vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.07/15.29 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.07/15.29 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.07/15.29 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.07/15.29 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.07/15.29 | | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vTable] : % 110.07/15.29 | | | | | | | | | (all_346_1 = vnoQuery & vtvalue(v0) = all_338_0 & % 110.07/15.29 | | | | | | | | | vTable(v0)) % 110.07/15.29 | | | | | | | | | % 110.07/15.29 | | | | | | | | | BETA: splitting (655) gives: % 110.07/15.29 | | | | | | | | | % 110.07/15.29 | | | | | | | | | Case 1: % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | (656) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.29 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 110.07/15.29 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.07/15.29 | | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 110.07/15.29 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.07/15.29 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.07/15.29 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.07/15.29 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 110.07/15.29 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | DELTA: instantiating (656) with fresh symbols all_612_0, % 110.07/15.29 | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.07/15.29 | | | | | | | | | | (657) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.07/15.29 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.07/15.29 | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.07/15.29 | | | | | | | | | | vIntersection(all_612_3, all_612_2) = all_338_0 & % 110.07/15.29 | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.07/15.29 | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.07/15.29 | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.07/15.29 | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.07/15.29 | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.07/15.29 | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (657) are inconsistent by % 110.07/15.29 | | | | | | | | | | sub-proof #3. % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | Case 2: % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | (658) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.29 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 110.07/15.29 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.07/15.29 | | | | | | | | | | visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.07/15.29 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.07/15.29 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.07/15.29 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.07/15.29 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 110.07/15.29 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? % 110.07/15.29 | | | | | | | | | | [v0: vTable] : (all_346_1 = vnoQuery & vtvalue(v0) % 110.07/15.29 | | | | | | | | | | = all_338_0 & vTable(v0)) % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | BETA: splitting (658) gives: % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | Case 1: % 110.07/15.29 | | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | | (659) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.07/15.29 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.07/15.29 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.07/15.29 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.07/15.29 | | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.07/15.29 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.07/15.29 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.07/15.29 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.07/15.29 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.07/15.29 | | | | | | | | | | | vTable(v4))) % 110.07/15.29 | | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | | DELTA: instantiating (659) with fresh symbols all_612_0, % 110.07/15.29 | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.07/15.29 | | | | | | | | | | | (660) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.07/15.29 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.07/15.29 | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.07/15.29 | | | | | | | | | | | vUnion(all_612_3, all_612_2) = all_338_0 & % 110.07/15.29 | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.07/15.29 | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.07/15.29 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.07/15.29 | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.07/15.29 | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.07/15.29 | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.07/15.29 | | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (660) are inconsistent by % 110.07/15.29 | | | | | | | | | | | sub-proof #2. % 110.07/15.29 | | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | Case 2: % 110.07/15.29 | | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | | (661) ? [v0: vTable] : (all_346_1 = vnoQuery & % 110.07/15.29 | | | | | | | | | | | vtvalue(v0) = all_338_0 & vTable(v0)) % 110.07/15.29 | | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | | DELTA: instantiating (661) with fresh symbol all_612_0 % 110.07/15.29 | | | | | | | | | | | gives: % 110.07/15.29 | | | | | | | | | | | (662) all_346_1 = vnoQuery & vtvalue(all_612_0) = % 110.07/15.29 | | | | | | | | | | | all_338_0 & vTable(all_612_0) % 110.07/15.29 | | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (662) are inconsistent by % 110.07/15.29 | | | | | | | | | | | sub-proof #1. % 110.07/15.29 | | | | | | | | | | | % 110.07/15.29 | | | | | | | | | | End of split % 110.07/15.29 | | | | | | | | | | % 110.07/15.29 | | | | | | | | | End of split % 110.07/15.29 | | | | | | | | | % 110.07/15.29 | | | | | | | | End of split % 110.07/15.29 | | | | | | | | % 110.07/15.29 | | | | | | | End of split % 110.07/15.29 | | | | | | | % 110.07/15.29 | | | | | | End of split % 110.07/15.29 | | | | | | % 110.07/15.29 | | | | | End of split % 110.07/15.29 | | | | | % 110.07/15.29 | | | | End of split % 110.07/15.29 | | | | % 110.07/15.29 | | | Case 2: % 110.07/15.29 | | | | % 110.07/15.30 | | | | (663) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : ? [v3: % 110.07/15.30 | | | | vOptTable] : ? [v4: vOptTable] : ? [v5: vName] : ? [v6: % 110.07/15.30 | | | | vTable] : ? [v7: int] : (all_346_2 = vnoQuery & ~ (v7 = 0) % 110.07/15.30 | | | | & vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.07/15.30 | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) = v7 & % 110.07/15.30 | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 110.07/15.30 | | | | vselectFromWhere(v2, v5, v0) = vq1 & vSelect(v2) & vTable(v6) % 110.07/15.30 | | | | & vTable(v1) & vOptTable(v4) & vOptTable(v3) & vName(v5) & % 110.07/15.30 | | | | vPred(v0)) | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.30 | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? [v5: % 110.07/15.30 | | | | vQuery] : (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.07/15.30 | | | | & vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_2 & % 110.07/15.30 | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = vq1 & % 110.07/15.30 | | | | vtvalue(v0) = v3 & vOptQuery(v2) & vOptQuery(all_346_2) & % 110.07/15.30 | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.07/15.30 | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.30 | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.30 | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? [v5: % 110.07/15.30 | | | | vQuery] : (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.07/15.30 | | | | & vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_2 & % 110.07/15.30 | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) = vq1 & % 110.07/15.30 | | | | vtvalue(v0) = v3 & vOptQuery(v2) & vOptQuery(all_346_2) & % 110.07/15.30 | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.07/15.30 | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.07/15.30 | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.07/15.30 | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? [v5: % 110.07/15.30 | | | | vQuery] : (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.07/15.30 | | | | & vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_2 & % 110.07/15.30 | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = vq1 & vtvalue(v0) = v3 % 110.07/15.30 | | | | & vOptQuery(v2) & vOptQuery(all_346_2) & vTable(v0) & % 110.07/15.30 | | | | vQuery(v5) & vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.07/15.30 | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? % 110.07/15.30 | | | | [v0: vPred] : ? [v1: vSelect] : ? [v2: vOptTable] : ? [v3: % 110.07/15.30 | | | | vName] : ? [v4: int] : (all_346_2 = vnoQuery & ~ (v4 = 0) & % 110.07/15.30 | | | | vlookupStore(v3, all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.07/15.30 | | | | vselectFromWhere(v1, v3, v0) = vq1 & vSelect(v1) & % 110.07/15.30 | | | | vOptTable(v2) & vName(v3) & vPred(v0)) % 110.07/15.30 | | | | % 110.07/15.30 | | | | BETA: splitting (663) gives: % 110.07/15.30 | | | | % 110.07/15.30 | | | | Case 1: % 110.07/15.30 | | | | | % 110.07/15.30 | | | | | (664) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : ? [v3: % 110.07/15.30 | | | | | vOptTable] : ? [v4: vOptTable] : ? [v5: vName] : ? [v6: % 110.07/15.30 | | | | | vTable] : ? [v7: int] : (all_346_2 = vnoQuery & ~ (v7 = % 110.07/15.30 | | | | | 0) & vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = % 110.07/15.30 | | | | | v4 & vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) = % 110.07/15.30 | | | | | v7 & visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 110.07/15.30 | | | | | vselectFromWhere(v2, v5, v0) = vq1 & vSelect(v2) & % 110.07/15.30 | | | | | vTable(v6) & vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.07/15.30 | | | | | vName(v5) & vPred(v0)) | ? [v0: vTable] : ? [v1: vQuery] % 110.07/15.30 | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 110.07/15.30 | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.07/15.30 | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & vsomeQuery(v5) % 110.07/15.30 | | | | | = all_346_2 & vDifference(v3, v4) = v5 & vDifference(v3, % 110.07/15.30 | | | | | v1) = vq1 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.07/15.30 | | | | | vOptQuery(all_346_2) & vTable(v0) & vQuery(v5) & vQuery(v4) % 110.07/15.30 | | | | | & vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 110.07/15.30 | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.07/15.30 | | | | | % 110.07/15.30 | | | | | BETA: splitting (664) gives: % 110.07/15.30 | | | | | % 110.07/15.30 | | | | | Case 1: % 110.07/15.30 | | | | | | % 110.07/15.30 | | | | | | (665) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : ? % 110.07/15.30 | | | | | | [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] : ? % 110.07/15.30 | | | | | | [v6: vTable] : ? [v7: int] : (all_346_2 = vnoQuery & ~ % 110.07/15.30 | | | | | | (v7 = 0) & vfilterTable(v6, v0) = v1 & vprojectTable(v2, % 110.07/15.30 | | | | | | v1) = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.07/15.30 | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.07/15.30 | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) = vq1 & % 110.07/15.30 | | | | | | vSelect(v2) & vTable(v6) & vTable(v1) & vOptTable(v4) & % 110.07/15.30 | | | | | | vOptTable(v3) & vName(v5) & vPred(v0)) % 110.07/15.30 | | | | | | % 110.07/15.30 | | | | | | DELTA: instantiating (665) with fresh symbols all_605_0, all_605_1, % 110.07/15.30 | | | | | | all_605_2, all_605_3, all_605_4, all_605_5, all_605_6, % 110.07/15.30 | | | | | | all_605_7 gives: % 110.07/15.30 | | | | | | (666) all_346_2 = vnoQuery & ~ (all_605_0 = 0) & % 110.07/15.30 | | | | | | vfilterTable(all_605_1, all_605_7) = all_605_6 & % 110.07/15.30 | | | | | | vprojectTable(all_605_5, all_605_6) = all_605_3 & % 110.07/15.30 | | | | | | vlookupStore(all_605_2, all_346_6) = all_605_4 & % 110.07/15.30 | | | | | | visSomeTable(all_605_3) = all_605_0 & % 110.07/15.30 | | | | | | visSomeTable(all_605_4) = 0 & vgetTable(all_605_4) = % 110.07/15.30 | | | | | | all_605_1 & vselectFromWhere(all_605_5, all_605_2, % 110.07/15.30 | | | | | | all_605_7) = vq1 & vSelect(all_605_5) & vTable(all_605_1) % 110.07/15.30 | | | | | | & vTable(all_605_6) & vOptTable(all_605_3) & % 110.07/15.30 | | | | | | vOptTable(all_605_4) & vName(all_605_2) & vPred(all_605_7) % 110.07/15.30 | | | | | | % 110.07/15.30 | | | | | | ALPHA: (666) implies: % 110.07/15.30 | | | | | | (667) all_346_2 = vnoQuery % 110.07/15.30 | | | | | | % 110.07/15.30 | | | | | | REDUCE: (29), (667) imply: % 110.07/15.30 | | | | | | (668) visSomeQuery(vnoQuery) = 0 % 110.07/15.30 | | | | | | % 110.07/15.30 | | | | | | GROUND_INST: instantiating (9) with all_307_0, 0, vnoQuery, % 110.07/15.30 | | | | | | simplifying with (15), (668) gives: % 110.07/15.30 | | | | | | (669) all_307_0 = 0 % 110.07/15.30 | | | | | | % 110.07/15.30 | | | | | | REDUCE: (14), (669) imply: % 110.51/15.30 | | | | | | (670) $false % 110.51/15.30 | | | | | | % 110.51/15.30 | | | | | | CLOSE: (670) is inconsistent. % 110.51/15.30 | | | | | | % 110.51/15.30 | | | | | Case 2: % 110.51/15.30 | | | | | | % 110.51/15.30 | | | | | | (671) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.30 | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.51/15.30 | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.30 | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_2 & % 110.51/15.30 | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = vq1 & % 110.51/15.30 | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & vOptQuery(all_346_2) & % 110.51/15.30 | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.51/15.30 | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | % 110.51/15.30 | | | | | | ~ vTable(v6))) % 110.51/15.30 | | | | | | % 110.51/15.30 | | | | | | DELTA: instantiating (671) with fresh symbols all_605_0, all_605_1, % 110.51/15.30 | | | | | | all_605_2, all_605_3, all_605_4, all_605_5 gives: % 110.51/15.30 | | | | | | (672) vreduce(all_605_4, all_346_6) = all_605_3 & % 110.51/15.30 | | | | | | visSomeQuery(all_605_3) = 0 & vgetQuery(all_605_3) = % 110.51/15.30 | | | | | | all_605_1 & vsomeQuery(all_605_0) = all_346_2 & % 110.51/15.30 | | | | | | vDifference(all_605_2, all_605_1) = all_605_0 & % 110.51/15.30 | | | | | | vDifference(all_605_2, all_605_4) = vq1 & % 110.51/15.30 | | | | | | vtvalue(all_605_5) = all_605_2 & vOptQuery(all_605_3) & % 110.51/15.30 | | | | | | vOptQuery(all_346_2) & vTable(all_605_5) & % 110.51/15.30 | | | | | | vQuery(all_605_0) & vQuery(all_605_1) & vQuery(all_605_2) & % 110.51/15.30 | | | | | | vQuery(all_605_4) & ! [v0: vTable] : ( ~ (vtvalue(v0) = % 110.51/15.30 | | | | | | all_605_4) | ~ vTable(v0)) % 110.51/15.30 | | | | | | % 110.51/15.30 | | | | | | ALPHA: (672) implies: % 110.51/15.30 | | | | | | (673) vQuery(all_605_4) % 110.51/15.30 | | | | | | (674) vQuery(all_605_2) % 110.51/15.30 | | | | | | (675) vQuery(all_605_0) % 110.51/15.30 | | | | | | (676) vDifference(all_605_2, all_605_4) = vq1 % 110.51/15.30 | | | | | | (677) vsomeQuery(all_605_0) = all_346_2 % 110.51/15.30 | | | | | | % 110.51/15.30 | | | | | | BETA: splitting (38) gives: % 110.51/15.30 | | | | | | % 110.51/15.30 | | | | | | Case 1: % 110.51/15.30 | | | | | | | % 110.51/15.30 | | | | | | | (678) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? % 110.51/15.30 | | | | | | | [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? % 110.51/15.30 | | | | | | | [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : % 110.51/15.30 | | | | | | | ? [v9: vQuery] : (vrawDifference(v5, v6) = v7 & % 110.51/15.30 | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 110.51/15.30 | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.30 | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.51/15.30 | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.30 | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.30 | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.30 | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.30 | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 110.51/15.30 | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.51/15.30 | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: vRawTable] % 110.51/15.30 | | | | | | | : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.30 | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.30 | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = % 110.51/15.30 | | | | | | | v8 & vsomeQuery(v9) = all_346_1 & vIntersection(v2, v3) % 110.51/15.30 | | | | | | | = all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.51/15.30 | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) & % 110.51/15.30 | | | | | | | vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.51/15.30 | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.51/15.30 | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? [v1: % 110.51/15.30 | | | | | | | vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: % 110.51/15.30 | | | | | | | vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] : ? % 110.51/15.30 | | | | | | | [v7: vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.30 | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.30 | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = % 110.51/15.30 | | | | | | | v8 & vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 110.51/15.30 | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.51/15.30 | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) & % 110.51/15.30 | | | | | | | vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.51/15.30 | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.51/15.30 | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? [v1: % 110.51/15.30 | | | | | | | vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : ? % 110.51/15.30 | | | | | | | [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 110.51/15.30 | | | | | | | [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, v0) = % 110.51/15.30 | | | | | | | v1 & vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.51/15.30 | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 110.51/15.30 | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.51/15.30 | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.51/15.30 | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & vtvalue(v7) % 110.51/15.30 | | | | | | | = v8 & vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) % 110.51/15.30 | | | | | | | & vTable(v6) & vTable(v1) & vOptTable(v4) & % 110.51/15.30 | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & vPred(v0)) | % 110.51/15.30 | | | | | | | ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : ? % 110.51/15.30 | | | | | | | [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] : % 110.51/15.30 | | | | | | | ? [v6: vTable] : ? [v7: int] : (all_346_1 = vnoQuery & % 110.51/15.30 | | | | | | | ~ (v7 = 0) & vfilterTable(v6, v0) = v1 & % 110.51/15.30 | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.51/15.30 | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 110.51/15.30 | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 110.51/15.30 | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & vSelect(v2) % 110.51/15.30 | | | | | | | & vTable(v6) & vTable(v1) & vOptTable(v4) & % 110.51/15.30 | | | | | | | vOptTable(v3) & vName(v5) & vPred(v0)) | ? [v0: % 110.51/15.30 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.30 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.51/15.30 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.30 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.51/15.30 | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 110.51/15.30 | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.30 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.30 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] % 110.51/15.30 | | | | | | | : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 110.51/15.30 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.30 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.51/15.30 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.30 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.51/15.30 | | | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) = % 110.51/15.30 | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.30 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.30 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] % 110.51/15.30 | | | | | | | : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 110.51/15.30 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.30 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.51/15.30 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.30 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.51/15.30 | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 110.51/15.30 | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.51/15.30 | | | | | | | & vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.51/15.30 | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | % 110.51/15.30 | | | | | | | ~ vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] : % 110.51/15.30 | | | | | | | ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.51/15.30 | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 110.51/15.30 | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.51/15.30 | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & vSelect(v1) % 110.51/15.30 | | | | | | | & vOptTable(v2) & vName(v3) & vPred(v0)) % 110.51/15.30 | | | | | | | % 110.51/15.30 | | | | | | | BETA: splitting (678) gives: % 110.51/15.30 | | | | | | | % 110.51/15.30 | | | | | | | Case 1: % 110.51/15.30 | | | | | | | | % 110.51/15.30 | | | | | | | | (679) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.51/15.30 | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : % 110.51/15.30 | | | | | | | | ? [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: % 110.51/15.30 | | | | | | | | vTable] : ? [v9: vQuery] : (vrawDifference(v5, v6) = % 110.51/15.30 | | | | | | | | v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & % 110.51/15.30 | | | | | | | | vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 110.51/15.30 | | | | | | | | vsomeQuery(v9) = all_346_1 & vDifference(v2, v3) = % 110.51/15.30 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.51/15.30 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 110.51/15.30 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.51/15.30 | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.51/15.30 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? % 110.51/15.30 | | | | | | | | [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? % 110.51/15.30 | | | | | | | | [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] % 110.51/15.30 | | | | | | | | : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 110.51/15.30 | | | | | | | | vQuery] : (vrawIntersection(v5, v6) = v7 & % 110.51/15.30 | | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 110.51/15.30 | | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.51/15.30 | | | | | | | | & vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 110.51/15.30 | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.30 | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.30 | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.30 | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.30 | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 110.51/15.30 | | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.51/15.30 | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.30 | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.30 | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.30 | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) % 110.51/15.30 | | | | | | | | = v8 & vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 110.51/15.30 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.51/15.30 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 110.51/15.30 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.51/15.30 | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.51/15.30 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? % 110.51/15.30 | | | | | | | | [v1: vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : % 110.51/15.30 | | | | | | | | ? [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.51/15.30 | | | | | | | | ? [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 110.51/15.30 | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.51/15.30 | | | | | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) = % 110.51/15.30 | | | | | | | | 0 & visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.51/15.30 | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.51/15.30 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.51/15.30 | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & vSelect(v2) % 110.51/15.30 | | | | | | | | & vTable(v7) & vTable(v6) & vTable(v1) & % 110.51/15.30 | | | | | | | | vOptTable(v4) & vOptTable(v3) & vQuery(v8) & % 110.51/15.30 | | | | | | | | vName(v5) & vPred(v0)) % 110.51/15.30 | | | | | | | | % 110.51/15.30 | | | | | | | | BETA: splitting (679) gives: % 110.51/15.30 | | | | | | | | % 110.51/15.30 | | | | | | | | Case 1: % 110.51/15.30 | | | | | | | | | % 110.51/15.30 | | | | | | | | | (680) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.51/15.30 | | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.51/15.30 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.30 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.30 | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.30 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.30 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.30 | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 % 110.51/15.30 | | | | | | | | | & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.30 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.30 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.30 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.30 | | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : % 110.51/15.30 | | | | | | | | | ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : % 110.51/15.30 | | | | | | | | | ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.30 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.30 | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.30 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.30 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.30 | | | | | | | | | vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 110.51/15.30 | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.30 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.30 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.30 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.30 | | | | | | | | | vAttrL(v4)) % 110.51/15.30 | | | | | | | | | % 110.51/15.30 | | | | | | | | | BETA: splitting (680) gives: % 110.51/15.30 | | | | | | | | | % 110.51/15.30 | | | | | | | | | Case 1: % 110.51/15.30 | | | | | | | | | | % 110.51/15.30 | | | | | | | | | | (681) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.51/15.30 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.51/15.30 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.30 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.30 | | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.30 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.30 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.30 | | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = % 110.51/15.30 | | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.30 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.30 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.51/15.30 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.30 | | | | | | | | | | vAttrL(v4)) % 110.51/15.30 | | | | | | | | | | % 110.51/15.30 | | | | | | | | | | DELTA: instantiating (681) with fresh symbols all_613_0, % 110.51/15.30 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.30 | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, all_613_9 % 110.51/15.30 | | | | | | | | | | gives: % 110.51/15.30 | | | | | | | | | | (682) vrawDifference(all_613_4, all_613_3) = all_613_2 & % 110.51/15.30 | | | | | | | | | | vgetAttrL(all_613_9) = all_613_5 & % 110.51/15.30 | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & vgetRaw(all_613_9) % 110.51/15.30 | | | | | | | | | | = all_613_4 & vtable(all_613_5, all_613_2) = % 110.51/15.30 | | | | | | | | | | all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.30 | | | | | | | | | | vDifference(all_613_7, all_613_6) = all_338_0 & % 110.51/15.30 | | | | | | | | | | vtvalue(all_613_1) = all_613_0 & vtvalue(all_613_8) % 110.51/15.30 | | | | | | | | | | = all_613_6 & vtvalue(all_613_9) = all_613_7 & % 110.51/15.30 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.51/15.30 | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.51/15.30 | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.51/15.30 | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.51/15.30 | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.51/15.30 | | | | | | | | | | vAttrL(all_613_5) % 110.51/15.30 | | | | | | | | | | % 110.51/15.30 | | | | | | | | | | ALPHA: (682) implies: % 110.51/15.30 | | | | | | | | | | (683) vQuery(all_613_7) % 110.51/15.30 | | | | | | | | | | (684) vQuery(all_613_6) % 110.51/15.30 | | | | | | | | | | (685) vDifference(all_613_7, all_613_6) = all_338_0 % 110.51/15.30 | | | | | | | | | | % 110.51/15.30 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.51/15.30 | | | | | | | | | | vq2, all_613_7, all_613_6, all_338_0, simplifying % 110.51/15.30 | | | | | | | | | | with (4), (5), (18), (683), (684), (685) gives: % 110.51/15.30 | | | | | | | | | | (686) $false % 110.51/15.30 | | | | | | | | | | % 110.51/15.30 | | | | | | | | | | CLOSE: (686) is inconsistent. % 110.51/15.30 | | | | | | | | | | % 110.51/15.30 | | | | | | | | | Case 2: % 110.51/15.30 | | | | | | | | | | % 110.51/15.30 | | | | | | | | | | (687) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.51/15.30 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.51/15.30 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.30 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.30 | | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 % 110.51/15.30 | | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.51/15.30 | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.51/15.30 | | | | | | | | | | & vIntersection(v2, v3) = all_338_0 & vtvalue(v8) % 110.51/15.30 | | | | | | | | | | = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.30 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.30 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.51/15.30 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.30 | | | | | | | | | | vAttrL(v4)) % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | DELTA: instantiating (687) with fresh symbols all_613_0, % 110.51/15.31 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.31 | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, all_613_9 % 110.51/15.31 | | | | | | | | | | gives: % 110.51/15.31 | | | | | | | | | | (688) vrawIntersection(all_613_4, all_613_3) = all_613_2 % 110.51/15.31 | | | | | | | | | | & vgetAttrL(all_613_9) = all_613_5 & % 110.51/15.31 | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & vgetRaw(all_613_9) % 110.51/15.31 | | | | | | | | | | = all_613_4 & vtable(all_613_5, all_613_2) = % 110.51/15.31 | | | | | | | | | | all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.31 | | | | | | | | | | vIntersection(all_613_7, all_613_6) = all_338_0 & % 110.51/15.31 | | | | | | | | | | vtvalue(all_613_1) = all_613_0 & vtvalue(all_613_8) % 110.51/15.31 | | | | | | | | | | = all_613_6 & vtvalue(all_613_9) = all_613_7 & % 110.51/15.31 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.51/15.31 | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.51/15.31 | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.51/15.31 | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.51/15.31 | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.51/15.31 | | | | | | | | | | vAttrL(all_613_5) % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | ALPHA: (688) implies: % 110.51/15.31 | | | | | | | | | | (689) vQuery(all_613_7) % 110.51/15.31 | | | | | | | | | | (690) vQuery(all_613_6) % 110.51/15.31 | | | | | | | | | | (691) vIntersection(all_613_7, all_613_6) = all_338_0 % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.51/15.31 | | | | | | | | | | vq2, all_613_7, all_613_6, all_338_0, simplifying % 110.51/15.31 | | | | | | | | | | with (4), (5), (18), (689), (690), (691) gives: % 110.51/15.31 | | | | | | | | | | (692) $false % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | CLOSE: (692) is inconsistent. % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | End of split % 110.51/15.31 | | | | | | | | | % 110.51/15.31 | | | | | | | | Case 2: % 110.51/15.31 | | | | | | | | | % 110.51/15.31 | | | | | | | | | (693) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.51/15.31 | | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.51/15.31 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.31 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.31 | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.31 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.31 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.31 | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.51/15.31 | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.31 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.31 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.31 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.31 | | | | | | | | | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : ? % 110.51/15.31 | | | | | | | | | [v2: vSelect] : ? [v3: vOptTable] : ? [v4: % 110.51/15.31 | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 110.51/15.31 | | | | | | | | | [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 110.51/15.31 | | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.51/15.31 | | | | | | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) % 110.51/15.31 | | | | | | | | | = 0 & visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.51/15.31 | | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.51/15.31 | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.51/15.31 | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 110.51/15.31 | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & vTable(v1) % 110.51/15.31 | | | | | | | | | & vOptTable(v4) & vOptTable(v3) & vQuery(v8) & % 110.51/15.31 | | | | | | | | | vName(v5) & vPred(v0)) % 110.51/15.31 | | | | | | | | | % 110.51/15.31 | | | | | | | | | BETA: splitting (693) gives: % 110.51/15.31 | | | | | | | | | % 110.51/15.31 | | | | | | | | | Case 1: % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | (694) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.51/15.31 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.51/15.31 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.31 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.31 | | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.31 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.31 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.31 | | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.51/15.31 | | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.31 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.31 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.51/15.31 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.31 | | | | | | | | | | vAttrL(v4)) % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | DELTA: instantiating (694) with fresh symbols all_613_0, % 110.51/15.31 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.31 | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, all_613_9 % 110.51/15.31 | | | | | | | | | | gives: % 110.51/15.31 | | | | | | | | | | (695) vrawUnion(all_613_4, all_613_3) = all_613_2 & % 110.51/15.31 | | | | | | | | | | vgetAttrL(all_613_9) = all_613_5 & % 110.51/15.31 | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & vgetRaw(all_613_9) % 110.51/15.31 | | | | | | | | | | = all_613_4 & vtable(all_613_5, all_613_2) = % 110.51/15.31 | | | | | | | | | | all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.31 | | | | | | | | | | vUnion(all_613_7, all_613_6) = all_338_0 & % 110.51/15.31 | | | | | | | | | | vtvalue(all_613_1) = all_613_0 & vtvalue(all_613_8) % 110.51/15.31 | | | | | | | | | | = all_613_6 & vtvalue(all_613_9) = all_613_7 & % 110.51/15.31 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.51/15.31 | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.51/15.31 | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.51/15.31 | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.51/15.31 | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.51/15.31 | | | | | | | | | | vAttrL(all_613_5) % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | ALPHA: (695) implies: % 110.51/15.31 | | | | | | | | | | (696) vQuery(all_613_7) % 110.51/15.31 | | | | | | | | | | (697) vQuery(all_613_6) % 110.51/15.31 | | | | | | | | | | (698) vTable(all_613_9) % 110.51/15.31 | | | | | | | | | | (699) vtvalue(all_613_9) = all_613_7 % 110.51/15.31 | | | | | | | | | | (700) vUnion(all_613_7, all_613_6) = all_338_0 % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_613_9, % 110.51/15.31 | | | | | | | | | | all_613_7, simplifying with (698), (699) gives: % 110.51/15.31 | | | | | | | | | | (701) visValue(all_613_7) = 0 % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_7, % 110.51/15.31 | | | | | | | | | | all_613_6, all_338_0, simplifying with (4), (5), % 110.51/15.31 | | | | | | | | | | (18), (696), (697), (700) gives: % 110.51/15.31 | | | | | | | | | | (702) all_613_6 = vq2 & all_613_7 = vq1 % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | ALPHA: (702) implies: % 110.51/15.31 | | | | | | | | | | (703) all_613_7 = vq1 % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | GROUND_INST: instantiating (isValue-4) with all_605_2, % 110.51/15.31 | | | | | | | | | | all_605_4, vq1, simplifying with (673), (674), % 110.51/15.31 | | | | | | | | | | (676) gives: % 110.51/15.31 | | | | | | | | | | (704) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | DELTA: instantiating (704) with fresh symbol all_631_0 % 110.51/15.31 | | | | | | | | | | gives: % 110.51/15.31 | | | | | | | | | | (705) ~ (all_631_0 = 0) & visValue(vq1) = all_631_0 % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | ALPHA: (705) implies: % 110.51/15.31 | | | | | | | | | | (706) ~ (all_631_0 = 0) % 110.51/15.31 | | | | | | | | | | (707) visValue(vq1) = all_631_0 % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | REDUCE: (701), (703) imply: % 110.51/15.31 | | | | | | | | | | (708) visValue(vq1) = 0 % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_631_0, vq1, % 110.51/15.31 | | | | | | | | | | simplifying with (707), (708) gives: % 110.51/15.31 | | | | | | | | | | (709) all_631_0 = 0 % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | REDUCE: (706), (709) imply: % 110.51/15.31 | | | | | | | | | | (710) $false % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | CLOSE: (710) is inconsistent. % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | Case 2: % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | (711) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 110.51/15.31 | | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.51/15.31 | | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: vTable] : ? % 110.51/15.31 | | | | | | | | | | [v8: vQuery] : (vfilterTable(v6, v0) = v1 & % 110.51/15.31 | | | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.51/15.31 | | | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 110.51/15.31 | | | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.51/15.31 | | | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.51/15.31 | | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.51/15.31 | | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 110.51/15.31 | | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & % 110.51/15.31 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.51/15.31 | | | | | | | | | | vQuery(v8) & vName(v5) & vPred(v0)) % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | DELTA: instantiating (711) with fresh symbols all_613_0, % 110.51/15.31 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.31 | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8 gives: % 110.51/15.31 | | | | | | | | | | (712) vfilterTable(all_613_2, all_613_8) = all_613_7 & % 110.51/15.31 | | | | | | | | | | vprojectTable(all_613_6, all_613_7) = all_613_4 & % 110.51/15.31 | | | | | | | | | | vlookupStore(all_613_3, all_346_6) = all_613_5 & % 110.51/15.31 | | | | | | | | | | visSomeTable(all_613_4) = 0 & % 110.51/15.31 | | | | | | | | | | visSomeTable(all_613_5) = 0 & vgetTable(all_613_4) % 110.51/15.31 | | | | | | | | | | = all_613_1 & vgetTable(all_613_5) = all_613_2 & % 110.51/15.31 | | | | | | | | | | vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.31 | | | | | | | | | | vselectFromWhere(all_613_6, all_613_3, all_613_8) = % 110.51/15.31 | | | | | | | | | | all_338_0 & vtvalue(all_613_1) = all_613_0 & % 110.51/15.31 | | | | | | | | | | vOptQuery(all_346_1) & vSelect(all_613_6) & % 110.51/15.31 | | | | | | | | | | vTable(all_613_1) & vTable(all_613_2) & % 110.51/15.31 | | | | | | | | | | vTable(all_613_7) & vOptTable(all_613_4) & % 110.51/15.31 | | | | | | | | | | vOptTable(all_613_5) & vQuery(all_613_0) & % 110.51/15.31 | | | | | | | | | | vName(all_613_3) & vPred(all_613_8) % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | ALPHA: (712) implies: % 110.51/15.31 | | | | | | | | | | (713) vPred(all_613_8) % 110.51/15.31 | | | | | | | | | | (714) vName(all_613_3) % 110.51/15.31 | | | | | | | | | | (715) vSelect(all_613_6) % 110.51/15.31 | | | | | | | | | | (716) vselectFromWhere(all_613_6, all_613_3, all_613_8) = % 110.51/15.31 | | | | | | | | | | all_338_0 % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | GROUND_INST: instantiating (DIFF-selectFromWhere-Union) with % 110.51/15.31 | | | | | | | | | | all_613_3, all_613_8, all_613_6, vq2, vq1, % 110.51/15.31 | | | | | | | | | | all_338_0, simplifying with (4), (5), (18), (713), % 110.51/15.31 | | | | | | | | | | (714), (715), (716) gives: % 110.51/15.31 | | | | | | | | | | (717) $false % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | CLOSE: (717) is inconsistent. % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | End of split % 110.51/15.31 | | | | | | | | | % 110.51/15.31 | | | | | | | | End of split % 110.51/15.31 | | | | | | | | % 110.51/15.31 | | | | | | | Case 2: % 110.51/15.31 | | | | | | | | % 110.51/15.31 | | | | | | | | (718) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 110.51/15.31 | | | | | | | | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] % 110.51/15.31 | | | | | | | | : ? [v6: vTable] : ? [v7: int] : (all_346_1 = % 110.51/15.31 | | | | | | | | vnoQuery & ~ (v7 = 0) & vfilterTable(v6, v0) = v1 & % 110.51/15.31 | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.51/15.31 | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 110.51/15.31 | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 110.51/15.31 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.51/15.31 | | | | | | | | vSelect(v2) & vTable(v6) & vTable(v1) & vOptTable(v4) % 110.51/15.31 | | | | | | | | & vOptTable(v3) & vName(v5) & vPred(v0)) | ? [v0: % 110.51/15.31 | | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.31 | | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.51/15.31 | | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.31 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.51/15.31 | | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 110.51/15.31 | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.31 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.31 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.31 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.51/15.31 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.31 | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 110.51/15.31 | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.31 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.31 | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) = % 110.51/15.31 | | | | | | | | v5 & vIntersection(v3, v1) = all_338_0 & vtvalue(v0) % 110.51/15.31 | | | | | | | | = v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.31 | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.51/15.31 | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.51/15.31 | | | | | | | | | ~ vTable(v6))) | ? [v0: vTable] : ? [v1: % 110.51/15.31 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.51/15.31 | | | | | | | | [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.51/15.31 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.31 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.51/15.31 | | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 110.51/15.31 | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.31 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.31 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.31 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.51/15.31 | | | | | | | | | ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 110.51/15.31 | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.51/15.31 | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 110.51/15.31 | | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.51/15.31 | | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & % 110.51/15.31 | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & vPred(v0)) % 110.51/15.31 | | | | | | | | % 110.51/15.31 | | | | | | | | BETA: splitting (718) gives: % 110.51/15.31 | | | | | | | | % 110.51/15.31 | | | | | | | | Case 1: % 110.51/15.31 | | | | | | | | | % 110.51/15.31 | | | | | | | | | (719) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 110.51/15.31 | | | | | | | | | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.51/15.31 | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 110.51/15.31 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 110.51/15.31 | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = % 110.51/15.31 | | | | | | | | | v4 & vlookupStore(v5, all_346_6) = v3 & % 110.51/15.31 | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.51/15.31 | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) = % 110.51/15.31 | | | | | | | | | all_338_0 & vSelect(v2) & vTable(v6) & vTable(v1) & % 110.51/15.31 | | | | | | | | | vOptTable(v4) & vOptTable(v3) & vName(v5) & % 110.51/15.31 | | | | | | | | | vPred(v0)) | ? [v0: vTable] : ? [v1: vQuery] : ? % 110.51/15.31 | | | | | | | | | [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.31 | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.31 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.31 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) = % 110.51/15.31 | | | | | | | | | v5 & vDifference(v3, v1) = all_338_0 & vtvalue(v0) % 110.51/15.31 | | | | | | | | | = v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.31 | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.51/15.31 | | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.51/15.31 | | | | | | | | | v1) | ~ vTable(v6))) % 110.51/15.31 | | | | | | | | | % 110.51/15.31 | | | | | | | | | BETA: splitting (719) gives: % 110.51/15.31 | | | | | | | | | % 110.51/15.31 | | | | | | | | | Case 1: % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | (720) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 110.51/15.31 | | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.51/15.31 | | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 110.51/15.31 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 110.51/15.31 | | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 110.51/15.31 | | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.51/15.31 | | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.51/15.31 | | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) % 110.51/15.31 | | | | | | | | | | = all_338_0 & vSelect(v2) & vTable(v6) & % 110.51/15.31 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.51/15.31 | | | | | | | | | | vName(v5) & vPred(v0)) % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | DELTA: instantiating (720) with fresh symbols all_612_0, % 110.51/15.31 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.51/15.31 | | | | | | | | | | all_612_5, all_612_6, all_612_7 gives: % 110.51/15.31 | | | | | | | | | | (721) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.51/15.31 | | | | | | | | | | vfilterTable(all_612_1, all_612_7) = all_612_6 & % 110.51/15.31 | | | | | | | | | | vprojectTable(all_612_5, all_612_6) = all_612_3 & % 110.51/15.31 | | | | | | | | | | vlookupStore(all_612_2, all_346_6) = all_612_4 & % 110.51/15.31 | | | | | | | | | | visSomeTable(all_612_3) = all_612_0 & % 110.51/15.31 | | | | | | | | | | visSomeTable(all_612_4) = 0 & vgetTable(all_612_4) % 110.51/15.31 | | | | | | | | | | = all_612_1 & vselectFromWhere(all_612_5, % 110.51/15.31 | | | | | | | | | | all_612_2, all_612_7) = all_338_0 & % 110.51/15.31 | | | | | | | | | | vSelect(all_612_5) & vTable(all_612_1) & % 110.51/15.31 | | | | | | | | | | vTable(all_612_6) & vOptTable(all_612_3) & % 110.51/15.31 | | | | | | | | | | vOptTable(all_612_4) & vName(all_612_2) & % 110.51/15.31 | | | | | | | | | | vPred(all_612_7) % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (721) are inconsistent by % 110.51/15.31 | | | | | | | | | | sub-proof #10. % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | Case 2: % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | (722) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.31 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.31 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.31 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.31 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) % 110.51/15.31 | | | | | | | | | | = v5 & vDifference(v3, v1) = all_338_0 & % 110.51/15.31 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.31 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.31 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.31 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.31 | | | | | | | | | | vTable(v6))) % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | DELTA: instantiating (722) with fresh symbols all_613_0, % 110.51/15.31 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, all_613_5 % 110.51/15.31 | | | | | | | | | | gives: % 110.51/15.31 | | | | | | | | | | (723) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.51/15.31 | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.51/15.31 | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.31 | | | | | | | | | | vDifference(all_613_2, all_613_1) = all_613_0 & % 110.51/15.31 | | | | | | | | | | vDifference(all_613_2, all_613_4) = all_338_0 & % 110.51/15.31 | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.51/15.31 | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.51/15.31 | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.51/15.31 | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.51/15.31 | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.51/15.31 | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | ALPHA: (723) implies: % 110.51/15.31 | | | | | | | | | | (724) vQuery(all_613_4) % 110.51/15.31 | | | | | | | | | | (725) vQuery(all_613_2) % 110.51/15.31 | | | | | | | | | | (726) vDifference(all_613_2, all_613_4) = all_338_0 % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.51/15.31 | | | | | | | | | | vq2, all_613_2, all_613_4, all_338_0, simplifying % 110.51/15.31 | | | | | | | | | | with (4), (5), (18), (724), (725), (726) gives: % 110.51/15.31 | | | | | | | | | | (727) $false % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | CLOSE: (727) is inconsistent. % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | End of split % 110.51/15.31 | | | | | | | | | % 110.51/15.31 | | | | | | | | Case 2: % 110.51/15.31 | | | | | | | | | % 110.51/15.31 | | | | | | | | | (728) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.31 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 110.51/15.31 | | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.31 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.31 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) % 110.51/15.31 | | | | | | | | | = v5 & vIntersection(v3, v1) = all_338_0 & % 110.51/15.31 | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.31 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.31 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.31 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.31 | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] % 110.51/15.31 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 110.51/15.31 | | | | | | | | | vQuery] : ? [v5: vQuery] : (vreduce(v1, all_346_6) % 110.51/15.31 | | | | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.31 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 & % 110.51/15.31 | | | | | | | | | vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 110.51/15.31 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) & % 110.51/15.31 | | | | | | | | | vQuery(v5) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.51/15.31 | | | | | | | | | ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.31 | | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] % 110.51/15.31 | | | | | | | | | : ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] % 110.51/15.31 | | | | | | | | | : (all_346_1 = vnoQuery & ~ (v4 = 0) & % 110.51/15.31 | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & visSomeTable(v2) % 110.51/15.31 | | | | | | | | | = v4 & vselectFromWhere(v1, v3, v0) = all_338_0 & % 110.51/15.31 | | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & % 110.51/15.31 | | | | | | | | | vPred(v0)) % 110.51/15.31 | | | | | | | | | % 110.51/15.31 | | | | | | | | | BETA: splitting (728) gives: % 110.51/15.31 | | | | | | | | | % 110.51/15.31 | | | | | | | | | Case 1: % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | (729) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.31 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.31 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.31 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.31 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, % 110.51/15.31 | | | | | | | | | | v4) = v5 & vIntersection(v3, v1) = all_338_0 & % 110.51/15.31 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.31 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.31 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.31 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.31 | | | | | | | | | | vTable(v6))) % 110.51/15.31 | | | | | | | | | | % 110.51/15.31 | | | | | | | | | | DELTA: instantiating (729) with fresh symbols all_613_0, % 110.51/15.31 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, all_613_5 % 110.51/15.31 | | | | | | | | | | gives: % 110.51/15.32 | | | | | | | | | | (730) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.51/15.32 | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.51/15.32 | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.32 | | | | | | | | | | vIntersection(all_613_2, all_613_1) = all_613_0 & % 110.51/15.32 | | | | | | | | | | vIntersection(all_613_2, all_613_4) = all_338_0 & % 110.51/15.32 | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.51/15.32 | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.51/15.32 | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.51/15.32 | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.51/15.32 | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.51/15.32 | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | ALPHA: (730) implies: % 110.51/15.32 | | | | | | | | | | (731) vQuery(all_613_4) % 110.51/15.32 | | | | | | | | | | (732) vQuery(all_613_2) % 110.51/15.32 | | | | | | | | | | (733) vIntersection(all_613_2, all_613_4) = all_338_0 % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.51/15.32 | | | | | | | | | | vq2, all_613_2, all_613_4, all_338_0, simplifying % 110.51/15.32 | | | | | | | | | | with (4), (5), (18), (731), (732), (733) gives: % 110.51/15.32 | | | | | | | | | | (734) $false % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | CLOSE: (734) is inconsistent. % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | Case 2: % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | (735) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.32 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.32 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.32 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.32 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 110.51/15.32 | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 110.51/15.32 | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) % 110.51/15.32 | | | | | | | | | | & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.51/15.32 | | | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.51/15.32 | | | | | | | | | | v1) | ~ vTable(v6))) | ? [v0: vPred] : ? % 110.51/15.32 | | | | | | | | | | [v1: vSelect] : ? [v2: vOptTable] : ? [v3: vName] % 110.51/15.32 | | | | | | | | | | : ? [v4: int] : (all_346_1 = vnoQuery & ~ (v4 = % 110.51/15.32 | | | | | | | | | | 0) & vlookupStore(v3, all_346_6) = v2 & % 110.51/15.32 | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.51/15.32 | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) & % 110.51/15.32 | | | | | | | | | | vName(v3) & vPred(v0)) % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | BETA: splitting (735) gives: % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | Case 1: % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | (736) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.32 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.32 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.32 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.32 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 110.51/15.32 | | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 110.51/15.32 | | | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.32 | | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 110.51/15.32 | | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 110.51/15.32 | | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | DELTA: instantiating (736) with fresh symbols all_613_0, % 110.51/15.32 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.32 | | | | | | | | | | | all_613_5 gives: % 110.51/15.32 | | | | | | | | | | | (737) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.51/15.32 | | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.51/15.32 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.32 | | | | | | | | | | | vUnion(all_613_2, all_613_1) = all_613_0 & % 110.51/15.32 | | | | | | | | | | | vUnion(all_613_2, all_613_4) = all_338_0 & % 110.51/15.32 | | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.51/15.32 | | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.51/15.32 | | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.51/15.32 | | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.51/15.32 | | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.51/15.32 | | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | ALPHA: (737) implies: % 110.51/15.32 | | | | | | | | | | | (738) vQuery(all_613_4) % 110.51/15.32 | | | | | | | | | | | (739) vQuery(all_613_2) % 110.51/15.32 | | | | | | | | | | | (740) vTable(all_613_5) % 110.51/15.32 | | | | | | | | | | | (741) vtvalue(all_613_5) = all_613_2 % 110.51/15.32 | | | | | | | | | | | (742) vUnion(all_613_2, all_613_4) = all_338_0 % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_613_5, % 110.51/15.32 | | | | | | | | | | | all_613_2, simplifying with (740), (741) gives: % 110.51/15.32 | | | | | | | | | | | (743) visValue(all_613_2) = 0 % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_2, % 110.51/15.32 | | | | | | | | | | | all_613_4, all_338_0, simplifying with (4), (5), % 110.51/15.32 | | | | | | | | | | | (18), (738), (739), (742) gives: % 110.51/15.32 | | | | | | | | | | | (744) all_613_2 = vq1 & all_613_4 = vq2 % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | ALPHA: (744) implies: % 110.51/15.32 | | | | | | | | | | | (745) all_613_2 = vq1 % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | GROUND_INST: instantiating (isValue-4) with all_605_2, % 110.51/15.32 | | | | | | | | | | | all_605_4, vq1, simplifying with (673), (674), % 110.51/15.32 | | | | | | | | | | | (676) gives: % 110.51/15.32 | | | | | | | | | | | (746) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | DELTA: instantiating (746) with fresh symbol all_634_0 % 110.51/15.32 | | | | | | | | | | | gives: % 110.51/15.32 | | | | | | | | | | | (747) ~ (all_634_0 = 0) & visValue(vq1) = all_634_0 % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | ALPHA: (747) implies: % 110.51/15.32 | | | | | | | | | | | (748) ~ (all_634_0 = 0) % 110.51/15.32 | | | | | | | | | | | (749) visValue(vq1) = all_634_0 % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | REDUCE: (743), (745) imply: % 110.51/15.32 | | | | | | | | | | | (750) visValue(vq1) = 0 % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_634_0, vq1, % 110.51/15.32 | | | | | | | | | | | simplifying with (749), (750) gives: % 110.51/15.32 | | | | | | | | | | | (751) all_634_0 = 0 % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | REDUCE: (748), (751) imply: % 110.51/15.32 | | | | | | | | | | | (752) $false % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | CLOSE: (752) is inconsistent. % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | Case 2: % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | (753) ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 110.51/15.32 | | | | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.51/15.32 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & % 110.51/15.32 | | | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & % 110.51/15.32 | | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.51/15.32 | | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) % 110.51/15.32 | | | | | | | | | | | & vName(v3) & vPred(v0)) % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | DELTA: instantiating (753) with fresh symbols all_612_0, % 110.51/15.32 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.51/15.32 | | | | | | | | | | | (754) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.51/15.32 | | | | | | | | | | | vlookupStore(all_612_1, all_346_6) = all_612_2 & % 110.51/15.32 | | | | | | | | | | | visSomeTable(all_612_2) = all_612_0 & % 110.51/15.32 | | | | | | | | | | | vselectFromWhere(all_612_3, all_612_1, all_612_4) % 110.51/15.32 | | | | | | | | | | | = all_338_0 & vSelect(all_612_3) & % 110.51/15.32 | | | | | | | | | | | vOptTable(all_612_2) & vName(all_612_1) & % 110.51/15.32 | | | | | | | | | | | vPred(all_612_4) % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (754) are inconsistent by % 110.51/15.32 | | | | | | | | | | | sub-proof #9. % 110.51/15.32 | | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | End of split % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | End of split % 110.51/15.32 | | | | | | | | | % 110.51/15.32 | | | | | | | | End of split % 110.51/15.32 | | | | | | | | % 110.51/15.32 | | | | | | | End of split % 110.51/15.32 | | | | | | | % 110.51/15.32 | | | | | | Case 2: % 110.51/15.32 | | | | | | | % 110.51/15.32 | | | | | | | (755) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.51/15.32 | | | | | | | ? [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & % 110.51/15.32 | | | | | | | ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.51/15.32 | | | | | | | visSomeQuery(v2) = v3 & vDifference(v4, v1) = all_338_0 % 110.51/15.32 | | | | | | | & vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.51/15.32 | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.51/15.32 | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.51/15.32 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.32 | | | | | | | [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ % 110.51/15.32 | | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.51/15.32 | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v4, v1) = % 110.51/15.32 | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.51/15.32 | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: vTable] % 110.51/15.32 | | | | | | | : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.51/15.32 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.32 | | | | | | | [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ % 110.51/15.32 | | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.51/15.32 | | | | | | | visSomeQuery(v2) = v3 & vUnion(v4, v1) = all_338_0 & % 110.51/15.32 | | | | | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.51/15.32 | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.51/15.32 | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.51/15.32 | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.32 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, all_346_6) % 110.51/15.32 | | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.51/15.32 | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = v4 & % 110.51/15.32 | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.32 | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.51/15.32 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.51/15.32 | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 110.51/15.32 | | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.51/15.32 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 110.51/15.32 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.51/15.32 | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.51/15.32 | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.32 | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.51/15.32 | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) = % 110.51/15.32 | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.32 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! % 110.51/15.32 | | | | | | | [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.51/15.32 | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.51/15.32 | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.32 | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 110.51/15.32 | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.51/15.32 | | | | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.51/15.32 | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.51/15.32 | | | | | | | vsomeQuery(v4) = all_346_1 & vUnion(v3, v1) = v4 & % 110.51/15.32 | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.32 | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.51/15.32 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.51/15.32 | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 110.51/15.32 | | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.51/15.32 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 110.51/15.32 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.51/15.32 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.51/15.32 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.32 | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.32 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.51/15.32 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 110.51/15.32 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.51/15.32 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 110.51/15.32 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.51/15.32 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.51/15.32 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.32 | | | | | | | vIntersection(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.32 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.51/15.32 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 110.51/15.32 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.51/15.32 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 110.51/15.32 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.51/15.32 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.51/15.32 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.32 | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) % 110.51/15.32 | | | | | | | & vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 110.51/15.32 | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 110.51/15.32 | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 110.51/15.32 | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.51/15.32 | | | | | | | vTable] : (all_346_1 = vnoQuery & vtvalue(v0) = % 110.51/15.32 | | | | | | | all_338_0 & vTable(v0)) % 110.51/15.32 | | | | | | | % 110.51/15.32 | | | | | | | BETA: splitting (755) gives: % 110.51/15.32 | | | | | | | % 110.51/15.32 | | | | | | | Case 1: % 110.51/15.32 | | | | | | | | % 110.51/15.32 | | | | | | | | (756) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] % 110.51/15.32 | | | | | | | | : ? [v3: int] : ? [v4: vQuery] : (all_346_1 = % 110.51/15.32 | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 % 110.51/15.32 | | | | | | | | & visSomeQuery(v2) = v3 & vDifference(v4, v1) = % 110.51/15.32 | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.51/15.32 | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 110.51/15.32 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) % 110.51/15.32 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.32 | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.51/15.32 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.51/15.32 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.32 | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 110.51/15.32 | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.51/15.32 | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) % 110.51/15.32 | | | | | | | | | ~ vTable(v5))) | ? [v0: vTable] : ? [v1: % 110.51/15.32 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? [v4: % 110.51/15.32 | | | | | | | | vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.51/15.32 | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.32 | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.51/15.32 | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) % 110.51/15.32 | | | | | | | | & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.51/15.32 | | | | | | | | vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : % 110.51/15.32 | | | | | | | | ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.32 | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.32 | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.51/15.32 | | | | | | | | vDifference(v3, v1) = v4 & vDifference(v0, v1) = % 110.51/15.32 | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.32 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & % 110.51/15.32 | | | | | | | | ! [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.51/15.32 | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.51/15.32 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.32 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 110.51/15.32 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.51/15.32 | | | | | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.51/15.32 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.51/15.32 | | | | | | | | vsomeQuery(v4) = all_346_1 & vIntersection(v3, v1) = % 110.51/15.32 | | | | | | | | v4 & vIntersection(v0, v1) = all_338_0 & % 110.51/15.32 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.51/15.32 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.51/15.32 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.51/15.32 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.51/15.32 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.32 | | | | | | | | v0) | ~ vTable(v5))) % 110.51/15.32 | | | | | | | | % 110.51/15.32 | | | | | | | | BETA: splitting (756) gives: % 110.51/15.32 | | | | | | | | % 110.51/15.32 | | | | | | | | Case 1: % 110.51/15.32 | | | | | | | | | % 110.51/15.32 | | | | | | | | | (757) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.32 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.51/15.32 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.51/15.32 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.32 | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 110.51/15.32 | | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.51/15.32 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.32 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 110.51/15.32 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? % 110.51/15.32 | | | | | | | | | [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.51/15.32 | | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.51/15.32 | | | | | | | | | & vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = % 110.51/15.32 | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.51/15.32 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.32 | | | | | | | | | v1) | ~ vTable(v5))) % 110.51/15.32 | | | | | | | | | % 110.51/15.32 | | | | | | | | | BETA: splitting (757) gives: % 110.51/15.32 | | | | | | | | | % 110.51/15.32 | | | | | | | | | Case 1: % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | (758) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.32 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.51/15.32 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.51/15.32 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.32 | | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = % 110.51/15.32 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.51/15.32 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.32 | | | | | | | | | | v1) | ~ vTable(v5))) % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | DELTA: instantiating (758) with fresh symbols all_612_0, % 110.51/15.32 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.51/15.32 | | | | | | | | | | (759) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.51/15.32 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.51/15.32 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.51/15.32 | | | | | | | | | | vDifference(all_612_0, all_612_3) = all_338_0 & % 110.51/15.32 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.51/15.32 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.51/15.32 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.51/15.32 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.51/15.32 | | | | | | | | | | vTable(v0)) % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (759) are inconsistent by % 110.51/15.32 | | | | | | | | | | sub-proof #8. % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | Case 2: % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | (760) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.32 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.51/15.32 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.51/15.32 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.32 | | | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = % 110.51/15.32 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.51/15.32 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.32 | | | | | | | | | | v1) | ~ vTable(v5))) % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | DELTA: instantiating (760) with fresh symbols all_612_0, % 110.51/15.32 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.51/15.32 | | | | | | | | | | (761) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.51/15.32 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.51/15.32 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.51/15.32 | | | | | | | | | | vIntersection(all_612_0, all_612_3) = all_338_0 & % 110.51/15.32 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.51/15.32 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.51/15.32 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.51/15.32 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.51/15.32 | | | | | | | | | | vTable(v0)) % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (761) are inconsistent by % 110.51/15.32 | | | | | | | | | | sub-proof #7. % 110.51/15.32 | | | | | | | | | | % 110.51/15.32 | | | | | | | | | End of split % 110.51/15.32 | | | | | | | | | % 110.51/15.32 | | | | | | | | Case 2: % 110.51/15.32 | | | | | | | | | % 110.51/15.32 | | | | | | | | | (762) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.32 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.51/15.32 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.51/15.32 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.32 | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.51/15.32 | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.51/15.32 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.32 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 110.51/15.32 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.51/15.32 | | | | | | | | | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.51/15.32 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.51/15.32 | | | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = % 110.51/15.32 | | | | | | | | | v4 & vDifference(v0, v1) = all_338_0 & % 110.51/15.32 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.51/15.33 | | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.51/15.33 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.51/15.33 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.51/15.33 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 110.51/15.33 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.51/15.33 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.33 | | | | | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.51/15.33 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.33 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.51/15.33 | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) % 110.51/15.33 | | | | | | | | | = all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.51/15.33 | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) % 110.51/15.33 | | | | | | | | | & ! [v5: vTable] : ! [v6: vTable] : ( ~ % 110.51/15.33 | | | | | | | | | (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | ~ % 110.51/15.33 | | | | | | | | | vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : ( % 110.51/15.33 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.51/15.33 | | | | | | | | | % 110.51/15.33 | | | | | | | | | BETA: splitting (762) gives: % 110.51/15.33 | | | | | | | | | % 110.51/15.33 | | | | | | | | | Case 1: % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | (763) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.33 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.51/15.33 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.51/15.33 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.33 | | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.51/15.33 | | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.51/15.33 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.33 | | | | | | | | | | v1) | ~ vTable(v5))) % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | DELTA: instantiating (763) with fresh symbols all_612_0, % 110.51/15.33 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.51/15.33 | | | | | | | | | | (764) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.51/15.33 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.51/15.33 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.51/15.33 | | | | | | | | | | vUnion(all_612_0, all_612_3) = all_338_0 & % 110.51/15.33 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.51/15.33 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.51/15.33 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.51/15.33 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.51/15.33 | | | | | | | | | | vTable(v0)) % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (764) are inconsistent by % 110.51/15.33 | | | | | | | | | | sub-proof #6. % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | Case 2: % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | (765) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.33 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.33 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.51/15.33 | | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.51/15.33 | | | | | | | | | | & vDifference(v3, v1) = v4 & vDifference(v0, v1) % 110.51/15.33 | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 110.51/15.33 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.51/15.33 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.51/15.33 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.33 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.51/15.33 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.51/15.33 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.51/15.33 | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.51/15.33 | | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.51/15.33 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.33 | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.51/15.33 | | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, % 110.51/15.33 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.33 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.51/15.33 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.51/15.33 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.33 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.51/15.33 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.51/15.33 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | BETA: splitting (765) gives: % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | Case 1: % 110.51/15.33 | | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | | (766) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.33 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.33 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.51/15.33 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.51/15.33 | | | | | | | | | | | all_346_1 & vDifference(v3, v1) = v4 & % 110.51/15.33 | | | | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) % 110.51/15.33 | | | | | | | | | | | & vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) % 110.51/15.33 | | | | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.51/15.33 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.33 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.51/15.33 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.51/15.33 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.51/15.33 | | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | | DELTA: instantiating (766) with fresh symbols all_613_0, % 110.51/15.33 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.51/15.33 | | | | | | | | | | | (767) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.51/15.33 | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.51/15.33 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.33 | | | | | | | | | | | vDifference(all_613_1, all_613_3) = all_613_0 & % 110.51/15.33 | | | | | | | | | | | vDifference(all_613_4, all_613_3) = all_338_0 & % 110.51/15.33 | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.51/15.33 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.51/15.33 | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.51/15.33 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.51/15.33 | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.51/15.33 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.51/15.33 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.33 | | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | | ALPHA: (767) implies: % 110.51/15.33 | | | | | | | | | | | (768) vQuery(all_613_4) % 110.51/15.33 | | | | | | | | | | | (769) vQuery(all_613_3) % 110.51/15.33 | | | | | | | | | | | (770) vDifference(all_613_4, all_613_3) = all_338_0 % 110.51/15.33 | | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.51/15.33 | | | | | | | | | | | vq2, all_613_4, all_613_3, all_338_0, simplifying % 110.51/15.33 | | | | | | | | | | | with (4), (5), (18), (768), (769), (770) gives: % 110.51/15.33 | | | | | | | | | | | (771) $false % 110.51/15.33 | | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | | CLOSE: (771) is inconsistent. % 110.51/15.33 | | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | Case 2: % 110.51/15.33 | | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | | (772) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.33 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.33 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.51/15.33 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.51/15.33 | | | | | | | | | | | all_346_1 & vIntersection(v3, v1) = v4 & % 110.51/15.33 | | | | | | | | | | | vIntersection(v0, v1) = all_338_0 & % 110.51/15.33 | | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.33 | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.51/15.33 | | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 110.51/15.33 | | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 110.51/15.33 | | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.51/15.33 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ % 110.51/15.33 | | | | | | | | | | | vTable(v5))) % 110.51/15.33 | | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | | DELTA: instantiating (772) with fresh symbols all_613_0, % 110.51/15.33 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.51/15.33 | | | | | | | | | | | (773) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.51/15.33 | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.51/15.33 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.33 | | | | | | | | | | | vIntersection(all_613_1, all_613_3) = all_613_0 & % 110.51/15.33 | | | | | | | | | | | vIntersection(all_613_4, all_613_3) = all_338_0 & % 110.51/15.33 | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.51/15.33 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.51/15.33 | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.51/15.33 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.51/15.33 | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.51/15.33 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.51/15.33 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.33 | | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | | ALPHA: (773) implies: % 110.51/15.33 | | | | | | | | | | | (774) vQuery(all_613_4) % 110.51/15.33 | | | | | | | | | | | (775) vQuery(all_613_3) % 110.51/15.33 | | | | | | | | | | | (776) vIntersection(all_613_4, all_613_3) = all_338_0 % 110.51/15.33 | | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.51/15.33 | | | | | | | | | | | vq2, all_613_4, all_613_3, all_338_0, simplifying % 110.51/15.33 | | | | | | | | | | | with (4), (5), (18), (774), (775), (776) gives: % 110.51/15.33 | | | | | | | | | | | (777) $false % 110.51/15.33 | | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | | CLOSE: (777) is inconsistent. % 110.51/15.33 | | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | End of split % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | End of split % 110.51/15.33 | | | | | | | | | % 110.51/15.33 | | | | | | | | End of split % 110.51/15.33 | | | | | | | | % 110.51/15.33 | | | | | | | Case 2: % 110.51/15.33 | | | | | | | | % 110.51/15.33 | | | | | | | | (778) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] % 110.51/15.33 | | | | | | | | : ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.51/15.33 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.33 | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.51/15.33 | | | | | | | | vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 & % 110.51/15.33 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.51/15.33 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.51/15.33 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.51/15.33 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.51/15.33 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.33 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 110.51/15.33 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.51/15.33 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.51/15.33 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.33 | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.33 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.51/15.33 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 110.51/15.33 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.51/15.33 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.51/15.33 | | | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.33 | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 110.51/15.33 | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.51/15.33 | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 110.51/15.33 | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) & % 110.51/15.33 | | | | | | | | ! [v4: vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.51/15.33 | | | | | | | | = v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | % 110.51/15.33 | | | | | | | | ~ vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.51/15.33 | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vQuery] : ? % 110.51/15.33 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.51/15.33 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.51/15.33 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.33 | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.33 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.51/15.33 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 110.51/15.33 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.51/15.33 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.51/15.33 | | | | | | | | | ? [v0: vTable] : (all_346_1 = vnoQuery & vtvalue(v0) % 110.51/15.33 | | | | | | | | = all_338_0 & vTable(v0)) % 110.51/15.33 | | | | | | | | % 110.51/15.33 | | | | | | | | BETA: splitting (778) gives: % 110.51/15.33 | | | | | | | | % 110.51/15.33 | | | | | | | | Case 1: % 110.51/15.33 | | | | | | | | | % 110.51/15.33 | | | | | | | | | (779) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.33 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.33 | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.33 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.51/15.33 | | | | | | | | | vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 & % 110.51/15.33 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.51/15.33 | | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.51/15.33 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.51/15.33 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.51/15.33 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 110.51/15.33 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.51/15.33 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.33 | | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.51/15.33 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.51/15.33 | | | | | | | | | & vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.33 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.51/15.33 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.51/15.33 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.51/15.33 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.51/15.33 | | | | | | | | | = v0) | ~ vTable(v4))) % 110.51/15.33 | | | | | | | | | % 110.51/15.33 | | | | | | | | | BETA: splitting (779) gives: % 110.51/15.33 | | | | | | | | | % 110.51/15.33 | | | | | | | | | Case 1: % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | (780) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.33 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.33 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.51/15.33 | | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.51/15.33 | | | | | | | | | | & vUnion(v3, v1) = v4 & vUnion(v0, v1) = % 110.51/15.33 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.51/15.33 | | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.51/15.33 | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 110.51/15.33 | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 110.51/15.33 | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] % 110.51/15.33 | | | | | | | | | | : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | DELTA: instantiating (780) with fresh symbols all_613_0, % 110.51/15.33 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.51/15.33 | | | | | | | | | | (781) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.51/15.33 | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.51/15.33 | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.33 | | | | | | | | | | vUnion(all_613_1, all_613_3) = all_613_0 & % 110.51/15.33 | | | | | | | | | | vUnion(all_613_4, all_613_3) = all_338_0 & % 110.51/15.33 | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.51/15.33 | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.51/15.33 | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.51/15.33 | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.51/15.33 | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.51/15.33 | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : ( % 110.51/15.33 | | | | | | | | | | ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | ALPHA: (781) implies: % 110.51/15.33 | | | | | | | | | | (782) vUnion(all_613_4, all_613_3) = all_338_0 % 110.51/15.33 | | | | | | | | | | (783) vUnion(all_613_1, all_613_3) = all_613_0 % 110.51/15.33 | | | | | | | | | | (784) vsomeQuery(all_613_0) = all_346_1 % 110.51/15.33 | | | | | | | | | | (785) vQuery(all_613_0) % 110.51/15.33 | | | | | | | | | | (786) vreduce(all_613_4, all_346_6) = all_613_2 % 110.51/15.33 | | | | | | | | | | (787) vQuery(all_613_1) % 110.51/15.33 | | | | | | | | | | (788) vQuery(all_613_4) % 110.51/15.33 | | | | | | | | | | (789) vgetQuery(all_613_2) = all_613_1 % 110.51/15.33 | | | | | | | | | | (790) vQuery(all_613_3) % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | GROUND_INST: instantiating (TUnion_inv2) with all_346_5, % 110.51/15.33 | | | | | | | | | | all_613_4, all_613_3, all_346_4, all_338_0, % 110.51/15.33 | | | | | | | | | | simplifying with (22), (25), (33), (782), (788), % 110.51/15.33 | | | | | | | | | | (790) gives: % 110.51/15.33 | | | | | | | | | | (791) vptcheck(all_346_5, all_613_3, all_346_4) = 0 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_4, % 110.51/15.33 | | | | | | | | | | all_613_3, all_338_0, simplifying with (4), (5), % 110.51/15.33 | | | | | | | | | | (18), (782), (788), (790) gives: % 110.51/15.33 | | | | | | | | | | (792) all_613_3 = vq2 & all_613_4 = vq1 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | ALPHA: (792) implies: % 110.51/15.33 | | | | | | | | | | (793) all_613_3 = vq2 % 110.51/15.33 | | | | | | | | | | (794) all_613_4 = vq1 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | GROUND_INST: instantiating (3) with all_346_6, all_346_5, % 110.51/15.33 | | | | | | | | | | all_346_4, all_605_0, all_346_2, simplifying with % 110.51/15.33 | | | | | | | | | | (22), (24), (25), (30), (39), (675), (677) gives: % 110.51/15.33 | | | | | | | | | | (795) ? [v0: any] : ? [v1: any] : (vptcheck(all_346_5, % 110.51/15.33 | | | | | | | | | | all_605_0, all_346_4) = v1 & % 110.51/15.33 | | | | | | | | | | vstoreContextConsistent(all_346_6, all_346_5) = % 110.51/15.33 | | | | | | | | | | v0 & ( ~ (v0 = 0) | v1 = 0)) % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_359_0, % 110.51/15.33 | | | | | | | | | | all_605_0, all_346_2, simplifying with (41), (42), % 110.51/15.33 | | | | | | | | | | (675), (677) gives: % 110.51/15.33 | | | | | | | | | | (796) all_605_0 = all_359_0 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | GROUND_INST: instantiating (getQuery-0) with all_605_0, % 110.51/15.33 | | | | | | | | | | all_346_2, simplifying with (675), (677) gives: % 110.51/15.33 | | | | | | | | | | (797) vgetQuery(all_346_2) = all_605_0 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_346_3, % 110.51/15.33 | | | | | | | | | | all_613_0, all_346_1, simplifying with (23), (28), % 110.51/15.33 | | | | | | | | | | (784), (785) gives: % 110.51/15.33 | | | | | | | | | | (798) all_613_0 = all_346_3 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | DELTA: instantiating (795) with fresh symbols all_640_0, % 110.51/15.33 | | | | | | | | | | all_640_1 gives: % 110.51/15.33 | | | | | | | | | | (799) vptcheck(all_346_5, all_605_0, all_346_4) = % 110.51/15.33 | | | | | | | | | | all_640_0 & vstoreContextConsistent(all_346_6, % 110.51/15.33 | | | | | | | | | | all_346_5) = all_640_1 & ( ~ (all_640_1 = 0) | % 110.51/15.33 | | | | | | | | | | all_640_0 = 0) % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | ALPHA: (799) implies: % 110.51/15.33 | | | | | | | | | | (800) vptcheck(all_346_5, all_605_0, all_346_4) = % 110.51/15.33 | | | | | | | | | | all_640_0 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | REDUCE: (791), (793) imply: % 110.51/15.33 | | | | | | | | | | (801) vptcheck(all_346_5, vq2, all_346_4) = 0 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | REDUCE: (796), (800) imply: % 110.51/15.33 | | | | | | | | | | (802) vptcheck(all_346_5, all_359_0, all_346_4) = % 110.51/15.33 | | | | | | | | | | all_640_0 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | REDUCE: (786), (794) imply: % 110.51/15.33 | | | | | | | | | | (803) vreduce(vq1, all_346_6) = all_613_2 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | REDUCE: (796), (797) imply: % 110.51/15.33 | | | | | | | | | | (804) vgetQuery(all_346_2) = all_359_0 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | REDUCE: (783), (793), (798) imply: % 110.51/15.33 | | | | | | | | | | (805) vUnion(all_613_1, vq2) = all_346_3 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | GROUND_INST: instantiating (10) with all_346_2, all_613_2, % 110.51/15.33 | | | | | | | | | | all_346_6, vq1, simplifying with (30), (803) % 110.51/15.33 | | | | | | | | | | gives: % 110.51/15.33 | | | | | | | | | | (806) all_613_2 = all_346_2 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | GROUND_INST: instantiating (12) with 0, all_640_0, all_346_4, % 110.51/15.33 | | | | | | | | | | all_359_0, all_346_5, simplifying with (56), (802) % 110.51/15.33 | | | | | | | | | | gives: % 110.51/15.33 | | | | | | | | | | (807) all_640_0 = 0 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | REDUCE: (789), (806) imply: % 110.51/15.33 | | | | | | | | | | (808) vgetQuery(all_346_2) = all_613_1 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | GROUND_INST: instantiating (7) with all_359_0, all_613_1, % 110.51/15.33 | | | | | | | | | | all_346_2, simplifying with (804), (808) gives: % 110.51/15.33 | | | | | | | | | | (809) all_613_1 = all_359_0 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | REDUCE: (805), (809) imply: % 110.51/15.33 | | | | | | | | | | (810) vUnion(all_359_0, vq2) = all_346_3 % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | REF_CLOSE: (5), (12), (21), (22), (25), (34), (41), (56), % 110.51/15.33 | | | | | | | | | | (801), (810), (TUnion) are inconsistent by % 110.51/15.33 | | | | | | | | | | sub-proof #5. % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | Case 2: % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | (811) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.33 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 110.51/15.33 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.51/15.33 | | | | | | | | | | visSomeQuery(v2) = v3 & vDifference(v0, v1) = % 110.51/15.33 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.51/15.33 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.51/15.33 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.51/15.33 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 110.51/15.33 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.51/15.33 | | | | | | | | | | % 110.51/15.33 | | | | | | | | | | DELTA: instantiating (811) with fresh symbols all_612_0, % 110.51/15.33 | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.51/15.33 | | | | | | | | | | (812) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.51/15.33 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.51/15.34 | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.51/15.34 | | | | | | | | | | vDifference(all_612_3, all_612_2) = all_338_0 & % 110.51/15.34 | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.51/15.34 | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.51/15.34 | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.51/15.34 | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.51/15.34 | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.51/15.34 | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.51/15.34 | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (812) are inconsistent by % 110.51/15.34 | | | | | | | | | | sub-proof #4. % 110.51/15.34 | | | | | | | | | | % 110.51/15.34 | | | | | | | | | End of split % 110.51/15.34 | | | | | | | | | % 110.51/15.34 | | | | | | | | Case 2: % 110.51/15.34 | | | | | | | | | % 110.51/15.34 | | | | | | | | | (813) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.34 | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 110.51/15.34 | | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.51/15.34 | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 110.51/15.34 | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) % 110.51/15.34 | | | | | | | | | & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 110.51/15.34 | | | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 110.51/15.34 | | | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( % 110.51/15.34 | | | | | | | | | ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.51/15.34 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.34 | | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.51/15.34 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.51/15.34 | | | | | | | | | & vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.34 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.51/15.34 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.51/15.34 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.51/15.34 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.51/15.34 | | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vTable] : % 110.51/15.34 | | | | | | | | | (all_346_1 = vnoQuery & vtvalue(v0) = all_338_0 & % 110.51/15.34 | | | | | | | | | vTable(v0)) % 110.51/15.34 | | | | | | | | | % 110.51/15.34 | | | | | | | | | BETA: splitting (813) gives: % 110.51/15.34 | | | | | | | | | % 110.51/15.34 | | | | | | | | | Case 1: % 110.51/15.34 | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | (814) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.34 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 110.51/15.34 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.51/15.34 | | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 110.51/15.34 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.51/15.34 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.51/15.34 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.51/15.34 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 110.51/15.34 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.51/15.34 | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | DELTA: instantiating (814) with fresh symbols all_612_0, % 110.51/15.34 | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.51/15.34 | | | | | | | | | | (815) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.51/15.34 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.51/15.34 | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.51/15.34 | | | | | | | | | | vIntersection(all_612_3, all_612_2) = all_338_0 & % 110.51/15.34 | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.51/15.34 | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.51/15.34 | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.51/15.34 | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.51/15.34 | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.51/15.34 | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.51/15.34 | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (815) are inconsistent by % 110.51/15.34 | | | | | | | | | | sub-proof #3. % 110.51/15.34 | | | | | | | | | | % 110.51/15.34 | | | | | | | | | Case 2: % 110.51/15.34 | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | (816) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.34 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 110.51/15.34 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.51/15.34 | | | | | | | | | | visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.51/15.34 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.51/15.34 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.51/15.34 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.51/15.34 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 110.51/15.34 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? % 110.51/15.34 | | | | | | | | | | [v0: vTable] : (all_346_1 = vnoQuery & vtvalue(v0) % 110.51/15.34 | | | | | | | | | | = all_338_0 & vTable(v0)) % 110.51/15.34 | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | BETA: splitting (816) gives: % 110.51/15.34 | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | Case 1: % 110.51/15.34 | | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | | (817) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.34 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.51/15.34 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.51/15.34 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.51/15.34 | | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.51/15.34 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.51/15.34 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.51/15.34 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.51/15.34 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.51/15.34 | | | | | | | | | | | vTable(v4))) % 110.51/15.34 | | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | | DELTA: instantiating (817) with fresh symbols all_612_0, % 110.51/15.34 | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.51/15.34 | | | | | | | | | | | (818) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.51/15.34 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.51/15.34 | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.51/15.34 | | | | | | | | | | | vUnion(all_612_3, all_612_2) = all_338_0 & % 110.51/15.34 | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.51/15.34 | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.51/15.34 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.51/15.34 | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.51/15.34 | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.51/15.34 | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.51/15.34 | | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (818) are inconsistent by % 110.51/15.34 | | | | | | | | | | | sub-proof #2. % 110.51/15.34 | | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | Case 2: % 110.51/15.34 | | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | | (819) ? [v0: vTable] : (all_346_1 = vnoQuery & % 110.51/15.34 | | | | | | | | | | | vtvalue(v0) = all_338_0 & vTable(v0)) % 110.51/15.34 | | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | | DELTA: instantiating (819) with fresh symbol all_612_0 % 110.51/15.34 | | | | | | | | | | | gives: % 110.51/15.34 | | | | | | | | | | | (820) all_346_1 = vnoQuery & vtvalue(all_612_0) = % 110.51/15.34 | | | | | | | | | | | all_338_0 & vTable(all_612_0) % 110.51/15.34 | | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (820) are inconsistent by % 110.51/15.34 | | | | | | | | | | | sub-proof #1. % 110.51/15.34 | | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | End of split % 110.51/15.34 | | | | | | | | | | % 110.51/15.34 | | | | | | | | | End of split % 110.51/15.34 | | | | | | | | | % 110.51/15.34 | | | | | | | | End of split % 110.51/15.34 | | | | | | | | % 110.51/15.34 | | | | | | | End of split % 110.51/15.34 | | | | | | | % 110.51/15.34 | | | | | | End of split % 110.51/15.34 | | | | | | % 110.51/15.34 | | | | | End of split % 110.51/15.34 | | | | | % 110.51/15.34 | | | | Case 2: % 110.51/15.34 | | | | | % 110.51/15.34 | | | | | (821) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.34 | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.51/15.34 | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.34 | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_2 & % 110.51/15.34 | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) = vq1 & % 110.51/15.34 | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & vOptQuery(all_346_2) & % 110.51/15.34 | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.51/15.34 | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.34 | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] : ? % 110.51/15.34 | | | | | [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? [v5: % 110.51/15.34 | | | | | vQuery] : (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = % 110.51/15.34 | | | | | 0 & vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_2 & % 110.51/15.34 | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = vq1 & vtvalue(v0) = % 110.51/15.34 | | | | | v3 & vOptQuery(v2) & vOptQuery(all_346_2) & vTable(v0) & % 110.51/15.34 | | | | | vQuery(v5) & vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.34 | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? % 110.51/15.34 | | | | | [v0: vPred] : ? [v1: vSelect] : ? [v2: vOptTable] : ? [v3: % 110.51/15.34 | | | | | vName] : ? [v4: int] : (all_346_2 = vnoQuery & ~ (v4 = 0) % 110.51/15.34 | | | | | & vlookupStore(v3, all_346_6) = v2 & visSomeTable(v2) = v4 % 110.51/15.34 | | | | | & vselectFromWhere(v1, v3, v0) = vq1 & vSelect(v1) & % 110.51/15.34 | | | | | vOptTable(v2) & vName(v3) & vPred(v0)) % 110.51/15.34 | | | | | % 110.51/15.34 | | | | | BETA: splitting (821) gives: % 110.51/15.34 | | | | | % 110.51/15.34 | | | | | Case 1: % 110.51/15.34 | | | | | | % 110.51/15.34 | | | | | | (822) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.34 | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.51/15.34 | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.34 | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_2 & % 110.51/15.34 | | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) = vq1 % 110.51/15.34 | | | | | | & vtvalue(v0) = v3 & vOptQuery(v2) & vOptQuery(all_346_2) % 110.51/15.34 | | | | | | & vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.51/15.34 | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | % 110.51/15.34 | | | | | | ~ vTable(v6))) % 110.51/15.34 | | | | | | % 110.51/15.34 | | | | | | DELTA: instantiating (822) with fresh symbols all_605_0, all_605_1, % 110.51/15.34 | | | | | | all_605_2, all_605_3, all_605_4, all_605_5 gives: % 110.51/15.34 | | | | | | (823) vreduce(all_605_4, all_346_6) = all_605_3 & % 110.51/15.34 | | | | | | visSomeQuery(all_605_3) = 0 & vgetQuery(all_605_3) = % 110.51/15.34 | | | | | | all_605_1 & vsomeQuery(all_605_0) = all_346_2 & % 110.51/15.34 | | | | | | vIntersection(all_605_2, all_605_1) = all_605_0 & % 110.51/15.34 | | | | | | vIntersection(all_605_2, all_605_4) = vq1 & % 110.51/15.34 | | | | | | vtvalue(all_605_5) = all_605_2 & vOptQuery(all_605_3) & % 110.51/15.34 | | | | | | vOptQuery(all_346_2) & vTable(all_605_5) & % 110.51/15.34 | | | | | | vQuery(all_605_0) & vQuery(all_605_1) & vQuery(all_605_2) & % 110.51/15.34 | | | | | | vQuery(all_605_4) & ! [v0: vTable] : ( ~ (vtvalue(v0) = % 110.51/15.34 | | | | | | all_605_4) | ~ vTable(v0)) % 110.51/15.34 | | | | | | % 110.51/15.34 | | | | | | ALPHA: (823) implies: % 110.51/15.34 | | | | | | (824) vQuery(all_605_4) % 110.51/15.34 | | | | | | (825) vQuery(all_605_2) % 110.51/15.34 | | | | | | (826) vQuery(all_605_0) % 110.51/15.34 | | | | | | (827) vIntersection(all_605_2, all_605_4) = vq1 % 110.51/15.34 | | | | | | (828) vsomeQuery(all_605_0) = all_346_2 % 110.51/15.34 | | | | | | % 110.51/15.34 | | | | | | BETA: splitting (38) gives: % 110.51/15.34 | | | | | | % 110.51/15.34 | | | | | | Case 1: % 110.51/15.34 | | | | | | | % 110.51/15.34 | | | | | | | (829) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? % 110.51/15.34 | | | | | | | [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? % 110.51/15.34 | | | | | | | [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : % 110.51/15.34 | | | | | | | ? [v9: vQuery] : (vrawDifference(v5, v6) = v7 & % 110.51/15.34 | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 110.51/15.34 | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.34 | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.51/15.34 | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.34 | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.34 | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.34 | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.34 | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 110.51/15.34 | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.51/15.34 | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: vRawTable] % 110.51/15.34 | | | | | | | : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.34 | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.34 | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = % 110.51/15.34 | | | | | | | v8 & vsomeQuery(v9) = all_346_1 & vIntersection(v2, v3) % 110.51/15.34 | | | | | | | = all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.51/15.34 | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) & % 110.51/15.34 | | | | | | | vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.51/15.34 | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.51/15.34 | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? [v1: % 110.51/15.34 | | | | | | | vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: % 110.51/15.34 | | | | | | | vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] : ? % 110.51/15.34 | | | | | | | [v7: vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.34 | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.34 | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = % 110.51/15.34 | | | | | | | v8 & vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 110.51/15.34 | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.51/15.34 | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) & % 110.51/15.34 | | | | | | | vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.51/15.34 | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.51/15.34 | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? [v1: % 110.51/15.34 | | | | | | | vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : ? % 110.51/15.34 | | | | | | | [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 110.51/15.34 | | | | | | | [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, v0) = % 110.51/15.34 | | | | | | | v1 & vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.51/15.34 | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 110.51/15.34 | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.51/15.34 | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.51/15.34 | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & vtvalue(v7) % 110.51/15.34 | | | | | | | = v8 & vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) % 110.51/15.34 | | | | | | | & vTable(v6) & vTable(v1) & vOptTable(v4) & % 110.51/15.34 | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & vPred(v0)) | % 110.51/15.34 | | | | | | | ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : ? % 110.51/15.34 | | | | | | | [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] : % 110.51/15.34 | | | | | | | ? [v6: vTable] : ? [v7: int] : (all_346_1 = vnoQuery & % 110.51/15.34 | | | | | | | ~ (v7 = 0) & vfilterTable(v6, v0) = v1 & % 110.51/15.34 | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.51/15.34 | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 110.51/15.34 | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 110.51/15.34 | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & vSelect(v2) % 110.51/15.34 | | | | | | | & vTable(v6) & vTable(v1) & vOptTable(v4) & % 110.51/15.34 | | | | | | | vOptTable(v3) & vName(v5) & vPred(v0)) | ? [v0: % 110.51/15.34 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.34 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.51/15.34 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.34 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.51/15.34 | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 110.51/15.34 | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.34 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.34 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] % 110.51/15.34 | | | | | | | : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 110.51/15.34 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.34 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.51/15.34 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.34 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.51/15.34 | | | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) = % 110.51/15.34 | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.34 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.34 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] % 110.51/15.34 | | | | | | | : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 110.51/15.34 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.34 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.51/15.34 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.34 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.51/15.34 | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 110.51/15.34 | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.51/15.34 | | | | | | | & vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.51/15.34 | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | % 110.51/15.34 | | | | | | | ~ vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] : % 110.51/15.34 | | | | | | | ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.51/15.34 | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 110.51/15.34 | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.51/15.34 | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & vSelect(v1) % 110.51/15.34 | | | | | | | & vOptTable(v2) & vName(v3) & vPred(v0)) % 110.51/15.34 | | | | | | | % 110.51/15.34 | | | | | | | BETA: splitting (829) gives: % 110.51/15.34 | | | | | | | % 110.51/15.34 | | | | | | | Case 1: % 110.51/15.34 | | | | | | | | % 110.51/15.34 | | | | | | | | (830) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.51/15.34 | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : % 110.51/15.34 | | | | | | | | ? [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: % 110.51/15.34 | | | | | | | | vTable] : ? [v9: vQuery] : (vrawDifference(v5, v6) = % 110.51/15.34 | | | | | | | | v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & % 110.51/15.34 | | | | | | | | vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 110.51/15.34 | | | | | | | | vsomeQuery(v9) = all_346_1 & vDifference(v2, v3) = % 110.51/15.34 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.51/15.34 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 110.51/15.34 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.51/15.34 | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.51/15.34 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? % 110.51/15.34 | | | | | | | | [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? % 110.51/15.34 | | | | | | | | [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] % 110.51/15.34 | | | | | | | | : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 110.51/15.34 | | | | | | | | vQuery] : (vrawIntersection(v5, v6) = v7 & % 110.51/15.34 | | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 110.51/15.34 | | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.51/15.34 | | | | | | | | & vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 110.51/15.34 | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.34 | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.34 | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.34 | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.34 | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 110.51/15.34 | | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.51/15.34 | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.34 | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.34 | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.34 | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) % 110.51/15.34 | | | | | | | | = v8 & vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 110.51/15.34 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.51/15.34 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 110.51/15.34 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.51/15.34 | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.51/15.34 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? % 110.51/15.34 | | | | | | | | [v1: vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : % 110.51/15.34 | | | | | | | | ? [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.51/15.34 | | | | | | | | ? [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 110.51/15.34 | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.51/15.34 | | | | | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) = % 110.51/15.34 | | | | | | | | 0 & visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.51/15.34 | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.51/15.34 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.51/15.34 | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & vSelect(v2) % 110.51/15.34 | | | | | | | | & vTable(v7) & vTable(v6) & vTable(v1) & % 110.51/15.34 | | | | | | | | vOptTable(v4) & vOptTable(v3) & vQuery(v8) & % 110.51/15.34 | | | | | | | | vName(v5) & vPred(v0)) % 110.51/15.34 | | | | | | | | % 110.51/15.34 | | | | | | | | BETA: splitting (830) gives: % 110.51/15.34 | | | | | | | | % 110.51/15.34 | | | | | | | | Case 1: % 110.51/15.34 | | | | | | | | | % 110.51/15.34 | | | | | | | | | (831) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.51/15.34 | | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.51/15.34 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.34 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.34 | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.34 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.34 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.34 | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 % 110.51/15.34 | | | | | | | | | & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.34 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.34 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.34 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.34 | | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : % 110.51/15.34 | | | | | | | | | ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : % 110.51/15.34 | | | | | | | | | ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.34 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.34 | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.34 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.34 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.34 | | | | | | | | | vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 110.51/15.34 | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.34 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.34 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.34 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.34 | | | | | | | | | vAttrL(v4)) % 110.51/15.34 | | | | | | | | | % 110.51/15.34 | | | | | | | | | BETA: splitting (831) gives: % 110.51/15.34 | | | | | | | | | % 110.51/15.34 | | | | | | | | | Case 1: % 110.51/15.34 | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | (832) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.51/15.34 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.51/15.34 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.34 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.34 | | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.34 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.34 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.34 | | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = % 110.51/15.34 | | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.34 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.34 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.51/15.34 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.34 | | | | | | | | | | vAttrL(v4)) % 110.51/15.34 | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | DELTA: instantiating (832) with fresh symbols all_613_0, % 110.51/15.34 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.34 | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, all_613_9 % 110.51/15.34 | | | | | | | | | | gives: % 110.51/15.34 | | | | | | | | | | (833) vrawDifference(all_613_4, all_613_3) = all_613_2 & % 110.51/15.34 | | | | | | | | | | vgetAttrL(all_613_9) = all_613_5 & % 110.51/15.34 | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & vgetRaw(all_613_9) % 110.51/15.34 | | | | | | | | | | = all_613_4 & vtable(all_613_5, all_613_2) = % 110.51/15.34 | | | | | | | | | | all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.34 | | | | | | | | | | vDifference(all_613_7, all_613_6) = all_338_0 & % 110.51/15.34 | | | | | | | | | | vtvalue(all_613_1) = all_613_0 & vtvalue(all_613_8) % 110.51/15.34 | | | | | | | | | | = all_613_6 & vtvalue(all_613_9) = all_613_7 & % 110.51/15.34 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.51/15.34 | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.51/15.34 | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.51/15.34 | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.51/15.34 | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.51/15.34 | | | | | | | | | | vAttrL(all_613_5) % 110.51/15.34 | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | ALPHA: (833) implies: % 110.51/15.34 | | | | | | | | | | (834) vQuery(all_613_7) % 110.51/15.34 | | | | | | | | | | (835) vQuery(all_613_6) % 110.51/15.34 | | | | | | | | | | (836) vDifference(all_613_7, all_613_6) = all_338_0 % 110.51/15.34 | | | | | | | | | | % 110.51/15.34 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.51/15.34 | | | | | | | | | | vq2, all_613_7, all_613_6, all_338_0, simplifying % 110.51/15.34 | | | | | | | | | | with (4), (5), (18), (834), (835), (836) gives: % 110.51/15.35 | | | | | | | | | | (837) $false % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | CLOSE: (837) is inconsistent. % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | Case 2: % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | (838) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.51/15.35 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.51/15.35 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.35 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.35 | | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 % 110.51/15.35 | | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.51/15.35 | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.51/15.35 | | | | | | | | | | & vIntersection(v2, v3) = all_338_0 & vtvalue(v8) % 110.51/15.35 | | | | | | | | | | = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.35 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.35 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.51/15.35 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.35 | | | | | | | | | | vAttrL(v4)) % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | DELTA: instantiating (838) with fresh symbols all_613_0, % 110.51/15.35 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.35 | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, all_613_9 % 110.51/15.35 | | | | | | | | | | gives: % 110.51/15.35 | | | | | | | | | | (839) vrawIntersection(all_613_4, all_613_3) = all_613_2 % 110.51/15.35 | | | | | | | | | | & vgetAttrL(all_613_9) = all_613_5 & % 110.51/15.35 | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & vgetRaw(all_613_9) % 110.51/15.35 | | | | | | | | | | = all_613_4 & vtable(all_613_5, all_613_2) = % 110.51/15.35 | | | | | | | | | | all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.35 | | | | | | | | | | vIntersection(all_613_7, all_613_6) = all_338_0 & % 110.51/15.35 | | | | | | | | | | vtvalue(all_613_1) = all_613_0 & vtvalue(all_613_8) % 110.51/15.35 | | | | | | | | | | = all_613_6 & vtvalue(all_613_9) = all_613_7 & % 110.51/15.35 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.51/15.35 | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.51/15.35 | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.51/15.35 | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.51/15.35 | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.51/15.35 | | | | | | | | | | vAttrL(all_613_5) % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | ALPHA: (839) implies: % 110.51/15.35 | | | | | | | | | | (840) vQuery(all_613_7) % 110.51/15.35 | | | | | | | | | | (841) vQuery(all_613_6) % 110.51/15.35 | | | | | | | | | | (842) vIntersection(all_613_7, all_613_6) = all_338_0 % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.51/15.35 | | | | | | | | | | vq2, all_613_7, all_613_6, all_338_0, simplifying % 110.51/15.35 | | | | | | | | | | with (4), (5), (18), (840), (841), (842) gives: % 110.51/15.35 | | | | | | | | | | (843) $false % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | CLOSE: (843) is inconsistent. % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | End of split % 110.51/15.35 | | | | | | | | | % 110.51/15.35 | | | | | | | | Case 2: % 110.51/15.35 | | | | | | | | | % 110.51/15.35 | | | | | | | | | (844) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.51/15.35 | | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.51/15.35 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.35 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.35 | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.35 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.35 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.35 | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.51/15.35 | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.35 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.35 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.35 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.35 | | | | | | | | | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : ? % 110.51/15.35 | | | | | | | | | [v2: vSelect] : ? [v3: vOptTable] : ? [v4: % 110.51/15.35 | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 110.51/15.35 | | | | | | | | | [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 110.51/15.35 | | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.51/15.35 | | | | | | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) % 110.51/15.35 | | | | | | | | | = 0 & visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.51/15.35 | | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.51/15.35 | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.51/15.35 | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 110.51/15.35 | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & vTable(v1) % 110.51/15.35 | | | | | | | | | & vOptTable(v4) & vOptTable(v3) & vQuery(v8) & % 110.51/15.35 | | | | | | | | | vName(v5) & vPred(v0)) % 110.51/15.35 | | | | | | | | | % 110.51/15.35 | | | | | | | | | BETA: splitting (844) gives: % 110.51/15.35 | | | | | | | | | % 110.51/15.35 | | | | | | | | | Case 1: % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | (845) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.51/15.35 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.51/15.35 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.35 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.35 | | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.35 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.35 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.35 | | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.51/15.35 | | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.35 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.35 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.51/15.35 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.35 | | | | | | | | | | vAttrL(v4)) % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | DELTA: instantiating (845) with fresh symbols all_613_0, % 110.51/15.35 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.35 | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, all_613_9 % 110.51/15.35 | | | | | | | | | | gives: % 110.51/15.35 | | | | | | | | | | (846) vrawUnion(all_613_4, all_613_3) = all_613_2 & % 110.51/15.35 | | | | | | | | | | vgetAttrL(all_613_9) = all_613_5 & % 110.51/15.35 | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & vgetRaw(all_613_9) % 110.51/15.35 | | | | | | | | | | = all_613_4 & vtable(all_613_5, all_613_2) = % 110.51/15.35 | | | | | | | | | | all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.35 | | | | | | | | | | vUnion(all_613_7, all_613_6) = all_338_0 & % 110.51/15.35 | | | | | | | | | | vtvalue(all_613_1) = all_613_0 & vtvalue(all_613_8) % 110.51/15.35 | | | | | | | | | | = all_613_6 & vtvalue(all_613_9) = all_613_7 & % 110.51/15.35 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.51/15.35 | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.51/15.35 | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.51/15.35 | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.51/15.35 | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.51/15.35 | | | | | | | | | | vAttrL(all_613_5) % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | ALPHA: (846) implies: % 110.51/15.35 | | | | | | | | | | (847) vQuery(all_613_7) % 110.51/15.35 | | | | | | | | | | (848) vQuery(all_613_6) % 110.51/15.35 | | | | | | | | | | (849) vTable(all_613_9) % 110.51/15.35 | | | | | | | | | | (850) vtvalue(all_613_9) = all_613_7 % 110.51/15.35 | | | | | | | | | | (851) vUnion(all_613_7, all_613_6) = all_338_0 % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_613_9, % 110.51/15.35 | | | | | | | | | | all_613_7, simplifying with (849), (850) gives: % 110.51/15.35 | | | | | | | | | | (852) visValue(all_613_7) = 0 % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_7, % 110.51/15.35 | | | | | | | | | | all_613_6, all_338_0, simplifying with (4), (5), % 110.51/15.35 | | | | | | | | | | (18), (847), (848), (851) gives: % 110.51/15.35 | | | | | | | | | | (853) all_613_6 = vq2 & all_613_7 = vq1 % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | ALPHA: (853) implies: % 110.51/15.35 | | | | | | | | | | (854) all_613_7 = vq1 % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | GROUND_INST: instantiating (isValue-3) with all_605_2, % 110.51/15.35 | | | | | | | | | | all_605_4, vq1, simplifying with (824), (825), % 110.51/15.35 | | | | | | | | | | (827) gives: % 110.51/15.35 | | | | | | | | | | (855) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | DELTA: instantiating (855) with fresh symbol all_631_0 % 110.51/15.35 | | | | | | | | | | gives: % 110.51/15.35 | | | | | | | | | | (856) ~ (all_631_0 = 0) & visValue(vq1) = all_631_0 % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | ALPHA: (856) implies: % 110.51/15.35 | | | | | | | | | | (857) ~ (all_631_0 = 0) % 110.51/15.35 | | | | | | | | | | (858) visValue(vq1) = all_631_0 % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | REDUCE: (852), (854) imply: % 110.51/15.35 | | | | | | | | | | (859) visValue(vq1) = 0 % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_631_0, vq1, % 110.51/15.35 | | | | | | | | | | simplifying with (858), (859) gives: % 110.51/15.35 | | | | | | | | | | (860) all_631_0 = 0 % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | REDUCE: (857), (860) imply: % 110.51/15.35 | | | | | | | | | | (861) $false % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | CLOSE: (861) is inconsistent. % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | Case 2: % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | (862) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 110.51/15.35 | | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.51/15.35 | | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: vTable] : ? % 110.51/15.35 | | | | | | | | | | [v8: vQuery] : (vfilterTable(v6, v0) = v1 & % 110.51/15.35 | | | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.51/15.35 | | | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 110.51/15.35 | | | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.51/15.35 | | | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.51/15.35 | | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.51/15.35 | | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 110.51/15.35 | | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & % 110.51/15.35 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.51/15.35 | | | | | | | | | | vQuery(v8) & vName(v5) & vPred(v0)) % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | DELTA: instantiating (862) with fresh symbols all_613_0, % 110.51/15.35 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.35 | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8 gives: % 110.51/15.35 | | | | | | | | | | (863) vfilterTable(all_613_2, all_613_8) = all_613_7 & % 110.51/15.35 | | | | | | | | | | vprojectTable(all_613_6, all_613_7) = all_613_4 & % 110.51/15.35 | | | | | | | | | | vlookupStore(all_613_3, all_346_6) = all_613_5 & % 110.51/15.35 | | | | | | | | | | visSomeTable(all_613_4) = 0 & % 110.51/15.35 | | | | | | | | | | visSomeTable(all_613_5) = 0 & vgetTable(all_613_4) % 110.51/15.35 | | | | | | | | | | = all_613_1 & vgetTable(all_613_5) = all_613_2 & % 110.51/15.35 | | | | | | | | | | vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.35 | | | | | | | | | | vselectFromWhere(all_613_6, all_613_3, all_613_8) = % 110.51/15.35 | | | | | | | | | | all_338_0 & vtvalue(all_613_1) = all_613_0 & % 110.51/15.35 | | | | | | | | | | vOptQuery(all_346_1) & vSelect(all_613_6) & % 110.51/15.35 | | | | | | | | | | vTable(all_613_1) & vTable(all_613_2) & % 110.51/15.35 | | | | | | | | | | vTable(all_613_7) & vOptTable(all_613_4) & % 110.51/15.35 | | | | | | | | | | vOptTable(all_613_5) & vQuery(all_613_0) & % 110.51/15.35 | | | | | | | | | | vName(all_613_3) & vPred(all_613_8) % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | ALPHA: (863) implies: % 110.51/15.35 | | | | | | | | | | (864) vPred(all_613_8) % 110.51/15.35 | | | | | | | | | | (865) vName(all_613_3) % 110.51/15.35 | | | | | | | | | | (866) vSelect(all_613_6) % 110.51/15.35 | | | | | | | | | | (867) vselectFromWhere(all_613_6, all_613_3, all_613_8) = % 110.51/15.35 | | | | | | | | | | all_338_0 % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | GROUND_INST: instantiating (DIFF-selectFromWhere-Union) with % 110.51/15.35 | | | | | | | | | | all_613_3, all_613_8, all_613_6, vq2, vq1, % 110.51/15.35 | | | | | | | | | | all_338_0, simplifying with (4), (5), (18), (864), % 110.51/15.35 | | | | | | | | | | (865), (866), (867) gives: % 110.51/15.35 | | | | | | | | | | (868) $false % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | CLOSE: (868) is inconsistent. % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | End of split % 110.51/15.35 | | | | | | | | | % 110.51/15.35 | | | | | | | | End of split % 110.51/15.35 | | | | | | | | % 110.51/15.35 | | | | | | | Case 2: % 110.51/15.35 | | | | | | | | % 110.51/15.35 | | | | | | | | (869) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 110.51/15.35 | | | | | | | | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] % 110.51/15.35 | | | | | | | | : ? [v6: vTable] : ? [v7: int] : (all_346_1 = % 110.51/15.35 | | | | | | | | vnoQuery & ~ (v7 = 0) & vfilterTable(v6, v0) = v1 & % 110.51/15.35 | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.51/15.35 | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 110.51/15.35 | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 110.51/15.35 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.51/15.35 | | | | | | | | vSelect(v2) & vTable(v6) & vTable(v1) & vOptTable(v4) % 110.51/15.35 | | | | | | | | & vOptTable(v3) & vName(v5) & vPred(v0)) | ? [v0: % 110.51/15.35 | | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.35 | | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.51/15.35 | | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.35 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.51/15.35 | | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 110.51/15.35 | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.35 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.35 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.35 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.51/15.35 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.35 | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 110.51/15.35 | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.35 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.35 | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) = % 110.51/15.35 | | | | | | | | v5 & vIntersection(v3, v1) = all_338_0 & vtvalue(v0) % 110.51/15.35 | | | | | | | | = v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.35 | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.51/15.35 | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.51/15.35 | | | | | | | | | ~ vTable(v6))) | ? [v0: vTable] : ? [v1: % 110.51/15.35 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.51/15.35 | | | | | | | | [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.51/15.35 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.35 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.51/15.35 | | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 110.51/15.35 | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.35 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.35 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.35 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.51/15.35 | | | | | | | | | ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 110.51/15.35 | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.51/15.35 | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 110.51/15.35 | | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.51/15.35 | | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & % 110.51/15.35 | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & vPred(v0)) % 110.51/15.35 | | | | | | | | % 110.51/15.35 | | | | | | | | BETA: splitting (869) gives: % 110.51/15.35 | | | | | | | | % 110.51/15.35 | | | | | | | | Case 1: % 110.51/15.35 | | | | | | | | | % 110.51/15.35 | | | | | | | | | (870) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 110.51/15.35 | | | | | | | | | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.51/15.35 | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 110.51/15.35 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 110.51/15.35 | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = % 110.51/15.35 | | | | | | | | | v4 & vlookupStore(v5, all_346_6) = v3 & % 110.51/15.35 | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.51/15.35 | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) = % 110.51/15.35 | | | | | | | | | all_338_0 & vSelect(v2) & vTable(v6) & vTable(v1) & % 110.51/15.35 | | | | | | | | | vOptTable(v4) & vOptTable(v3) & vName(v5) & % 110.51/15.35 | | | | | | | | | vPred(v0)) | ? [v0: vTable] : ? [v1: vQuery] : ? % 110.51/15.35 | | | | | | | | | [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.35 | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.35 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.35 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) = % 110.51/15.35 | | | | | | | | | v5 & vDifference(v3, v1) = all_338_0 & vtvalue(v0) % 110.51/15.35 | | | | | | | | | = v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.35 | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.51/15.35 | | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.51/15.35 | | | | | | | | | v1) | ~ vTable(v6))) % 110.51/15.35 | | | | | | | | | % 110.51/15.35 | | | | | | | | | BETA: splitting (870) gives: % 110.51/15.35 | | | | | | | | | % 110.51/15.35 | | | | | | | | | Case 1: % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | (871) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 110.51/15.35 | | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.51/15.35 | | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 110.51/15.35 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 110.51/15.35 | | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 110.51/15.35 | | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.51/15.35 | | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.51/15.35 | | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) % 110.51/15.35 | | | | | | | | | | = all_338_0 & vSelect(v2) & vTable(v6) & % 110.51/15.35 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.51/15.35 | | | | | | | | | | vName(v5) & vPred(v0)) % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | DELTA: instantiating (871) with fresh symbols all_612_0, % 110.51/15.35 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.51/15.35 | | | | | | | | | | all_612_5, all_612_6, all_612_7 gives: % 110.51/15.35 | | | | | | | | | | (872) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.51/15.35 | | | | | | | | | | vfilterTable(all_612_1, all_612_7) = all_612_6 & % 110.51/15.35 | | | | | | | | | | vprojectTable(all_612_5, all_612_6) = all_612_3 & % 110.51/15.35 | | | | | | | | | | vlookupStore(all_612_2, all_346_6) = all_612_4 & % 110.51/15.35 | | | | | | | | | | visSomeTable(all_612_3) = all_612_0 & % 110.51/15.35 | | | | | | | | | | visSomeTable(all_612_4) = 0 & vgetTable(all_612_4) % 110.51/15.35 | | | | | | | | | | = all_612_1 & vselectFromWhere(all_612_5, % 110.51/15.35 | | | | | | | | | | all_612_2, all_612_7) = all_338_0 & % 110.51/15.35 | | | | | | | | | | vSelect(all_612_5) & vTable(all_612_1) & % 110.51/15.35 | | | | | | | | | | vTable(all_612_6) & vOptTable(all_612_3) & % 110.51/15.35 | | | | | | | | | | vOptTable(all_612_4) & vName(all_612_2) & % 110.51/15.35 | | | | | | | | | | vPred(all_612_7) % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (872) are inconsistent by % 110.51/15.35 | | | | | | | | | | sub-proof #10. % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | Case 2: % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | (873) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.35 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.35 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.35 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.35 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) % 110.51/15.35 | | | | | | | | | | = v5 & vDifference(v3, v1) = all_338_0 & % 110.51/15.35 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.35 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.35 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.35 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.35 | | | | | | | | | | vTable(v6))) % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | DELTA: instantiating (873) with fresh symbols all_613_0, % 110.51/15.35 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, all_613_5 % 110.51/15.35 | | | | | | | | | | gives: % 110.51/15.35 | | | | | | | | | | (874) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.51/15.35 | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.51/15.35 | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.35 | | | | | | | | | | vDifference(all_613_2, all_613_1) = all_613_0 & % 110.51/15.35 | | | | | | | | | | vDifference(all_613_2, all_613_4) = all_338_0 & % 110.51/15.35 | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.51/15.35 | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.51/15.35 | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.51/15.35 | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.51/15.35 | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.51/15.35 | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | ALPHA: (874) implies: % 110.51/15.35 | | | | | | | | | | (875) vQuery(all_613_4) % 110.51/15.35 | | | | | | | | | | (876) vQuery(all_613_2) % 110.51/15.35 | | | | | | | | | | (877) vDifference(all_613_2, all_613_4) = all_338_0 % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.51/15.35 | | | | | | | | | | vq2, all_613_2, all_613_4, all_338_0, simplifying % 110.51/15.35 | | | | | | | | | | with (4), (5), (18), (875), (876), (877) gives: % 110.51/15.35 | | | | | | | | | | (878) $false % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | CLOSE: (878) is inconsistent. % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | End of split % 110.51/15.35 | | | | | | | | | % 110.51/15.35 | | | | | | | | Case 2: % 110.51/15.35 | | | | | | | | | % 110.51/15.35 | | | | | | | | | (879) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.35 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 110.51/15.35 | | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.35 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.35 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) % 110.51/15.35 | | | | | | | | | = v5 & vIntersection(v3, v1) = all_338_0 & % 110.51/15.35 | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.35 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.35 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.35 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.35 | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] % 110.51/15.35 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 110.51/15.35 | | | | | | | | | vQuery] : ? [v5: vQuery] : (vreduce(v1, all_346_6) % 110.51/15.35 | | | | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.35 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 & % 110.51/15.35 | | | | | | | | | vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 110.51/15.35 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) & % 110.51/15.35 | | | | | | | | | vQuery(v5) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.51/15.35 | | | | | | | | | ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.35 | | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] % 110.51/15.35 | | | | | | | | | : ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] % 110.51/15.35 | | | | | | | | | : (all_346_1 = vnoQuery & ~ (v4 = 0) & % 110.51/15.35 | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & visSomeTable(v2) % 110.51/15.35 | | | | | | | | | = v4 & vselectFromWhere(v1, v3, v0) = all_338_0 & % 110.51/15.35 | | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & % 110.51/15.35 | | | | | | | | | vPred(v0)) % 110.51/15.35 | | | | | | | | | % 110.51/15.35 | | | | | | | | | BETA: splitting (879) gives: % 110.51/15.35 | | | | | | | | | % 110.51/15.35 | | | | | | | | | Case 1: % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | (880) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.35 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.35 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.35 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.35 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, % 110.51/15.35 | | | | | | | | | | v4) = v5 & vIntersection(v3, v1) = all_338_0 & % 110.51/15.35 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.35 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.35 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.35 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.35 | | | | | | | | | | vTable(v6))) % 110.51/15.35 | | | | | | | | | | % 110.51/15.35 | | | | | | | | | | DELTA: instantiating (880) with fresh symbols all_613_0, % 110.51/15.35 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, all_613_5 % 110.51/15.35 | | | | | | | | | | gives: % 110.51/15.36 | | | | | | | | | | (881) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.51/15.36 | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.51/15.36 | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.36 | | | | | | | | | | vIntersection(all_613_2, all_613_1) = all_613_0 & % 110.51/15.36 | | | | | | | | | | vIntersection(all_613_2, all_613_4) = all_338_0 & % 110.51/15.36 | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.51/15.36 | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.51/15.36 | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.51/15.36 | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.51/15.36 | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.51/15.36 | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | ALPHA: (881) implies: % 110.51/15.36 | | | | | | | | | | (882) vQuery(all_613_4) % 110.51/15.36 | | | | | | | | | | (883) vQuery(all_613_2) % 110.51/15.36 | | | | | | | | | | (884) vIntersection(all_613_2, all_613_4) = all_338_0 % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.51/15.36 | | | | | | | | | | vq2, all_613_2, all_613_4, all_338_0, simplifying % 110.51/15.36 | | | | | | | | | | with (4), (5), (18), (882), (883), (884) gives: % 110.51/15.36 | | | | | | | | | | (885) $false % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | CLOSE: (885) is inconsistent. % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | Case 2: % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | (886) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.36 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.36 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.36 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.36 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 110.51/15.36 | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 110.51/15.36 | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) % 110.51/15.36 | | | | | | | | | | & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.51/15.36 | | | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.51/15.36 | | | | | | | | | | v1) | ~ vTable(v6))) | ? [v0: vPred] : ? % 110.51/15.36 | | | | | | | | | | [v1: vSelect] : ? [v2: vOptTable] : ? [v3: vName] % 110.51/15.36 | | | | | | | | | | : ? [v4: int] : (all_346_1 = vnoQuery & ~ (v4 = % 110.51/15.36 | | | | | | | | | | 0) & vlookupStore(v3, all_346_6) = v2 & % 110.51/15.36 | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.51/15.36 | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) & % 110.51/15.36 | | | | | | | | | | vName(v3) & vPred(v0)) % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | BETA: splitting (886) gives: % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | Case 1: % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | (887) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.36 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.36 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.36 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.36 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 110.51/15.36 | | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 110.51/15.36 | | | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.36 | | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 110.51/15.36 | | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 110.51/15.36 | | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | DELTA: instantiating (887) with fresh symbols all_613_0, % 110.51/15.36 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.36 | | | | | | | | | | | all_613_5 gives: % 110.51/15.36 | | | | | | | | | | | (888) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.51/15.36 | | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.51/15.36 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.36 | | | | | | | | | | | vUnion(all_613_2, all_613_1) = all_613_0 & % 110.51/15.36 | | | | | | | | | | | vUnion(all_613_2, all_613_4) = all_338_0 & % 110.51/15.36 | | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.51/15.36 | | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.51/15.36 | | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.51/15.36 | | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.51/15.36 | | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.51/15.36 | | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | ALPHA: (888) implies: % 110.51/15.36 | | | | | | | | | | | (889) vQuery(all_613_4) % 110.51/15.36 | | | | | | | | | | | (890) vQuery(all_613_2) % 110.51/15.36 | | | | | | | | | | | (891) vTable(all_613_5) % 110.51/15.36 | | | | | | | | | | | (892) vtvalue(all_613_5) = all_613_2 % 110.51/15.36 | | | | | | | | | | | (893) vUnion(all_613_2, all_613_4) = all_338_0 % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_613_5, % 110.51/15.36 | | | | | | | | | | | all_613_2, simplifying with (891), (892) gives: % 110.51/15.36 | | | | | | | | | | | (894) visValue(all_613_2) = 0 % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_2, % 110.51/15.36 | | | | | | | | | | | all_613_4, all_338_0, simplifying with (4), (5), % 110.51/15.36 | | | | | | | | | | | (18), (889), (890), (893) gives: % 110.51/15.36 | | | | | | | | | | | (895) all_613_2 = vq1 & all_613_4 = vq2 % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | ALPHA: (895) implies: % 110.51/15.36 | | | | | | | | | | | (896) all_613_2 = vq1 % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | GROUND_INST: instantiating (isValue-3) with all_605_2, % 110.51/15.36 | | | | | | | | | | | all_605_4, vq1, simplifying with (824), (825), % 110.51/15.36 | | | | | | | | | | | (827) gives: % 110.51/15.36 | | | | | | | | | | | (897) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | DELTA: instantiating (897) with fresh symbol all_634_0 % 110.51/15.36 | | | | | | | | | | | gives: % 110.51/15.36 | | | | | | | | | | | (898) ~ (all_634_0 = 0) & visValue(vq1) = all_634_0 % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | ALPHA: (898) implies: % 110.51/15.36 | | | | | | | | | | | (899) ~ (all_634_0 = 0) % 110.51/15.36 | | | | | | | | | | | (900) visValue(vq1) = all_634_0 % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | REDUCE: (894), (896) imply: % 110.51/15.36 | | | | | | | | | | | (901) visValue(vq1) = 0 % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_634_0, vq1, % 110.51/15.36 | | | | | | | | | | | simplifying with (900), (901) gives: % 110.51/15.36 | | | | | | | | | | | (902) all_634_0 = 0 % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | REDUCE: (899), (902) imply: % 110.51/15.36 | | | | | | | | | | | (903) $false % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | CLOSE: (903) is inconsistent. % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | Case 2: % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | (904) ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 110.51/15.36 | | | | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.51/15.36 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & % 110.51/15.36 | | | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & % 110.51/15.36 | | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.51/15.36 | | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) % 110.51/15.36 | | | | | | | | | | | & vName(v3) & vPred(v0)) % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | DELTA: instantiating (904) with fresh symbols all_612_0, % 110.51/15.36 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.51/15.36 | | | | | | | | | | | (905) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.51/15.36 | | | | | | | | | | | vlookupStore(all_612_1, all_346_6) = all_612_2 & % 110.51/15.36 | | | | | | | | | | | visSomeTable(all_612_2) = all_612_0 & % 110.51/15.36 | | | | | | | | | | | vselectFromWhere(all_612_3, all_612_1, all_612_4) % 110.51/15.36 | | | | | | | | | | | = all_338_0 & vSelect(all_612_3) & % 110.51/15.36 | | | | | | | | | | | vOptTable(all_612_2) & vName(all_612_1) & % 110.51/15.36 | | | | | | | | | | | vPred(all_612_4) % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (905) are inconsistent by % 110.51/15.36 | | | | | | | | | | | sub-proof #9. % 110.51/15.36 | | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | End of split % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | End of split % 110.51/15.36 | | | | | | | | | % 110.51/15.36 | | | | | | | | End of split % 110.51/15.36 | | | | | | | | % 110.51/15.36 | | | | | | | End of split % 110.51/15.36 | | | | | | | % 110.51/15.36 | | | | | | Case 2: % 110.51/15.36 | | | | | | | % 110.51/15.36 | | | | | | | (906) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.51/15.36 | | | | | | | ? [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & % 110.51/15.36 | | | | | | | ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.51/15.36 | | | | | | | visSomeQuery(v2) = v3 & vDifference(v4, v1) = all_338_0 % 110.51/15.36 | | | | | | | & vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.51/15.36 | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.51/15.36 | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.51/15.36 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.36 | | | | | | | [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ % 110.51/15.36 | | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.51/15.36 | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v4, v1) = % 110.51/15.36 | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.51/15.36 | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: vTable] % 110.51/15.36 | | | | | | | : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.51/15.36 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.36 | | | | | | | [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ % 110.51/15.36 | | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.51/15.36 | | | | | | | visSomeQuery(v2) = v3 & vUnion(v4, v1) = all_338_0 & % 110.51/15.36 | | | | | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.51/15.36 | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.51/15.36 | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.51/15.36 | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.36 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, all_346_6) % 110.51/15.36 | | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.51/15.36 | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = v4 & % 110.51/15.36 | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.36 | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.51/15.36 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.51/15.36 | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 110.51/15.36 | | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.51/15.36 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 110.51/15.36 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.51/15.36 | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.51/15.36 | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.36 | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.51/15.36 | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) = % 110.51/15.36 | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.36 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! % 110.51/15.36 | | | | | | | [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.51/15.36 | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.51/15.36 | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.36 | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 110.51/15.36 | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.51/15.36 | | | | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.51/15.36 | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.51/15.36 | | | | | | | vsomeQuery(v4) = all_346_1 & vUnion(v3, v1) = v4 & % 110.51/15.36 | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.36 | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.51/15.36 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.51/15.36 | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 110.51/15.36 | | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.51/15.36 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 110.51/15.36 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.51/15.36 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.51/15.36 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.36 | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.36 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.51/15.36 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 110.51/15.36 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.51/15.36 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 110.51/15.36 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.51/15.36 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.51/15.36 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.36 | | | | | | | vIntersection(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.36 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.51/15.36 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 110.51/15.36 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.51/15.36 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 110.51/15.36 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.51/15.36 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.51/15.36 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.36 | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) % 110.51/15.36 | | | | | | | & vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 110.51/15.36 | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 110.51/15.36 | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 110.51/15.36 | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.51/15.36 | | | | | | | vTable] : (all_346_1 = vnoQuery & vtvalue(v0) = % 110.51/15.36 | | | | | | | all_338_0 & vTable(v0)) % 110.51/15.36 | | | | | | | % 110.51/15.36 | | | | | | | BETA: splitting (906) gives: % 110.51/15.36 | | | | | | | % 110.51/15.36 | | | | | | | Case 1: % 110.51/15.36 | | | | | | | | % 110.51/15.36 | | | | | | | | (907) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] % 110.51/15.36 | | | | | | | | : ? [v3: int] : ? [v4: vQuery] : (all_346_1 = % 110.51/15.36 | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 % 110.51/15.36 | | | | | | | | & visSomeQuery(v2) = v3 & vDifference(v4, v1) = % 110.51/15.36 | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.51/15.36 | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 110.51/15.36 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) % 110.51/15.36 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.36 | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.51/15.36 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.51/15.36 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.36 | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 110.51/15.36 | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.51/15.36 | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) % 110.51/15.36 | | | | | | | | | ~ vTable(v5))) | ? [v0: vTable] : ? [v1: % 110.51/15.36 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? [v4: % 110.51/15.36 | | | | | | | | vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.51/15.36 | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.36 | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.51/15.36 | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) % 110.51/15.36 | | | | | | | | & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.51/15.36 | | | | | | | | vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : % 110.51/15.36 | | | | | | | | ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.36 | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.36 | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.51/15.36 | | | | | | | | vDifference(v3, v1) = v4 & vDifference(v0, v1) = % 110.51/15.36 | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.36 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & % 110.51/15.36 | | | | | | | | ! [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.51/15.36 | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.51/15.36 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.36 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 110.51/15.36 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.51/15.36 | | | | | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.51/15.36 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.51/15.36 | | | | | | | | vsomeQuery(v4) = all_346_1 & vIntersection(v3, v1) = % 110.51/15.36 | | | | | | | | v4 & vIntersection(v0, v1) = all_338_0 & % 110.51/15.36 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.51/15.36 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.51/15.36 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.51/15.36 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.51/15.36 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.36 | | | | | | | | v0) | ~ vTable(v5))) % 110.51/15.36 | | | | | | | | % 110.51/15.36 | | | | | | | | BETA: splitting (907) gives: % 110.51/15.36 | | | | | | | | % 110.51/15.36 | | | | | | | | Case 1: % 110.51/15.36 | | | | | | | | | % 110.51/15.36 | | | | | | | | | (908) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.36 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.51/15.36 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.51/15.36 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.36 | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 110.51/15.36 | | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.51/15.36 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.36 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 110.51/15.36 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? % 110.51/15.36 | | | | | | | | | [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.51/15.36 | | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.51/15.36 | | | | | | | | | & vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = % 110.51/15.36 | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.51/15.36 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.36 | | | | | | | | | v1) | ~ vTable(v5))) % 110.51/15.36 | | | | | | | | | % 110.51/15.36 | | | | | | | | | BETA: splitting (908) gives: % 110.51/15.36 | | | | | | | | | % 110.51/15.36 | | | | | | | | | Case 1: % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | (909) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.36 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.51/15.36 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.51/15.36 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.36 | | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = % 110.51/15.36 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.51/15.36 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.36 | | | | | | | | | | v1) | ~ vTable(v5))) % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | DELTA: instantiating (909) with fresh symbols all_612_0, % 110.51/15.36 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.51/15.36 | | | | | | | | | | (910) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.51/15.36 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.51/15.36 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.51/15.36 | | | | | | | | | | vDifference(all_612_0, all_612_3) = all_338_0 & % 110.51/15.36 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.51/15.36 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.51/15.36 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.51/15.36 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.51/15.36 | | | | | | | | | | vTable(v0)) % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (910) are inconsistent by % 110.51/15.36 | | | | | | | | | | sub-proof #8. % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | Case 2: % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | (911) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.36 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.51/15.36 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.51/15.36 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.36 | | | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = % 110.51/15.36 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.51/15.36 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.36 | | | | | | | | | | v1) | ~ vTable(v5))) % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | DELTA: instantiating (911) with fresh symbols all_612_0, % 110.51/15.36 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.51/15.36 | | | | | | | | | | (912) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.51/15.36 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.51/15.36 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.51/15.36 | | | | | | | | | | vIntersection(all_612_0, all_612_3) = all_338_0 & % 110.51/15.36 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.51/15.36 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.51/15.36 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.51/15.36 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.51/15.36 | | | | | | | | | | vTable(v0)) % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (912) are inconsistent by % 110.51/15.36 | | | | | | | | | | sub-proof #7. % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | End of split % 110.51/15.36 | | | | | | | | | % 110.51/15.36 | | | | | | | | Case 2: % 110.51/15.36 | | | | | | | | | % 110.51/15.36 | | | | | | | | | (913) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.36 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.51/15.36 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.51/15.36 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.36 | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.51/15.36 | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.51/15.36 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.36 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 110.51/15.36 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.51/15.36 | | | | | | | | | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.51/15.36 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.51/15.36 | | | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = % 110.51/15.36 | | | | | | | | | v4 & vDifference(v0, v1) = all_338_0 & % 110.51/15.36 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.51/15.36 | | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.51/15.36 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.51/15.36 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.51/15.36 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 110.51/15.36 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.51/15.36 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.36 | | | | | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.51/15.36 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.36 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.51/15.36 | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) % 110.51/15.36 | | | | | | | | | = all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.51/15.36 | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) % 110.51/15.36 | | | | | | | | | & ! [v5: vTable] : ! [v6: vTable] : ( ~ % 110.51/15.36 | | | | | | | | | (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | ~ % 110.51/15.36 | | | | | | | | | vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : ( % 110.51/15.36 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.51/15.36 | | | | | | | | | % 110.51/15.36 | | | | | | | | | BETA: splitting (913) gives: % 110.51/15.36 | | | | | | | | | % 110.51/15.36 | | | | | | | | | Case 1: % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | (914) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.36 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.51/15.36 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.51/15.36 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.36 | | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.51/15.36 | | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.51/15.36 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.36 | | | | | | | | | | v1) | ~ vTable(v5))) % 110.51/15.36 | | | | | | | | | | % 110.51/15.36 | | | | | | | | | | DELTA: instantiating (914) with fresh symbols all_612_0, % 110.51/15.36 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.51/15.37 | | | | | | | | | | (915) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.51/15.37 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.51/15.37 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.51/15.37 | | | | | | | | | | vUnion(all_612_0, all_612_3) = all_338_0 & % 110.51/15.37 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.51/15.37 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.51/15.37 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.51/15.37 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.51/15.37 | | | | | | | | | | vTable(v0)) % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (915) are inconsistent by % 110.51/15.37 | | | | | | | | | | sub-proof #6. % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | Case 2: % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | (916) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.37 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.37 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.51/15.37 | | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.51/15.37 | | | | | | | | | | & vDifference(v3, v1) = v4 & vDifference(v0, v1) % 110.51/15.37 | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 110.51/15.37 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.51/15.37 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.51/15.37 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.37 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.51/15.37 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.51/15.37 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.51/15.37 | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.51/15.37 | | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.51/15.37 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.37 | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.51/15.37 | | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, % 110.51/15.37 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.37 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.51/15.37 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.51/15.37 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.37 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.51/15.37 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.51/15.37 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | BETA: splitting (916) gives: % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | Case 1: % 110.51/15.37 | | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | | (917) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.37 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.37 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.51/15.37 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.51/15.37 | | | | | | | | | | | all_346_1 & vDifference(v3, v1) = v4 & % 110.51/15.37 | | | | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) % 110.51/15.37 | | | | | | | | | | | & vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) % 110.51/15.37 | | | | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.51/15.37 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.37 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.51/15.37 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.51/15.37 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.51/15.37 | | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | | DELTA: instantiating (917) with fresh symbols all_613_0, % 110.51/15.37 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.51/15.37 | | | | | | | | | | | (918) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.51/15.37 | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.51/15.37 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.37 | | | | | | | | | | | vDifference(all_613_1, all_613_3) = all_613_0 & % 110.51/15.37 | | | | | | | | | | | vDifference(all_613_4, all_613_3) = all_338_0 & % 110.51/15.37 | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.51/15.37 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.51/15.37 | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.51/15.37 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.51/15.37 | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.51/15.37 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.51/15.37 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.37 | | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | | ALPHA: (918) implies: % 110.51/15.37 | | | | | | | | | | | (919) vQuery(all_613_4) % 110.51/15.37 | | | | | | | | | | | (920) vQuery(all_613_3) % 110.51/15.37 | | | | | | | | | | | (921) vDifference(all_613_4, all_613_3) = all_338_0 % 110.51/15.37 | | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.51/15.37 | | | | | | | | | | | vq2, all_613_4, all_613_3, all_338_0, simplifying % 110.51/15.37 | | | | | | | | | | | with (4), (5), (18), (919), (920), (921) gives: % 110.51/15.37 | | | | | | | | | | | (922) $false % 110.51/15.37 | | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | | CLOSE: (922) is inconsistent. % 110.51/15.37 | | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | Case 2: % 110.51/15.37 | | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | | (923) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.37 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.37 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.51/15.37 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.51/15.37 | | | | | | | | | | | all_346_1 & vIntersection(v3, v1) = v4 & % 110.51/15.37 | | | | | | | | | | | vIntersection(v0, v1) = all_338_0 & % 110.51/15.37 | | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.37 | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.51/15.37 | | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 110.51/15.37 | | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 110.51/15.37 | | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.51/15.37 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ % 110.51/15.37 | | | | | | | | | | | vTable(v5))) % 110.51/15.37 | | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | | DELTA: instantiating (923) with fresh symbols all_613_0, % 110.51/15.37 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.51/15.37 | | | | | | | | | | | (924) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.51/15.37 | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.51/15.37 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.37 | | | | | | | | | | | vIntersection(all_613_1, all_613_3) = all_613_0 & % 110.51/15.37 | | | | | | | | | | | vIntersection(all_613_4, all_613_3) = all_338_0 & % 110.51/15.37 | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.51/15.37 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.51/15.37 | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.51/15.37 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.51/15.37 | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.51/15.37 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.51/15.37 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.37 | | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | | ALPHA: (924) implies: % 110.51/15.37 | | | | | | | | | | | (925) vQuery(all_613_4) % 110.51/15.37 | | | | | | | | | | | (926) vQuery(all_613_3) % 110.51/15.37 | | | | | | | | | | | (927) vIntersection(all_613_4, all_613_3) = all_338_0 % 110.51/15.37 | | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.51/15.37 | | | | | | | | | | | vq2, all_613_4, all_613_3, all_338_0, simplifying % 110.51/15.37 | | | | | | | | | | | with (4), (5), (18), (925), (926), (927) gives: % 110.51/15.37 | | | | | | | | | | | (928) $false % 110.51/15.37 | | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | | CLOSE: (928) is inconsistent. % 110.51/15.37 | | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | End of split % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | End of split % 110.51/15.37 | | | | | | | | | % 110.51/15.37 | | | | | | | | End of split % 110.51/15.37 | | | | | | | | % 110.51/15.37 | | | | | | | Case 2: % 110.51/15.37 | | | | | | | | % 110.51/15.37 | | | | | | | | (929) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] % 110.51/15.37 | | | | | | | | : ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.51/15.37 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.37 | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.51/15.37 | | | | | | | | vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 & % 110.51/15.37 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.51/15.37 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.51/15.37 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.51/15.37 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.51/15.37 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.51/15.37 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 110.51/15.37 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.51/15.37 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.51/15.37 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.37 | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.37 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.51/15.37 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 110.51/15.37 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.51/15.37 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.51/15.37 | | | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.37 | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 110.51/15.37 | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.51/15.37 | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 110.51/15.37 | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) & % 110.51/15.37 | | | | | | | | ! [v4: vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.51/15.37 | | | | | | | | = v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | % 110.51/15.37 | | | | | | | | ~ vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.51/15.37 | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vQuery] : ? % 110.51/15.37 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.51/15.37 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.51/15.37 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.51/15.37 | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.37 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.51/15.37 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 110.51/15.37 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.51/15.37 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.51/15.37 | | | | | | | | | ? [v0: vTable] : (all_346_1 = vnoQuery & vtvalue(v0) % 110.51/15.37 | | | | | | | | = all_338_0 & vTable(v0)) % 110.51/15.37 | | | | | | | | % 110.51/15.37 | | | | | | | | BETA: splitting (929) gives: % 110.51/15.37 | | | | | | | | % 110.51/15.37 | | | | | | | | Case 1: % 110.51/15.37 | | | | | | | | | % 110.51/15.37 | | | | | | | | | (930) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.37 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.37 | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.37 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.51/15.37 | | | | | | | | | vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 & % 110.51/15.37 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.51/15.37 | | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.51/15.37 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.51/15.37 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.51/15.37 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 110.51/15.37 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.51/15.37 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.37 | | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.51/15.37 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.51/15.37 | | | | | | | | | & vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.37 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.51/15.37 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.51/15.37 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.51/15.37 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.51/15.37 | | | | | | | | | = v0) | ~ vTable(v4))) % 110.51/15.37 | | | | | | | | | % 110.51/15.37 | | | | | | | | | BETA: splitting (930) gives: % 110.51/15.37 | | | | | | | | | % 110.51/15.37 | | | | | | | | | Case 1: % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | (931) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.37 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.37 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.51/15.37 | | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.51/15.37 | | | | | | | | | | & vUnion(v3, v1) = v4 & vUnion(v0, v1) = % 110.51/15.37 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.51/15.37 | | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.51/15.37 | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 110.51/15.37 | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 110.51/15.37 | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] % 110.51/15.37 | | | | | | | | | | : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | DELTA: instantiating (931) with fresh symbols all_613_0, % 110.51/15.37 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.51/15.37 | | | | | | | | | | (932) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.51/15.37 | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.51/15.37 | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.37 | | | | | | | | | | vUnion(all_613_1, all_613_3) = all_613_0 & % 110.51/15.37 | | | | | | | | | | vUnion(all_613_4, all_613_3) = all_338_0 & % 110.51/15.37 | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.51/15.37 | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.51/15.37 | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.51/15.37 | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.51/15.37 | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.51/15.37 | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : ( % 110.51/15.37 | | | | | | | | | | ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | ALPHA: (932) implies: % 110.51/15.37 | | | | | | | | | | (933) vsomeQuery(all_613_0) = all_346_1 % 110.51/15.37 | | | | | | | | | | (934) vgetQuery(all_613_2) = all_613_1 % 110.51/15.37 | | | | | | | | | | (935) vUnion(all_613_1, all_613_3) = all_613_0 % 110.51/15.37 | | | | | | | | | | (936) vQuery(all_613_1) % 110.51/15.37 | | | | | | | | | | (937) vreduce(all_613_4, all_346_6) = all_613_2 % 110.51/15.37 | | | | | | | | | | (938) vQuery(all_613_0) % 110.51/15.37 | | | | | | | | | | (939) vQuery(all_613_4) % 110.51/15.37 | | | | | | | | | | (940) vUnion(all_613_4, all_613_3) = all_338_0 % 110.51/15.37 | | | | | | | | | | (941) vQuery(all_613_3) % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | GROUND_INST: instantiating (TUnion_inv2) with all_346_5, % 110.51/15.37 | | | | | | | | | | all_613_4, all_613_3, all_346_4, all_338_0, % 110.51/15.37 | | | | | | | | | | simplifying with (22), (25), (33), (939), (940), % 110.51/15.37 | | | | | | | | | | (941) gives: % 110.51/15.37 | | | | | | | | | | (942) vptcheck(all_346_5, all_613_3, all_346_4) = 0 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_4, % 110.51/15.37 | | | | | | | | | | all_613_3, all_338_0, simplifying with (4), (5), % 110.51/15.37 | | | | | | | | | | (18), (939), (940), (941) gives: % 110.51/15.37 | | | | | | | | | | (943) all_613_3 = vq2 & all_613_4 = vq1 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | ALPHA: (943) implies: % 110.51/15.37 | | | | | | | | | | (944) all_613_3 = vq2 % 110.51/15.37 | | | | | | | | | | (945) all_613_4 = vq1 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | GROUND_INST: instantiating (3) with all_346_6, all_346_5, % 110.51/15.37 | | | | | | | | | | all_346_4, all_605_0, all_346_2, simplifying with % 110.51/15.37 | | | | | | | | | | (22), (24), (25), (30), (39), (826), (828) gives: % 110.51/15.37 | | | | | | | | | | (946) ? [v0: any] : ? [v1: any] : (vptcheck(all_346_5, % 110.51/15.37 | | | | | | | | | | all_605_0, all_346_4) = v1 & % 110.51/15.37 | | | | | | | | | | vstoreContextConsistent(all_346_6, all_346_5) = % 110.51/15.37 | | | | | | | | | | v0 & ( ~ (v0 = 0) | v1 = 0)) % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_359_0, % 110.51/15.37 | | | | | | | | | | all_605_0, all_346_2, simplifying with (41), (42), % 110.51/15.37 | | | | | | | | | | (826), (828) gives: % 110.51/15.37 | | | | | | | | | | (947) all_605_0 = all_359_0 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | GROUND_INST: instantiating (getQuery-0) with all_605_0, % 110.51/15.37 | | | | | | | | | | all_346_2, simplifying with (826), (828) gives: % 110.51/15.37 | | | | | | | | | | (948) vgetQuery(all_346_2) = all_605_0 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_346_3, % 110.51/15.37 | | | | | | | | | | all_613_0, all_346_1, simplifying with (23), (28), % 110.51/15.37 | | | | | | | | | | (933), (938) gives: % 110.51/15.37 | | | | | | | | | | (949) all_613_0 = all_346_3 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | DELTA: instantiating (946) with fresh symbols all_640_0, % 110.51/15.37 | | | | | | | | | | all_640_1 gives: % 110.51/15.37 | | | | | | | | | | (950) vptcheck(all_346_5, all_605_0, all_346_4) = % 110.51/15.37 | | | | | | | | | | all_640_0 & vstoreContextConsistent(all_346_6, % 110.51/15.37 | | | | | | | | | | all_346_5) = all_640_1 & ( ~ (all_640_1 = 0) | % 110.51/15.37 | | | | | | | | | | all_640_0 = 0) % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | ALPHA: (950) implies: % 110.51/15.37 | | | | | | | | | | (951) vptcheck(all_346_5, all_605_0, all_346_4) = % 110.51/15.37 | | | | | | | | | | all_640_0 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | REDUCE: (942), (944) imply: % 110.51/15.37 | | | | | | | | | | (952) vptcheck(all_346_5, vq2, all_346_4) = 0 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | REDUCE: (947), (951) imply: % 110.51/15.37 | | | | | | | | | | (953) vptcheck(all_346_5, all_359_0, all_346_4) = % 110.51/15.37 | | | | | | | | | | all_640_0 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | REDUCE: (937), (945) imply: % 110.51/15.37 | | | | | | | | | | (954) vreduce(vq1, all_346_6) = all_613_2 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | REDUCE: (947), (948) imply: % 110.51/15.37 | | | | | | | | | | (955) vgetQuery(all_346_2) = all_359_0 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | REDUCE: (935), (944), (949) imply: % 110.51/15.37 | | | | | | | | | | (956) vUnion(all_613_1, vq2) = all_346_3 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | GROUND_INST: instantiating (10) with all_346_2, all_613_2, % 110.51/15.37 | | | | | | | | | | all_346_6, vq1, simplifying with (30), (954) % 110.51/15.37 | | | | | | | | | | gives: % 110.51/15.37 | | | | | | | | | | (957) all_613_2 = all_346_2 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | GROUND_INST: instantiating (12) with 0, all_640_0, all_346_4, % 110.51/15.37 | | | | | | | | | | all_359_0, all_346_5, simplifying with (56), (953) % 110.51/15.37 | | | | | | | | | | gives: % 110.51/15.37 | | | | | | | | | | (958) all_640_0 = 0 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | REDUCE: (934), (957) imply: % 110.51/15.37 | | | | | | | | | | (959) vgetQuery(all_346_2) = all_613_1 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | GROUND_INST: instantiating (7) with all_359_0, all_613_1, % 110.51/15.37 | | | | | | | | | | all_346_2, simplifying with (955), (959) gives: % 110.51/15.37 | | | | | | | | | | (960) all_613_1 = all_359_0 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | REDUCE: (956), (960) imply: % 110.51/15.37 | | | | | | | | | | (961) vUnion(all_359_0, vq2) = all_346_3 % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | REF_CLOSE: (5), (12), (21), (22), (25), (34), (41), (56), % 110.51/15.37 | | | | | | | | | | (952), (961), (TUnion) are inconsistent by % 110.51/15.37 | | | | | | | | | | sub-proof #5. % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | Case 2: % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | (962) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.37 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 110.51/15.37 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.51/15.37 | | | | | | | | | | visSomeQuery(v2) = v3 & vDifference(v0, v1) = % 110.51/15.37 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.51/15.37 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.51/15.37 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.51/15.37 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 110.51/15.37 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | DELTA: instantiating (962) with fresh symbols all_612_0, % 110.51/15.37 | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.51/15.37 | | | | | | | | | | (963) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.51/15.37 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.51/15.37 | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.51/15.37 | | | | | | | | | | vDifference(all_612_3, all_612_2) = all_338_0 & % 110.51/15.37 | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.51/15.37 | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.51/15.37 | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.51/15.37 | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.51/15.37 | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.51/15.37 | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (963) are inconsistent by % 110.51/15.37 | | | | | | | | | | sub-proof #4. % 110.51/15.37 | | | | | | | | | | % 110.51/15.37 | | | | | | | | | End of split % 110.51/15.37 | | | | | | | | | % 110.51/15.37 | | | | | | | | Case 2: % 110.51/15.37 | | | | | | | | | % 110.51/15.37 | | | | | | | | | (964) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.37 | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 110.51/15.37 | | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.51/15.37 | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 110.51/15.37 | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) % 110.51/15.37 | | | | | | | | | & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 110.51/15.37 | | | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 110.51/15.37 | | | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( % 110.51/15.37 | | | | | | | | | ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.51/15.37 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.37 | | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.51/15.37 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.51/15.37 | | | | | | | | | & vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.51/15.37 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.51/15.37 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.51/15.37 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.51/15.37 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.51/15.37 | | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vTable] : % 110.51/15.37 | | | | | | | | | (all_346_1 = vnoQuery & vtvalue(v0) = all_338_0 & % 110.51/15.37 | | | | | | | | | vTable(v0)) % 110.51/15.37 | | | | | | | | | % 110.51/15.37 | | | | | | | | | BETA: splitting (964) gives: % 110.51/15.37 | | | | | | | | | % 110.51/15.37 | | | | | | | | | Case 1: % 110.51/15.37 | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | (965) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.38 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 110.51/15.38 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.51/15.38 | | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 110.51/15.38 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.51/15.38 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.51/15.38 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.51/15.38 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 110.51/15.38 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.51/15.38 | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | DELTA: instantiating (965) with fresh symbols all_612_0, % 110.51/15.38 | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.51/15.38 | | | | | | | | | | (966) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.51/15.38 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.51/15.38 | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.51/15.38 | | | | | | | | | | vIntersection(all_612_3, all_612_2) = all_338_0 & % 110.51/15.38 | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.51/15.38 | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.51/15.38 | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.51/15.38 | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.51/15.38 | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.51/15.38 | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.51/15.38 | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (966) are inconsistent by % 110.51/15.38 | | | | | | | | | | sub-proof #3. % 110.51/15.38 | | | | | | | | | | % 110.51/15.38 | | | | | | | | | Case 2: % 110.51/15.38 | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | (967) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.38 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 110.51/15.38 | | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.51/15.38 | | | | | | | | | | visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.51/15.38 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.51/15.38 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.51/15.38 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.51/15.38 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 110.51/15.38 | | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? % 110.51/15.38 | | | | | | | | | | [v0: vTable] : (all_346_1 = vnoQuery & vtvalue(v0) % 110.51/15.38 | | | | | | | | | | = all_338_0 & vTable(v0)) % 110.51/15.38 | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | BETA: splitting (967) gives: % 110.51/15.38 | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | Case 1: % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | (968) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.51/15.38 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.51/15.38 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.51/15.38 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.51/15.38 | | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.51/15.38 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.51/15.38 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.51/15.38 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.51/15.38 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.51/15.38 | | | | | | | | | | | vTable(v4))) % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | DELTA: instantiating (968) with fresh symbols all_612_0, % 110.51/15.38 | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.51/15.38 | | | | | | | | | | | (969) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.51/15.38 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.51/15.38 | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.51/15.38 | | | | | | | | | | | vUnion(all_612_3, all_612_2) = all_338_0 & % 110.51/15.38 | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.51/15.38 | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.51/15.38 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.51/15.38 | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.51/15.38 | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.51/15.38 | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (969) are inconsistent by % 110.51/15.38 | | | | | | | | | | | sub-proof #2. % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | Case 2: % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | (970) ? [v0: vTable] : (all_346_1 = vnoQuery & % 110.51/15.38 | | | | | | | | | | | vtvalue(v0) = all_338_0 & vTable(v0)) % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | DELTA: instantiating (970) with fresh symbol all_612_0 % 110.51/15.38 | | | | | | | | | | | gives: % 110.51/15.38 | | | | | | | | | | | (971) all_346_1 = vnoQuery & vtvalue(all_612_0) = % 110.51/15.38 | | | | | | | | | | | all_338_0 & vTable(all_612_0) % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (971) are inconsistent by % 110.51/15.38 | | | | | | | | | | | sub-proof #1. % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | End of split % 110.51/15.38 | | | | | | | | | | % 110.51/15.38 | | | | | | | | | End of split % 110.51/15.38 | | | | | | | | | % 110.51/15.38 | | | | | | | | End of split % 110.51/15.38 | | | | | | | | % 110.51/15.38 | | | | | | | End of split % 110.51/15.38 | | | | | | | % 110.51/15.38 | | | | | | End of split % 110.51/15.38 | | | | | | % 110.51/15.38 | | | | | Case 2: % 110.51/15.38 | | | | | | % 110.51/15.38 | | | | | | (972) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.51/15.38 | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.51/15.38 | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.38 | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_2 & % 110.51/15.38 | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = vq1 & vtvalue(v0) % 110.51/15.38 | | | | | | = v3 & vOptQuery(v2) & vOptQuery(all_346_2) & vTable(v0) % 110.51/15.38 | | | | | | & vQuery(v5) & vQuery(v4) & vQuery(v3) & vQuery(v1) & ! % 110.51/15.38 | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | % 110.51/15.38 | | | | | | ? [v0: vPred] : ? [v1: vSelect] : ? [v2: vOptTable] : ? % 110.51/15.38 | | | | | | [v3: vName] : ? [v4: int] : (all_346_2 = vnoQuery & ~ (v4 % 110.51/15.38 | | | | | | = 0) & vlookupStore(v3, all_346_6) = v2 & % 110.51/15.38 | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, v0) = % 110.51/15.38 | | | | | | vq1 & vSelect(v1) & vOptTable(v2) & vName(v3) & % 110.51/15.38 | | | | | | vPred(v0)) % 110.51/15.38 | | | | | | % 110.51/15.38 | | | | | | BETA: splitting (972) gives: % 110.51/15.38 | | | | | | % 110.51/15.38 | | | | | | Case 1: % 110.51/15.38 | | | | | | | % 110.51/15.38 | | | | | | | (973) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.51/15.38 | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.51/15.38 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.38 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_2 & % 110.51/15.38 | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = vq1 & % 110.51/15.38 | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & vOptQuery(all_346_2) % 110.51/15.38 | | | | | | | & vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.51/15.38 | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | % 110.51/15.38 | | | | | | | ~ vTable(v6))) % 110.51/15.38 | | | | | | | % 110.51/15.38 | | | | | | | DELTA: instantiating (973) with fresh symbols all_605_0, % 110.51/15.38 | | | | | | | all_605_1, all_605_2, all_605_3, all_605_4, all_605_5 % 110.51/15.38 | | | | | | | gives: % 110.51/15.38 | | | | | | | (974) vreduce(all_605_4, all_346_6) = all_605_3 & % 110.51/15.38 | | | | | | | visSomeQuery(all_605_3) = 0 & vgetQuery(all_605_3) = % 110.51/15.38 | | | | | | | all_605_1 & vsomeQuery(all_605_0) = all_346_2 & % 110.51/15.38 | | | | | | | vUnion(all_605_2, all_605_1) = all_605_0 & % 110.51/15.38 | | | | | | | vUnion(all_605_2, all_605_4) = vq1 & vtvalue(all_605_5) = % 110.51/15.38 | | | | | | | all_605_2 & vOptQuery(all_605_3) & vOptQuery(all_346_2) & % 110.51/15.38 | | | | | | | vTable(all_605_5) & vQuery(all_605_0) & vQuery(all_605_1) % 110.51/15.38 | | | | | | | & vQuery(all_605_2) & vQuery(all_605_4) & ! [v0: vTable] % 110.51/15.38 | | | | | | | : ( ~ (vtvalue(v0) = all_605_4) | ~ vTable(v0)) % 110.51/15.38 | | | | | | | % 110.51/15.38 | | | | | | | ALPHA: (974) implies: % 110.51/15.38 | | | | | | | (975) vQuery(all_605_4) % 110.51/15.38 | | | | | | | (976) vQuery(all_605_2) % 110.51/15.38 | | | | | | | (977) vQuery(all_605_0) % 110.51/15.38 | | | | | | | (978) vUnion(all_605_2, all_605_4) = vq1 % 110.51/15.38 | | | | | | | (979) vsomeQuery(all_605_0) = all_346_2 % 110.51/15.38 | | | | | | | % 110.51/15.38 | | | | | | | BETA: splitting (38) gives: % 110.51/15.38 | | | | | | | % 110.51/15.38 | | | | | | | Case 1: % 110.51/15.38 | | | | | | | | % 110.51/15.38 | | | | | | | | (980) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.51/15.38 | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : % 110.51/15.38 | | | | | | | | ? [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: % 110.51/15.38 | | | | | | | | vTable] : ? [v9: vQuery] : (vrawDifference(v5, v6) = % 110.51/15.38 | | | | | | | | v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & % 110.51/15.38 | | | | | | | | vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 110.51/15.38 | | | | | | | | vsomeQuery(v9) = all_346_1 & vDifference(v2, v3) = % 110.51/15.38 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.51/15.38 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 110.51/15.38 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.51/15.38 | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.51/15.38 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? % 110.51/15.38 | | | | | | | | [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? % 110.51/15.38 | | | | | | | | [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] % 110.51/15.38 | | | | | | | | : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 110.51/15.38 | | | | | | | | vQuery] : (vrawIntersection(v5, v6) = v7 & % 110.51/15.38 | | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 110.51/15.38 | | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.51/15.38 | | | | | | | | & vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 110.51/15.38 | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.38 | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.38 | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.38 | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.38 | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 110.51/15.38 | | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.51/15.38 | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.38 | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.38 | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.38 | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) % 110.51/15.38 | | | | | | | | = v8 & vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 110.51/15.38 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.51/15.38 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 110.51/15.38 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.51/15.38 | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.51/15.38 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? % 110.51/15.38 | | | | | | | | [v1: vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : % 110.51/15.38 | | | | | | | | ? [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.51/15.38 | | | | | | | | ? [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 110.51/15.38 | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.51/15.38 | | | | | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) = % 110.51/15.38 | | | | | | | | 0 & visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.51/15.38 | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.51/15.38 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.51/15.38 | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & vSelect(v2) % 110.51/15.38 | | | | | | | | & vTable(v7) & vTable(v6) & vTable(v1) & % 110.51/15.38 | | | | | | | | vOptTable(v4) & vOptTable(v3) & vQuery(v8) & % 110.51/15.38 | | | | | | | | vName(v5) & vPred(v0)) | ? [v0: vPred] : ? [v1: % 110.51/15.38 | | | | | | | | vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : ? % 110.51/15.38 | | | | | | | | [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 110.51/15.38 | | | | | | | | [v7: int] : (all_346_1 = vnoQuery & ~ (v7 = 0) & % 110.51/15.38 | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = % 110.51/15.38 | | | | | | | | v4 & vlookupStore(v5, all_346_6) = v3 & % 110.51/15.38 | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.51/15.38 | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) = % 110.51/15.38 | | | | | | | | all_338_0 & vSelect(v2) & vTable(v6) & vTable(v1) & % 110.51/15.38 | | | | | | | | vOptTable(v4) & vOptTable(v3) & vName(v5) & % 110.51/15.38 | | | | | | | | vPred(v0)) | ? [v0: vTable] : ? [v1: vQuery] : ? % 110.51/15.38 | | | | | | | | [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.38 | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.38 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.38 | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) = v5 % 110.51/15.38 | | | | | | | | & vDifference(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 110.51/15.38 | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) & % 110.51/15.38 | | | | | | | | vQuery(v5) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.51/15.38 | | | | | | | | ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.38 | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] : % 110.51/15.38 | | | | | | | | ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.38 | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.38 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.38 | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) = % 110.51/15.38 | | | | | | | | v5 & vIntersection(v3, v1) = all_338_0 & vtvalue(v0) % 110.51/15.38 | | | | | | | | = v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.38 | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.51/15.38 | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.51/15.38 | | | | | | | | | ~ vTable(v6))) | ? [v0: vTable] : ? [v1: % 110.51/15.38 | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.51/15.38 | | | | | | | | [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.51/15.38 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.38 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.51/15.38 | | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 110.51/15.38 | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.38 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.38 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.38 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.51/15.38 | | | | | | | | | ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 110.51/15.38 | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.51/15.38 | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 110.51/15.38 | | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.51/15.38 | | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & % 110.51/15.38 | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & vPred(v0)) % 110.51/15.38 | | | | | | | | % 110.51/15.38 | | | | | | | | BETA: splitting (980) gives: % 110.51/15.38 | | | | | | | | % 110.51/15.38 | | | | | | | | Case 1: % 110.51/15.38 | | | | | | | | | % 110.51/15.38 | | | | | | | | | (981) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.51/15.38 | | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.51/15.38 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.38 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.38 | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.38 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.38 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.38 | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 % 110.51/15.38 | | | | | | | | | & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.38 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.38 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.38 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.38 | | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : % 110.51/15.38 | | | | | | | | | ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : % 110.51/15.38 | | | | | | | | | ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.38 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.38 | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.38 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.38 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.38 | | | | | | | | | vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 110.51/15.38 | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.38 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.38 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.38 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.38 | | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : % 110.51/15.38 | | | | | | | | | ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : % 110.51/15.38 | | | | | | | | | ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.38 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.38 | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.38 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.38 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.38 | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.51/15.38 | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.38 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.38 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.38 | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.38 | | | | | | | | | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : ? % 110.51/15.38 | | | | | | | | | [v2: vSelect] : ? [v3: vOptTable] : ? [v4: % 110.51/15.38 | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 110.51/15.38 | | | | | | | | | [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 110.51/15.38 | | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.51/15.38 | | | | | | | | | vlookupStore(v5, all_346_6) = v3 & visSomeTable(v4) % 110.51/15.38 | | | | | | | | | = 0 & visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.51/15.38 | | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 110.51/15.38 | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.51/15.38 | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 110.51/15.38 | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & vTable(v1) % 110.51/15.38 | | | | | | | | | & vOptTable(v4) & vOptTable(v3) & vQuery(v8) & % 110.51/15.38 | | | | | | | | | vName(v5) & vPred(v0)) % 110.51/15.38 | | | | | | | | | % 110.51/15.38 | | | | | | | | | BETA: splitting (981) gives: % 110.51/15.38 | | | | | | | | | % 110.51/15.38 | | | | | | | | | Case 1: % 110.51/15.38 | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | (982) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.51/15.38 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.51/15.38 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.38 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.38 | | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.38 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.38 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.38 | | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = % 110.51/15.38 | | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.38 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.38 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.51/15.38 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.38 | | | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : % 110.51/15.38 | | | | | | | | | | ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] % 110.51/15.38 | | | | | | | | | | : ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.38 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.38 | | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 % 110.51/15.38 | | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.51/15.38 | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.51/15.38 | | | | | | | | | | & vIntersection(v2, v3) = all_338_0 & vtvalue(v8) % 110.51/15.38 | | | | | | | | | | = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.38 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.38 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.51/15.38 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.38 | | | | | | | | | | vAttrL(v4)) % 110.51/15.38 | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | BETA: splitting (982) gives: % 110.51/15.38 | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | Case 1: % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | (983) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 110.51/15.38 | | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.51/15.38 | | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.38 | | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.38 | | | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 % 110.51/15.38 | | | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.51/15.38 | | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.51/15.38 | | | | | | | | | | | & vDifference(v2, v3) = all_338_0 & vtvalue(v8) % 110.51/15.38 | | | | | | | | | | | = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.38 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.38 | | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.51/15.38 | | | | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.51/15.38 | | | | | | | | | | | vRawTable(v5) & vAttrL(v4)) % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | DELTA: instantiating (983) with fresh symbols all_613_0, % 110.51/15.38 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.38 | | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, % 110.51/15.38 | | | | | | | | | | | all_613_9 gives: % 110.51/15.38 | | | | | | | | | | | (984) vrawDifference(all_613_4, all_613_3) = all_613_2 & % 110.51/15.38 | | | | | | | | | | | vgetAttrL(all_613_9) = all_613_5 & % 110.51/15.38 | | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & % 110.51/15.38 | | | | | | | | | | | vgetRaw(all_613_9) = all_613_4 & vtable(all_613_5, % 110.51/15.38 | | | | | | | | | | | all_613_2) = all_613_1 & vsomeQuery(all_613_0) = % 110.51/15.38 | | | | | | | | | | | all_346_1 & vDifference(all_613_7, all_613_6) = % 110.51/15.38 | | | | | | | | | | | all_338_0 & vtvalue(all_613_1) = all_613_0 & % 110.51/15.38 | | | | | | | | | | | vtvalue(all_613_8) = all_613_6 & % 110.51/15.38 | | | | | | | | | | | vtvalue(all_613_9) = all_613_7 & % 110.51/15.38 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.51/15.38 | | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.51/15.38 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.51/15.38 | | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.51/15.38 | | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.51/15.38 | | | | | | | | | | | vAttrL(all_613_5) % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | ALPHA: (984) implies: % 110.51/15.38 | | | | | | | | | | | (985) vQuery(all_613_7) % 110.51/15.38 | | | | | | | | | | | (986) vQuery(all_613_6) % 110.51/15.38 | | | | | | | | | | | (987) vDifference(all_613_7, all_613_6) = all_338_0 % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.51/15.38 | | | | | | | | | | | vq2, all_613_7, all_613_6, all_338_0, simplifying % 110.51/15.38 | | | | | | | | | | | with (4), (5), (18), (985), (986), (987) gives: % 110.51/15.38 | | | | | | | | | | | (988) $false % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | CLOSE: (988) is inconsistent. % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | Case 2: % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | (989) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 110.51/15.38 | | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.51/15.38 | | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.38 | | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.38 | | | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = % 110.51/15.38 | | | | | | | | | | | v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.51/15.38 | | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.51/15.38 | | | | | | | | | | | & vIntersection(v2, v3) = all_338_0 & % 110.51/15.38 | | | | | | | | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.51/15.38 | | | | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & % 110.51/15.38 | | | | | | | | | | | vTable(v8) & vTable(v1) & vTable(v0) & % 110.51/15.38 | | | | | | | | | | | vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.51/15.38 | | | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.38 | | | | | | | | | | | vAttrL(v4)) % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | DELTA: instantiating (989) with fresh symbols all_613_0, % 110.51/15.38 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.38 | | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, % 110.51/15.38 | | | | | | | | | | | all_613_9 gives: % 110.51/15.38 | | | | | | | | | | | (990) vrawIntersection(all_613_4, all_613_3) = all_613_2 % 110.51/15.38 | | | | | | | | | | | & vgetAttrL(all_613_9) = all_613_5 & % 110.51/15.38 | | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & % 110.51/15.38 | | | | | | | | | | | vgetRaw(all_613_9) = all_613_4 & vtable(all_613_5, % 110.51/15.38 | | | | | | | | | | | all_613_2) = all_613_1 & vsomeQuery(all_613_0) = % 110.51/15.38 | | | | | | | | | | | all_346_1 & vIntersection(all_613_7, all_613_6) = % 110.51/15.38 | | | | | | | | | | | all_338_0 & vtvalue(all_613_1) = all_613_0 & % 110.51/15.38 | | | | | | | | | | | vtvalue(all_613_8) = all_613_6 & % 110.51/15.38 | | | | | | | | | | | vtvalue(all_613_9) = all_613_7 & % 110.51/15.38 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.51/15.38 | | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.51/15.38 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.51/15.38 | | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.51/15.38 | | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.51/15.38 | | | | | | | | | | | vAttrL(all_613_5) % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | ALPHA: (990) implies: % 110.51/15.38 | | | | | | | | | | | (991) vQuery(all_613_7) % 110.51/15.38 | | | | | | | | | | | (992) vQuery(all_613_6) % 110.51/15.38 | | | | | | | | | | | (993) vIntersection(all_613_7, all_613_6) = all_338_0 % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.51/15.38 | | | | | | | | | | | vq2, all_613_7, all_613_6, all_338_0, simplifying % 110.51/15.38 | | | | | | | | | | | with (4), (5), (18), (991), (992), (993) gives: % 110.51/15.38 | | | | | | | | | | | (994) $false % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | | CLOSE: (994) is inconsistent. % 110.51/15.38 | | | | | | | | | | | % 110.51/15.38 | | | | | | | | | | End of split % 110.51/15.38 | | | | | | | | | | % 110.51/15.38 | | | | | | | | | Case 2: % 110.51/15.38 | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | (995) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.51/15.39 | | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.51/15.39 | | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.39 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.39 | | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.39 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.39 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.39 | | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.51/15.39 | | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.39 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.39 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.51/15.39 | | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.51/15.39 | | | | | | | | | | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : % 110.51/15.39 | | | | | | | | | | ? [v2: vSelect] : ? [v3: vOptTable] : ? [v4: % 110.51/15.39 | | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.51/15.39 | | | | | | | | | | ? [v7: vTable] : ? [v8: vQuery] : % 110.51/15.39 | | | | | | | | | | (vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 110.51/15.39 | | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.51/15.39 | | | | | | | | | | visSomeTable(v4) = 0 & visSomeTable(v3) = 0 & % 110.51/15.39 | | | | | | | | | | vgetTable(v4) = v7 & vgetTable(v3) = v6 & % 110.51/15.39 | | | | | | | | | | vsomeQuery(v8) = all_346_1 & vselectFromWhere(v2, % 110.51/15.39 | | | | | | | | | | v5, v0) = all_338_0 & vtvalue(v7) = v8 & % 110.51/15.39 | | | | | | | | | | vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) & % 110.51/15.39 | | | | | | | | | | vTable(v6) & vTable(v1) & vOptTable(v4) & % 110.51/15.39 | | | | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & % 110.51/15.39 | | | | | | | | | | vPred(v0)) % 110.51/15.39 | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | BETA: splitting (995) gives: % 110.51/15.39 | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | Case 1: % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | (996) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 110.51/15.39 | | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.51/15.39 | | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.51/15.39 | | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.51/15.39 | | | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.51/15.39 | | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.51/15.39 | | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.51/15.39 | | | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.51/15.39 | | | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.51/15.39 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.51/15.39 | | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.51/15.39 | | | | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.51/15.39 | | | | | | | | | | | vRawTable(v5) & vAttrL(v4)) % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | DELTA: instantiating (996) with fresh symbols all_613_0, % 110.51/15.39 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.39 | | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, % 110.51/15.39 | | | | | | | | | | | all_613_9 gives: % 110.51/15.39 | | | | | | | | | | | (997) vrawUnion(all_613_4, all_613_3) = all_613_2 & % 110.51/15.39 | | | | | | | | | | | vgetAttrL(all_613_9) = all_613_5 & % 110.51/15.39 | | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & % 110.51/15.39 | | | | | | | | | | | vgetRaw(all_613_9) = all_613_4 & vtable(all_613_5, % 110.51/15.39 | | | | | | | | | | | all_613_2) = all_613_1 & vsomeQuery(all_613_0) = % 110.51/15.39 | | | | | | | | | | | all_346_1 & vUnion(all_613_7, all_613_6) = % 110.51/15.39 | | | | | | | | | | | all_338_0 & vtvalue(all_613_1) = all_613_0 & % 110.51/15.39 | | | | | | | | | | | vtvalue(all_613_8) = all_613_6 & % 110.51/15.39 | | | | | | | | | | | vtvalue(all_613_9) = all_613_7 & % 110.51/15.39 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.51/15.39 | | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.51/15.39 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.51/15.39 | | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.51/15.39 | | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.51/15.39 | | | | | | | | | | | vAttrL(all_613_5) % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | ALPHA: (997) implies: % 110.51/15.39 | | | | | | | | | | | (998) vQuery(all_613_7) % 110.51/15.39 | | | | | | | | | | | (999) vQuery(all_613_6) % 110.51/15.39 | | | | | | | | | | | (1000) vTable(all_613_9) % 110.51/15.39 | | | | | | | | | | | (1001) vtvalue(all_613_9) = all_613_7 % 110.51/15.39 | | | | | | | | | | | (1002) vUnion(all_613_7, all_613_6) = all_338_0 % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_613_9, % 110.51/15.39 | | | | | | | | | | | all_613_7, simplifying with (1000), (1001) gives: % 110.51/15.39 | | | | | | | | | | | (1003) visValue(all_613_7) = 0 % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | GROUND_INST: instantiating (isValue-2) with all_605_2, % 110.51/15.39 | | | | | | | | | | | all_605_4, vq1, simplifying with (975), (976), % 110.51/15.39 | | | | | | | | | | | (978) gives: % 110.51/15.39 | | | | | | | | | | | (1004) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_7, % 110.51/15.39 | | | | | | | | | | | all_613_6, all_338_0, simplifying with (4), (5), % 110.51/15.39 | | | | | | | | | | | (18), (998), (999), (1002) gives: % 110.51/15.39 | | | | | | | | | | | (1005) all_613_6 = vq2 & all_613_7 = vq1 % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | ALPHA: (1005) implies: % 110.51/15.39 | | | | | | | | | | | (1006) all_613_7 = vq1 % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | DELTA: instantiating (1004) with fresh symbol all_631_0 % 110.51/15.39 | | | | | | | | | | | gives: % 110.51/15.39 | | | | | | | | | | | (1007) ~ (all_631_0 = 0) & visValue(vq1) = all_631_0 % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | ALPHA: (1007) implies: % 110.51/15.39 | | | | | | | | | | | (1008) ~ (all_631_0 = 0) % 110.51/15.39 | | | | | | | | | | | (1009) visValue(vq1) = all_631_0 % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | REDUCE: (1003), (1006) imply: % 110.51/15.39 | | | | | | | | | | | (1010) visValue(vq1) = 0 % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_631_0, vq1, % 110.51/15.39 | | | | | | | | | | | simplifying with (1009), (1010) gives: % 110.51/15.39 | | | | | | | | | | | (1011) all_631_0 = 0 % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | REDUCE: (1008), (1011) imply: % 110.51/15.39 | | | | | | | | | | | (1012) $false % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | CLOSE: (1012) is inconsistent. % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | Case 2: % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | (1013) ? [v0: vPred] : ? [v1: vTable] : ? [v2: % 110.51/15.39 | | | | | | | | | | | vSelect] : ? [v3: vOptTable] : ? [v4: % 110.51/15.39 | | | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.51/15.39 | | | | | | | | | | | ? [v7: vTable] : ? [v8: vQuery] : % 110.51/15.39 | | | | | | | | | | | (vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 110.51/15.39 | | | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.51/15.39 | | | | | | | | | | | visSomeTable(v4) = 0 & visSomeTable(v3) = 0 & % 110.51/15.39 | | | | | | | | | | | vgetTable(v4) = v7 & vgetTable(v3) = v6 & % 110.51/15.39 | | | | | | | | | | | vsomeQuery(v8) = all_346_1 & % 110.51/15.39 | | | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.51/15.39 | | | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 110.51/15.39 | | | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & % 110.51/15.39 | | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.51/15.39 | | | | | | | | | | | vQuery(v8) & vName(v5) & vPred(v0)) % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | DELTA: instantiating (1013) with fresh symbols all_613_0, % 110.51/15.39 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.39 | | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8 gives: % 110.51/15.39 | | | | | | | | | | | (1014) vfilterTable(all_613_2, all_613_8) = all_613_7 & % 110.51/15.39 | | | | | | | | | | | vprojectTable(all_613_6, all_613_7) = all_613_4 & % 110.51/15.39 | | | | | | | | | | | vlookupStore(all_613_3, all_346_6) = all_613_5 & % 110.51/15.39 | | | | | | | | | | | visSomeTable(all_613_4) = 0 & % 110.51/15.39 | | | | | | | | | | | visSomeTable(all_613_5) = 0 & vgetTable(all_613_4) % 110.51/15.39 | | | | | | | | | | | = all_613_1 & vgetTable(all_613_5) = all_613_2 & % 110.51/15.39 | | | | | | | | | | | vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.39 | | | | | | | | | | | vselectFromWhere(all_613_6, all_613_3, all_613_8) % 110.51/15.39 | | | | | | | | | | | = all_338_0 & vtvalue(all_613_1) = all_613_0 & % 110.51/15.39 | | | | | | | | | | | vOptQuery(all_346_1) & vSelect(all_613_6) & % 110.51/15.39 | | | | | | | | | | | vTable(all_613_1) & vTable(all_613_2) & % 110.51/15.39 | | | | | | | | | | | vTable(all_613_7) & vOptTable(all_613_4) & % 110.51/15.39 | | | | | | | | | | | vOptTable(all_613_5) & vQuery(all_613_0) & % 110.51/15.39 | | | | | | | | | | | vName(all_613_3) & vPred(all_613_8) % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | ALPHA: (1014) implies: % 110.51/15.39 | | | | | | | | | | | (1015) vPred(all_613_8) % 110.51/15.39 | | | | | | | | | | | (1016) vName(all_613_3) % 110.51/15.39 | | | | | | | | | | | (1017) vSelect(all_613_6) % 110.51/15.39 | | | | | | | | | | | (1018) vselectFromWhere(all_613_6, all_613_3, all_613_8) % 110.51/15.39 | | | | | | | | | | | = all_338_0 % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-selectFromWhere-Union) with % 110.51/15.39 | | | | | | | | | | | all_613_3, all_613_8, all_613_6, vq2, vq1, % 110.51/15.39 | | | | | | | | | | | all_338_0, simplifying with (4), (5), (18), % 110.51/15.39 | | | | | | | | | | | (1015), (1016), (1017), (1018) gives: % 110.51/15.39 | | | | | | | | | | | (1019) $false % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | CLOSE: (1019) is inconsistent. % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | End of split % 110.51/15.39 | | | | | | | | | | % 110.51/15.39 | | | | | | | | | End of split % 110.51/15.39 | | | | | | | | | % 110.51/15.39 | | | | | | | | Case 2: % 110.51/15.39 | | | | | | | | | % 110.51/15.39 | | | | | | | | | (1020) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 110.51/15.39 | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.51/15.39 | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 110.51/15.39 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 110.51/15.39 | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 110.51/15.39 | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.51/15.39 | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.51/15.39 | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) % 110.51/15.39 | | | | | | | | | = all_338_0 & vSelect(v2) & vTable(v6) & % 110.51/15.39 | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.51/15.39 | | | | | | | | | vName(v5) & vPred(v0)) | ? [v0: vTable] : ? [v1: % 110.51/15.39 | | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.51/15.39 | | | | | | | | | ? [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.51/15.39 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.39 | | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.51/15.39 | | | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 110.51/15.39 | | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.39 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.39 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.39 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.39 | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] % 110.51/15.39 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 110.51/15.39 | | | | | | | | | vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.51/15.39 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.39 | | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.51/15.39 | | | | | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) % 110.51/15.39 | | | | | | | | | = all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.39 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.39 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.39 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.39 | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] % 110.51/15.39 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 110.51/15.39 | | | | | | | | | vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.51/15.39 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.39 | | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.51/15.39 | | | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 110.51/15.39 | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.39 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.39 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.39 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.39 | | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] % 110.51/15.39 | | | | | | | | | : ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] % 110.51/15.39 | | | | | | | | | : (all_346_1 = vnoQuery & ~ (v4 = 0) & % 110.51/15.39 | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & % 110.51/15.39 | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.51/15.39 | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) & % 110.51/15.39 | | | | | | | | | vName(v3) & vPred(v0)) % 110.51/15.39 | | | | | | | | | % 110.51/15.39 | | | | | | | | | BETA: splitting (1020) gives: % 110.51/15.39 | | | | | | | | | % 110.51/15.39 | | | | | | | | | Case 1: % 110.51/15.39 | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | (1021) ? [v0: vPred] : ? [v1: vTable] : ? [v2: % 110.51/15.39 | | | | | | | | | | vSelect] : ? [v3: vOptTable] : ? [v4: % 110.51/15.39 | | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.51/15.39 | | | | | | | | | | ? [v7: int] : (all_346_1 = vnoQuery & ~ (v7 = 0) % 110.51/15.39 | | | | | | | | | | & vfilterTable(v6, v0) = v1 & vprojectTable(v2, % 110.51/15.39 | | | | | | | | | | v1) = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.51/15.39 | | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.51/15.39 | | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, % 110.51/15.39 | | | | | | | | | | v0) = all_338_0 & vSelect(v2) & vTable(v6) & % 110.51/15.39 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.51/15.39 | | | | | | | | | | vName(v5) & vPred(v0)) | ? [v0: vTable] : ? % 110.51/15.39 | | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: % 110.51/15.39 | | | | | | | | | | vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.51/15.39 | | | | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = % 110.51/15.39 | | | | | | | | | | 0 & vgetQuery(v2) = v4 & vsomeQuery(v5) = % 110.51/15.39 | | | | | | | | | | all_346_1 & vDifference(v3, v4) = v5 & % 110.51/15.39 | | | | | | | | | | vDifference(v3, v1) = all_338_0 & vtvalue(v0) = % 110.51/15.39 | | | | | | | | | | v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.39 | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 110.51/15.39 | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 110.51/15.39 | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.51/15.39 | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | BETA: splitting (1021) gives: % 110.51/15.39 | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | Case 1: % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | (1022) ? [v0: vPred] : ? [v1: vTable] : ? [v2: % 110.51/15.39 | | | | | | | | | | | vSelect] : ? [v3: vOptTable] : ? [v4: % 110.51/15.39 | | | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.51/15.39 | | | | | | | | | | | ? [v7: int] : (all_346_1 = vnoQuery & ~ (v7 = 0) % 110.51/15.39 | | | | | | | | | | | & vfilterTable(v6, v0) = v1 & vprojectTable(v2, % 110.51/15.39 | | | | | | | | | | | v1) = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.51/15.39 | | | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.51/15.39 | | | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, % 110.51/15.39 | | | | | | | | | | | v0) = all_338_0 & vSelect(v2) & vTable(v6) & % 110.51/15.39 | | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.51/15.39 | | | | | | | | | | | vName(v5) & vPred(v0)) % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | DELTA: instantiating (1022) with fresh symbols all_612_0, % 110.51/15.39 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.51/15.39 | | | | | | | | | | | all_612_5, all_612_6, all_612_7 gives: % 110.51/15.39 | | | | | | | | | | | (1023) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.51/15.39 | | | | | | | | | | | vfilterTable(all_612_1, all_612_7) = all_612_6 & % 110.51/15.39 | | | | | | | | | | | vprojectTable(all_612_5, all_612_6) = all_612_3 & % 110.51/15.39 | | | | | | | | | | | vlookupStore(all_612_2, all_346_6) = all_612_4 & % 110.51/15.39 | | | | | | | | | | | visSomeTable(all_612_3) = all_612_0 & % 110.51/15.39 | | | | | | | | | | | visSomeTable(all_612_4) = 0 & vgetTable(all_612_4) % 110.51/15.39 | | | | | | | | | | | = all_612_1 & vselectFromWhere(all_612_5, % 110.51/15.39 | | | | | | | | | | | all_612_2, all_612_7) = all_338_0 & % 110.51/15.39 | | | | | | | | | | | vSelect(all_612_5) & vTable(all_612_1) & % 110.51/15.39 | | | | | | | | | | | vTable(all_612_6) & vOptTable(all_612_3) & % 110.51/15.39 | | | | | | | | | | | vOptTable(all_612_4) & vName(all_612_2) & % 110.51/15.39 | | | | | | | | | | | vPred(all_612_7) % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1023) are inconsistent by % 110.51/15.39 | | | | | | | | | | | sub-proof #10. % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | Case 2: % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | (1024) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.39 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.39 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.39 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.39 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) % 110.51/15.39 | | | | | | | | | | | = v5 & vDifference(v3, v1) = all_338_0 & % 110.51/15.39 | | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.39 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.39 | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.39 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.39 | | | | | | | | | | | vTable(v6))) % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | DELTA: instantiating (1024) with fresh symbols all_613_0, % 110.51/15.39 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.39 | | | | | | | | | | | all_613_5 gives: % 110.51/15.39 | | | | | | | | | | | (1025) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.51/15.39 | | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.51/15.39 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.39 | | | | | | | | | | | vDifference(all_613_2, all_613_1) = all_613_0 & % 110.51/15.39 | | | | | | | | | | | vDifference(all_613_2, all_613_4) = all_338_0 & % 110.51/15.39 | | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.51/15.39 | | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.51/15.39 | | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.51/15.39 | | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.51/15.39 | | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.51/15.39 | | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | ALPHA: (1025) implies: % 110.51/15.39 | | | | | | | | | | | (1026) vQuery(all_613_4) % 110.51/15.39 | | | | | | | | | | | (1027) vQuery(all_613_2) % 110.51/15.39 | | | | | | | | | | | (1028) vDifference(all_613_2, all_613_4) = all_338_0 % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.51/15.39 | | | | | | | | | | | vq2, all_613_2, all_613_4, all_338_0, simplifying % 110.51/15.39 | | | | | | | | | | | with (4), (5), (18), (1026), (1027), (1028) gives: % 110.51/15.39 | | | | | | | | | | | (1029) $false % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | CLOSE: (1029) is inconsistent. % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | End of split % 110.51/15.39 | | | | | | | | | | % 110.51/15.39 | | | | | | | | | Case 2: % 110.51/15.39 | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | (1030) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.39 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.39 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.39 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.39 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, % 110.51/15.39 | | | | | | | | | | v4) = v5 & vIntersection(v3, v1) = all_338_0 & % 110.51/15.39 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.39 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.39 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.39 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.39 | | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: % 110.51/15.39 | | | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.51/15.39 | | | | | | | | | | ? [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.51/15.39 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.51/15.39 | | | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 % 110.51/15.39 | | | | | | | | | | & vUnion(v3, v4) = v5 & vUnion(v3, v1) = % 110.51/15.39 | | | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.39 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.39 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.39 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.39 | | | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: % 110.51/15.39 | | | | | | | | | | vSelect] : ? [v2: vOptTable] : ? [v3: vName] : % 110.51/15.39 | | | | | | | | | | ? [v4: int] : (all_346_1 = vnoQuery & ~ (v4 = 0) % 110.51/15.39 | | | | | | | | | | & vlookupStore(v3, all_346_6) = v2 & % 110.51/15.39 | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.51/15.39 | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) % 110.51/15.39 | | | | | | | | | | & vName(v3) & vPred(v0)) % 110.51/15.39 | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | BETA: splitting (1030) gives: % 110.51/15.39 | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | Case 1: % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | (1031) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.39 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.39 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.39 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.39 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, % 110.51/15.39 | | | | | | | | | | | v4) = v5 & vIntersection(v3, v1) = all_338_0 & % 110.51/15.39 | | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.51/15.39 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.51/15.39 | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.51/15.39 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.51/15.39 | | | | | | | | | | | vTable(v6))) % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | DELTA: instantiating (1031) with fresh symbols all_613_0, % 110.51/15.39 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.39 | | | | | | | | | | | all_613_5 gives: % 110.51/15.39 | | | | | | | | | | | (1032) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.51/15.39 | | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.51/15.39 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.39 | | | | | | | | | | | vIntersection(all_613_2, all_613_1) = all_613_0 & % 110.51/15.39 | | | | | | | | | | | vIntersection(all_613_2, all_613_4) = all_338_0 & % 110.51/15.39 | | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.51/15.39 | | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.51/15.39 | | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.51/15.39 | | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.51/15.39 | | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.51/15.39 | | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | ALPHA: (1032) implies: % 110.51/15.39 | | | | | | | | | | | (1033) vQuery(all_613_4) % 110.51/15.39 | | | | | | | | | | | (1034) vQuery(all_613_2) % 110.51/15.39 | | | | | | | | | | | (1035) vIntersection(all_613_2, all_613_4) = all_338_0 % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.51/15.39 | | | | | | | | | | | vq2, all_613_2, all_613_4, all_338_0, simplifying % 110.51/15.39 | | | | | | | | | | | with (4), (5), (18), (1033), (1034), (1035) gives: % 110.51/15.39 | | | | | | | | | | | (1036) $false % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | CLOSE: (1036) is inconsistent. % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | Case 2: % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | (1037) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.39 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.39 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.39 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.39 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 110.51/15.39 | | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 110.51/15.39 | | | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.39 | | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 110.51/15.39 | | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 110.51/15.39 | | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 110.51/15.39 | | | | | | | | | | | vPred] : ? [v1: vSelect] : ? [v2: vOptTable] : % 110.51/15.39 | | | | | | | | | | | ? [v3: vName] : ? [v4: int] : (all_346_1 = % 110.51/15.39 | | | | | | | | | | | vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 110.51/15.39 | | | | | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.51/15.39 | | | | | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & % 110.51/15.39 | | | | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & % 110.51/15.39 | | | | | | | | | | | vPred(v0)) % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | BETA: splitting (1037) gives: % 110.51/15.39 | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | Case 1: % 110.51/15.39 | | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | | (1038) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.51/15.39 | | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.51/15.39 | | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.51/15.39 | | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.51/15.39 | | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 110.51/15.39 | | | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 110.51/15.39 | | | | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.51/15.39 | | | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 110.51/15.39 | | | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 110.51/15.39 | | | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.51/15.39 | | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | | DELTA: instantiating (1038) with fresh symbols all_613_0, % 110.51/15.39 | | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.51/15.39 | | | | | | | | | | | | all_613_5 gives: % 110.51/15.39 | | | | | | | | | | | | (1039) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.51/15.39 | | | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.51/15.39 | | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.51/15.39 | | | | | | | | | | | | vUnion(all_613_2, all_613_1) = all_613_0 & % 110.51/15.39 | | | | | | | | | | | | vUnion(all_613_2, all_613_4) = all_338_0 & % 110.51/15.39 | | | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.51/15.39 | | | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.51/15.39 | | | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.51/15.39 | | | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.51/15.39 | | | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.51/15.39 | | | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.51/15.39 | | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | | ALPHA: (1039) implies: % 110.51/15.39 | | | | | | | | | | | | (1040) vQuery(all_613_4) % 110.51/15.39 | | | | | | | | | | | | (1041) vQuery(all_613_2) % 110.51/15.39 | | | | | | | | | | | | (1042) vTable(all_613_5) % 110.51/15.39 | | | | | | | | | | | | (1043) vtvalue(all_613_5) = all_613_2 % 110.51/15.39 | | | | | | | | | | | | (1044) vUnion(all_613_2, all_613_4) = all_338_0 % 110.51/15.39 | | | | | | | | | | | | % 110.51/15.39 | | | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_613_5, % 110.51/15.39 | | | | | | | | | | | | all_613_2, simplifying with (1042), (1043) gives: % 110.51/15.40 | | | | | | | | | | | | (1045) visValue(all_613_2) = 0 % 110.51/15.40 | | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | | | GROUND_INST: instantiating (isValue-2) with all_605_2, % 110.51/15.40 | | | | | | | | | | | | all_605_4, vq1, simplifying with (975), (976), % 110.51/15.40 | | | | | | | | | | | | (978) gives: % 110.51/15.40 | | | | | | | | | | | | (1046) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 110.51/15.40 | | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_2, % 110.51/15.40 | | | | | | | | | | | | all_613_4, all_338_0, simplifying with (4), (5), % 110.51/15.40 | | | | | | | | | | | | (18), (1040), (1041), (1044) gives: % 110.51/15.40 | | | | | | | | | | | | (1047) all_613_2 = vq1 & all_613_4 = vq2 % 110.51/15.40 | | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | | | ALPHA: (1047) implies: % 110.51/15.40 | | | | | | | | | | | | (1048) all_613_2 = vq1 % 110.51/15.40 | | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | | | DELTA: instantiating (1046) with fresh symbol all_634_0 % 110.51/15.40 | | | | | | | | | | | | gives: % 110.51/15.40 | | | | | | | | | | | | (1049) ~ (all_634_0 = 0) & visValue(vq1) = all_634_0 % 110.51/15.40 | | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | | | ALPHA: (1049) implies: % 110.51/15.40 | | | | | | | | | | | | (1050) ~ (all_634_0 = 0) % 110.51/15.40 | | | | | | | | | | | | (1051) visValue(vq1) = all_634_0 % 110.51/15.40 | | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | | | REDUCE: (1045), (1048) imply: % 110.51/15.40 | | | | | | | | | | | | (1052) visValue(vq1) = 0 % 110.51/15.40 | | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_634_0, vq1, % 110.51/15.40 | | | | | | | | | | | | simplifying with (1051), (1052) gives: % 110.51/15.40 | | | | | | | | | | | | (1053) all_634_0 = 0 % 110.51/15.40 | | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | | | REDUCE: (1050), (1053) imply: % 110.51/15.40 | | | | | | | | | | | | (1054) $false % 110.51/15.40 | | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | | | CLOSE: (1054) is inconsistent. % 110.51/15.40 | | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | | Case 2: % 110.51/15.40 | | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | | | (1055) ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 110.51/15.40 | | | | | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.51/15.40 | | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & % 110.51/15.40 | | | | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & % 110.51/15.40 | | | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.51/15.40 | | | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) % 110.51/15.40 | | | | | | | | | | | | & vName(v3) & vPred(v0)) % 110.51/15.40 | | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | | | DELTA: instantiating (1055) with fresh symbols all_612_0, % 110.51/15.40 | | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.51/15.40 | | | | | | | | | | | | (1056) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.51/15.40 | | | | | | | | | | | | vlookupStore(all_612_1, all_346_6) = all_612_2 & % 110.51/15.40 | | | | | | | | | | | | visSomeTable(all_612_2) = all_612_0 & % 110.51/15.40 | | | | | | | | | | | | vselectFromWhere(all_612_3, all_612_1, all_612_4) % 110.51/15.40 | | | | | | | | | | | | = all_338_0 & vSelect(all_612_3) & % 110.51/15.40 | | | | | | | | | | | | vOptTable(all_612_2) & vName(all_612_1) & % 110.51/15.40 | | | | | | | | | | | | vPred(all_612_4) % 110.51/15.40 | | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1056) are inconsistent by % 110.51/15.40 | | | | | | | | | | | | sub-proof #9. % 110.51/15.40 | | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | | End of split % 110.51/15.40 | | | | | | | | | | | % 110.51/15.40 | | | | | | | | | | End of split % 110.51/15.40 | | | | | | | | | | % 110.51/15.40 | | | | | | | | | End of split % 110.51/15.40 | | | | | | | | | % 110.51/15.40 | | | | | | | | End of split % 110.51/15.40 | | | | | | | | % 110.51/15.40 | | | | | | | Case 2: % 110.51/15.40 | | | | | | | | % 110.91/15.40 | | | | | | | | (1057) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] % 110.91/15.40 | | | | | | | | : ? [v3: int] : ? [v4: vQuery] : (all_346_1 = % 110.91/15.40 | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 % 110.91/15.40 | | | | | | | | & visSomeQuery(v2) = v3 & vDifference(v4, v1) = % 110.91/15.40 | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.91/15.40 | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 110.91/15.40 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) % 110.91/15.40 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.40 | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.40 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.40 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.40 | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 110.91/15.40 | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.40 | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.40 | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 110.91/15.40 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? % 110.91/15.40 | | | | | | | | [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.40 | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.91/15.40 | | | | | | | | & vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.91/15.40 | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) % 110.91/15.40 | | | | | | | | & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.40 | | | | | | | | vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : % 110.91/15.40 | | | | | | | | ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] % 110.91/15.40 | | | | | | | | : (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.91/15.40 | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.91/15.40 | | | | | | | | vDifference(v3, v1) = v4 & vDifference(v0, v1) = % 110.91/15.40 | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.40 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & % 110.91/15.40 | | | | | | | | ! [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) % 110.91/15.40 | | | | | | | | = v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.91/15.40 | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.40 | | | | | | | | = v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 110.91/15.40 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.91/15.40 | | | | | | | | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.91/15.40 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.91/15.40 | | | | | | | | vsomeQuery(v4) = all_346_1 & vIntersection(v3, v1) = % 110.91/15.40 | | | | | | | | v4 & vIntersection(v0, v1) = all_338_0 & % 110.91/15.40 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.91/15.40 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.91/15.40 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.91/15.40 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.40 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.40 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 110.91/15.40 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.91/15.40 | | | | | | | | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.91/15.40 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.91/15.40 | | | | | | | | vsomeQuery(v4) = all_346_1 & vUnion(v3, v1) = v4 & % 110.91/15.40 | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.40 | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.40 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.91/15.40 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) % 110.91/15.40 | | | | | | | | = v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.91/15.40 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.40 | | | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.40 | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 110.91/15.40 | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.91/15.40 | | | | | | | | visSomeQuery(v2) = v3 & vDifference(v0, v1) = % 110.91/15.40 | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) % 110.91/15.40 | | | | | | | | & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 110.91/15.40 | | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 110.91/15.40 | | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( % 110.91/15.40 | | | | | | | | ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.91/15.40 | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.91/15.40 | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.40 | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.91/15.40 | | | | | | | | & vIntersection(v0, v1) = all_338_0 & vOptQuery(v2) % 110.91/15.40 | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! % 110.91/15.40 | | | | | | | | [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.40 | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.91/15.40 | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) = % 110.91/15.40 | | | | | | | | v0) | ~ vTable(v4))) | ? [v0: vQuery] : ? % 110.91/15.40 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.91/15.40 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.91/15.40 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.40 | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.40 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.91/15.40 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 110.91/15.40 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.40 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.91/15.40 | | | | | | | | | ? [v0: vTable] : (all_346_1 = vnoQuery & % 110.91/15.40 | | | | | | | | vtvalue(v0) = all_338_0 & vTable(v0)) % 110.91/15.40 | | | | | | | | % 110.91/15.40 | | | | | | | | BETA: splitting (1057) gives: % 110.91/15.40 | | | | | | | | % 110.91/15.40 | | | | | | | | Case 1: % 110.91/15.40 | | | | | | | | | % 110.91/15.40 | | | | | | | | | (1058) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.40 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.40 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.40 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.40 | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 110.91/15.40 | | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.40 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.40 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 110.91/15.40 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.91/15.40 | | | | | | | | | ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) % 110.91/15.40 | | | | | | | | | & vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.40 | | | | | | | | | v3 & vIntersection(v4, v1) = all_338_0 & % 110.91/15.40 | | | | | | | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.91/15.40 | | | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.91/15.40 | | | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.91/15.40 | | | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.40 | | | | | | | | | ? [v3: int] : ? [v4: vQuery] : (all_346_1 = % 110.91/15.40 | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = % 110.91/15.40 | | | | | | | | | v2 & visSomeQuery(v2) = v3 & vUnion(v4, v1) = % 110.91/15.40 | | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.91/15.40 | | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 110.91/15.40 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.40 | | | | | | | | | vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] % 110.91/15.40 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 110.91/15.40 | | | | | | | | | vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.91/15.40 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.91/15.40 | | | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = % 110.91/15.40 | | | | | | | | | v4 & vDifference(v0, v1) = all_338_0 & % 110.91/15.40 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) % 110.91/15.40 | | | | | | | | | & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.91/15.40 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.91/15.40 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.91/15.40 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.40 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.40 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.40 | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.40 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.40 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.91/15.40 | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) % 110.91/15.40 | | | | | | | | | = all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.91/15.40 | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.91/15.40 | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : ( % 110.91/15.40 | | | | | | | | | ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 110.91/15.40 | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] % 110.91/15.40 | | | | | | | | | : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.40 | | | | | | | | | % 110.91/15.40 | | | | | | | | | BETA: splitting (1058) gives: % 110.91/15.40 | | | | | | | | | % 110.91/15.40 | | | | | | | | | Case 1: % 110.91/15.40 | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | (1059) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.40 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.40 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.40 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.40 | | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = % 110.91/15.40 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.40 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.40 | | | | | | | | | | = v1) | ~ vTable(v5))) | ? [v0: vTable] : % 110.91/15.40 | | | | | | | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] % 110.91/15.40 | | | | | | | | | | : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 % 110.91/15.40 | | | | | | | | | | = 0) & vreduce(v1, all_346_6) = v2 & % 110.91/15.40 | | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v4, v1) = % 110.91/15.40 | | | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.91/15.40 | | | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 110.91/15.40 | | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.40 | | | | | | | | | | vTable(v5))) % 110.91/15.40 | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | BETA: splitting (1059) gives: % 110.91/15.40 | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | Case 1: % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | (1060) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.40 | | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.40 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.40 | | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.40 | | | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = % 110.91/15.40 | | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.40 | | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.40 | | | | | | | | | | | = v1) | ~ vTable(v5))) % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | DELTA: instantiating (1060) with fresh symbols all_612_0, % 110.91/15.40 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.91/15.40 | | | | | | | | | | | (1061) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.91/15.40 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.91/15.40 | | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.91/15.40 | | | | | | | | | | | vDifference(all_612_0, all_612_3) = all_338_0 & % 110.91/15.40 | | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.91/15.40 | | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.91/15.40 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.91/15.40 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.91/15.40 | | | | | | | | | | | vTable(v0)) % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1061) are inconsistent by % 110.91/15.40 | | | | | | | | | | | sub-proof #8. % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | Case 2: % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | (1062) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.40 | | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.40 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.40 | | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.40 | | | | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) % 110.91/15.40 | | | | | | | | | | | = v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.40 | | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.40 | | | | | | | | | | | = v1) | ~ vTable(v5))) % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | DELTA: instantiating (1062) with fresh symbols all_612_0, % 110.91/15.40 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.91/15.40 | | | | | | | | | | | (1063) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.91/15.40 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.91/15.40 | | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.91/15.40 | | | | | | | | | | | vIntersection(all_612_0, all_612_3) = all_338_0 & % 110.91/15.40 | | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.91/15.40 | | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.91/15.40 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.91/15.40 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.91/15.40 | | | | | | | | | | | vTable(v0)) % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1063) are inconsistent by % 110.91/15.40 | | | | | | | | | | | sub-proof #7. % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | End of split % 110.91/15.40 | | | | | | | | | | % 110.91/15.40 | | | | | | | | | Case 2: % 110.91/15.40 | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | (1064) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.40 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.40 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.40 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.40 | | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.91/15.40 | | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.40 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.40 | | | | | | | | | | = v1) | ~ vTable(v5))) | ? [v0: vQuery] : % 110.91/15.40 | | | | | | | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: % 110.91/15.40 | | | | | | | | | | vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.40 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.40 | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.91/15.40 | | | | | | | | | | & vDifference(v3, v1) = v4 & vDifference(v0, v1) % 110.91/15.40 | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 110.91/15.40 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.40 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.40 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.40 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.40 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.40 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.40 | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.40 | | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.40 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.40 | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.91/15.40 | | | | | | | | | | & vIntersection(v3, v1) = v4 & vIntersection(v0, % 110.91/15.40 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.40 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.40 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.40 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.40 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.40 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.40 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.40 | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | BETA: splitting (1064) gives: % 110.91/15.40 | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | Case 1: % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | (1065) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.40 | | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.40 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.40 | | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.40 | | | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.91/15.40 | | | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.40 | | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.40 | | | | | | | | | | | = v1) | ~ vTable(v5))) % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | DELTA: instantiating (1065) with fresh symbols all_612_0, % 110.91/15.40 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.91/15.40 | | | | | | | | | | | (1066) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.91/15.40 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.91/15.40 | | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.91/15.40 | | | | | | | | | | | vUnion(all_612_0, all_612_3) = all_338_0 & % 110.91/15.40 | | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.91/15.40 | | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.91/15.40 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.91/15.40 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.91/15.40 | | | | | | | | | | | vTable(v0)) % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1066) are inconsistent by % 110.91/15.40 | | | | | | | | | | | sub-proof #6. % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | Case 2: % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | (1067) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.40 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.40 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.40 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.40 | | | | | | | | | | | all_346_1 & vDifference(v3, v1) = v4 & % 110.91/15.40 | | | | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) % 110.91/15.40 | | | | | | | | | | | & vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) % 110.91/15.40 | | | | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.40 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.40 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.40 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.40 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.40 | | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.40 | | | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.40 | | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.40 | | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.91/15.40 | | | | | | | | | | | & vIntersection(v3, v1) = v4 & vIntersection(v0, % 110.91/15.40 | | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.40 | | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.40 | | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.40 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.40 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.40 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.40 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | BETA: splitting (1067) gives: % 110.91/15.40 | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | Case 1: % 110.91/15.40 | | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | | (1068) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.40 | | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.40 | | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.40 | | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.40 | | | | | | | | | | | | all_346_1 & vDifference(v3, v1) = v4 & % 110.91/15.40 | | | | | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) % 110.91/15.40 | | | | | | | | | | | | & vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) % 110.91/15.40 | | | | | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.40 | | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.40 | | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.40 | | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.40 | | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.40 | | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | | DELTA: instantiating (1068) with fresh symbols all_613_0, % 110.91/15.40 | | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.91/15.40 | | | | | | | | | | | | (1069) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.91/15.40 | | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.91/15.40 | | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.40 | | | | | | | | | | | | vDifference(all_613_1, all_613_3) = all_613_0 & % 110.91/15.40 | | | | | | | | | | | | vDifference(all_613_4, all_613_3) = all_338_0 & % 110.91/15.40 | | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.91/15.40 | | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.91/15.40 | | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.91/15.40 | | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.91/15.40 | | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.91/15.40 | | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.91/15.40 | | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.40 | | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | | ALPHA: (1069) implies: % 110.91/15.40 | | | | | | | | | | | | (1070) vQuery(all_613_4) % 110.91/15.40 | | | | | | | | | | | | (1071) vQuery(all_613_3) % 110.91/15.40 | | | | | | | | | | | | (1072) vDifference(all_613_4, all_613_3) = all_338_0 % 110.91/15.40 | | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.91/15.40 | | | | | | | | | | | | vq2, all_613_4, all_613_3, all_338_0, simplifying % 110.91/15.40 | | | | | | | | | | | | with (4), (5), (18), (1070), (1071), (1072) gives: % 110.91/15.40 | | | | | | | | | | | | (1073) $false % 110.91/15.40 | | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | | CLOSE: (1073) is inconsistent. % 110.91/15.40 | | | | | | | | | | | | % 110.91/15.40 | | | | | | | | | | | Case 2: % 110.91/15.40 | | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | | (1074) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.41 | | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.41 | | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.41 | | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.41 | | | | | | | | | | | | all_346_1 & vIntersection(v3, v1) = v4 & % 110.91/15.41 | | | | | | | | | | | | vIntersection(v0, v1) = all_338_0 & % 110.91/15.41 | | | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.41 | | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.91/15.41 | | | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 110.91/15.41 | | | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 110.91/15.41 | | | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.91/15.41 | | | | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ % 110.91/15.41 | | | | | | | | | | | | vTable(v5))) % 110.91/15.41 | | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | | DELTA: instantiating (1074) with fresh symbols all_613_0, % 110.91/15.41 | | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.91/15.41 | | | | | | | | | | | | (1075) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.91/15.41 | | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.91/15.41 | | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.41 | | | | | | | | | | | | vIntersection(all_613_1, all_613_3) = all_613_0 & % 110.91/15.41 | | | | | | | | | | | | vIntersection(all_613_4, all_613_3) = all_338_0 & % 110.91/15.41 | | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.91/15.41 | | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.91/15.41 | | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.91/15.41 | | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.91/15.41 | | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.91/15.41 | | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.91/15.41 | | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.41 | | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | | ALPHA: (1075) implies: % 110.91/15.41 | | | | | | | | | | | | (1076) vQuery(all_613_4) % 110.91/15.41 | | | | | | | | | | | | (1077) vQuery(all_613_3) % 110.91/15.41 | | | | | | | | | | | | (1078) vIntersection(all_613_4, all_613_3) = all_338_0 % 110.91/15.41 | | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.91/15.41 | | | | | | | | | | | | vq2, all_613_4, all_613_3, all_338_0, simplifying % 110.91/15.41 | | | | | | | | | | | | with (4), (5), (18), (1076), (1077), (1078) gives: % 110.91/15.41 | | | | | | | | | | | | (1079) $false % 110.91/15.41 | | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | | CLOSE: (1079) is inconsistent. % 110.91/15.41 | | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | End of split % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | End of split % 110.91/15.41 | | | | | | | | | | % 110.91/15.41 | | | | | | | | | End of split % 110.91/15.41 | | | | | | | | | % 110.91/15.41 | | | | | | | | Case 2: % 110.91/15.41 | | | | | | | | | % 110.91/15.41 | | | | | | | | | (1080) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.41 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.41 | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.91/15.41 | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.91/15.41 | | | | | | | | | & vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 % 110.91/15.41 | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.41 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) % 110.91/15.41 | | | | | | | | | & ! [v5: vTable] : ! [v6: vTable] : ( ~ % 110.91/15.41 | | | | | | | | | (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | ~ % 110.91/15.41 | | | | | | | | | vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : % 110.91/15.41 | | | | | | | | | ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.41 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.41 | | | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.41 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.41 | | | | | | | | | v3 & vDifference(v0, v1) = all_338_0 & % 110.91/15.41 | | | | | | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: % 110.91/15.41 | | | | | | | | | vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.41 | | | | | | | | | v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | % 110.91/15.41 | | | | | | | | | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 110.91/15.41 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.91/15.41 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.41 | | | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.41 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.41 | | | | | | | | | v3 & vIntersection(v0, v1) = all_338_0 & % 110.91/15.41 | | | | | | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: % 110.91/15.41 | | | | | | | | | vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.41 | | | | | | | | | v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | % 110.91/15.41 | | | | | | | | | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 110.91/15.41 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.91/15.41 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.41 | | | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.41 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.41 | | | | | | | | | v3 & vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.41 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! % 110.91/15.41 | | | | | | | | | [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.41 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.91/15.41 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.91/15.41 | | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vTable] : % 110.91/15.41 | | | | | | | | | (all_346_1 = vnoQuery & vtvalue(v0) = all_338_0 & % 110.91/15.41 | | | | | | | | | vTable(v0)) % 110.91/15.41 | | | | | | | | | % 110.91/15.41 | | | | | | | | | BETA: splitting (1080) gives: % 110.91/15.41 | | | | | | | | | % 110.91/15.41 | | | | | | | | | Case 1: % 110.91/15.41 | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | (1081) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.41 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.41 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.41 | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.41 | | | | | | | | | | all_346_1 & vUnion(v3, v1) = v4 & vUnion(v0, v1) % 110.91/15.41 | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 110.91/15.41 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.41 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.41 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.41 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.41 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.41 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.41 | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.41 | | | | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) % 110.91/15.41 | | | | | | | | | | & vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) % 110.91/15.41 | | | | | | | | | | = v3 & vDifference(v0, v1) = all_338_0 & % 110.91/15.41 | | | | | | | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! % 110.91/15.41 | | | | | | | | | | [v4: vTable] : ! [v5: vTable] : ( ~ % 110.91/15.41 | | | | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.41 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.41 | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.41 | | | | | | | | | | vTable(v4))) % 110.91/15.41 | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | BETA: splitting (1081) gives: % 110.91/15.41 | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | Case 1: % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | (1082) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.41 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.41 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.41 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.41 | | | | | | | | | | | all_346_1 & vUnion(v3, v1) = v4 & vUnion(v0, v1) % 110.91/15.41 | | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 110.91/15.41 | | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.41 | | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.41 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.41 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.41 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.41 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | DELTA: instantiating (1082) with fresh symbols all_613_0, % 110.91/15.41 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.91/15.41 | | | | | | | | | | | (1083) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.91/15.41 | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.91/15.41 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.41 | | | | | | | | | | | vUnion(all_613_1, all_613_3) = all_613_0 & % 110.91/15.41 | | | | | | | | | | | vUnion(all_613_4, all_613_3) = all_338_0 & % 110.91/15.41 | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.91/15.41 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.91/15.41 | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.91/15.41 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.91/15.41 | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.91/15.41 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.91/15.41 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | ALPHA: (1083) implies: % 110.91/15.41 | | | | | | | | | | | (1084) vsomeQuery(all_613_0) = all_346_1 % 110.91/15.41 | | | | | | | | | | | (1085) vQuery(all_613_0) % 110.91/15.41 | | | | | | | | | | | (1086) vUnion(all_613_4, all_613_3) = all_338_0 % 110.91/15.41 | | | | | | | | | | | (1087) vQuery(all_613_4) % 110.91/15.41 | | | | | | | | | | | (1088) vQuery(all_613_3) % 110.91/15.41 | | | | | | | | | | | (1089) vreduce(all_613_4, all_346_6) = all_613_2 % 110.91/15.41 | | | | | | | | | | | (1090) vQuery(all_613_1) % 110.91/15.41 | | | | | | | | | | | (1091) vgetQuery(all_613_2) = all_613_1 % 110.91/15.41 | | | | | | | | | | | (1092) vUnion(all_613_1, all_613_3) = all_613_0 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | GROUND_INST: instantiating (TUnion_inv2) with all_346_5, % 110.91/15.41 | | | | | | | | | | | all_613_4, all_613_3, all_346_4, all_338_0, % 110.91/15.41 | | | | | | | | | | | simplifying with (22), (25), (33), (1086), (1087), % 110.91/15.41 | | | | | | | | | | | (1088) gives: % 110.91/15.41 | | | | | | | | | | | (1093) vptcheck(all_346_5, all_613_3, all_346_4) = 0 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_4, % 110.91/15.41 | | | | | | | | | | | all_613_3, all_338_0, simplifying with (4), (5), % 110.91/15.41 | | | | | | | | | | | (18), (1086), (1087), (1088) gives: % 110.91/15.41 | | | | | | | | | | | (1094) all_613_3 = vq2 & all_613_4 = vq1 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | ALPHA: (1094) implies: % 110.91/15.41 | | | | | | | | | | | (1095) all_613_3 = vq2 % 110.91/15.41 | | | | | | | | | | | (1096) all_613_4 = vq1 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | GROUND_INST: instantiating (3) with all_346_6, all_346_5, % 110.91/15.41 | | | | | | | | | | | all_346_4, all_605_0, all_346_2, simplifying with % 110.91/15.41 | | | | | | | | | | | (22), (24), (25), (30), (39), (977), (979) gives: % 110.91/15.41 | | | | | | | | | | | (1097) ? [v0: any] : ? [v1: any] : (vptcheck(all_346_5, % 110.91/15.41 | | | | | | | | | | | all_605_0, all_346_4) = v1 & % 110.91/15.41 | | | | | | | | | | | vstoreContextConsistent(all_346_6, all_346_5) = % 110.91/15.41 | | | | | | | | | | | v0 & ( ~ (v0 = 0) | v1 = 0)) % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_359_0, % 110.91/15.41 | | | | | | | | | | | all_605_0, all_346_2, simplifying with (41), (42), % 110.91/15.41 | | | | | | | | | | | (977), (979) gives: % 110.91/15.41 | | | | | | | | | | | (1098) all_605_0 = all_359_0 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | GROUND_INST: instantiating (getQuery-0) with all_605_0, % 110.91/15.41 | | | | | | | | | | | all_346_2, simplifying with (977), (979) gives: % 110.91/15.41 | | | | | | | | | | | (1099) vgetQuery(all_346_2) = all_605_0 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_346_3, % 110.91/15.41 | | | | | | | | | | | all_613_0, all_346_1, simplifying with (23), (28), % 110.91/15.41 | | | | | | | | | | | (1084), (1085) gives: % 110.91/15.41 | | | | | | | | | | | (1100) all_613_0 = all_346_3 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | DELTA: instantiating (1097) with fresh symbols all_638_0, % 110.91/15.41 | | | | | | | | | | | all_638_1 gives: % 110.91/15.41 | | | | | | | | | | | (1101) vptcheck(all_346_5, all_605_0, all_346_4) = % 110.91/15.41 | | | | | | | | | | | all_638_0 & vstoreContextConsistent(all_346_6, % 110.91/15.41 | | | | | | | | | | | all_346_5) = all_638_1 & ( ~ (all_638_1 = 0) | % 110.91/15.41 | | | | | | | | | | | all_638_0 = 0) % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | ALPHA: (1101) implies: % 110.91/15.41 | | | | | | | | | | | (1102) vptcheck(all_346_5, all_605_0, all_346_4) = % 110.91/15.41 | | | | | | | | | | | all_638_0 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | REDUCE: (1093), (1095) imply: % 110.91/15.41 | | | | | | | | | | | (1103) vptcheck(all_346_5, vq2, all_346_4) = 0 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | REDUCE: (1098), (1102) imply: % 110.91/15.41 | | | | | | | | | | | (1104) vptcheck(all_346_5, all_359_0, all_346_4) = % 110.91/15.41 | | | | | | | | | | | all_638_0 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | REDUCE: (1089), (1096) imply: % 110.91/15.41 | | | | | | | | | | | (1105) vreduce(vq1, all_346_6) = all_613_2 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | REDUCE: (1098), (1099) imply: % 110.91/15.41 | | | | | | | | | | | (1106) vgetQuery(all_346_2) = all_359_0 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | REDUCE: (1092), (1095), (1100) imply: % 110.91/15.41 | | | | | | | | | | | (1107) vUnion(all_613_1, vq2) = all_346_3 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | GROUND_INST: instantiating (10) with all_346_2, all_613_2, % 110.91/15.41 | | | | | | | | | | | all_346_6, vq1, simplifying with (30), (1105) % 110.91/15.41 | | | | | | | | | | | gives: % 110.91/15.41 | | | | | | | | | | | (1108) all_613_2 = all_346_2 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | GROUND_INST: instantiating (12) with 0, all_638_0, all_346_4, % 110.91/15.41 | | | | | | | | | | | all_359_0, all_346_5, simplifying with (56), % 110.91/15.41 | | | | | | | | | | | (1104) gives: % 110.91/15.41 | | | | | | | | | | | (1109) all_638_0 = 0 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | REDUCE: (1091), (1108) imply: % 110.91/15.41 | | | | | | | | | | | (1110) vgetQuery(all_346_2) = all_613_1 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | GROUND_INST: instantiating (7) with all_359_0, all_613_1, % 110.91/15.41 | | | | | | | | | | | all_346_2, simplifying with (1106), (1110) gives: % 110.91/15.41 | | | | | | | | | | | (1111) all_613_1 = all_359_0 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | REDUCE: (1107), (1111) imply: % 110.91/15.41 | | | | | | | | | | | (1112) vUnion(all_359_0, vq2) = all_346_3 % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | REF_CLOSE: (5), (12), (21), (22), (25), (34), (41), (56), % 110.91/15.41 | | | | | | | | | | | (1103), (1112), (TUnion) are inconsistent by % 110.91/15.41 | | | | | | | | | | | sub-proof #5. % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | Case 2: % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | (1113) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.41 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.41 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.41 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vDifference(v0, % 110.91/15.41 | | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.41 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.41 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.41 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.41 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.41 | | | | | | | | | | | vTable(v4))) % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | DELTA: instantiating (1113) with fresh symbols all_612_0, % 110.91/15.41 | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.91/15.41 | | | | | | | | | | | (1114) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.91/15.41 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.91/15.41 | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.91/15.41 | | | | | | | | | | | vDifference(all_612_3, all_612_2) = all_338_0 & % 110.91/15.41 | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.91/15.41 | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.91/15.41 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.91/15.41 | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.91/15.41 | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.91/15.41 | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1114) are inconsistent by % 110.91/15.41 | | | | | | | | | | | sub-proof #4. % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | End of split % 110.91/15.41 | | | | | | | | | | % 110.91/15.41 | | | | | | | | | Case 2: % 110.91/15.41 | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | (1115) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.41 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.41 | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.41 | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vIntersection(v0, % 110.91/15.41 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.41 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.41 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.41 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.41 | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.41 | | | | | | | | | | vTable(v4))) | ? [v0: vQuery] : ? [v1: % 110.91/15.41 | | | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.91/15.41 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.91/15.41 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.41 | | | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.41 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! % 110.91/15.41 | | | | | | | | | | [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.41 | | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.91/15.41 | | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ % 110.91/15.41 | | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.91/15.41 | | | | | | | | | | vTable] : (all_346_1 = vnoQuery & vtvalue(v0) = % 110.91/15.41 | | | | | | | | | | all_338_0 & vTable(v0)) % 110.91/15.41 | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | BETA: splitting (1115) gives: % 110.91/15.41 | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | Case 1: % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | (1116) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.41 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.41 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.41 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vIntersection(v0, % 110.91/15.41 | | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.41 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.41 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.41 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.41 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.41 | | | | | | | | | | | vTable(v4))) % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | DELTA: instantiating (1116) with fresh symbols all_612_0, % 110.91/15.41 | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.91/15.41 | | | | | | | | | | | (1117) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.91/15.41 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.91/15.41 | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.91/15.41 | | | | | | | | | | | vIntersection(all_612_3, all_612_2) = all_338_0 & % 110.91/15.41 | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.91/15.41 | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.91/15.41 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.91/15.41 | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.91/15.41 | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.91/15.41 | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1117) are inconsistent by % 110.91/15.41 | | | | | | | | | | | sub-proof #3. % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | Case 2: % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | (1118) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.41 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.41 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.41 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.91/15.41 | | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.41 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.41 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.41 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.41 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.41 | | | | | | | | | | | vTable(v4))) | ? [v0: vTable] : (all_346_1 = % 110.91/15.41 | | | | | | | | | | | vnoQuery & vtvalue(v0) = all_338_0 & vTable(v0)) % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | BETA: splitting (1118) gives: % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | Case 1: % 110.91/15.41 | | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | | (1119) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.41 | | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.41 | | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.41 | | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.91/15.41 | | | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.41 | | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.41 | | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.41 | | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.41 | | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.41 | | | | | | | | | | | | vTable(v4))) % 110.91/15.41 | | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | | DELTA: instantiating (1119) with fresh symbols all_612_0, % 110.91/15.41 | | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.91/15.41 | | | | | | | | | | | | (1120) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.91/15.41 | | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.91/15.41 | | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.91/15.41 | | | | | | | | | | | | vUnion(all_612_3, all_612_2) = all_338_0 & % 110.91/15.41 | | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.91/15.41 | | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.91/15.41 | | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.91/15.41 | | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.91/15.41 | | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.91/15.41 | | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.91/15.41 | | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1120) are inconsistent by % 110.91/15.41 | | | | | | | | | | | | sub-proof #2. % 110.91/15.41 | | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | Case 2: % 110.91/15.41 | | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | | (1121) ? [v0: vTable] : (all_346_1 = vnoQuery & % 110.91/15.41 | | | | | | | | | | | | vtvalue(v0) = all_338_0 & vTable(v0)) % 110.91/15.41 | | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | | DELTA: instantiating (1121) with fresh symbol all_612_0 % 110.91/15.41 | | | | | | | | | | | | gives: % 110.91/15.41 | | | | | | | | | | | | (1122) all_346_1 = vnoQuery & vtvalue(all_612_0) = % 110.91/15.41 | | | | | | | | | | | | all_338_0 & vTable(all_612_0) % 110.91/15.41 | | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1122) are inconsistent by % 110.91/15.41 | | | | | | | | | | | | sub-proof #1. % 110.91/15.41 | | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | | End of split % 110.91/15.41 | | | | | | | | | | | % 110.91/15.41 | | | | | | | | | | End of split % 110.91/15.41 | | | | | | | | | | % 110.91/15.41 | | | | | | | | | End of split % 110.91/15.41 | | | | | | | | | % 110.91/15.41 | | | | | | | | End of split % 110.91/15.41 | | | | | | | | % 110.91/15.41 | | | | | | | End of split % 110.91/15.41 | | | | | | | % 110.91/15.41 | | | | | | Case 2: % 110.91/15.41 | | | | | | | % 110.91/15.42 | | | | | | | (1123) ? [v0: vPred] : ? [v1: vSelect] : ? [v2: vOptTable] : % 110.91/15.42 | | | | | | | ? [v3: vName] : ? [v4: int] : (all_346_2 = vnoQuery & % 110.91/15.42 | | | | | | | ~ (v4 = 0) & vlookupStore(v3, all_346_6) = v2 & % 110.91/15.42 | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, v0) = % 110.91/15.42 | | | | | | | vq1 & vSelect(v1) & vOptTable(v2) & vName(v3) & % 110.91/15.42 | | | | | | | vPred(v0)) % 110.91/15.42 | | | | | | | % 110.91/15.42 | | | | | | | DELTA: instantiating (1123) with fresh symbols all_605_0, % 110.91/15.42 | | | | | | | all_605_1, all_605_2, all_605_3, all_605_4 gives: % 110.91/15.42 | | | | | | | (1124) all_346_2 = vnoQuery & ~ (all_605_0 = 0) & % 110.91/15.42 | | | | | | | vlookupStore(all_605_1, all_346_6) = all_605_2 & % 110.91/15.42 | | | | | | | visSomeTable(all_605_2) = all_605_0 & % 110.91/15.42 | | | | | | | vselectFromWhere(all_605_3, all_605_1, all_605_4) = vq1 % 110.91/15.42 | | | | | | | & vSelect(all_605_3) & vOptTable(all_605_2) & % 110.91/15.42 | | | | | | | vName(all_605_1) & vPred(all_605_4) % 110.91/15.42 | | | | | | | % 110.91/15.42 | | | | | | | ALPHA: (1124) implies: % 110.91/15.42 | | | | | | | (1125) all_346_2 = vnoQuery % 110.91/15.42 | | | | | | | % 110.91/15.42 | | | | | | | REDUCE: (29), (1125) imply: % 110.91/15.42 | | | | | | | (1126) visSomeQuery(vnoQuery) = 0 % 110.91/15.42 | | | | | | | % 110.91/15.42 | | | | | | | GROUND_INST: instantiating (9) with all_307_0, 0, vnoQuery, % 110.91/15.42 | | | | | | | simplifying with (15), (1126) gives: % 110.91/15.42 | | | | | | | (1127) all_307_0 = 0 % 110.91/15.42 | | | | | | | % 110.91/15.42 | | | | | | | REDUCE: (14), (1127) imply: % 110.91/15.42 | | | | | | | (1128) $false % 110.91/15.42 | | | | | | | % 110.91/15.42 | | | | | | | CLOSE: (1128) is inconsistent. % 110.91/15.42 | | | | | | | % 110.91/15.42 | | | | | | End of split % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | End of split % 110.91/15.42 | | | | | % 110.91/15.42 | | | | End of split % 110.91/15.42 | | | | % 110.91/15.42 | | | End of split % 110.91/15.42 | | | % 110.91/15.42 | | Case 2: % 110.91/15.42 | | | % 110.91/15.42 | | | (1129) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: % 110.91/15.42 | | | int] : ? [v4: vQuery] : (all_346_2 = vnoQuery & ~ (v3 = 0) & % 110.91/15.42 | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.42 | | | vDifference(v4, v1) = vq1 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.91/15.42 | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.91/15.42 | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 110.91/15.42 | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? [v4: % 110.91/15.42 | | | vQuery] : (all_346_2 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.42 | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & vIntersection(v4, % 110.91/15.42 | | | v1) = vq1 & vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.91/15.42 | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.42 | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? [v1: vQuery] % 110.91/15.42 | | | : ? [v2: vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.42 | | | (all_346_2 = vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = % 110.91/15.42 | | | v2 & visSomeQuery(v2) = v3 & vUnion(v4, v1) = vq1 & % 110.91/15.42 | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.42 | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.42 | | | vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.42 | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.42 | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 % 110.91/15.42 | | | & vsomeQuery(v4) = all_346_2 & vDifference(v3, v1) = v4 & % 110.91/15.42 | | | vDifference(v0, v1) = vq1 & vOptQuery(v2) & % 110.91/15.42 | | | vOptQuery(all_346_2) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.91/15.42 | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : ( ~ % 110.91/15.42 | | | (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.91/15.42 | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = v0) | % 110.91/15.42 | | | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.42 | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.42 | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 % 110.91/15.42 | | | & vsomeQuery(v4) = all_346_2 & vIntersection(v3, v1) = v4 & % 110.91/15.42 | | | vIntersection(v0, v1) = vq1 & vOptQuery(v2) & % 110.91/15.42 | | | vOptQuery(all_346_2) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.91/15.42 | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : ( ~ % 110.91/15.42 | | | (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.91/15.42 | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = v0) | % 110.91/15.42 | | | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.42 | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.42 | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 % 110.91/15.42 | | | & vsomeQuery(v4) = all_346_2 & vUnion(v3, v1) = v4 & % 110.91/15.42 | | | vUnion(v0, v1) = vq1 & vOptQuery(v2) & vOptQuery(all_346_2) & % 110.91/15.42 | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.91/15.42 | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.42 | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ vTable(v5)) & ! % 110.91/15.42 | | | [v5: vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | ? % 110.91/15.42 | | | [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: % 110.91/15.42 | | | int] : (all_346_2 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.91/15.42 | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & vDifference(v0, % 110.91/15.42 | | | v1) = vq1 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! % 110.91/15.42 | | | [v4: vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.42 | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! % 110.91/15.42 | | | [v4: vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? % 110.91/15.42 | | | [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: % 110.91/15.42 | | | int] : (all_346_2 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.91/15.42 | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & vIntersection(v0, % 110.91/15.42 | | | v1) = vq1 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! % 110.91/15.42 | | | [v4: vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.42 | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! % 110.91/15.42 | | | [v4: vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? % 110.91/15.42 | | | [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: % 110.91/15.42 | | | int] : (all_346_2 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.91/15.42 | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.91/15.42 | | | vq1 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: % 110.91/15.42 | | | vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.42 | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! % 110.91/15.42 | | | [v4: vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? % 110.91/15.42 | | | [v0: vTable] : (all_346_2 = vnoQuery & vtvalue(v0) = vq1 & % 110.91/15.42 | | | vTable(v0)) % 110.91/15.42 | | | % 110.91/15.42 | | | BETA: splitting (1129) gives: % 110.91/15.42 | | | % 110.91/15.42 | | | Case 1: % 110.91/15.42 | | | | % 110.91/15.42 | | | | (1130) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.91/15.42 | | | | [v3: int] : ? [v4: vQuery] : (all_346_2 = vnoQuery & ~ (v3 = % 110.91/15.42 | | | | 0) & vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.42 | | | | vDifference(v4, v1) = vq1 & vtvalue(v0) = v4 & vOptQuery(v2) % 110.91/15.42 | | | | & vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( % 110.91/15.42 | | | | ~ (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: vTable] : % 110.91/15.42 | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? [v4: % 110.91/15.42 | | | | vQuery] : (all_346_2 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.42 | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.42 | | | | vIntersection(v4, v1) = vq1 & vtvalue(v0) = v4 & % 110.91/15.42 | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) & ! % 110.91/15.42 | | | | [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) | ? % 110.91/15.42 | | | | [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: % 110.91/15.42 | | | | int] : ? [v4: vQuery] : (all_346_2 = vnoQuery & ~ (v3 = 0) % 110.91/15.42 | | | | & vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.42 | | | | vUnion(v4, v1) = vq1 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.91/15.42 | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.91/15.42 | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: vQuery] : % 110.91/15.42 | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.91/15.42 | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) % 110.91/15.42 | | | | = 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_2 & % 110.91/15.42 | | | | vDifference(v3, v1) = v4 & vDifference(v0, v1) = vq1 & % 110.91/15.42 | | | | vOptQuery(v2) & vOptQuery(all_346_2) & vQuery(v4) & % 110.91/15.42 | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.42 | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 110.91/15.42 | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : % 110.91/15.42 | | | | ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: vQuery] : % 110.91/15.42 | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.91/15.42 | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) % 110.91/15.42 | | | | = 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_2 & % 110.91/15.42 | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) = vq1 & % 110.91/15.42 | | | | vOptQuery(v2) & vOptQuery(all_346_2) & vQuery(v4) & % 110.91/15.42 | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.42 | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 110.91/15.42 | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : % 110.91/15.42 | | | | ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.42 | | | | % 110.91/15.42 | | | | BETA: splitting (1130) gives: % 110.91/15.42 | | | | % 110.91/15.42 | | | | Case 1: % 110.91/15.42 | | | | | % 110.91/15.42 | | | | | (1131) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.91/15.42 | | | | | [v3: int] : ? [v4: vQuery] : (all_346_2 = vnoQuery & ~ (v3 % 110.91/15.42 | | | | | = 0) & vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.42 | | | | | v3 & vDifference(v4, v1) = vq1 & vtvalue(v0) = v4 & % 110.91/15.42 | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) & ! % 110.91/15.42 | | | | | [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) | % 110.91/15.42 | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.91/15.42 | | | | | [v3: int] : ? [v4: vQuery] : (all_346_2 = vnoQuery & ~ (v3 % 110.91/15.42 | | | | | = 0) & vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.42 | | | | | v3 & vIntersection(v4, v1) = vq1 & vtvalue(v0) = v4 & % 110.91/15.42 | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) & ! % 110.91/15.42 | | | | | [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) % 110.91/15.42 | | | | | % 110.91/15.42 | | | | | BETA: splitting (1131) gives: % 110.91/15.42 | | | | | % 110.91/15.42 | | | | | Case 1: % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | (1132) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.42 | | | | | | ? [v3: int] : ? [v4: vQuery] : (all_346_2 = vnoQuery & ~ % 110.91/15.42 | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.91/15.42 | | | | | | visSomeQuery(v2) = v3 & vDifference(v4, v1) = vq1 & % 110.91/15.42 | | | | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.91/15.42 | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.91/15.42 | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | DELTA: instantiating (1132) with fresh symbols all_605_0, all_605_1, % 110.91/15.42 | | | | | | all_605_2, all_605_3, all_605_4 gives: % 110.91/15.42 | | | | | | (1133) all_346_2 = vnoQuery & ~ (all_605_1 = 0) & % 110.91/15.42 | | | | | | vreduce(all_605_3, all_346_6) = all_605_2 & % 110.91/15.42 | | | | | | visSomeQuery(all_605_2) = all_605_1 & % 110.91/15.42 | | | | | | vDifference(all_605_0, all_605_3) = vq1 & % 110.91/15.42 | | | | | | vtvalue(all_605_4) = all_605_0 & vOptQuery(all_605_2) & % 110.91/15.42 | | | | | | vTable(all_605_4) & vQuery(all_605_0) & vQuery(all_605_3) % 110.91/15.42 | | | | | | & ! [v0: vTable] : ( ~ (vtvalue(v0) = all_605_3) | ~ % 110.91/15.42 | | | | | | vTable(v0)) % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | ALPHA: (1133) implies: % 110.91/15.42 | | | | | | (1134) all_346_2 = vnoQuery % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | REDUCE: (29), (1134) imply: % 110.91/15.42 | | | | | | (1135) visSomeQuery(vnoQuery) = 0 % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | GROUND_INST: instantiating (9) with all_307_0, 0, vnoQuery, % 110.91/15.42 | | | | | | simplifying with (15), (1135) gives: % 110.91/15.42 | | | | | | (1136) all_307_0 = 0 % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | REDUCE: (14), (1136) imply: % 110.91/15.42 | | | | | | (1137) $false % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | CLOSE: (1137) is inconsistent. % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | Case 2: % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | (1138) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.42 | | | | | | ? [v3: int] : ? [v4: vQuery] : (all_346_2 = vnoQuery & ~ % 110.91/15.42 | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.91/15.42 | | | | | | visSomeQuery(v2) = v3 & vIntersection(v4, v1) = vq1 & % 110.91/15.42 | | | | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.91/15.42 | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.91/15.42 | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | DELTA: instantiating (1138) with fresh symbols all_605_0, all_605_1, % 110.91/15.42 | | | | | | all_605_2, all_605_3, all_605_4 gives: % 110.91/15.42 | | | | | | (1139) all_346_2 = vnoQuery & ~ (all_605_1 = 0) & % 110.91/15.42 | | | | | | vreduce(all_605_3, all_346_6) = all_605_2 & % 110.91/15.42 | | | | | | visSomeQuery(all_605_2) = all_605_1 & % 110.91/15.42 | | | | | | vIntersection(all_605_0, all_605_3) = vq1 & % 110.91/15.42 | | | | | | vtvalue(all_605_4) = all_605_0 & vOptQuery(all_605_2) & % 110.91/15.42 | | | | | | vTable(all_605_4) & vQuery(all_605_0) & vQuery(all_605_3) % 110.91/15.42 | | | | | | & ! [v0: vTable] : ( ~ (vtvalue(v0) = all_605_3) | ~ % 110.91/15.42 | | | | | | vTable(v0)) % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | ALPHA: (1139) implies: % 110.91/15.42 | | | | | | (1140) all_346_2 = vnoQuery % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | REDUCE: (29), (1140) imply: % 110.91/15.42 | | | | | | (1141) visSomeQuery(vnoQuery) = 0 % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | GROUND_INST: instantiating (9) with all_307_0, 0, vnoQuery, % 110.91/15.42 | | | | | | simplifying with (15), (1141) gives: % 110.91/15.42 | | | | | | (1142) all_307_0 = 0 % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | REDUCE: (14), (1142) imply: % 110.91/15.42 | | | | | | (1143) $false % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | CLOSE: (1143) is inconsistent. % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | End of split % 110.91/15.42 | | | | | % 110.91/15.42 | | | | Case 2: % 110.91/15.42 | | | | | % 110.91/15.42 | | | | | (1144) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.91/15.42 | | | | | [v3: int] : ? [v4: vQuery] : (all_346_2 = vnoQuery & ~ (v3 % 110.91/15.42 | | | | | = 0) & vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.42 | | | | | v3 & vUnion(v4, v1) = vq1 & vtvalue(v0) = v4 & % 110.91/15.42 | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) & ! % 110.91/15.42 | | | | | [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) | % 110.91/15.42 | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.91/15.42 | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, all_346_6) = % 110.91/15.42 | | | | | v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.91/15.42 | | | | | vsomeQuery(v4) = all_346_2 & vDifference(v3, v1) = v4 & % 110.91/15.42 | | | | | vDifference(v0, v1) = vq1 & vOptQuery(v2) & % 110.91/15.42 | | | | | vOptQuery(all_346_2) & vQuery(v4) & vQuery(v3) & % 110.91/15.42 | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.91/15.42 | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) % 110.91/15.42 | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.42 | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: vQuery] : % 110.91/15.42 | | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 110.91/15.42 | | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.91/15.42 | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) % 110.91/15.42 | | | | | = all_346_2 & vIntersection(v3, v1) = v4 & % 110.91/15.42 | | | | | vIntersection(v0, v1) = vq1 & vOptQuery(v2) & % 110.91/15.42 | | | | | vOptQuery(all_346_2) & vQuery(v4) & vQuery(v3) & % 110.91/15.42 | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.91/15.42 | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) % 110.91/15.42 | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.42 | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.42 | | | | | % 110.91/15.42 | | | | | BETA: splitting (1144) gives: % 110.91/15.42 | | | | | % 110.91/15.42 | | | | | Case 1: % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | (1145) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.42 | | | | | | ? [v3: int] : ? [v4: vQuery] : (all_346_2 = vnoQuery & ~ % 110.91/15.42 | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 110.91/15.42 | | | | | | visSomeQuery(v2) = v3 & vUnion(v4, v1) = vq1 & % 110.91/15.42 | | | | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.91/15.42 | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.91/15.42 | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | DELTA: instantiating (1145) with fresh symbols all_605_0, all_605_1, % 110.91/15.42 | | | | | | all_605_2, all_605_3, all_605_4 gives: % 110.91/15.42 | | | | | | (1146) all_346_2 = vnoQuery & ~ (all_605_1 = 0) & % 110.91/15.42 | | | | | | vreduce(all_605_3, all_346_6) = all_605_2 & % 110.91/15.42 | | | | | | visSomeQuery(all_605_2) = all_605_1 & vUnion(all_605_0, % 110.91/15.42 | | | | | | all_605_3) = vq1 & vtvalue(all_605_4) = all_605_0 & % 110.91/15.42 | | | | | | vOptQuery(all_605_2) & vTable(all_605_4) & % 110.91/15.42 | | | | | | vQuery(all_605_0) & vQuery(all_605_3) & ! [v0: vTable] : % 110.91/15.42 | | | | | | ( ~ (vtvalue(v0) = all_605_3) | ~ vTable(v0)) % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | ALPHA: (1146) implies: % 110.91/15.42 | | | | | | (1147) all_346_2 = vnoQuery % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | REDUCE: (29), (1147) imply: % 110.91/15.42 | | | | | | (1148) visSomeQuery(vnoQuery) = 0 % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | GROUND_INST: instantiating (9) with all_307_0, 0, vnoQuery, % 110.91/15.42 | | | | | | simplifying with (15), (1148) gives: % 110.91/15.42 | | | | | | (1149) all_307_0 = 0 % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | REDUCE: (14), (1149) imply: % 110.91/15.42 | | | | | | (1150) $false % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | CLOSE: (1150) is inconsistent. % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | Case 2: % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | (1151) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.42 | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, all_346_6) % 110.91/15.42 | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.91/15.42 | | | | | | vsomeQuery(v4) = all_346_2 & vDifference(v3, v1) = v4 & % 110.91/15.42 | | | | | | vDifference(v0, v1) = vq1 & vOptQuery(v2) & % 110.91/15.42 | | | | | | vOptQuery(all_346_2) & vQuery(v4) & vQuery(v3) & % 110.91/15.42 | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.91/15.42 | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 110.91/15.42 | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.91/15.42 | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 110.91/15.42 | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.91/15.42 | | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, all_346_6) = % 110.91/15.42 | | | | | | v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.91/15.42 | | | | | | vsomeQuery(v4) = all_346_2 & vIntersection(v3, v1) = v4 % 110.91/15.42 | | | | | | & vIntersection(v0, v1) = vq1 & vOptQuery(v2) & % 110.91/15.42 | | | | | | vOptQuery(all_346_2) & vQuery(v4) & vQuery(v3) & % 110.91/15.42 | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.91/15.42 | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 110.91/15.42 | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.91/15.42 | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | BETA: splitting (1151) gives: % 110.91/15.42 | | | | | | % 110.91/15.42 | | | | | | Case 1: % 110.91/15.42 | | | | | | | % 110.91/15.42 | | | | | | | (1152) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.42 | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.42 | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.42 | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_2 & % 110.91/15.42 | | | | | | | vDifference(v3, v1) = v4 & vDifference(v0, v1) = vq1 & % 110.91/15.42 | | | | | | | vOptQuery(v2) & vOptQuery(all_346_2) & vQuery(v4) & % 110.91/15.42 | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: vTable] % 110.91/15.42 | | | | | | | : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.42 | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ vTable(v5)) % 110.91/15.42 | | | | | | | & ! [v5: vTable] : ( ~ (vtvalue(v5) = v0) | ~ % 110.91/15.42 | | | | | | | vTable(v5))) % 110.91/15.42 | | | | | | | % 110.91/15.42 | | | | | | | DELTA: instantiating (1152) with fresh symbols all_605_0, % 110.91/15.42 | | | | | | | all_605_1, all_605_2, all_605_3, all_605_4 gives: % 110.91/15.42 | | | | | | | (1153) vreduce(all_605_4, all_346_6) = all_605_2 & % 110.91/15.42 | | | | | | | visSomeQuery(all_605_2) = 0 & vgetQuery(all_605_2) = % 110.91/15.42 | | | | | | | all_605_1 & vsomeQuery(all_605_0) = all_346_2 & % 110.91/15.42 | | | | | | | vDifference(all_605_1, all_605_3) = all_605_0 & % 110.91/15.42 | | | | | | | vDifference(all_605_4, all_605_3) = vq1 & % 110.91/15.42 | | | | | | | vOptQuery(all_605_2) & vOptQuery(all_346_2) & % 110.91/15.42 | | | | | | | vQuery(all_605_0) & vQuery(all_605_1) & % 110.91/15.42 | | | | | | | vQuery(all_605_3) & vQuery(all_605_4) & ! [v0: vTable] % 110.91/15.42 | | | | | | | : ! [v1: vTable] : ( ~ (vtvalue(v1) = all_605_3) | ~ % 110.91/15.42 | | | | | | | (vtvalue(v0) = all_605_4) | ~ vTable(v1) | ~ % 110.91/15.42 | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) = % 110.91/15.42 | | | | | | | all_605_4) | ~ vTable(v0)) % 110.91/15.42 | | | | | | | % 110.91/15.42 | | | | | | | ALPHA: (1153) implies: % 110.91/15.42 | | | | | | | (1154) vQuery(all_605_4) % 110.91/15.42 | | | | | | | (1155) vQuery(all_605_3) % 110.91/15.42 | | | | | | | (1156) vQuery(all_605_0) % 110.91/15.42 | | | | | | | (1157) vDifference(all_605_4, all_605_3) = vq1 % 110.91/15.42 | | | | | | | (1158) vsomeQuery(all_605_0) = all_346_2 % 110.91/15.42 | | | | | | | % 110.91/15.42 | | | | | | | BETA: splitting (38) gives: % 110.91/15.42 | | | | | | | % 110.91/15.42 | | | | | | | Case 1: % 110.91/15.42 | | | | | | | | % 110.91/15.43 | | | | | | | | (1159) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.91/15.43 | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] % 110.91/15.43 | | | | | | | | : ? [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: % 110.91/15.43 | | | | | | | | vTable] : ? [v9: vQuery] : (vrawDifference(v5, v6) % 110.91/15.43 | | | | | | | | = v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & % 110.91/15.43 | | | | | | | | vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 110.91/15.43 | | | | | | | | vsomeQuery(v9) = all_346_1 & vDifference(v2, v3) = % 110.91/15.43 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.91/15.43 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 110.91/15.43 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) % 110.91/15.43 | | | | | | | | & vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.91/15.43 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? % 110.91/15.43 | | | | | | | | [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? % 110.91/15.43 | | | | | | | | [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] % 110.91/15.43 | | | | | | | | : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 110.91/15.43 | | | | | | | | vQuery] : (vrawIntersection(v5, v6) = v7 & % 110.91/15.43 | | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) % 110.91/15.43 | | | | | | | | = v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = % 110.91/15.43 | | | | | | | | all_346_1 & vIntersection(v2, v3) = all_338_0 & % 110.91/15.43 | | | | | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & vtvalue(v0) = % 110.91/15.43 | | | | | | | | v2 & vOptQuery(all_346_1) & vTable(v8) & vTable(v1) % 110.91/15.43 | | | | | | | | & vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.91/15.43 | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.91/15.43 | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 110.91/15.43 | | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.91/15.43 | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.43 | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.43 | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.91/15.43 | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) % 110.91/15.43 | | | | | | | | = v8 & vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 110.91/15.43 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.91/15.43 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 110.91/15.43 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) % 110.91/15.43 | | | | | | | | & vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.91/15.43 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? % 110.91/15.43 | | | | | | | | [v1: vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : % 110.91/15.43 | | | | | | | | ? [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] % 110.91/15.43 | | | | | | | | : ? [v7: vTable] : ? [v8: vQuery] : % 110.91/15.43 | | | | | | | | (vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = % 110.91/15.43 | | | | | | | | v4 & vlookupStore(v5, all_346_6) = v3 & % 110.91/15.43 | | | | | | | | visSomeTable(v4) = 0 & visSomeTable(v3) = 0 & % 110.91/15.43 | | | | | | | | vgetTable(v4) = v7 & vgetTable(v3) = v6 & % 110.91/15.43 | | | | | | | | vsomeQuery(v8) = all_346_1 & vselectFromWhere(v2, % 110.91/15.43 | | | | | | | | v5, v0) = all_338_0 & vtvalue(v7) = v8 & % 110.91/15.43 | | | | | | | | vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) & % 110.91/15.43 | | | | | | | | vTable(v6) & vTable(v1) & vOptTable(v4) & % 110.91/15.43 | | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & vPred(v0)) % 110.91/15.43 | | | | | | | | | ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 110.91/15.43 | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.91/15.43 | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : (all_346_1 % 110.91/15.43 | | | | | | | | = vnoQuery & ~ (v7 = 0) & vfilterTable(v6, v0) = v1 % 110.91/15.43 | | | | | | | | & vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.91/15.43 | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 110.91/15.43 | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 110.91/15.43 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.91/15.43 | | | | | | | | vSelect(v2) & vTable(v6) & vTable(v1) & % 110.91/15.43 | | | | | | | | vOptTable(v4) & vOptTable(v3) & vName(v5) & % 110.91/15.43 | | | | | | | | vPred(v0)) | ? [v0: vTable] : ? [v1: vQuery] : ? % 110.91/15.43 | | | | | | | | [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.43 | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.91/15.43 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.91/15.43 | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) = % 110.91/15.43 | | | | | | | | v5 & vDifference(v3, v1) = all_338_0 & vtvalue(v0) = % 110.91/15.43 | | | | | | | | v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.43 | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.91/15.43 | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.91/15.43 | | | | | | | | v1) | ~ vTable(v6))) | ? [v0: vTable] : ? % 110.91/15.43 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.91/15.43 | | | | | | | | ? [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.91/15.43 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.43 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.91/15.43 | | | | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) = % 110.91/15.43 | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.43 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.43 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.43 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.91/15.43 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.43 | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 110.91/15.43 | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.91/15.43 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.91/15.43 | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 & % 110.91/15.43 | | | | | | | | vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 110.91/15.43 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) & % 110.91/15.43 | | | | | | | | vQuery(v5) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.91/15.43 | | | | | | | | ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.43 | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] : % 110.91/15.43 | | | | | | | | ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.91/15.43 | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 110.91/15.43 | | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.91/15.43 | | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & % 110.91/15.43 | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & vPred(v0)) % 110.91/15.43 | | | | | | | | % 110.91/15.43 | | | | | | | | BETA: splitting (1159) gives: % 110.91/15.43 | | | | | | | | % 110.91/15.43 | | | | | | | | Case 1: % 110.91/15.43 | | | | | | | | | % 110.91/15.43 | | | | | | | | | (1160) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.91/15.43 | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.91/15.43 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.43 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.43 | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.91/15.43 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.91/15.43 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.91/15.43 | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 % 110.91/15.43 | | | | | | | | | & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.91/15.43 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.91/15.43 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.91/15.43 | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.91/15.43 | | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : % 110.91/15.43 | | | | | | | | | ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : % 110.91/15.43 | | | | | | | | | ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.43 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.43 | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 % 110.91/15.43 | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.91/15.43 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.91/15.43 | | | | | | | | | vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 110.91/15.43 | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.91/15.43 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.91/15.43 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.91/15.43 | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.91/15.43 | | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : % 110.91/15.43 | | | | | | | | | ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : % 110.91/15.43 | | | | | | | | | ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.43 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.43 | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.91/15.43 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.91/15.43 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.91/15.43 | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.91/15.43 | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.91/15.43 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.91/15.43 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.91/15.43 | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.91/15.43 | | | | | | | | | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : % 110.91/15.43 | | | | | | | | | ? [v2: vSelect] : ? [v3: vOptTable] : ? [v4: % 110.91/15.43 | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 110.91/15.43 | | | | | | | | | [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 110.91/15.43 | | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.91/15.43 | | | | | | | | | vlookupStore(v5, all_346_6) = v3 & % 110.91/15.43 | | | | | | | | | visSomeTable(v4) = 0 & visSomeTable(v3) = 0 & % 110.91/15.43 | | | | | | | | | vgetTable(v4) = v7 & vgetTable(v3) = v6 & % 110.91/15.43 | | | | | | | | | vsomeQuery(v8) = all_346_1 & vselectFromWhere(v2, % 110.91/15.43 | | | | | | | | | v5, v0) = all_338_0 & vtvalue(v7) = v8 & % 110.91/15.43 | | | | | | | | | vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) & % 110.91/15.43 | | | | | | | | | vTable(v6) & vTable(v1) & vOptTable(v4) & % 110.91/15.43 | | | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & % 110.91/15.43 | | | | | | | | | vPred(v0)) % 110.91/15.43 | | | | | | | | | % 110.91/15.43 | | | | | | | | | BETA: splitting (1160) gives: % 110.91/15.43 | | | | | | | | | % 110.91/15.43 | | | | | | | | | Case 1: % 110.91/15.43 | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | (1161) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 110.91/15.43 | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.91/15.43 | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.43 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.43 | | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 % 110.91/15.43 | | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.91/15.43 | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.91/15.43 | | | | | | | | | | & vDifference(v2, v3) = all_338_0 & vtvalue(v8) % 110.91/15.43 | | | | | | | | | | = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.91/15.43 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.91/15.43 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.91/15.43 | | | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.91/15.43 | | | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : % 110.91/15.43 | | | | | | | | | | ? [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] % 110.91/15.43 | | | | | | | | | | : ? [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: % 110.91/15.43 | | | | | | | | | | vRawTable] : ? [v7: vRawTable] : ? [v8: % 110.91/15.43 | | | | | | | | | | vTable] : ? [v9: vQuery] : % 110.91/15.43 | | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = % 110.91/15.43 | | | | | | | | | | v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.91/15.43 | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.91/15.43 | | | | | | | | | | & vIntersection(v2, v3) = all_338_0 & % 110.91/15.43 | | | | | | | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.91/15.43 | | | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & % 110.91/15.43 | | | | | | | | | | vTable(v8) & vTable(v1) & vTable(v0) & % 110.91/15.43 | | | | | | | | | | vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.91/15.43 | | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.91/15.43 | | | | | | | | | | vAttrL(v4)) % 110.91/15.43 | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | BETA: splitting (1161) gives: % 110.91/15.43 | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | Case 1: % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | (1162) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 110.91/15.43 | | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.91/15.43 | | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.43 | | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.43 | | | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 % 110.91/15.43 | | | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.91/15.43 | | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.91/15.43 | | | | | | | | | | | & vDifference(v2, v3) = all_338_0 & vtvalue(v8) % 110.91/15.43 | | | | | | | | | | | = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.91/15.43 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.91/15.43 | | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.91/15.43 | | | | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.91/15.43 | | | | | | | | | | | vRawTable(v5) & vAttrL(v4)) % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | DELTA: instantiating (1162) with fresh symbols all_613_0, % 110.91/15.43 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.91/15.43 | | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, % 110.91/15.43 | | | | | | | | | | | all_613_9 gives: % 110.91/15.43 | | | | | | | | | | | (1163) vrawDifference(all_613_4, all_613_3) = all_613_2 & % 110.91/15.43 | | | | | | | | | | | vgetAttrL(all_613_9) = all_613_5 & % 110.91/15.43 | | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & % 110.91/15.43 | | | | | | | | | | | vgetRaw(all_613_9) = all_613_4 & vtable(all_613_5, % 110.91/15.43 | | | | | | | | | | | all_613_2) = all_613_1 & vsomeQuery(all_613_0) = % 110.91/15.43 | | | | | | | | | | | all_346_1 & vDifference(all_613_7, all_613_6) = % 110.91/15.43 | | | | | | | | | | | all_338_0 & vtvalue(all_613_1) = all_613_0 & % 110.91/15.43 | | | | | | | | | | | vtvalue(all_613_8) = all_613_6 & % 110.91/15.43 | | | | | | | | | | | vtvalue(all_613_9) = all_613_7 & % 110.91/15.43 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.91/15.43 | | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.91/15.43 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.91/15.43 | | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.91/15.43 | | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.91/15.43 | | | | | | | | | | | vAttrL(all_613_5) % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | ALPHA: (1163) implies: % 110.91/15.43 | | | | | | | | | | | (1164) vQuery(all_613_7) % 110.91/15.43 | | | | | | | | | | | (1165) vQuery(all_613_6) % 110.91/15.43 | | | | | | | | | | | (1166) vDifference(all_613_7, all_613_6) = all_338_0 % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.91/15.43 | | | | | | | | | | | vq2, all_613_7, all_613_6, all_338_0, simplifying % 110.91/15.43 | | | | | | | | | | | with (4), (5), (18), (1164), (1165), (1166) gives: % 110.91/15.43 | | | | | | | | | | | (1167) $false % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | CLOSE: (1167) is inconsistent. % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | Case 2: % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | (1168) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 110.91/15.43 | | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.91/15.43 | | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.43 | | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.43 | | | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = % 110.91/15.43 | | | | | | | | | | | v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.91/15.43 | | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.91/15.43 | | | | | | | | | | | & vIntersection(v2, v3) = all_338_0 & % 110.91/15.43 | | | | | | | | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.91/15.43 | | | | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & % 110.91/15.43 | | | | | | | | | | | vTable(v8) & vTable(v1) & vTable(v0) & % 110.91/15.43 | | | | | | | | | | | vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.91/15.43 | | | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.91/15.43 | | | | | | | | | | | vAttrL(v4)) % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | DELTA: instantiating (1168) with fresh symbols all_613_0, % 110.91/15.43 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.91/15.43 | | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, % 110.91/15.43 | | | | | | | | | | | all_613_9 gives: % 110.91/15.43 | | | | | | | | | | | (1169) vrawIntersection(all_613_4, all_613_3) = all_613_2 % 110.91/15.43 | | | | | | | | | | | & vgetAttrL(all_613_9) = all_613_5 & % 110.91/15.43 | | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & % 110.91/15.43 | | | | | | | | | | | vgetRaw(all_613_9) = all_613_4 & vtable(all_613_5, % 110.91/15.43 | | | | | | | | | | | all_613_2) = all_613_1 & vsomeQuery(all_613_0) = % 110.91/15.43 | | | | | | | | | | | all_346_1 & vIntersection(all_613_7, all_613_6) = % 110.91/15.43 | | | | | | | | | | | all_338_0 & vtvalue(all_613_1) = all_613_0 & % 110.91/15.43 | | | | | | | | | | | vtvalue(all_613_8) = all_613_6 & % 110.91/15.43 | | | | | | | | | | | vtvalue(all_613_9) = all_613_7 & % 110.91/15.43 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.91/15.43 | | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.91/15.43 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.91/15.43 | | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.91/15.43 | | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.91/15.43 | | | | | | | | | | | vAttrL(all_613_5) % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | ALPHA: (1169) implies: % 110.91/15.43 | | | | | | | | | | | (1170) vQuery(all_613_7) % 110.91/15.43 | | | | | | | | | | | (1171) vQuery(all_613_6) % 110.91/15.43 | | | | | | | | | | | (1172) vIntersection(all_613_7, all_613_6) = all_338_0 % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.91/15.43 | | | | | | | | | | | vq2, all_613_7, all_613_6, all_338_0, simplifying % 110.91/15.43 | | | | | | | | | | | with (4), (5), (18), (1170), (1171), (1172) gives: % 110.91/15.43 | | | | | | | | | | | (1173) $false % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | CLOSE: (1173) is inconsistent. % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | End of split % 110.91/15.43 | | | | | | | | | | % 110.91/15.43 | | | | | | | | | Case 2: % 110.91/15.43 | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | (1174) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 110.91/15.43 | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.91/15.43 | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.43 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.43 | | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.91/15.43 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.91/15.43 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.91/15.43 | | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.91/15.43 | | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.91/15.43 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.91/15.43 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.91/15.43 | | | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.91/15.43 | | | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : % 110.91/15.43 | | | | | | | | | | ? [v1: vTable] : ? [v2: vSelect] : ? [v3: % 110.91/15.43 | | | | | | | | | | vOptTable] : ? [v4: vOptTable] : ? [v5: vName] % 110.91/15.43 | | | | | | | | | | : ? [v6: vTable] : ? [v7: vTable] : ? [v8: % 110.91/15.43 | | | | | | | | | | vQuery] : (vfilterTable(v6, v0) = v1 & % 110.91/15.43 | | | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.91/15.43 | | | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 110.91/15.43 | | | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.91/15.43 | | | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 % 110.91/15.43 | | | | | | | | | | & vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.91/15.43 | | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 110.91/15.43 | | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & % 110.91/15.43 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.91/15.43 | | | | | | | | | | vQuery(v8) & vName(v5) & vPred(v0)) % 110.91/15.43 | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | BETA: splitting (1174) gives: % 110.91/15.43 | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | Case 1: % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | (1175) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 110.91/15.43 | | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.91/15.43 | | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.43 | | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.43 | | | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.91/15.43 | | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.91/15.43 | | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.91/15.43 | | | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.91/15.43 | | | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.91/15.43 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.91/15.43 | | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.91/15.43 | | | | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.91/15.43 | | | | | | | | | | | vRawTable(v5) & vAttrL(v4)) % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | DELTA: instantiating (1175) with fresh symbols all_613_0, % 110.91/15.43 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.91/15.43 | | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, % 110.91/15.43 | | | | | | | | | | | all_613_9 gives: % 110.91/15.43 | | | | | | | | | | | (1176) vrawUnion(all_613_4, all_613_3) = all_613_2 & % 110.91/15.43 | | | | | | | | | | | vgetAttrL(all_613_9) = all_613_5 & % 110.91/15.43 | | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & % 110.91/15.43 | | | | | | | | | | | vgetRaw(all_613_9) = all_613_4 & vtable(all_613_5, % 110.91/15.43 | | | | | | | | | | | all_613_2) = all_613_1 & vsomeQuery(all_613_0) = % 110.91/15.43 | | | | | | | | | | | all_346_1 & vUnion(all_613_7, all_613_6) = % 110.91/15.43 | | | | | | | | | | | all_338_0 & vtvalue(all_613_1) = all_613_0 & % 110.91/15.43 | | | | | | | | | | | vtvalue(all_613_8) = all_613_6 & % 110.91/15.43 | | | | | | | | | | | vtvalue(all_613_9) = all_613_7 & % 110.91/15.43 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.91/15.43 | | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.91/15.43 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.91/15.43 | | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.91/15.43 | | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.91/15.43 | | | | | | | | | | | vAttrL(all_613_5) % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | ALPHA: (1176) implies: % 110.91/15.43 | | | | | | | | | | | (1177) vQuery(all_613_7) % 110.91/15.43 | | | | | | | | | | | (1178) vQuery(all_613_6) % 110.91/15.43 | | | | | | | | | | | (1179) vTable(all_613_9) % 110.91/15.43 | | | | | | | | | | | (1180) vtvalue(all_613_9) = all_613_7 % 110.91/15.43 | | | | | | | | | | | (1181) vUnion(all_613_7, all_613_6) = all_338_0 % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_613_9, % 110.91/15.43 | | | | | | | | | | | all_613_7, simplifying with (1179), (1180) gives: % 110.91/15.43 | | | | | | | | | | | (1182) visValue(all_613_7) = 0 % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_7, % 110.91/15.43 | | | | | | | | | | | all_613_6, all_338_0, simplifying with (4), (5), % 110.91/15.43 | | | | | | | | | | | (18), (1177), (1178), (1181) gives: % 110.91/15.43 | | | | | | | | | | | (1183) all_613_6 = vq2 & all_613_7 = vq1 % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | ALPHA: (1183) implies: % 110.91/15.43 | | | | | | | | | | | (1184) all_613_7 = vq1 % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | GROUND_INST: instantiating (isValue-4) with all_605_4, % 110.91/15.43 | | | | | | | | | | | all_605_3, vq1, simplifying with (1154), (1155), % 110.91/15.43 | | | | | | | | | | | (1157) gives: % 110.91/15.43 | | | | | | | | | | | (1185) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | DELTA: instantiating (1185) with fresh symbol all_633_0 % 110.91/15.43 | | | | | | | | | | | gives: % 110.91/15.43 | | | | | | | | | | | (1186) ~ (all_633_0 = 0) & visValue(vq1) = all_633_0 % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | ALPHA: (1186) implies: % 110.91/15.43 | | | | | | | | | | | (1187) ~ (all_633_0 = 0) % 110.91/15.43 | | | | | | | | | | | (1188) visValue(vq1) = all_633_0 % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | REDUCE: (1182), (1184) imply: % 110.91/15.43 | | | | | | | | | | | (1189) visValue(vq1) = 0 % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_633_0, vq1, % 110.91/15.43 | | | | | | | | | | | simplifying with (1188), (1189) gives: % 110.91/15.43 | | | | | | | | | | | (1190) all_633_0 = 0 % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | REDUCE: (1187), (1190) imply: % 110.91/15.43 | | | | | | | | | | | (1191) $false % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | CLOSE: (1191) is inconsistent. % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | Case 2: % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | (1192) ? [v0: vPred] : ? [v1: vTable] : ? [v2: % 110.91/15.43 | | | | | | | | | | | vSelect] : ? [v3: vOptTable] : ? [v4: % 110.91/15.43 | | | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.91/15.43 | | | | | | | | | | | ? [v7: vTable] : ? [v8: vQuery] : % 110.91/15.43 | | | | | | | | | | | (vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 110.91/15.43 | | | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.91/15.43 | | | | | | | | | | | visSomeTable(v4) = 0 & visSomeTable(v3) = 0 & % 110.91/15.43 | | | | | | | | | | | vgetTable(v4) = v7 & vgetTable(v3) = v6 & % 110.91/15.43 | | | | | | | | | | | vsomeQuery(v8) = all_346_1 & % 110.91/15.43 | | | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.91/15.43 | | | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 110.91/15.43 | | | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & % 110.91/15.43 | | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.91/15.43 | | | | | | | | | | | vQuery(v8) & vName(v5) & vPred(v0)) % 110.91/15.43 | | | | | | | | | | | % 110.91/15.43 | | | | | | | | | | | DELTA: instantiating (1192) with fresh symbols all_613_0, % 110.91/15.43 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.91/15.43 | | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8 gives: % 110.91/15.44 | | | | | | | | | | | (1193) vfilterTable(all_613_2, all_613_8) = all_613_7 & % 110.91/15.44 | | | | | | | | | | | vprojectTable(all_613_6, all_613_7) = all_613_4 & % 110.91/15.44 | | | | | | | | | | | vlookupStore(all_613_3, all_346_6) = all_613_5 & % 110.91/15.44 | | | | | | | | | | | visSomeTable(all_613_4) = 0 & % 110.91/15.44 | | | | | | | | | | | visSomeTable(all_613_5) = 0 & vgetTable(all_613_4) % 110.91/15.44 | | | | | | | | | | | = all_613_1 & vgetTable(all_613_5) = all_613_2 & % 110.91/15.44 | | | | | | | | | | | vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.44 | | | | | | | | | | | vselectFromWhere(all_613_6, all_613_3, all_613_8) % 110.91/15.44 | | | | | | | | | | | = all_338_0 & vtvalue(all_613_1) = all_613_0 & % 110.91/15.44 | | | | | | | | | | | vOptQuery(all_346_1) & vSelect(all_613_6) & % 110.91/15.44 | | | | | | | | | | | vTable(all_613_1) & vTable(all_613_2) & % 110.91/15.44 | | | | | | | | | | | vTable(all_613_7) & vOptTable(all_613_4) & % 110.91/15.44 | | | | | | | | | | | vOptTable(all_613_5) & vQuery(all_613_0) & % 110.91/15.44 | | | | | | | | | | | vName(all_613_3) & vPred(all_613_8) % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | ALPHA: (1193) implies: % 110.91/15.44 | | | | | | | | | | | (1194) vPred(all_613_8) % 110.91/15.44 | | | | | | | | | | | (1195) vName(all_613_3) % 110.91/15.44 | | | | | | | | | | | (1196) vSelect(all_613_6) % 110.91/15.44 | | | | | | | | | | | (1197) vselectFromWhere(all_613_6, all_613_3, all_613_8) % 110.91/15.44 | | | | | | | | | | | = all_338_0 % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-selectFromWhere-Union) with % 110.91/15.44 | | | | | | | | | | | all_613_3, all_613_8, all_613_6, vq2, vq1, % 110.91/15.44 | | | | | | | | | | | all_338_0, simplifying with (4), (5), (18), % 110.91/15.44 | | | | | | | | | | | (1194), (1195), (1196), (1197) gives: % 110.91/15.44 | | | | | | | | | | | (1198) $false % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | CLOSE: (1198) is inconsistent. % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | End of split % 110.91/15.44 | | | | | | | | | | % 110.91/15.44 | | | | | | | | | End of split % 110.91/15.44 | | | | | | | | | % 110.91/15.44 | | | | | | | | Case 2: % 110.91/15.44 | | | | | | | | | % 110.91/15.44 | | | | | | | | | (1199) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 110.91/15.44 | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.91/15.44 | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 110.91/15.44 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 110.91/15.44 | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 110.91/15.44 | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.91/15.44 | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.91/15.44 | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) % 110.91/15.44 | | | | | | | | | = all_338_0 & vSelect(v2) & vTable(v6) & % 110.91/15.44 | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.91/15.44 | | | | | | | | | vName(v5) & vPred(v0)) | ? [v0: vTable] : ? [v1: % 110.91/15.44 | | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.91/15.44 | | | | | | | | | ? [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.91/15.44 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.44 | | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.91/15.44 | | | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 110.91/15.44 | | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.44 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.44 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.44 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.44 | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] % 110.91/15.44 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 110.91/15.44 | | | | | | | | | vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.91/15.44 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.44 | | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.91/15.44 | | | | | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) % 110.91/15.44 | | | | | | | | | = all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.44 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.44 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.44 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.44 | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] % 110.91/15.44 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 110.91/15.44 | | | | | | | | | vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.91/15.44 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.44 | | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.91/15.44 | | | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 110.91/15.44 | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.44 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.44 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.44 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.44 | | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] % 110.91/15.44 | | | | | | | | | : ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] % 110.91/15.44 | | | | | | | | | : (all_346_1 = vnoQuery & ~ (v4 = 0) & % 110.91/15.44 | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & % 110.91/15.44 | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.91/15.44 | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) & % 110.91/15.44 | | | | | | | | | vName(v3) & vPred(v0)) % 110.91/15.44 | | | | | | | | | % 110.91/15.44 | | | | | | | | | BETA: splitting (1199) gives: % 110.91/15.44 | | | | | | | | | % 110.91/15.44 | | | | | | | | | Case 1: % 110.91/15.44 | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | (1200) ? [v0: vPred] : ? [v1: vTable] : ? [v2: % 110.91/15.44 | | | | | | | | | | vSelect] : ? [v3: vOptTable] : ? [v4: % 110.91/15.44 | | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.91/15.44 | | | | | | | | | | ? [v7: int] : (all_346_1 = vnoQuery & ~ (v7 = 0) % 110.91/15.44 | | | | | | | | | | & vfilterTable(v6, v0) = v1 & vprojectTable(v2, % 110.91/15.44 | | | | | | | | | | v1) = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.91/15.44 | | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.91/15.44 | | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, % 110.91/15.44 | | | | | | | | | | v0) = all_338_0 & vSelect(v2) & vTable(v6) & % 110.91/15.44 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.91/15.44 | | | | | | | | | | vName(v5) & vPred(v0)) | ? [v0: vTable] : ? % 110.91/15.44 | | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: % 110.91/15.44 | | | | | | | | | | vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.91/15.44 | | | | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.44 | | | | | | | | | | 0 & vgetQuery(v2) = v4 & vsomeQuery(v5) = % 110.91/15.44 | | | | | | | | | | all_346_1 & vDifference(v3, v4) = v5 & % 110.91/15.44 | | | | | | | | | | vDifference(v3, v1) = all_338_0 & vtvalue(v0) = % 110.91/15.44 | | | | | | | | | | v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.44 | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 110.91/15.44 | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 110.91/15.44 | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.91/15.44 | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | BETA: splitting (1200) gives: % 110.91/15.44 | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | Case 1: % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | (1201) ? [v0: vPred] : ? [v1: vTable] : ? [v2: % 110.91/15.44 | | | | | | | | | | | vSelect] : ? [v3: vOptTable] : ? [v4: % 110.91/15.44 | | | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.91/15.44 | | | | | | | | | | | ? [v7: int] : (all_346_1 = vnoQuery & ~ (v7 = 0) % 110.91/15.44 | | | | | | | | | | | & vfilterTable(v6, v0) = v1 & vprojectTable(v2, % 110.91/15.44 | | | | | | | | | | | v1) = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.91/15.44 | | | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.91/15.44 | | | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, % 110.91/15.44 | | | | | | | | | | | v0) = all_338_0 & vSelect(v2) & vTable(v6) & % 110.91/15.44 | | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.91/15.44 | | | | | | | | | | | vName(v5) & vPred(v0)) % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | DELTA: instantiating (1201) with fresh symbols all_612_0, % 110.91/15.44 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.91/15.44 | | | | | | | | | | | all_612_5, all_612_6, all_612_7 gives: % 110.91/15.44 | | | | | | | | | | | (1202) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.91/15.44 | | | | | | | | | | | vfilterTable(all_612_1, all_612_7) = all_612_6 & % 110.91/15.44 | | | | | | | | | | | vprojectTable(all_612_5, all_612_6) = all_612_3 & % 110.91/15.44 | | | | | | | | | | | vlookupStore(all_612_2, all_346_6) = all_612_4 & % 110.91/15.44 | | | | | | | | | | | visSomeTable(all_612_3) = all_612_0 & % 110.91/15.44 | | | | | | | | | | | visSomeTable(all_612_4) = 0 & vgetTable(all_612_4) % 110.91/15.44 | | | | | | | | | | | = all_612_1 & vselectFromWhere(all_612_5, % 110.91/15.44 | | | | | | | | | | | all_612_2, all_612_7) = all_338_0 & % 110.91/15.44 | | | | | | | | | | | vSelect(all_612_5) & vTable(all_612_1) & % 110.91/15.44 | | | | | | | | | | | vTable(all_612_6) & vOptTable(all_612_3) & % 110.91/15.44 | | | | | | | | | | | vOptTable(all_612_4) & vName(all_612_2) & % 110.91/15.44 | | | | | | | | | | | vPred(all_612_7) % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1202) are inconsistent by % 110.91/15.44 | | | | | | | | | | | sub-proof #10. % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | Case 2: % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | (1203) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.44 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.44 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.91/15.44 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.91/15.44 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) % 110.91/15.44 | | | | | | | | | | | = v5 & vDifference(v3, v1) = all_338_0 & % 110.91/15.44 | | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.44 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.44 | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.44 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.44 | | | | | | | | | | | vTable(v6))) % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | DELTA: instantiating (1203) with fresh symbols all_613_0, % 110.91/15.44 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.91/15.44 | | | | | | | | | | | all_613_5 gives: % 110.91/15.44 | | | | | | | | | | | (1204) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.91/15.44 | | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.91/15.44 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.44 | | | | | | | | | | | vDifference(all_613_2, all_613_1) = all_613_0 & % 110.91/15.44 | | | | | | | | | | | vDifference(all_613_2, all_613_4) = all_338_0 & % 110.91/15.44 | | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.91/15.44 | | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.91/15.44 | | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.91/15.44 | | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.91/15.44 | | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.91/15.44 | | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | ALPHA: (1204) implies: % 110.91/15.44 | | | | | | | | | | | (1205) vQuery(all_613_4) % 110.91/15.44 | | | | | | | | | | | (1206) vQuery(all_613_2) % 110.91/15.44 | | | | | | | | | | | (1207) vDifference(all_613_2, all_613_4) = all_338_0 % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.91/15.44 | | | | | | | | | | | vq2, all_613_2, all_613_4, all_338_0, simplifying % 110.91/15.44 | | | | | | | | | | | with (4), (5), (18), (1205), (1206), (1207) gives: % 110.91/15.44 | | | | | | | | | | | (1208) $false % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | CLOSE: (1208) is inconsistent. % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | End of split % 110.91/15.44 | | | | | | | | | | % 110.91/15.44 | | | | | | | | | Case 2: % 110.91/15.44 | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | (1209) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.44 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.44 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.91/15.44 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.91/15.44 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, % 110.91/15.44 | | | | | | | | | | v4) = v5 & vIntersection(v3, v1) = all_338_0 & % 110.91/15.44 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.44 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.44 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.44 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.44 | | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: % 110.91/15.44 | | | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.91/15.44 | | | | | | | | | | ? [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.91/15.44 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.44 | | | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 % 110.91/15.44 | | | | | | | | | | & vUnion(v3, v4) = v5 & vUnion(v3, v1) = % 110.91/15.44 | | | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.44 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.44 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.44 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.44 | | | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: % 110.91/15.44 | | | | | | | | | | vSelect] : ? [v2: vOptTable] : ? [v3: vName] : % 110.91/15.44 | | | | | | | | | | ? [v4: int] : (all_346_1 = vnoQuery & ~ (v4 = 0) % 110.91/15.44 | | | | | | | | | | & vlookupStore(v3, all_346_6) = v2 & % 110.91/15.44 | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.91/15.44 | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) % 110.91/15.44 | | | | | | | | | | & vName(v3) & vPred(v0)) % 110.91/15.44 | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | BETA: splitting (1209) gives: % 110.91/15.44 | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | Case 1: % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | (1210) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.44 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.44 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.91/15.44 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.91/15.44 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, % 110.91/15.44 | | | | | | | | | | | v4) = v5 & vIntersection(v3, v1) = all_338_0 & % 110.91/15.44 | | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.44 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.44 | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.44 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.44 | | | | | | | | | | | vTable(v6))) % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | DELTA: instantiating (1210) with fresh symbols all_613_0, % 110.91/15.44 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.91/15.44 | | | | | | | | | | | all_613_5 gives: % 110.91/15.44 | | | | | | | | | | | (1211) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.91/15.44 | | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.91/15.44 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.44 | | | | | | | | | | | vIntersection(all_613_2, all_613_1) = all_613_0 & % 110.91/15.44 | | | | | | | | | | | vIntersection(all_613_2, all_613_4) = all_338_0 & % 110.91/15.44 | | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.91/15.44 | | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.91/15.44 | | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.91/15.44 | | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.91/15.44 | | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.91/15.44 | | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | ALPHA: (1211) implies: % 110.91/15.44 | | | | | | | | | | | (1212) vQuery(all_613_4) % 110.91/15.44 | | | | | | | | | | | (1213) vQuery(all_613_2) % 110.91/15.44 | | | | | | | | | | | (1214) vIntersection(all_613_2, all_613_4) = all_338_0 % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.91/15.44 | | | | | | | | | | | vq2, all_613_2, all_613_4, all_338_0, simplifying % 110.91/15.44 | | | | | | | | | | | with (4), (5), (18), (1212), (1213), (1214) gives: % 110.91/15.44 | | | | | | | | | | | (1215) $false % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | CLOSE: (1215) is inconsistent. % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | Case 2: % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | (1216) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.44 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.44 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.91/15.44 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.91/15.44 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 110.91/15.44 | | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 110.91/15.44 | | | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.44 | | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 110.91/15.44 | | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 110.91/15.44 | | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 110.91/15.44 | | | | | | | | | | | vPred] : ? [v1: vSelect] : ? [v2: vOptTable] : % 110.91/15.44 | | | | | | | | | | | ? [v3: vName] : ? [v4: int] : (all_346_1 = % 110.91/15.44 | | | | | | | | | | | vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 110.91/15.44 | | | | | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.91/15.44 | | | | | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & % 110.91/15.44 | | | | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & % 110.91/15.44 | | | | | | | | | | | vPred(v0)) % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | BETA: splitting (1216) gives: % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | Case 1: % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | (1217) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.44 | | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.44 | | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.91/15.44 | | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.91/15.44 | | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 110.91/15.44 | | | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 110.91/15.44 | | | | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.44 | | | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 110.91/15.44 | | | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 110.91/15.44 | | | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | DELTA: instantiating (1217) with fresh symbols all_613_0, % 110.91/15.44 | | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.91/15.44 | | | | | | | | | | | | all_613_5 gives: % 110.91/15.44 | | | | | | | | | | | | (1218) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.91/15.44 | | | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.91/15.44 | | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.44 | | | | | | | | | | | | vUnion(all_613_2, all_613_1) = all_613_0 & % 110.91/15.44 | | | | | | | | | | | | vUnion(all_613_2, all_613_4) = all_338_0 & % 110.91/15.44 | | | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.91/15.44 | | | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.91/15.44 | | | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.91/15.44 | | | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.91/15.44 | | | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.91/15.44 | | | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | ALPHA: (1218) implies: % 110.91/15.44 | | | | | | | | | | | | (1219) vQuery(all_613_4) % 110.91/15.44 | | | | | | | | | | | | (1220) vQuery(all_613_2) % 110.91/15.44 | | | | | | | | | | | | (1221) vTable(all_613_5) % 110.91/15.44 | | | | | | | | | | | | (1222) vtvalue(all_613_5) = all_613_2 % 110.91/15.44 | | | | | | | | | | | | (1223) vUnion(all_613_2, all_613_4) = all_338_0 % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_613_5, % 110.91/15.44 | | | | | | | | | | | | all_613_2, simplifying with (1221), (1222) gives: % 110.91/15.44 | | | | | | | | | | | | (1224) visValue(all_613_2) = 0 % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_2, % 110.91/15.44 | | | | | | | | | | | | all_613_4, all_338_0, simplifying with (4), (5), % 110.91/15.44 | | | | | | | | | | | | (18), (1219), (1220), (1223) gives: % 110.91/15.44 | | | | | | | | | | | | (1225) all_613_2 = vq1 & all_613_4 = vq2 % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | ALPHA: (1225) implies: % 110.91/15.44 | | | | | | | | | | | | (1226) all_613_2 = vq1 % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | GROUND_INST: instantiating (isValue-4) with all_605_4, % 110.91/15.44 | | | | | | | | | | | | all_605_3, vq1, simplifying with (1154), (1155), % 110.91/15.44 | | | | | | | | | | | | (1157) gives: % 110.91/15.44 | | | | | | | | | | | | (1227) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | DELTA: instantiating (1227) with fresh symbol all_632_0 % 110.91/15.44 | | | | | | | | | | | | gives: % 110.91/15.44 | | | | | | | | | | | | (1228) ~ (all_632_0 = 0) & visValue(vq1) = all_632_0 % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | ALPHA: (1228) implies: % 110.91/15.44 | | | | | | | | | | | | (1229) ~ (all_632_0 = 0) % 110.91/15.44 | | | | | | | | | | | | (1230) visValue(vq1) = all_632_0 % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | REDUCE: (1224), (1226) imply: % 110.91/15.44 | | | | | | | | | | | | (1231) visValue(vq1) = 0 % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_632_0, vq1, % 110.91/15.44 | | | | | | | | | | | | simplifying with (1230), (1231) gives: % 110.91/15.44 | | | | | | | | | | | | (1232) all_632_0 = 0 % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | REDUCE: (1229), (1232) imply: % 110.91/15.44 | | | | | | | | | | | | (1233) $false % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | CLOSE: (1233) is inconsistent. % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | Case 2: % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | (1234) ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 110.91/15.44 | | | | | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.91/15.44 | | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & % 110.91/15.44 | | | | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & % 110.91/15.44 | | | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.91/15.44 | | | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) % 110.91/15.44 | | | | | | | | | | | | & vName(v3) & vPred(v0)) % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | DELTA: instantiating (1234) with fresh symbols all_612_0, % 110.91/15.44 | | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.91/15.44 | | | | | | | | | | | | (1235) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.91/15.44 | | | | | | | | | | | | vlookupStore(all_612_1, all_346_6) = all_612_2 & % 110.91/15.44 | | | | | | | | | | | | visSomeTable(all_612_2) = all_612_0 & % 110.91/15.44 | | | | | | | | | | | | vselectFromWhere(all_612_3, all_612_1, all_612_4) % 110.91/15.44 | | | | | | | | | | | | = all_338_0 & vSelect(all_612_3) & % 110.91/15.44 | | | | | | | | | | | | vOptTable(all_612_2) & vName(all_612_1) & % 110.91/15.44 | | | | | | | | | | | | vPred(all_612_4) % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1235) are inconsistent by % 110.91/15.44 | | | | | | | | | | | | sub-proof #9. % 110.91/15.44 | | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | | End of split % 110.91/15.44 | | | | | | | | | | | % 110.91/15.44 | | | | | | | | | | End of split % 110.91/15.44 | | | | | | | | | | % 110.91/15.44 | | | | | | | | | End of split % 110.91/15.44 | | | | | | | | | % 110.91/15.44 | | | | | | | | End of split % 110.91/15.44 | | | | | | | | % 110.91/15.44 | | | | | | | Case 2: % 110.91/15.44 | | | | | | | | % 110.91/15.45 | | | | | | | | (1236) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] % 110.91/15.45 | | | | | | | | : ? [v3: int] : ? [v4: vQuery] : (all_346_1 = % 110.91/15.45 | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 % 110.91/15.45 | | | | | | | | & visSomeQuery(v2) = v3 & vDifference(v4, v1) = % 110.91/15.45 | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.91/15.45 | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 110.91/15.45 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) % 110.91/15.45 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.45 | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.45 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.45 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.45 | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 110.91/15.45 | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.45 | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.45 | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 110.91/15.45 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? % 110.91/15.45 | | | | | | | | [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.45 | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.91/15.45 | | | | | | | | & vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.91/15.45 | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) % 110.91/15.45 | | | | | | | | & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.45 | | | | | | | | vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : % 110.91/15.45 | | | | | | | | ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] % 110.91/15.45 | | | | | | | | : (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.91/15.45 | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.91/15.45 | | | | | | | | vDifference(v3, v1) = v4 & vDifference(v0, v1) = % 110.91/15.45 | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.45 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & % 110.91/15.45 | | | | | | | | ! [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) % 110.91/15.45 | | | | | | | | = v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.91/15.45 | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.45 | | | | | | | | = v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 110.91/15.45 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.91/15.45 | | | | | | | | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.91/15.45 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.91/15.45 | | | | | | | | vsomeQuery(v4) = all_346_1 & vIntersection(v3, v1) = % 110.91/15.45 | | | | | | | | v4 & vIntersection(v0, v1) = all_338_0 & % 110.91/15.45 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.91/15.45 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.91/15.45 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.91/15.45 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.45 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.45 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 110.91/15.45 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.91/15.45 | | | | | | | | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.91/15.45 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.91/15.45 | | | | | | | | vsomeQuery(v4) = all_346_1 & vUnion(v3, v1) = v4 & % 110.91/15.45 | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.45 | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.45 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.91/15.45 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) % 110.91/15.45 | | | | | | | | = v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.91/15.45 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.45 | | | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.45 | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 110.91/15.45 | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.91/15.45 | | | | | | | | visSomeQuery(v2) = v3 & vDifference(v0, v1) = % 110.91/15.45 | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) % 110.91/15.45 | | | | | | | | & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 110.91/15.45 | | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 110.91/15.45 | | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( % 110.91/15.45 | | | | | | | | ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.91/15.45 | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.91/15.45 | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.45 | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.91/15.45 | | | | | | | | & vIntersection(v0, v1) = all_338_0 & vOptQuery(v2) % 110.91/15.45 | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! % 110.91/15.45 | | | | | | | | [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.45 | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.91/15.45 | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) = % 110.91/15.45 | | | | | | | | v0) | ~ vTable(v4))) | ? [v0: vQuery] : ? % 110.91/15.45 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.91/15.45 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.91/15.45 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.45 | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.45 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.91/15.45 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 110.91/15.45 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.45 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.91/15.45 | | | | | | | | | ? [v0: vTable] : (all_346_1 = vnoQuery & % 110.91/15.45 | | | | | | | | vtvalue(v0) = all_338_0 & vTable(v0)) % 110.91/15.45 | | | | | | | | % 110.91/15.45 | | | | | | | | BETA: splitting (1236) gives: % 110.91/15.45 | | | | | | | | % 110.91/15.45 | | | | | | | | Case 1: % 110.91/15.45 | | | | | | | | | % 110.91/15.45 | | | | | | | | | (1237) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.45 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.45 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.45 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.45 | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 110.91/15.45 | | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.45 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.45 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 110.91/15.45 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.91/15.45 | | | | | | | | | ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) % 110.91/15.45 | | | | | | | | | & vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.45 | | | | | | | | | v3 & vIntersection(v4, v1) = all_338_0 & % 110.91/15.45 | | | | | | | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.91/15.45 | | | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.91/15.45 | | | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.91/15.45 | | | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.45 | | | | | | | | | ? [v3: int] : ? [v4: vQuery] : (all_346_1 = % 110.91/15.45 | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = % 110.91/15.45 | | | | | | | | | v2 & visSomeQuery(v2) = v3 & vUnion(v4, v1) = % 110.91/15.45 | | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.91/15.45 | | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 110.91/15.45 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.45 | | | | | | | | | vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] % 110.91/15.45 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 110.91/15.45 | | | | | | | | | vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.91/15.45 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.91/15.45 | | | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = % 110.91/15.45 | | | | | | | | | v4 & vDifference(v0, v1) = all_338_0 & % 110.91/15.45 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) % 110.91/15.45 | | | | | | | | | & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.91/15.45 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.91/15.45 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.91/15.45 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.45 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.45 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.45 | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.45 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.45 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.91/15.45 | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) % 110.91/15.45 | | | | | | | | | = all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.91/15.45 | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.91/15.45 | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : ( % 110.91/15.45 | | | | | | | | | ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 110.91/15.45 | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] % 110.91/15.45 | | | | | | | | | : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.45 | | | | | | | | | % 110.91/15.45 | | | | | | | | | BETA: splitting (1237) gives: % 110.91/15.45 | | | | | | | | | % 110.91/15.45 | | | | | | | | | Case 1: % 110.91/15.45 | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | (1238) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.45 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.45 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.45 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.45 | | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = % 110.91/15.45 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.45 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.45 | | | | | | | | | | = v1) | ~ vTable(v5))) | ? [v0: vTable] : % 110.91/15.45 | | | | | | | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] % 110.91/15.45 | | | | | | | | | | : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 % 110.91/15.45 | | | | | | | | | | = 0) & vreduce(v1, all_346_6) = v2 & % 110.91/15.45 | | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v4, v1) = % 110.91/15.45 | | | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.91/15.45 | | | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 110.91/15.45 | | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.45 | | | | | | | | | | vTable(v5))) % 110.91/15.45 | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | BETA: splitting (1238) gives: % 110.91/15.45 | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | Case 1: % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | (1239) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.45 | | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.45 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.45 | | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.45 | | | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = % 110.91/15.45 | | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.45 | | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.45 | | | | | | | | | | | = v1) | ~ vTable(v5))) % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | DELTA: instantiating (1239) with fresh symbols all_612_0, % 110.91/15.45 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.91/15.45 | | | | | | | | | | | (1240) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.91/15.45 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.91/15.45 | | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.91/15.45 | | | | | | | | | | | vDifference(all_612_0, all_612_3) = all_338_0 & % 110.91/15.45 | | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.91/15.45 | | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.91/15.45 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.91/15.45 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.91/15.45 | | | | | | | | | | | vTable(v0)) % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1240) are inconsistent by % 110.91/15.45 | | | | | | | | | | | sub-proof #8. % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | Case 2: % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | (1241) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.45 | | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.45 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.45 | | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.45 | | | | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) % 110.91/15.45 | | | | | | | | | | | = v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.45 | | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.45 | | | | | | | | | | | = v1) | ~ vTable(v5))) % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | DELTA: instantiating (1241) with fresh symbols all_612_0, % 110.91/15.45 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.91/15.45 | | | | | | | | | | | (1242) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.91/15.45 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.91/15.45 | | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.91/15.45 | | | | | | | | | | | vIntersection(all_612_0, all_612_3) = all_338_0 & % 110.91/15.45 | | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.91/15.45 | | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.91/15.45 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.91/15.45 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.91/15.45 | | | | | | | | | | | vTable(v0)) % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1242) are inconsistent by % 110.91/15.45 | | | | | | | | | | | sub-proof #7. % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | End of split % 110.91/15.45 | | | | | | | | | | % 110.91/15.45 | | | | | | | | | Case 2: % 110.91/15.45 | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | (1243) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.45 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.45 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.45 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.45 | | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.91/15.45 | | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.45 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.45 | | | | | | | | | | = v1) | ~ vTable(v5))) | ? [v0: vQuery] : % 110.91/15.45 | | | | | | | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: % 110.91/15.45 | | | | | | | | | | vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.45 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.45 | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.91/15.45 | | | | | | | | | | & vDifference(v3, v1) = v4 & vDifference(v0, v1) % 110.91/15.45 | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 110.91/15.45 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.45 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.45 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.45 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.45 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.45 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.45 | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.45 | | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.45 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.45 | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.91/15.45 | | | | | | | | | | & vIntersection(v3, v1) = v4 & vIntersection(v0, % 110.91/15.45 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.45 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.45 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.45 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.45 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.45 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.45 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.45 | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | BETA: splitting (1243) gives: % 110.91/15.45 | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | Case 1: % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | (1244) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.45 | | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.45 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.45 | | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.45 | | | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.91/15.45 | | | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.45 | | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.45 | | | | | | | | | | | = v1) | ~ vTable(v5))) % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | DELTA: instantiating (1244) with fresh symbols all_612_0, % 110.91/15.45 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.91/15.45 | | | | | | | | | | | (1245) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.91/15.45 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.91/15.45 | | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.91/15.45 | | | | | | | | | | | vUnion(all_612_0, all_612_3) = all_338_0 & % 110.91/15.45 | | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.91/15.45 | | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.91/15.45 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.91/15.45 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.91/15.45 | | | | | | | | | | | vTable(v0)) % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1245) are inconsistent by % 110.91/15.45 | | | | | | | | | | | sub-proof #6. % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | Case 2: % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | (1246) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.45 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.45 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.45 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.45 | | | | | | | | | | | all_346_1 & vDifference(v3, v1) = v4 & % 110.91/15.45 | | | | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) % 110.91/15.45 | | | | | | | | | | | & vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) % 110.91/15.45 | | | | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.45 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.45 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.45 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.45 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.45 | | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.45 | | | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.45 | | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.45 | | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.91/15.45 | | | | | | | | | | | & vIntersection(v3, v1) = v4 & vIntersection(v0, % 110.91/15.45 | | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.45 | | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.45 | | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.45 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.45 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.45 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.45 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | BETA: splitting (1246) gives: % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | Case 1: % 110.91/15.45 | | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | | (1247) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.45 | | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.45 | | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.45 | | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.45 | | | | | | | | | | | | all_346_1 & vDifference(v3, v1) = v4 & % 110.91/15.45 | | | | | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) % 110.91/15.45 | | | | | | | | | | | | & vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) % 110.91/15.45 | | | | | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.45 | | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.45 | | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.45 | | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.45 | | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.45 | | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | | DELTA: instantiating (1247) with fresh symbols all_613_0, % 110.91/15.45 | | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.91/15.45 | | | | | | | | | | | | (1248) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.91/15.45 | | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.91/15.45 | | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.45 | | | | | | | | | | | | vDifference(all_613_1, all_613_3) = all_613_0 & % 110.91/15.45 | | | | | | | | | | | | vDifference(all_613_4, all_613_3) = all_338_0 & % 110.91/15.45 | | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.91/15.45 | | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.91/15.45 | | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.91/15.45 | | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.91/15.45 | | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.91/15.45 | | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.91/15.45 | | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.45 | | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | | ALPHA: (1248) implies: % 110.91/15.45 | | | | | | | | | | | | (1249) vQuery(all_613_4) % 110.91/15.45 | | | | | | | | | | | | (1250) vQuery(all_613_3) % 110.91/15.45 | | | | | | | | | | | | (1251) vDifference(all_613_4, all_613_3) = all_338_0 % 110.91/15.45 | | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.91/15.45 | | | | | | | | | | | | vq2, all_613_4, all_613_3, all_338_0, simplifying % 110.91/15.45 | | | | | | | | | | | | with (4), (5), (18), (1249), (1250), (1251) gives: % 110.91/15.45 | | | | | | | | | | | | (1252) $false % 110.91/15.45 | | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | | CLOSE: (1252) is inconsistent. % 110.91/15.45 | | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | Case 2: % 110.91/15.45 | | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | | (1253) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.45 | | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.45 | | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.45 | | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.45 | | | | | | | | | | | | all_346_1 & vIntersection(v3, v1) = v4 & % 110.91/15.45 | | | | | | | | | | | | vIntersection(v0, v1) = all_338_0 & % 110.91/15.45 | | | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.45 | | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.91/15.45 | | | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 110.91/15.45 | | | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 110.91/15.45 | | | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.91/15.45 | | | | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ % 110.91/15.45 | | | | | | | | | | | | vTable(v5))) % 110.91/15.45 | | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | | DELTA: instantiating (1253) with fresh symbols all_613_0, % 110.91/15.45 | | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.91/15.45 | | | | | | | | | | | | (1254) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.91/15.45 | | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.91/15.45 | | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.45 | | | | | | | | | | | | vIntersection(all_613_1, all_613_3) = all_613_0 & % 110.91/15.45 | | | | | | | | | | | | vIntersection(all_613_4, all_613_3) = all_338_0 & % 110.91/15.45 | | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.91/15.45 | | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.91/15.45 | | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.91/15.45 | | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.91/15.45 | | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.91/15.45 | | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.91/15.45 | | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.45 | | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | | ALPHA: (1254) implies: % 110.91/15.45 | | | | | | | | | | | | (1255) vQuery(all_613_4) % 110.91/15.45 | | | | | | | | | | | | (1256) vQuery(all_613_3) % 110.91/15.45 | | | | | | | | | | | | (1257) vIntersection(all_613_4, all_613_3) = all_338_0 % 110.91/15.45 | | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.91/15.45 | | | | | | | | | | | | vq2, all_613_4, all_613_3, all_338_0, simplifying % 110.91/15.45 | | | | | | | | | | | | with (4), (5), (18), (1255), (1256), (1257) gives: % 110.91/15.45 | | | | | | | | | | | | (1258) $false % 110.91/15.45 | | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | | CLOSE: (1258) is inconsistent. % 110.91/15.45 | | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | End of split % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | End of split % 110.91/15.45 | | | | | | | | | | % 110.91/15.45 | | | | | | | | | End of split % 110.91/15.45 | | | | | | | | | % 110.91/15.45 | | | | | | | | Case 2: % 110.91/15.45 | | | | | | | | | % 110.91/15.45 | | | | | | | | | (1259) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.45 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.45 | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.91/15.45 | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.91/15.45 | | | | | | | | | & vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 % 110.91/15.45 | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.45 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) % 110.91/15.45 | | | | | | | | | & ! [v5: vTable] : ! [v6: vTable] : ( ~ % 110.91/15.45 | | | | | | | | | (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | ~ % 110.91/15.45 | | | | | | | | | vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : % 110.91/15.45 | | | | | | | | | ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.45 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.45 | | | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.45 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.45 | | | | | | | | | v3 & vDifference(v0, v1) = all_338_0 & % 110.91/15.45 | | | | | | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: % 110.91/15.45 | | | | | | | | | vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.45 | | | | | | | | | v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | % 110.91/15.45 | | | | | | | | | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 110.91/15.45 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.91/15.45 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.45 | | | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.45 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.45 | | | | | | | | | v3 & vIntersection(v0, v1) = all_338_0 & % 110.91/15.45 | | | | | | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: % 110.91/15.45 | | | | | | | | | vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.45 | | | | | | | | | v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | % 110.91/15.45 | | | | | | | | | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 110.91/15.45 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.91/15.45 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.45 | | | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.45 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.45 | | | | | | | | | v3 & vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.45 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! % 110.91/15.45 | | | | | | | | | [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.45 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.91/15.45 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.91/15.45 | | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vTable] : % 110.91/15.45 | | | | | | | | | (all_346_1 = vnoQuery & vtvalue(v0) = all_338_0 & % 110.91/15.45 | | | | | | | | | vTable(v0)) % 110.91/15.45 | | | | | | | | | % 110.91/15.45 | | | | | | | | | BETA: splitting (1259) gives: % 110.91/15.45 | | | | | | | | | % 110.91/15.45 | | | | | | | | | Case 1: % 110.91/15.45 | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | (1260) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.45 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.45 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.45 | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.45 | | | | | | | | | | all_346_1 & vUnion(v3, v1) = v4 & vUnion(v0, v1) % 110.91/15.45 | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 110.91/15.45 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.45 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.45 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.45 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.45 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.45 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.45 | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.45 | | | | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) % 110.91/15.45 | | | | | | | | | | & vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) % 110.91/15.45 | | | | | | | | | | = v3 & vDifference(v0, v1) = all_338_0 & % 110.91/15.45 | | | | | | | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! % 110.91/15.45 | | | | | | | | | | [v4: vTable] : ! [v5: vTable] : ( ~ % 110.91/15.45 | | | | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.45 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.45 | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.45 | | | | | | | | | | vTable(v4))) % 110.91/15.45 | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | BETA: splitting (1260) gives: % 110.91/15.45 | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | Case 1: % 110.91/15.45 | | | | | | | | | | | % 110.91/15.45 | | | | | | | | | | | (1261) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.45 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.45 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.45 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.45 | | | | | | | | | | | all_346_1 & vUnion(v3, v1) = v4 & vUnion(v0, v1) % 110.91/15.45 | | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 110.91/15.45 | | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.45 | | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.45 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.45 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.45 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.45 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | DELTA: instantiating (1261) with fresh symbols all_613_0, % 110.91/15.46 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.91/15.46 | | | | | | | | | | | (1262) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.91/15.46 | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.91/15.46 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.46 | | | | | | | | | | | vUnion(all_613_1, all_613_3) = all_613_0 & % 110.91/15.46 | | | | | | | | | | | vUnion(all_613_4, all_613_3) = all_338_0 & % 110.91/15.46 | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.91/15.46 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.91/15.46 | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.91/15.46 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.91/15.46 | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.91/15.46 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.91/15.46 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | ALPHA: (1262) implies: % 110.91/15.46 | | | | | | | | | | | (1263) vUnion(all_613_1, all_613_3) = all_613_0 % 110.91/15.46 | | | | | | | | | | | (1264) vreduce(all_613_4, all_346_6) = all_613_2 % 110.91/15.46 | | | | | | | | | | | (1265) vQuery(all_613_4) % 110.91/15.46 | | | | | | | | | | | (1266) vgetQuery(all_613_2) = all_613_1 % 110.91/15.46 | | | | | | | | | | | (1267) vsomeQuery(all_613_0) = all_346_1 % 110.91/15.46 | | | | | | | | | | | (1268) vQuery(all_613_1) % 110.91/15.46 | | | | | | | | | | | (1269) vUnion(all_613_4, all_613_3) = all_338_0 % 110.91/15.46 | | | | | | | | | | | (1270) vQuery(all_613_0) % 110.91/15.46 | | | | | | | | | | | (1271) vQuery(all_613_3) % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | GROUND_INST: instantiating (TUnion_inv2) with all_346_5, % 110.91/15.46 | | | | | | | | | | | all_613_4, all_613_3, all_346_4, all_338_0, % 110.91/15.46 | | | | | | | | | | | simplifying with (22), (25), (33), (1265), (1269), % 110.91/15.46 | | | | | | | | | | | (1271) gives: % 110.91/15.46 | | | | | | | | | | | (1272) vptcheck(all_346_5, all_613_3, all_346_4) = 0 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_4, % 110.91/15.46 | | | | | | | | | | | all_613_3, all_338_0, simplifying with (4), (5), % 110.91/15.46 | | | | | | | | | | | (18), (1265), (1269), (1271) gives: % 110.91/15.46 | | | | | | | | | | | (1273) all_613_3 = vq2 & all_613_4 = vq1 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | ALPHA: (1273) implies: % 110.91/15.46 | | | | | | | | | | | (1274) all_613_3 = vq2 % 110.91/15.46 | | | | | | | | | | | (1275) all_613_4 = vq1 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | GROUND_INST: instantiating (3) with all_346_6, all_346_5, % 110.91/15.46 | | | | | | | | | | | all_346_4, all_605_0, all_346_2, simplifying with % 110.91/15.46 | | | | | | | | | | | (22), (24), (25), (30), (39), (1156), (1158) % 110.91/15.46 | | | | | | | | | | | gives: % 110.91/15.46 | | | | | | | | | | | (1276) ? [v0: any] : ? [v1: any] : (vptcheck(all_346_5, % 110.91/15.46 | | | | | | | | | | | all_605_0, all_346_4) = v1 & % 110.91/15.46 | | | | | | | | | | | vstoreContextConsistent(all_346_6, all_346_5) = % 110.91/15.46 | | | | | | | | | | | v0 & ( ~ (v0 = 0) | v1 = 0)) % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_359_0, % 110.91/15.46 | | | | | | | | | | | all_605_0, all_346_2, simplifying with (41), (42), % 110.91/15.46 | | | | | | | | | | | (1156), (1158) gives: % 110.91/15.46 | | | | | | | | | | | (1277) all_605_0 = all_359_0 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | GROUND_INST: instantiating (getQuery-0) with all_605_0, % 110.91/15.46 | | | | | | | | | | | all_346_2, simplifying with (1156), (1158) gives: % 110.91/15.46 | | | | | | | | | | | (1278) vgetQuery(all_346_2) = all_605_0 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_346_3, % 110.91/15.46 | | | | | | | | | | | all_613_0, all_346_1, simplifying with (23), (28), % 110.91/15.46 | | | | | | | | | | | (1267), (1270) gives: % 110.91/15.46 | | | | | | | | | | | (1279) all_613_0 = all_346_3 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | DELTA: instantiating (1276) with fresh symbols all_640_0, % 110.91/15.46 | | | | | | | | | | | all_640_1 gives: % 110.91/15.46 | | | | | | | | | | | (1280) vptcheck(all_346_5, all_605_0, all_346_4) = % 110.91/15.46 | | | | | | | | | | | all_640_0 & vstoreContextConsistent(all_346_6, % 110.91/15.46 | | | | | | | | | | | all_346_5) = all_640_1 & ( ~ (all_640_1 = 0) | % 110.91/15.46 | | | | | | | | | | | all_640_0 = 0) % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | ALPHA: (1280) implies: % 110.91/15.46 | | | | | | | | | | | (1281) vptcheck(all_346_5, all_605_0, all_346_4) = % 110.91/15.46 | | | | | | | | | | | all_640_0 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | REDUCE: (1272), (1274) imply: % 110.91/15.46 | | | | | | | | | | | (1282) vptcheck(all_346_5, vq2, all_346_4) = 0 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | REDUCE: (1277), (1281) imply: % 110.91/15.46 | | | | | | | | | | | (1283) vptcheck(all_346_5, all_359_0, all_346_4) = % 110.91/15.46 | | | | | | | | | | | all_640_0 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | REDUCE: (1264), (1275) imply: % 110.91/15.46 | | | | | | | | | | | (1284) vreduce(vq1, all_346_6) = all_613_2 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | REDUCE: (1277), (1278) imply: % 110.91/15.46 | | | | | | | | | | | (1285) vgetQuery(all_346_2) = all_359_0 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | REDUCE: (1263), (1274), (1279) imply: % 110.91/15.46 | | | | | | | | | | | (1286) vUnion(all_613_1, vq2) = all_346_3 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | GROUND_INST: instantiating (10) with all_346_2, all_613_2, % 110.91/15.46 | | | | | | | | | | | all_346_6, vq1, simplifying with (30), (1284) % 110.91/15.46 | | | | | | | | | | | gives: % 110.91/15.46 | | | | | | | | | | | (1287) all_613_2 = all_346_2 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | GROUND_INST: instantiating (12) with 0, all_640_0, all_346_4, % 110.91/15.46 | | | | | | | | | | | all_359_0, all_346_5, simplifying with (56), % 110.91/15.46 | | | | | | | | | | | (1283) gives: % 110.91/15.46 | | | | | | | | | | | (1288) all_640_0 = 0 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | REDUCE: (1266), (1287) imply: % 110.91/15.46 | | | | | | | | | | | (1289) vgetQuery(all_346_2) = all_613_1 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | GROUND_INST: instantiating (7) with all_359_0, all_613_1, % 110.91/15.46 | | | | | | | | | | | all_346_2, simplifying with (1285), (1289) gives: % 110.91/15.46 | | | | | | | | | | | (1290) all_613_1 = all_359_0 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | REDUCE: (1286), (1290) imply: % 110.91/15.46 | | | | | | | | | | | (1291) vUnion(all_359_0, vq2) = all_346_3 % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | REF_CLOSE: (5), (12), (21), (22), (25), (34), (41), (56), % 110.91/15.46 | | | | | | | | | | | (1282), (1291), (TUnion) are inconsistent by % 110.91/15.46 | | | | | | | | | | | sub-proof #5. % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | Case 2: % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | (1292) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.46 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.46 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.46 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vDifference(v0, % 110.91/15.46 | | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.46 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.46 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.46 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.46 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.46 | | | | | | | | | | | vTable(v4))) % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | DELTA: instantiating (1292) with fresh symbols all_612_0, % 110.91/15.46 | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.91/15.46 | | | | | | | | | | | (1293) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.91/15.46 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.91/15.46 | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.91/15.46 | | | | | | | | | | | vDifference(all_612_3, all_612_2) = all_338_0 & % 110.91/15.46 | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.91/15.46 | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.91/15.46 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.91/15.46 | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.91/15.46 | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.91/15.46 | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1293) are inconsistent by % 110.91/15.46 | | | | | | | | | | | sub-proof #4. % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | End of split % 110.91/15.46 | | | | | | | | | | % 110.91/15.46 | | | | | | | | | Case 2: % 110.91/15.46 | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | (1294) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.46 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.46 | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.46 | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vIntersection(v0, % 110.91/15.46 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.46 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.46 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.46 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.46 | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.46 | | | | | | | | | | vTable(v4))) | ? [v0: vQuery] : ? [v1: % 110.91/15.46 | | | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.91/15.46 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.91/15.46 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.46 | | | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.46 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! % 110.91/15.46 | | | | | | | | | | [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.46 | | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.91/15.46 | | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ % 110.91/15.46 | | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.91/15.46 | | | | | | | | | | vTable] : (all_346_1 = vnoQuery & vtvalue(v0) = % 110.91/15.46 | | | | | | | | | | all_338_0 & vTable(v0)) % 110.91/15.46 | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | BETA: splitting (1294) gives: % 110.91/15.46 | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | Case 1: % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | (1295) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.46 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.46 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.46 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vIntersection(v0, % 110.91/15.46 | | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.46 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.46 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.46 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.46 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.46 | | | | | | | | | | | vTable(v4))) % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | DELTA: instantiating (1295) with fresh symbols all_612_0, % 110.91/15.46 | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.91/15.46 | | | | | | | | | | | (1296) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.91/15.46 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.91/15.46 | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.91/15.46 | | | | | | | | | | | vIntersection(all_612_3, all_612_2) = all_338_0 & % 110.91/15.46 | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.91/15.46 | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.91/15.46 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.91/15.46 | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.91/15.46 | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.91/15.46 | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1296) are inconsistent by % 110.91/15.46 | | | | | | | | | | | sub-proof #3. % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | Case 2: % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | (1297) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.46 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.46 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.46 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.91/15.46 | | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.46 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.46 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.46 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.46 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.46 | | | | | | | | | | | vTable(v4))) | ? [v0: vTable] : (all_346_1 = % 110.91/15.46 | | | | | | | | | | | vnoQuery & vtvalue(v0) = all_338_0 & vTable(v0)) % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | BETA: splitting (1297) gives: % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | Case 1: % 110.91/15.46 | | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | | (1298) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.46 | | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.46 | | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.46 | | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.91/15.46 | | | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.46 | | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.46 | | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.46 | | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.46 | | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.46 | | | | | | | | | | | | vTable(v4))) % 110.91/15.46 | | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | | DELTA: instantiating (1298) with fresh symbols all_612_0, % 110.91/15.46 | | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.91/15.46 | | | | | | | | | | | | (1299) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.91/15.46 | | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.91/15.46 | | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.91/15.46 | | | | | | | | | | | | vUnion(all_612_3, all_612_2) = all_338_0 & % 110.91/15.46 | | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.91/15.46 | | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.91/15.46 | | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.91/15.46 | | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.91/15.46 | | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.91/15.46 | | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.91/15.46 | | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1299) are inconsistent by % 110.91/15.46 | | | | | | | | | | | | sub-proof #2. % 110.91/15.46 | | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | Case 2: % 110.91/15.46 | | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | | (1300) ? [v0: vTable] : (all_346_1 = vnoQuery & % 110.91/15.46 | | | | | | | | | | | | vtvalue(v0) = all_338_0 & vTable(v0)) % 110.91/15.46 | | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | | DELTA: instantiating (1300) with fresh symbol all_612_0 % 110.91/15.46 | | | | | | | | | | | | gives: % 110.91/15.46 | | | | | | | | | | | | (1301) all_346_1 = vnoQuery & vtvalue(all_612_0) = % 110.91/15.46 | | | | | | | | | | | | all_338_0 & vTable(all_612_0) % 110.91/15.46 | | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1301) are inconsistent by % 110.91/15.46 | | | | | | | | | | | | sub-proof #1. % 110.91/15.46 | | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | | End of split % 110.91/15.46 | | | | | | | | | | | % 110.91/15.46 | | | | | | | | | | End of split % 110.91/15.46 | | | | | | | | | | % 110.91/15.46 | | | | | | | | | End of split % 110.91/15.46 | | | | | | | | | % 110.91/15.46 | | | | | | | | End of split % 110.91/15.46 | | | | | | | | % 110.91/15.46 | | | | | | | End of split % 110.91/15.46 | | | | | | | % 110.91/15.46 | | | | | | Case 2: % 110.91/15.46 | | | | | | | % 110.91/15.46 | | | | | | | (1302) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.46 | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.46 | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.46 | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_2 & % 110.91/15.46 | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) = % 110.91/15.46 | | | | | | | vq1 & vOptQuery(v2) & vOptQuery(all_346_2) & % 110.91/15.46 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! % 110.91/15.46 | | | | | | | [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.91/15.46 | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.46 | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.46 | | | | | | | v0) | ~ vTable(v5))) % 110.91/15.46 | | | | | | | % 110.91/15.46 | | | | | | | DELTA: instantiating (1302) with fresh symbols all_605_0, % 110.91/15.46 | | | | | | | all_605_1, all_605_2, all_605_3, all_605_4 gives: % 110.91/15.46 | | | | | | | (1303) vreduce(all_605_4, all_346_6) = all_605_2 & % 110.91/15.46 | | | | | | | visSomeQuery(all_605_2) = 0 & vgetQuery(all_605_2) = % 110.91/15.46 | | | | | | | all_605_1 & vsomeQuery(all_605_0) = all_346_2 & % 110.91/15.46 | | | | | | | vIntersection(all_605_1, all_605_3) = all_605_0 & % 110.91/15.46 | | | | | | | vIntersection(all_605_4, all_605_3) = vq1 & % 110.91/15.46 | | | | | | | vOptQuery(all_605_2) & vOptQuery(all_346_2) & % 110.91/15.46 | | | | | | | vQuery(all_605_0) & vQuery(all_605_1) & % 110.91/15.46 | | | | | | | vQuery(all_605_3) & vQuery(all_605_4) & ! [v0: vTable] % 110.91/15.46 | | | | | | | : ! [v1: vTable] : ( ~ (vtvalue(v1) = all_605_3) | ~ % 110.91/15.46 | | | | | | | (vtvalue(v0) = all_605_4) | ~ vTable(v1) | ~ % 110.91/15.46 | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) = % 110.91/15.46 | | | | | | | all_605_4) | ~ vTable(v0)) % 110.91/15.46 | | | | | | | % 110.91/15.46 | | | | | | | ALPHA: (1303) implies: % 110.91/15.46 | | | | | | | (1304) vQuery(all_605_4) % 110.91/15.46 | | | | | | | (1305) vQuery(all_605_3) % 110.91/15.46 | | | | | | | (1306) vQuery(all_605_0) % 110.91/15.46 | | | | | | | (1307) vIntersection(all_605_4, all_605_3) = vq1 % 110.91/15.46 | | | | | | | (1308) vsomeQuery(all_605_0) = all_346_2 % 110.91/15.46 | | | | | | | % 110.91/15.46 | | | | | | | BETA: splitting (38) gives: % 110.91/15.46 | | | | | | | % 110.91/15.46 | | | | | | | Case 1: % 110.91/15.46 | | | | | | | | % 110.91/15.46 | | | | | | | | (1309) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 110.91/15.46 | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] % 110.91/15.46 | | | | | | | | : ? [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: % 110.91/15.46 | | | | | | | | vTable] : ? [v9: vQuery] : (vrawDifference(v5, v6) % 110.91/15.46 | | | | | | | | = v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & % 110.91/15.46 | | | | | | | | vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 110.91/15.46 | | | | | | | | vsomeQuery(v9) = all_346_1 & vDifference(v2, v3) = % 110.91/15.46 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.91/15.46 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 110.91/15.46 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) % 110.91/15.46 | | | | | | | | & vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.91/15.46 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? % 110.91/15.46 | | | | | | | | [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? % 110.91/15.46 | | | | | | | | [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] % 110.91/15.46 | | | | | | | | : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 110.91/15.46 | | | | | | | | vQuery] : (vrawIntersection(v5, v6) = v7 & % 110.91/15.46 | | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) % 110.91/15.46 | | | | | | | | = v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = % 110.91/15.46 | | | | | | | | all_346_1 & vIntersection(v2, v3) = all_338_0 & % 110.91/15.46 | | | | | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & vtvalue(v0) = % 110.91/15.46 | | | | | | | | v2 & vOptQuery(all_346_1) & vTable(v8) & vTable(v1) % 110.91/15.46 | | | | | | | | & vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.91/15.46 | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.91/15.46 | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 110.91/15.46 | | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.91/15.46 | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.46 | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.46 | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.91/15.46 | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) % 110.91/15.46 | | | | | | | | = v8 & vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 110.91/15.46 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.91/15.46 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 110.91/15.46 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) % 110.91/15.46 | | | | | | | | & vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.91/15.46 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? % 110.91/15.46 | | | | | | | | [v1: vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : % 110.91/15.46 | | | | | | | | ? [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] % 110.91/15.46 | | | | | | | | : ? [v7: vTable] : ? [v8: vQuery] : % 110.91/15.46 | | | | | | | | (vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = % 110.91/15.46 | | | | | | | | v4 & vlookupStore(v5, all_346_6) = v3 & % 110.91/15.46 | | | | | | | | visSomeTable(v4) = 0 & visSomeTable(v3) = 0 & % 110.91/15.46 | | | | | | | | vgetTable(v4) = v7 & vgetTable(v3) = v6 & % 110.91/15.46 | | | | | | | | vsomeQuery(v8) = all_346_1 & vselectFromWhere(v2, % 110.91/15.46 | | | | | | | | v5, v0) = all_338_0 & vtvalue(v7) = v8 & % 110.91/15.46 | | | | | | | | vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) & % 110.91/15.46 | | | | | | | | vTable(v6) & vTable(v1) & vOptTable(v4) & % 110.91/15.46 | | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & vPred(v0)) % 110.91/15.46 | | | | | | | | | ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 110.91/15.46 | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.91/15.46 | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : (all_346_1 % 110.91/15.46 | | | | | | | | = vnoQuery & ~ (v7 = 0) & vfilterTable(v6, v0) = v1 % 110.91/15.46 | | | | | | | | & vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.91/15.46 | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 110.91/15.46 | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 110.91/15.46 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.91/15.46 | | | | | | | | vSelect(v2) & vTable(v6) & vTable(v1) & % 110.91/15.46 | | | | | | | | vOptTable(v4) & vOptTable(v3) & vName(v5) & % 110.91/15.46 | | | | | | | | vPred(v0)) | ? [v0: vTable] : ? [v1: vQuery] : ? % 110.91/15.46 | | | | | | | | [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.46 | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.91/15.46 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.91/15.46 | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) = % 110.91/15.46 | | | | | | | | v5 & vDifference(v3, v1) = all_338_0 & vtvalue(v0) = % 110.91/15.46 | | | | | | | | v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.46 | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 110.91/15.46 | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.91/15.46 | | | | | | | | v1) | ~ vTable(v6))) | ? [v0: vTable] : ? % 110.91/15.46 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.91/15.46 | | | | | | | | ? [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.91/15.46 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.46 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.91/15.46 | | | | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) = % 110.91/15.46 | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.46 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.46 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.46 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.91/15.46 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.46 | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 110.91/15.46 | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.91/15.46 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.91/15.46 | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 & % 110.91/15.46 | | | | | | | | vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 110.91/15.46 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) & % 110.91/15.46 | | | | | | | | vQuery(v5) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.91/15.46 | | | | | | | | ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.46 | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] : % 110.91/15.46 | | | | | | | | ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.91/15.46 | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 110.91/15.46 | | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.91/15.46 | | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & % 110.91/15.46 | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & vPred(v0)) % 110.91/15.46 | | | | | | | | % 110.91/15.46 | | | | | | | | BETA: splitting (1309) gives: % 110.91/15.46 | | | | | | | | % 110.91/15.46 | | | | | | | | Case 1: % 110.91/15.46 | | | | | | | | | % 110.91/15.47 | | | | | | | | | (1310) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 110.91/15.47 | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 110.91/15.47 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.47 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.47 | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.91/15.47 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.91/15.47 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.91/15.47 | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 % 110.91/15.47 | | | | | | | | | & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.91/15.47 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.91/15.47 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.91/15.47 | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.91/15.47 | | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : % 110.91/15.47 | | | | | | | | | ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : % 110.91/15.47 | | | | | | | | | ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.47 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.47 | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 % 110.91/15.47 | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.91/15.47 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.91/15.47 | | | | | | | | | vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 110.91/15.47 | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.91/15.47 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.91/15.47 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.91/15.47 | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.91/15.47 | | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : % 110.91/15.47 | | | | | | | | | ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : % 110.91/15.47 | | | | | | | | | ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.47 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.47 | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.91/15.47 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.91/15.47 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.91/15.47 | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.91/15.47 | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.91/15.47 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.91/15.47 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 110.91/15.47 | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.91/15.47 | | | | | | | | | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : % 110.91/15.47 | | | | | | | | | ? [v2: vSelect] : ? [v3: vOptTable] : ? [v4: % 110.91/15.47 | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 110.91/15.47 | | | | | | | | | [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 110.91/15.47 | | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 110.91/15.47 | | | | | | | | | vlookupStore(v5, all_346_6) = v3 & % 110.91/15.47 | | | | | | | | | visSomeTable(v4) = 0 & visSomeTable(v3) = 0 & % 110.91/15.47 | | | | | | | | | vgetTable(v4) = v7 & vgetTable(v3) = v6 & % 110.91/15.47 | | | | | | | | | vsomeQuery(v8) = all_346_1 & vselectFromWhere(v2, % 110.91/15.47 | | | | | | | | | v5, v0) = all_338_0 & vtvalue(v7) = v8 & % 110.91/15.47 | | | | | | | | | vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) & % 110.91/15.47 | | | | | | | | | vTable(v6) & vTable(v1) & vOptTable(v4) & % 110.91/15.47 | | | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & % 110.91/15.47 | | | | | | | | | vPred(v0)) % 110.91/15.47 | | | | | | | | | % 110.91/15.47 | | | | | | | | | BETA: splitting (1310) gives: % 110.91/15.47 | | | | | | | | | % 110.91/15.47 | | | | | | | | | Case 1: % 110.91/15.47 | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | (1311) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 110.91/15.47 | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.91/15.47 | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.47 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.47 | | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 % 110.91/15.47 | | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.91/15.47 | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.91/15.47 | | | | | | | | | | & vDifference(v2, v3) = all_338_0 & vtvalue(v8) % 110.91/15.47 | | | | | | | | | | = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.91/15.47 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.91/15.47 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.91/15.47 | | | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.91/15.47 | | | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : % 110.91/15.47 | | | | | | | | | | ? [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] % 110.91/15.47 | | | | | | | | | | : ? [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: % 110.91/15.47 | | | | | | | | | | vRawTable] : ? [v7: vRawTable] : ? [v8: % 110.91/15.47 | | | | | | | | | | vTable] : ? [v9: vQuery] : % 110.91/15.47 | | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = % 110.91/15.47 | | | | | | | | | | v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.91/15.47 | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.91/15.47 | | | | | | | | | | & vIntersection(v2, v3) = all_338_0 & % 110.91/15.47 | | | | | | | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.91/15.47 | | | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & % 110.91/15.47 | | | | | | | | | | vTable(v8) & vTable(v1) & vTable(v0) & % 110.91/15.47 | | | | | | | | | | vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.91/15.47 | | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.91/15.47 | | | | | | | | | | vAttrL(v4)) % 110.91/15.47 | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | BETA: splitting (1311) gives: % 110.91/15.47 | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | Case 1: % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | (1312) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 110.91/15.47 | | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.91/15.47 | | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.47 | | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.47 | | | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 % 110.91/15.47 | | | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.91/15.47 | | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.91/15.47 | | | | | | | | | | | & vDifference(v2, v3) = all_338_0 & vtvalue(v8) % 110.91/15.47 | | | | | | | | | | | = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.91/15.47 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.91/15.47 | | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.91/15.47 | | | | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.91/15.47 | | | | | | | | | | | vRawTable(v5) & vAttrL(v4)) % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | DELTA: instantiating (1312) with fresh symbols all_613_0, % 110.91/15.47 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.91/15.47 | | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, % 110.91/15.47 | | | | | | | | | | | all_613_9 gives: % 110.91/15.47 | | | | | | | | | | | (1313) vrawDifference(all_613_4, all_613_3) = all_613_2 & % 110.91/15.47 | | | | | | | | | | | vgetAttrL(all_613_9) = all_613_5 & % 110.91/15.47 | | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & % 110.91/15.47 | | | | | | | | | | | vgetRaw(all_613_9) = all_613_4 & vtable(all_613_5, % 110.91/15.47 | | | | | | | | | | | all_613_2) = all_613_1 & vsomeQuery(all_613_0) = % 110.91/15.47 | | | | | | | | | | | all_346_1 & vDifference(all_613_7, all_613_6) = % 110.91/15.47 | | | | | | | | | | | all_338_0 & vtvalue(all_613_1) = all_613_0 & % 110.91/15.47 | | | | | | | | | | | vtvalue(all_613_8) = all_613_6 & % 110.91/15.47 | | | | | | | | | | | vtvalue(all_613_9) = all_613_7 & % 110.91/15.47 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.91/15.47 | | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.91/15.47 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.91/15.47 | | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.91/15.47 | | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.91/15.47 | | | | | | | | | | | vAttrL(all_613_5) % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | ALPHA: (1313) implies: % 110.91/15.47 | | | | | | | | | | | (1314) vQuery(all_613_7) % 110.91/15.47 | | | | | | | | | | | (1315) vQuery(all_613_6) % 110.91/15.47 | | | | | | | | | | | (1316) vDifference(all_613_7, all_613_6) = all_338_0 % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.91/15.47 | | | | | | | | | | | vq2, all_613_7, all_613_6, all_338_0, simplifying % 110.91/15.47 | | | | | | | | | | | with (4), (5), (18), (1314), (1315), (1316) gives: % 110.91/15.47 | | | | | | | | | | | (1317) $false % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | CLOSE: (1317) is inconsistent. % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | Case 2: % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | (1318) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 110.91/15.47 | | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.91/15.47 | | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.47 | | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.47 | | | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = % 110.91/15.47 | | | | | | | | | | | v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 110.91/15.47 | | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 110.91/15.47 | | | | | | | | | | | & vIntersection(v2, v3) = all_338_0 & % 110.91/15.47 | | | | | | | | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 110.91/15.47 | | | | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & % 110.91/15.47 | | | | | | | | | | | vTable(v8) & vTable(v1) & vTable(v0) & % 110.91/15.47 | | | | | | | | | | | vQuery(v9) & vQuery(v3) & vQuery(v2) & % 110.91/15.47 | | | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 110.91/15.47 | | | | | | | | | | | vAttrL(v4)) % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | DELTA: instantiating (1318) with fresh symbols all_613_0, % 110.91/15.47 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.91/15.47 | | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, % 110.91/15.47 | | | | | | | | | | | all_613_9 gives: % 110.91/15.47 | | | | | | | | | | | (1319) vrawIntersection(all_613_4, all_613_3) = all_613_2 % 110.91/15.47 | | | | | | | | | | | & vgetAttrL(all_613_9) = all_613_5 & % 110.91/15.47 | | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & % 110.91/15.47 | | | | | | | | | | | vgetRaw(all_613_9) = all_613_4 & vtable(all_613_5, % 110.91/15.47 | | | | | | | | | | | all_613_2) = all_613_1 & vsomeQuery(all_613_0) = % 110.91/15.47 | | | | | | | | | | | all_346_1 & vIntersection(all_613_7, all_613_6) = % 110.91/15.47 | | | | | | | | | | | all_338_0 & vtvalue(all_613_1) = all_613_0 & % 110.91/15.47 | | | | | | | | | | | vtvalue(all_613_8) = all_613_6 & % 110.91/15.47 | | | | | | | | | | | vtvalue(all_613_9) = all_613_7 & % 110.91/15.47 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.91/15.47 | | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.91/15.47 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.91/15.47 | | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.91/15.47 | | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.91/15.47 | | | | | | | | | | | vAttrL(all_613_5) % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | ALPHA: (1319) implies: % 110.91/15.47 | | | | | | | | | | | (1320) vQuery(all_613_7) % 110.91/15.47 | | | | | | | | | | | (1321) vQuery(all_613_6) % 110.91/15.47 | | | | | | | | | | | (1322) vIntersection(all_613_7, all_613_6) = all_338_0 % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.91/15.47 | | | | | | | | | | | vq2, all_613_7, all_613_6, all_338_0, simplifying % 110.91/15.47 | | | | | | | | | | | with (4), (5), (18), (1320), (1321), (1322) gives: % 110.91/15.47 | | | | | | | | | | | (1323) $false % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | CLOSE: (1323) is inconsistent. % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | End of split % 110.91/15.47 | | | | | | | | | | % 110.91/15.47 | | | | | | | | | Case 2: % 110.91/15.47 | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | (1324) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 110.91/15.47 | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.91/15.47 | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.47 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.47 | | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.91/15.47 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.91/15.47 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.91/15.47 | | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.91/15.47 | | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.91/15.47 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.91/15.47 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.91/15.47 | | | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.91/15.47 | | | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : % 110.91/15.47 | | | | | | | | | | ? [v1: vTable] : ? [v2: vSelect] : ? [v3: % 110.91/15.47 | | | | | | | | | | vOptTable] : ? [v4: vOptTable] : ? [v5: vName] % 110.91/15.47 | | | | | | | | | | : ? [v6: vTable] : ? [v7: vTable] : ? [v8: % 110.91/15.47 | | | | | | | | | | vQuery] : (vfilterTable(v6, v0) = v1 & % 110.91/15.47 | | | | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 110.91/15.47 | | | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 110.91/15.47 | | | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 110.91/15.47 | | | | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 % 110.91/15.47 | | | | | | | | | | & vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.91/15.47 | | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 110.91/15.47 | | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & % 110.91/15.47 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.91/15.47 | | | | | | | | | | vQuery(v8) & vName(v5) & vPred(v0)) % 110.91/15.47 | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | BETA: splitting (1324) gives: % 110.91/15.47 | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | Case 1: % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | (1325) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 110.91/15.47 | | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 110.91/15.47 | | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 110.91/15.47 | | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 110.91/15.47 | | | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 110.91/15.47 | | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 110.91/15.47 | | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 110.91/15.47 | | | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 110.91/15.47 | | | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 110.91/15.47 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 110.91/15.47 | | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & % 110.91/15.47 | | | | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 110.91/15.47 | | | | | | | | | | | vRawTable(v5) & vAttrL(v4)) % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | DELTA: instantiating (1325) with fresh symbols all_613_0, % 110.91/15.47 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.91/15.47 | | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, % 110.91/15.47 | | | | | | | | | | | all_613_9 gives: % 110.91/15.47 | | | | | | | | | | | (1326) vrawUnion(all_613_4, all_613_3) = all_613_2 & % 110.91/15.47 | | | | | | | | | | | vgetAttrL(all_613_9) = all_613_5 & % 110.91/15.47 | | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & % 110.91/15.47 | | | | | | | | | | | vgetRaw(all_613_9) = all_613_4 & vtable(all_613_5, % 110.91/15.47 | | | | | | | | | | | all_613_2) = all_613_1 & vsomeQuery(all_613_0) = % 110.91/15.47 | | | | | | | | | | | all_346_1 & vUnion(all_613_7, all_613_6) = % 110.91/15.47 | | | | | | | | | | | all_338_0 & vtvalue(all_613_1) = all_613_0 & % 110.91/15.47 | | | | | | | | | | | vtvalue(all_613_8) = all_613_6 & % 110.91/15.47 | | | | | | | | | | | vtvalue(all_613_9) = all_613_7 & % 110.91/15.47 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 110.91/15.47 | | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 110.91/15.47 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 110.91/15.47 | | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 110.91/15.47 | | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 110.91/15.47 | | | | | | | | | | | vAttrL(all_613_5) % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | ALPHA: (1326) implies: % 110.91/15.47 | | | | | | | | | | | (1327) vQuery(all_613_7) % 110.91/15.47 | | | | | | | | | | | (1328) vQuery(all_613_6) % 110.91/15.47 | | | | | | | | | | | (1329) vTable(all_613_9) % 110.91/15.47 | | | | | | | | | | | (1330) vtvalue(all_613_9) = all_613_7 % 110.91/15.47 | | | | | | | | | | | (1331) vUnion(all_613_7, all_613_6) = all_338_0 % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_613_9, % 110.91/15.47 | | | | | | | | | | | all_613_7, simplifying with (1329), (1330) gives: % 110.91/15.47 | | | | | | | | | | | (1332) visValue(all_613_7) = 0 % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_7, % 110.91/15.47 | | | | | | | | | | | all_613_6, all_338_0, simplifying with (4), (5), % 110.91/15.47 | | | | | | | | | | | (18), (1327), (1328), (1331) gives: % 110.91/15.47 | | | | | | | | | | | (1333) all_613_6 = vq2 & all_613_7 = vq1 % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | ALPHA: (1333) implies: % 110.91/15.47 | | | | | | | | | | | (1334) all_613_7 = vq1 % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | GROUND_INST: instantiating (isValue-3) with all_605_4, % 110.91/15.47 | | | | | | | | | | | all_605_3, vq1, simplifying with (1304), (1305), % 110.91/15.47 | | | | | | | | | | | (1307) gives: % 110.91/15.47 | | | | | | | | | | | (1335) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | DELTA: instantiating (1335) with fresh symbol all_631_0 % 110.91/15.47 | | | | | | | | | | | gives: % 110.91/15.47 | | | | | | | | | | | (1336) ~ (all_631_0 = 0) & visValue(vq1) = all_631_0 % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | ALPHA: (1336) implies: % 110.91/15.47 | | | | | | | | | | | (1337) ~ (all_631_0 = 0) % 110.91/15.47 | | | | | | | | | | | (1338) visValue(vq1) = all_631_0 % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | REDUCE: (1332), (1334) imply: % 110.91/15.47 | | | | | | | | | | | (1339) visValue(vq1) = 0 % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_631_0, vq1, % 110.91/15.47 | | | | | | | | | | | simplifying with (1338), (1339) gives: % 110.91/15.47 | | | | | | | | | | | (1340) all_631_0 = 0 % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | REDUCE: (1337), (1340) imply: % 110.91/15.47 | | | | | | | | | | | (1341) $false % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | CLOSE: (1341) is inconsistent. % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | Case 2: % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | (1342) ? [v0: vPred] : ? [v1: vTable] : ? [v2: % 110.91/15.47 | | | | | | | | | | | vSelect] : ? [v3: vOptTable] : ? [v4: % 110.91/15.47 | | | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.91/15.47 | | | | | | | | | | | ? [v7: vTable] : ? [v8: vQuery] : % 110.91/15.47 | | | | | | | | | | | (vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 110.91/15.47 | | | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.91/15.47 | | | | | | | | | | | visSomeTable(v4) = 0 & visSomeTable(v3) = 0 & % 110.91/15.47 | | | | | | | | | | | vgetTable(v4) = v7 & vgetTable(v3) = v6 & % 110.91/15.47 | | | | | | | | | | | vsomeQuery(v8) = all_346_1 & % 110.91/15.47 | | | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 110.91/15.47 | | | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 110.91/15.47 | | | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & % 110.91/15.47 | | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.91/15.47 | | | | | | | | | | | vQuery(v8) & vName(v5) & vPred(v0)) % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | DELTA: instantiating (1342) with fresh symbols all_613_0, % 110.91/15.47 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.91/15.47 | | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8 gives: % 110.91/15.47 | | | | | | | | | | | (1343) vfilterTable(all_613_2, all_613_8) = all_613_7 & % 110.91/15.47 | | | | | | | | | | | vprojectTable(all_613_6, all_613_7) = all_613_4 & % 110.91/15.47 | | | | | | | | | | | vlookupStore(all_613_3, all_346_6) = all_613_5 & % 110.91/15.47 | | | | | | | | | | | visSomeTable(all_613_4) = 0 & % 110.91/15.47 | | | | | | | | | | | visSomeTable(all_613_5) = 0 & vgetTable(all_613_4) % 110.91/15.47 | | | | | | | | | | | = all_613_1 & vgetTable(all_613_5) = all_613_2 & % 110.91/15.47 | | | | | | | | | | | vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.47 | | | | | | | | | | | vselectFromWhere(all_613_6, all_613_3, all_613_8) % 110.91/15.47 | | | | | | | | | | | = all_338_0 & vtvalue(all_613_1) = all_613_0 & % 110.91/15.47 | | | | | | | | | | | vOptQuery(all_346_1) & vSelect(all_613_6) & % 110.91/15.47 | | | | | | | | | | | vTable(all_613_1) & vTable(all_613_2) & % 110.91/15.47 | | | | | | | | | | | vTable(all_613_7) & vOptTable(all_613_4) & % 110.91/15.47 | | | | | | | | | | | vOptTable(all_613_5) & vQuery(all_613_0) & % 110.91/15.47 | | | | | | | | | | | vName(all_613_3) & vPred(all_613_8) % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | ALPHA: (1343) implies: % 110.91/15.47 | | | | | | | | | | | (1344) vPred(all_613_8) % 110.91/15.47 | | | | | | | | | | | (1345) vName(all_613_3) % 110.91/15.47 | | | | | | | | | | | (1346) vSelect(all_613_6) % 110.91/15.47 | | | | | | | | | | | (1347) vselectFromWhere(all_613_6, all_613_3, all_613_8) % 110.91/15.47 | | | | | | | | | | | = all_338_0 % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-selectFromWhere-Union) with % 110.91/15.47 | | | | | | | | | | | all_613_3, all_613_8, all_613_6, vq2, vq1, % 110.91/15.47 | | | | | | | | | | | all_338_0, simplifying with (4), (5), (18), % 110.91/15.47 | | | | | | | | | | | (1344), (1345), (1346), (1347) gives: % 110.91/15.47 | | | | | | | | | | | (1348) $false % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | CLOSE: (1348) is inconsistent. % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | End of split % 110.91/15.47 | | | | | | | | | | % 110.91/15.47 | | | | | | | | | End of split % 110.91/15.47 | | | | | | | | | % 110.91/15.47 | | | | | | | | Case 2: % 110.91/15.47 | | | | | | | | | % 110.91/15.47 | | | | | | | | | (1349) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 110.91/15.47 | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 110.91/15.47 | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 110.91/15.47 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 110.91/15.47 | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 110.91/15.47 | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.91/15.47 | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.91/15.47 | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) % 110.91/15.47 | | | | | | | | | = all_338_0 & vSelect(v2) & vTable(v6) & % 110.91/15.47 | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.91/15.47 | | | | | | | | | vName(v5) & vPred(v0)) | ? [v0: vTable] : ? [v1: % 110.91/15.47 | | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.91/15.47 | | | | | | | | | ? [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.91/15.47 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.47 | | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.91/15.47 | | | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 110.91/15.47 | | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.47 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.47 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.47 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.47 | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] % 110.91/15.47 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 110.91/15.47 | | | | | | | | | vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.91/15.47 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.47 | | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.91/15.47 | | | | | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) % 110.91/15.47 | | | | | | | | | = all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.47 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.47 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.47 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.47 | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] % 110.91/15.47 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 110.91/15.47 | | | | | | | | | vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.91/15.47 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.47 | | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 110.91/15.47 | | | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 110.91/15.47 | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.47 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.47 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.47 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.47 | | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] % 110.91/15.47 | | | | | | | | | : ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] % 110.91/15.47 | | | | | | | | | : (all_346_1 = vnoQuery & ~ (v4 = 0) & % 110.91/15.47 | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & % 110.91/15.47 | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.91/15.47 | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) & % 110.91/15.47 | | | | | | | | | vName(v3) & vPred(v0)) % 110.91/15.47 | | | | | | | | | % 110.91/15.47 | | | | | | | | | BETA: splitting (1349) gives: % 110.91/15.47 | | | | | | | | | % 110.91/15.47 | | | | | | | | | Case 1: % 110.91/15.47 | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | (1350) ? [v0: vPred] : ? [v1: vTable] : ? [v2: % 110.91/15.47 | | | | | | | | | | vSelect] : ? [v3: vOptTable] : ? [v4: % 110.91/15.47 | | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.91/15.47 | | | | | | | | | | ? [v7: int] : (all_346_1 = vnoQuery & ~ (v7 = 0) % 110.91/15.47 | | | | | | | | | | & vfilterTable(v6, v0) = v1 & vprojectTable(v2, % 110.91/15.47 | | | | | | | | | | v1) = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.91/15.47 | | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.91/15.47 | | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, % 110.91/15.47 | | | | | | | | | | v0) = all_338_0 & vSelect(v2) & vTable(v6) & % 110.91/15.47 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.91/15.47 | | | | | | | | | | vName(v5) & vPred(v0)) | ? [v0: vTable] : ? % 110.91/15.47 | | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: % 110.91/15.47 | | | | | | | | | | vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 110.91/15.47 | | | | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.47 | | | | | | | | | | 0 & vgetQuery(v2) = v4 & vsomeQuery(v5) = % 110.91/15.47 | | | | | | | | | | all_346_1 & vDifference(v3, v4) = v5 & % 110.91/15.47 | | | | | | | | | | vDifference(v3, v1) = all_338_0 & vtvalue(v0) = % 110.91/15.47 | | | | | | | | | | v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.47 | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 110.91/15.47 | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 110.91/15.47 | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.91/15.47 | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | BETA: splitting (1350) gives: % 110.91/15.47 | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | Case 1: % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | (1351) ? [v0: vPred] : ? [v1: vTable] : ? [v2: % 110.91/15.47 | | | | | | | | | | | vSelect] : ? [v3: vOptTable] : ? [v4: % 110.91/15.47 | | | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 110.91/15.47 | | | | | | | | | | | ? [v7: int] : (all_346_1 = vnoQuery & ~ (v7 = 0) % 110.91/15.47 | | | | | | | | | | | & vfilterTable(v6, v0) = v1 & vprojectTable(v2, % 110.91/15.47 | | | | | | | | | | | v1) = v4 & vlookupStore(v5, all_346_6) = v3 & % 110.91/15.47 | | | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 110.91/15.47 | | | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, % 110.91/15.47 | | | | | | | | | | | v0) = all_338_0 & vSelect(v2) & vTable(v6) & % 110.91/15.47 | | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 110.91/15.47 | | | | | | | | | | | vName(v5) & vPred(v0)) % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | DELTA: instantiating (1351) with fresh symbols all_612_0, % 110.91/15.47 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 110.91/15.47 | | | | | | | | | | | all_612_5, all_612_6, all_612_7 gives: % 110.91/15.47 | | | | | | | | | | | (1352) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.91/15.47 | | | | | | | | | | | vfilterTable(all_612_1, all_612_7) = all_612_6 & % 110.91/15.47 | | | | | | | | | | | vprojectTable(all_612_5, all_612_6) = all_612_3 & % 110.91/15.47 | | | | | | | | | | | vlookupStore(all_612_2, all_346_6) = all_612_4 & % 110.91/15.47 | | | | | | | | | | | visSomeTable(all_612_3) = all_612_0 & % 110.91/15.47 | | | | | | | | | | | visSomeTable(all_612_4) = 0 & vgetTable(all_612_4) % 110.91/15.47 | | | | | | | | | | | = all_612_1 & vselectFromWhere(all_612_5, % 110.91/15.47 | | | | | | | | | | | all_612_2, all_612_7) = all_338_0 & % 110.91/15.47 | | | | | | | | | | | vSelect(all_612_5) & vTable(all_612_1) & % 110.91/15.47 | | | | | | | | | | | vTable(all_612_6) & vOptTable(all_612_3) & % 110.91/15.47 | | | | | | | | | | | vOptTable(all_612_4) & vName(all_612_2) & % 110.91/15.47 | | | | | | | | | | | vPred(all_612_7) % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1352) are inconsistent by % 110.91/15.47 | | | | | | | | | | | sub-proof #10. % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | Case 2: % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | (1353) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.47 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.47 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.91/15.47 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.91/15.47 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) % 110.91/15.47 | | | | | | | | | | | = v5 & vDifference(v3, v1) = all_338_0 & % 110.91/15.47 | | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.47 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.47 | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.47 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.47 | | | | | | | | | | | vTable(v6))) % 110.91/15.47 | | | | | | | | | | | % 110.91/15.47 | | | | | | | | | | | DELTA: instantiating (1353) with fresh symbols all_613_0, % 110.91/15.47 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.91/15.47 | | | | | | | | | | | all_613_5 gives: % 110.91/15.48 | | | | | | | | | | | (1354) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.91/15.48 | | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.91/15.48 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.48 | | | | | | | | | | | vDifference(all_613_2, all_613_1) = all_613_0 & % 110.91/15.48 | | | | | | | | | | | vDifference(all_613_2, all_613_4) = all_338_0 & % 110.91/15.48 | | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.91/15.48 | | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.91/15.48 | | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.91/15.48 | | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.91/15.48 | | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.91/15.48 | | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | ALPHA: (1354) implies: % 110.91/15.48 | | | | | | | | | | | (1355) vQuery(all_613_4) % 110.91/15.48 | | | | | | | | | | | (1356) vQuery(all_613_2) % 110.91/15.48 | | | | | | | | | | | (1357) vDifference(all_613_2, all_613_4) = all_338_0 % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.91/15.48 | | | | | | | | | | | vq2, all_613_2, all_613_4, all_338_0, simplifying % 110.91/15.48 | | | | | | | | | | | with (4), (5), (18), (1355), (1356), (1357) gives: % 110.91/15.48 | | | | | | | | | | | (1358) $false % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | CLOSE: (1358) is inconsistent. % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | End of split % 110.91/15.48 | | | | | | | | | | % 110.91/15.48 | | | | | | | | | Case 2: % 110.91/15.48 | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | (1359) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.48 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.48 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.91/15.48 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.91/15.48 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, % 110.91/15.48 | | | | | | | | | | v4) = v5 & vIntersection(v3, v1) = all_338_0 & % 110.91/15.48 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.48 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.48 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.48 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.48 | | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: % 110.91/15.48 | | | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.91/15.48 | | | | | | | | | | ? [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 110.91/15.48 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.48 | | | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 % 110.91/15.48 | | | | | | | | | | & vUnion(v3, v4) = v5 & vUnion(v3, v1) = % 110.91/15.48 | | | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.48 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.48 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.48 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.48 | | | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: % 110.91/15.48 | | | | | | | | | | vSelect] : ? [v2: vOptTable] : ? [v3: vName] : % 110.91/15.48 | | | | | | | | | | ? [v4: int] : (all_346_1 = vnoQuery & ~ (v4 = 0) % 110.91/15.48 | | | | | | | | | | & vlookupStore(v3, all_346_6) = v2 & % 110.91/15.48 | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.91/15.48 | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) % 110.91/15.48 | | | | | | | | | | & vName(v3) & vPred(v0)) % 110.91/15.48 | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | BETA: splitting (1359) gives: % 110.91/15.48 | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | Case 1: % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | (1360) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.48 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.48 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.91/15.48 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.91/15.48 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, % 110.91/15.48 | | | | | | | | | | | v4) = v5 & vIntersection(v3, v1) = all_338_0 & % 110.91/15.48 | | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 110.91/15.48 | | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 110.91/15.48 | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 110.91/15.48 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.48 | | | | | | | | | | | vTable(v6))) % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | DELTA: instantiating (1360) with fresh symbols all_613_0, % 110.91/15.48 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.91/15.48 | | | | | | | | | | | all_613_5 gives: % 110.91/15.48 | | | | | | | | | | | (1361) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.91/15.48 | | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.91/15.48 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.48 | | | | | | | | | | | vIntersection(all_613_2, all_613_1) = all_613_0 & % 110.91/15.48 | | | | | | | | | | | vIntersection(all_613_2, all_613_4) = all_338_0 & % 110.91/15.48 | | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.91/15.48 | | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.91/15.48 | | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.91/15.48 | | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.91/15.48 | | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.91/15.48 | | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | ALPHA: (1361) implies: % 110.91/15.48 | | | | | | | | | | | (1362) vQuery(all_613_4) % 110.91/15.48 | | | | | | | | | | | (1363) vQuery(all_613_2) % 110.91/15.48 | | | | | | | | | | | (1364) vIntersection(all_613_2, all_613_4) = all_338_0 % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.91/15.48 | | | | | | | | | | | vq2, all_613_2, all_613_4, all_338_0, simplifying % 110.91/15.48 | | | | | | | | | | | with (4), (5), (18), (1362), (1363), (1364) gives: % 110.91/15.48 | | | | | | | | | | | (1365) $false % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | CLOSE: (1365) is inconsistent. % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | Case 2: % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | (1366) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.48 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.48 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.91/15.48 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.91/15.48 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 110.91/15.48 | | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 110.91/15.48 | | | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.48 | | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 110.91/15.48 | | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 110.91/15.48 | | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 110.91/15.48 | | | | | | | | | | | vPred] : ? [v1: vSelect] : ? [v2: vOptTable] : % 110.91/15.48 | | | | | | | | | | | ? [v3: vName] : ? [v4: int] : (all_346_1 = % 110.91/15.48 | | | | | | | | | | | vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 110.91/15.48 | | | | | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 110.91/15.48 | | | | | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & % 110.91/15.48 | | | | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & % 110.91/15.48 | | | | | | | | | | | vPred(v0)) % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | BETA: splitting (1366) gives: % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | Case 1: % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | (1367) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.48 | | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.48 | | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 110.91/15.48 | | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 110.91/15.48 | | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 110.91/15.48 | | | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 110.91/15.48 | | | | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.48 | | | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 110.91/15.48 | | | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 110.91/15.48 | | | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | DELTA: instantiating (1367) with fresh symbols all_613_0, % 110.91/15.48 | | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 110.91/15.48 | | | | | | | | | | | | all_613_5 gives: % 110.91/15.48 | | | | | | | | | | | | (1368) vreduce(all_613_4, all_346_6) = all_613_3 & % 110.91/15.48 | | | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 110.91/15.48 | | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.48 | | | | | | | | | | | | vUnion(all_613_2, all_613_1) = all_613_0 & % 110.91/15.48 | | | | | | | | | | | | vUnion(all_613_2, all_613_4) = all_338_0 & % 110.91/15.48 | | | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 110.91/15.48 | | | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 110.91/15.48 | | | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 110.91/15.48 | | | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 110.91/15.48 | | | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 110.91/15.48 | | | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | ALPHA: (1368) implies: % 110.91/15.48 | | | | | | | | | | | | (1369) vQuery(all_613_4) % 110.91/15.48 | | | | | | | | | | | | (1370) vQuery(all_613_2) % 110.91/15.48 | | | | | | | | | | | | (1371) vTable(all_613_5) % 110.91/15.48 | | | | | | | | | | | | (1372) vtvalue(all_613_5) = all_613_2 % 110.91/15.48 | | | | | | | | | | | | (1373) vUnion(all_613_2, all_613_4) = all_338_0 % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_613_5, % 110.91/15.48 | | | | | | | | | | | | all_613_2, simplifying with (1371), (1372) gives: % 110.91/15.48 | | | | | | | | | | | | (1374) visValue(all_613_2) = 0 % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_2, % 110.91/15.48 | | | | | | | | | | | | all_613_4, all_338_0, simplifying with (4), (5), % 110.91/15.48 | | | | | | | | | | | | (18), (1369), (1370), (1373) gives: % 110.91/15.48 | | | | | | | | | | | | (1375) all_613_2 = vq1 & all_613_4 = vq2 % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | ALPHA: (1375) implies: % 110.91/15.48 | | | | | | | | | | | | (1376) all_613_2 = vq1 % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | GROUND_INST: instantiating (isValue-3) with all_605_4, % 110.91/15.48 | | | | | | | | | | | | all_605_3, vq1, simplifying with (1304), (1305), % 110.91/15.48 | | | | | | | | | | | | (1307) gives: % 110.91/15.48 | | | | | | | | | | | | (1377) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | DELTA: instantiating (1377) with fresh symbol all_630_0 % 110.91/15.48 | | | | | | | | | | | | gives: % 110.91/15.48 | | | | | | | | | | | | (1378) ~ (all_630_0 = 0) & visValue(vq1) = all_630_0 % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | ALPHA: (1378) implies: % 110.91/15.48 | | | | | | | | | | | | (1379) ~ (all_630_0 = 0) % 110.91/15.48 | | | | | | | | | | | | (1380) visValue(vq1) = all_630_0 % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | REDUCE: (1374), (1376) imply: % 110.91/15.48 | | | | | | | | | | | | (1381) visValue(vq1) = 0 % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_630_0, vq1, % 110.91/15.48 | | | | | | | | | | | | simplifying with (1380), (1381) gives: % 110.91/15.48 | | | | | | | | | | | | (1382) all_630_0 = 0 % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | REDUCE: (1379), (1382) imply: % 110.91/15.48 | | | | | | | | | | | | (1383) $false % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | CLOSE: (1383) is inconsistent. % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | Case 2: % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | (1384) ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 110.91/15.48 | | | | | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 110.91/15.48 | | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & % 110.91/15.48 | | | | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & % 110.91/15.48 | | | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 110.91/15.48 | | | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) % 110.91/15.48 | | | | | | | | | | | | & vName(v3) & vPred(v0)) % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | DELTA: instantiating (1384) with fresh symbols all_612_0, % 110.91/15.48 | | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.91/15.48 | | | | | | | | | | | | (1385) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.91/15.48 | | | | | | | | | | | | vlookupStore(all_612_1, all_346_6) = all_612_2 & % 110.91/15.48 | | | | | | | | | | | | visSomeTable(all_612_2) = all_612_0 & % 110.91/15.48 | | | | | | | | | | | | vselectFromWhere(all_612_3, all_612_1, all_612_4) % 110.91/15.48 | | | | | | | | | | | | = all_338_0 & vSelect(all_612_3) & % 110.91/15.48 | | | | | | | | | | | | vOptTable(all_612_2) & vName(all_612_1) & % 110.91/15.48 | | | | | | | | | | | | vPred(all_612_4) % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1385) are inconsistent by % 110.91/15.48 | | | | | | | | | | | | sub-proof #9. % 110.91/15.48 | | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | End of split % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | End of split % 110.91/15.48 | | | | | | | | | | % 110.91/15.48 | | | | | | | | | End of split % 110.91/15.48 | | | | | | | | | % 110.91/15.48 | | | | | | | | End of split % 110.91/15.48 | | | | | | | | % 110.91/15.48 | | | | | | | Case 2: % 110.91/15.48 | | | | | | | | % 110.91/15.48 | | | | | | | | (1386) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] % 110.91/15.48 | | | | | | | | : ? [v3: int] : ? [v4: vQuery] : (all_346_1 = % 110.91/15.48 | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 % 110.91/15.48 | | | | | | | | & visSomeQuery(v2) = v3 & vDifference(v4, v1) = % 110.91/15.48 | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.91/15.48 | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 110.91/15.48 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) % 110.91/15.48 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.48 | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.48 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.48 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.48 | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 110.91/15.48 | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.48 | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.48 | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 110.91/15.48 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? % 110.91/15.48 | | | | | | | | [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.48 | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.91/15.48 | | | | | | | | & vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.91/15.48 | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) % 110.91/15.48 | | | | | | | | & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.48 | | | | | | | | vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : % 110.91/15.48 | | | | | | | | ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] % 110.91/15.48 | | | | | | | | : (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.91/15.48 | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.91/15.48 | | | | | | | | vDifference(v3, v1) = v4 & vDifference(v0, v1) = % 110.91/15.48 | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.48 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & % 110.91/15.48 | | | | | | | | ! [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) % 110.91/15.48 | | | | | | | | = v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.91/15.48 | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.48 | | | | | | | | = v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 110.91/15.48 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.91/15.48 | | | | | | | | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.91/15.48 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.91/15.48 | | | | | | | | vsomeQuery(v4) = all_346_1 & vIntersection(v3, v1) = % 110.91/15.48 | | | | | | | | v4 & vIntersection(v0, v1) = all_338_0 & % 110.91/15.48 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 110.91/15.48 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.91/15.48 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 110.91/15.48 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.48 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.48 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 110.91/15.48 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 110.91/15.48 | | | | | | | | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.91/15.48 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.91/15.48 | | | | | | | | vsomeQuery(v4) = all_346_1 & vUnion(v3, v1) = v4 & % 110.91/15.48 | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.48 | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.48 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 110.91/15.48 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) % 110.91/15.48 | | | | | | | | = v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.91/15.48 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.48 | | | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.48 | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 110.91/15.48 | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 110.91/15.48 | | | | | | | | visSomeQuery(v2) = v3 & vDifference(v0, v1) = % 110.91/15.48 | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) % 110.91/15.48 | | | | | | | | & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 110.91/15.48 | | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 110.91/15.48 | | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( % 110.91/15.48 | | | | | | | | ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.91/15.48 | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 110.91/15.48 | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.48 | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 110.91/15.48 | | | | | | | | & vIntersection(v0, v1) = all_338_0 & vOptQuery(v2) % 110.91/15.48 | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! % 110.91/15.48 | | | | | | | | [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.48 | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.91/15.48 | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) = % 110.91/15.48 | | | | | | | | v0) | ~ vTable(v4))) | ? [v0: vQuery] : ? % 110.91/15.48 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.91/15.48 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.91/15.48 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.48 | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.48 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 110.91/15.48 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 110.91/15.48 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.48 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 110.91/15.48 | | | | | | | | | ? [v0: vTable] : (all_346_1 = vnoQuery & % 110.91/15.48 | | | | | | | | vtvalue(v0) = all_338_0 & vTable(v0)) % 110.91/15.48 | | | | | | | | % 110.91/15.48 | | | | | | | | BETA: splitting (1386) gives: % 110.91/15.48 | | | | | | | | % 110.91/15.48 | | | | | | | | Case 1: % 110.91/15.48 | | | | | | | | | % 110.91/15.48 | | | | | | | | | (1387) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.48 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.48 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.48 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.48 | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 110.91/15.48 | | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.48 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.48 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 110.91/15.48 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.91/15.48 | | | | | | | | | ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) % 110.91/15.48 | | | | | | | | | & vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.48 | | | | | | | | | v3 & vIntersection(v4, v1) = all_338_0 & % 110.91/15.48 | | | | | | | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 110.91/15.48 | | | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 110.91/15.48 | | | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 110.91/15.48 | | | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.48 | | | | | | | | | ? [v3: int] : ? [v4: vQuery] : (all_346_1 = % 110.91/15.48 | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = % 110.91/15.48 | | | | | | | | | v2 & visSomeQuery(v2) = v3 & vUnion(v4, v1) = % 110.91/15.48 | | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.91/15.48 | | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 110.91/15.48 | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.48 | | | | | | | | | vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] % 110.91/15.48 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 110.91/15.48 | | | | | | | | | vQuery] : (vreduce(v0, all_346_6) = v2 & % 110.91/15.48 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 110.91/15.48 | | | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = % 110.91/15.48 | | | | | | | | | v4 & vDifference(v0, v1) = all_338_0 & % 110.91/15.48 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) % 110.91/15.48 | | | | | | | | | & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 110.91/15.48 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 110.91/15.48 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 110.91/15.48 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.48 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.48 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.48 | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.48 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.48 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 110.91/15.48 | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) % 110.91/15.48 | | | | | | | | | = all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 110.91/15.48 | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.91/15.48 | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : ( % 110.91/15.48 | | | | | | | | | ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 110.91/15.48 | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] % 110.91/15.48 | | | | | | | | | : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.48 | | | | | | | | | % 110.91/15.48 | | | | | | | | | BETA: splitting (1387) gives: % 110.91/15.48 | | | | | | | | | % 110.91/15.48 | | | | | | | | | Case 1: % 110.91/15.48 | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | (1388) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.48 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.48 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.48 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.48 | | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = % 110.91/15.48 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.48 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.48 | | | | | | | | | | = v1) | ~ vTable(v5))) | ? [v0: vTable] : % 110.91/15.48 | | | | | | | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] % 110.91/15.48 | | | | | | | | | | : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 % 110.91/15.48 | | | | | | | | | | = 0) & vreduce(v1, all_346_6) = v2 & % 110.91/15.48 | | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v4, v1) = % 110.91/15.48 | | | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 110.91/15.48 | | | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 110.91/15.48 | | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.48 | | | | | | | | | | vTable(v5))) % 110.91/15.48 | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | BETA: splitting (1388) gives: % 110.91/15.48 | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | Case 1: % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | (1389) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.48 | | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.48 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.48 | | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.48 | | | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = % 110.91/15.48 | | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.48 | | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.48 | | | | | | | | | | | = v1) | ~ vTable(v5))) % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | DELTA: instantiating (1389) with fresh symbols all_612_0, % 110.91/15.48 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.91/15.48 | | | | | | | | | | | (1390) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.91/15.48 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.91/15.48 | | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.91/15.48 | | | | | | | | | | | vDifference(all_612_0, all_612_3) = all_338_0 & % 110.91/15.48 | | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.91/15.48 | | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.91/15.48 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.91/15.48 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.91/15.48 | | | | | | | | | | | vTable(v0)) % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1390) are inconsistent by % 110.91/15.48 | | | | | | | | | | | sub-proof #8. % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | Case 2: % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | (1391) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.48 | | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.48 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.48 | | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.48 | | | | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) % 110.91/15.48 | | | | | | | | | | | = v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.48 | | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.48 | | | | | | | | | | | = v1) | ~ vTable(v5))) % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | DELTA: instantiating (1391) with fresh symbols all_612_0, % 110.91/15.48 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.91/15.48 | | | | | | | | | | | (1392) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.91/15.48 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.91/15.48 | | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.91/15.48 | | | | | | | | | | | vIntersection(all_612_0, all_612_3) = all_338_0 & % 110.91/15.48 | | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.91/15.48 | | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.91/15.48 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.91/15.48 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.91/15.48 | | | | | | | | | | | vTable(v0)) % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1392) are inconsistent by % 110.91/15.48 | | | | | | | | | | | sub-proof #7. % 110.91/15.48 | | | | | | | | | | | % 110.91/15.48 | | | | | | | | | | End of split % 110.91/15.48 | | | | | | | | | | % 110.91/15.48 | | | | | | | | | Case 2: % 110.91/15.48 | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | (1393) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.49 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.49 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.49 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.49 | | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.91/15.49 | | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.49 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.49 | | | | | | | | | | = v1) | ~ vTable(v5))) | ? [v0: vQuery] : % 110.91/15.49 | | | | | | | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: % 110.91/15.49 | | | | | | | | | | vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.49 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.49 | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.91/15.49 | | | | | | | | | | & vDifference(v3, v1) = v4 & vDifference(v0, v1) % 110.91/15.49 | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 110.91/15.49 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.49 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.49 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.49 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.49 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.49 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.49 | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.49 | | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.49 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.49 | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.91/15.49 | | | | | | | | | | & vIntersection(v3, v1) = v4 & vIntersection(v0, % 110.91/15.49 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.49 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.49 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.49 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.49 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.49 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.49 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.49 | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | BETA: splitting (1393) gives: % 110.91/15.49 | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | Case 1: % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | (1394) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 110.91/15.49 | | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 110.91/15.49 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 110.91/15.49 | | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.49 | | | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 110.91/15.49 | | | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 110.91/15.49 | | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 110.91/15.49 | | | | | | | | | | | = v1) | ~ vTable(v5))) % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | DELTA: instantiating (1394) with fresh symbols all_612_0, % 110.91/15.49 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 110.91/15.49 | | | | | | | | | | | (1395) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 110.91/15.49 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 110.91/15.49 | | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 110.91/15.49 | | | | | | | | | | | vUnion(all_612_0, all_612_3) = all_338_0 & % 110.91/15.49 | | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 110.91/15.49 | | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 110.91/15.49 | | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 110.91/15.49 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 110.91/15.49 | | | | | | | | | | | vTable(v0)) % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1395) are inconsistent by % 110.91/15.49 | | | | | | | | | | | sub-proof #6. % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | Case 2: % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | (1396) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.49 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.49 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.49 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.49 | | | | | | | | | | | all_346_1 & vDifference(v3, v1) = v4 & % 110.91/15.49 | | | | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) % 110.91/15.49 | | | | | | | | | | | & vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) % 110.91/15.49 | | | | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.49 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.49 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.49 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.49 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.49 | | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.49 | | | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 110.91/15.49 | | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 110.91/15.49 | | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.91/15.49 | | | | | | | | | | | & vIntersection(v3, v1) = v4 & vIntersection(v0, % 110.91/15.49 | | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.49 | | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.49 | | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.49 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.49 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.49 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.49 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | BETA: splitting (1396) gives: % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | Case 1: % 110.91/15.49 | | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | | (1397) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.49 | | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.49 | | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.49 | | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.49 | | | | | | | | | | | | all_346_1 & vDifference(v3, v1) = v4 & % 110.91/15.49 | | | | | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) % 110.91/15.49 | | | | | | | | | | | | & vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) % 110.91/15.49 | | | | | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.49 | | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.49 | | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.49 | | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.49 | | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.49 | | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | | DELTA: instantiating (1397) with fresh symbols all_613_0, % 110.91/15.49 | | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.91/15.49 | | | | | | | | | | | | (1398) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.91/15.49 | | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.91/15.49 | | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.49 | | | | | | | | | | | | vDifference(all_613_1, all_613_3) = all_613_0 & % 110.91/15.49 | | | | | | | | | | | | vDifference(all_613_4, all_613_3) = all_338_0 & % 110.91/15.49 | | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.91/15.49 | | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.91/15.49 | | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.91/15.49 | | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.91/15.49 | | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.91/15.49 | | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.91/15.49 | | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.49 | | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | | ALPHA: (1398) implies: % 110.91/15.49 | | | | | | | | | | | | (1399) vQuery(all_613_4) % 110.91/15.49 | | | | | | | | | | | | (1400) vQuery(all_613_3) % 110.91/15.49 | | | | | | | | | | | | (1401) vDifference(all_613_4, all_613_3) = all_338_0 % 110.91/15.49 | | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 110.91/15.49 | | | | | | | | | | | | vq2, all_613_4, all_613_3, all_338_0, simplifying % 110.91/15.49 | | | | | | | | | | | | with (4), (5), (18), (1399), (1400), (1401) gives: % 110.91/15.49 | | | | | | | | | | | | (1402) $false % 110.91/15.49 | | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | | CLOSE: (1402) is inconsistent. % 110.91/15.49 | | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | Case 2: % 110.91/15.49 | | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | | (1403) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.49 | | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.49 | | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.49 | | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.49 | | | | | | | | | | | | all_346_1 & vIntersection(v3, v1) = v4 & % 110.91/15.49 | | | | | | | | | | | | vIntersection(v0, v1) = all_338_0 & % 110.91/15.49 | | | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.49 | | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & % 110.91/15.49 | | | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 110.91/15.49 | | | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 110.91/15.49 | | | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 110.91/15.49 | | | | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ % 110.91/15.49 | | | | | | | | | | | | vTable(v5))) % 110.91/15.49 | | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | | DELTA: instantiating (1403) with fresh symbols all_613_0, % 110.91/15.49 | | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.91/15.49 | | | | | | | | | | | | (1404) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.91/15.49 | | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.91/15.49 | | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.49 | | | | | | | | | | | | vIntersection(all_613_1, all_613_3) = all_613_0 & % 110.91/15.49 | | | | | | | | | | | | vIntersection(all_613_4, all_613_3) = all_338_0 & % 110.91/15.49 | | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.91/15.49 | | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.91/15.49 | | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.91/15.49 | | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.91/15.49 | | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.91/15.49 | | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.91/15.49 | | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.49 | | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | | ALPHA: (1404) implies: % 110.91/15.49 | | | | | | | | | | | | (1405) vQuery(all_613_4) % 110.91/15.49 | | | | | | | | | | | | (1406) vQuery(all_613_3) % 110.91/15.49 | | | | | | | | | | | | (1407) vIntersection(all_613_4, all_613_3) = all_338_0 % 110.91/15.49 | | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 110.91/15.49 | | | | | | | | | | | | vq2, all_613_4, all_613_3, all_338_0, simplifying % 110.91/15.49 | | | | | | | | | | | | with (4), (5), (18), (1405), (1406), (1407) gives: % 110.91/15.49 | | | | | | | | | | | | (1408) $false % 110.91/15.49 | | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | | CLOSE: (1408) is inconsistent. % 110.91/15.49 | | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | End of split % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | End of split % 110.91/15.49 | | | | | | | | | | % 110.91/15.49 | | | | | | | | | End of split % 110.91/15.49 | | | | | | | | | % 110.91/15.49 | | | | | | | | Case 2: % 110.91/15.49 | | | | | | | | | % 110.91/15.49 | | | | | | | | | (1409) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.49 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.49 | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 110.91/15.49 | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 110.91/15.49 | | | | | | | | | & vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 % 110.91/15.49 | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 110.91/15.49 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) % 110.91/15.49 | | | | | | | | | & ! [v5: vTable] : ! [v6: vTable] : ( ~ % 110.91/15.49 | | | | | | | | | (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | ~ % 110.91/15.49 | | | | | | | | | vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : % 110.91/15.49 | | | | | | | | | ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.49 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.49 | | | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.49 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.49 | | | | | | | | | v3 & vDifference(v0, v1) = all_338_0 & % 110.91/15.49 | | | | | | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: % 110.91/15.49 | | | | | | | | | vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.49 | | | | | | | | | v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | % 110.91/15.49 | | | | | | | | | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 110.91/15.49 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.91/15.49 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.49 | | | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.49 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.49 | | | | | | | | | v3 & vIntersection(v0, v1) = all_338_0 & % 110.91/15.49 | | | | | | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: % 110.91/15.49 | | | | | | | | | vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) = % 110.91/15.49 | | | | | | | | | v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | % 110.91/15.49 | | | | | | | | | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 110.91/15.49 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.91/15.49 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.49 | | | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 110.91/15.49 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.49 | | | | | | | | | v3 & vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.49 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! % 110.91/15.49 | | | | | | | | | [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.49 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.91/15.49 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 110.91/15.49 | | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vTable] : % 110.91/15.49 | | | | | | | | | (all_346_1 = vnoQuery & vtvalue(v0) = all_338_0 & % 110.91/15.49 | | | | | | | | | vTable(v0)) % 110.91/15.49 | | | | | | | | | % 110.91/15.49 | | | | | | | | | BETA: splitting (1409) gives: % 110.91/15.49 | | | | | | | | | % 110.91/15.49 | | | | | | | | | Case 1: % 110.91/15.49 | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | (1410) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.49 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.49 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.49 | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.49 | | | | | | | | | | all_346_1 & vUnion(v3, v1) = v4 & vUnion(v0, v1) % 110.91/15.49 | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 110.91/15.49 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.49 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.49 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.49 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.49 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.49 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 110.91/15.49 | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 110.91/15.49 | | | | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) % 110.91/15.49 | | | | | | | | | | & vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) % 110.91/15.49 | | | | | | | | | | = v3 & vDifference(v0, v1) = all_338_0 & % 110.91/15.49 | | | | | | | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! % 110.91/15.49 | | | | | | | | | | [v4: vTable] : ! [v5: vTable] : ( ~ % 110.91/15.49 | | | | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.49 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.49 | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.49 | | | | | | | | | | vTable(v4))) % 110.91/15.49 | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | BETA: splitting (1410) gives: % 110.91/15.49 | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | Case 1: % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | (1411) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.49 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 110.91/15.49 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 110.91/15.49 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 110.91/15.49 | | | | | | | | | | | all_346_1 & vUnion(v3, v1) = v4 & vUnion(v0, v1) % 110.91/15.49 | | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 110.91/15.49 | | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 110.91/15.49 | | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 110.91/15.49 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 110.91/15.49 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 110.91/15.49 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 110.91/15.49 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | DELTA: instantiating (1411) with fresh symbols all_613_0, % 110.91/15.49 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 110.91/15.49 | | | | | | | | | | | (1412) vreduce(all_613_4, all_346_6) = all_613_2 & % 110.91/15.49 | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 110.91/15.49 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 110.91/15.49 | | | | | | | | | | | vUnion(all_613_1, all_613_3) = all_613_0 & % 110.91/15.49 | | | | | | | | | | | vUnion(all_613_4, all_613_3) = all_338_0 & % 110.91/15.49 | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 110.91/15.49 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 110.91/15.49 | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 110.91/15.49 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 110.91/15.49 | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 110.91/15.49 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 110.91/15.49 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | ALPHA: (1412) implies: % 110.91/15.49 | | | | | | | | | | | (1413) vsomeQuery(all_613_0) = all_346_1 % 110.91/15.49 | | | | | | | | | | | (1414) vreduce(all_613_4, all_346_6) = all_613_2 % 110.91/15.49 | | | | | | | | | | | (1415) vQuery(all_613_3) % 110.91/15.49 | | | | | | | | | | | (1416) vgetQuery(all_613_2) = all_613_1 % 110.91/15.49 | | | | | | | | | | | (1417) vUnion(all_613_4, all_613_3) = all_338_0 % 110.91/15.49 | | | | | | | | | | | (1418) vUnion(all_613_1, all_613_3) = all_613_0 % 110.91/15.49 | | | | | | | | | | | (1419) vQuery(all_613_0) % 110.91/15.49 | | | | | | | | | | | (1420) vQuery(all_613_1) % 110.91/15.49 | | | | | | | | | | | (1421) vQuery(all_613_4) % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | GROUND_INST: instantiating (TUnion_inv2) with all_346_5, % 110.91/15.49 | | | | | | | | | | | all_613_4, all_613_3, all_346_4, all_338_0, % 110.91/15.49 | | | | | | | | | | | simplifying with (22), (25), (33), (1415), (1417), % 110.91/15.49 | | | | | | | | | | | (1421) gives: % 110.91/15.49 | | | | | | | | | | | (1422) vptcheck(all_346_5, all_613_3, all_346_4) = 0 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_4, % 110.91/15.49 | | | | | | | | | | | all_613_3, all_338_0, simplifying with (4), (5), % 110.91/15.49 | | | | | | | | | | | (18), (1415), (1417), (1421) gives: % 110.91/15.49 | | | | | | | | | | | (1423) all_613_3 = vq2 & all_613_4 = vq1 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | ALPHA: (1423) implies: % 110.91/15.49 | | | | | | | | | | | (1424) all_613_3 = vq2 % 110.91/15.49 | | | | | | | | | | | (1425) all_613_4 = vq1 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | GROUND_INST: instantiating (3) with all_346_6, all_346_5, % 110.91/15.49 | | | | | | | | | | | all_346_4, all_605_0, all_346_2, simplifying with % 110.91/15.49 | | | | | | | | | | | (22), (24), (25), (30), (39), (1306), (1308) % 110.91/15.49 | | | | | | | | | | | gives: % 110.91/15.49 | | | | | | | | | | | (1426) ? [v0: any] : ? [v1: any] : (vptcheck(all_346_5, % 110.91/15.49 | | | | | | | | | | | all_605_0, all_346_4) = v1 & % 110.91/15.49 | | | | | | | | | | | vstoreContextConsistent(all_346_6, all_346_5) = % 110.91/15.49 | | | | | | | | | | | v0 & ( ~ (v0 = 0) | v1 = 0)) % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_359_0, % 110.91/15.49 | | | | | | | | | | | all_605_0, all_346_2, simplifying with (41), (42), % 110.91/15.49 | | | | | | | | | | | (1306), (1308) gives: % 110.91/15.49 | | | | | | | | | | | (1427) all_605_0 = all_359_0 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | GROUND_INST: instantiating (getQuery-0) with all_605_0, % 110.91/15.49 | | | | | | | | | | | all_346_2, simplifying with (1306), (1308) gives: % 110.91/15.49 | | | | | | | | | | | (1428) vgetQuery(all_346_2) = all_605_0 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_346_3, % 110.91/15.49 | | | | | | | | | | | all_613_0, all_346_1, simplifying with (23), (28), % 110.91/15.49 | | | | | | | | | | | (1413), (1419) gives: % 110.91/15.49 | | | | | | | | | | | (1429) all_613_0 = all_346_3 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | DELTA: instantiating (1426) with fresh symbols all_640_0, % 110.91/15.49 | | | | | | | | | | | all_640_1 gives: % 110.91/15.49 | | | | | | | | | | | (1430) vptcheck(all_346_5, all_605_0, all_346_4) = % 110.91/15.49 | | | | | | | | | | | all_640_0 & vstoreContextConsistent(all_346_6, % 110.91/15.49 | | | | | | | | | | | all_346_5) = all_640_1 & ( ~ (all_640_1 = 0) | % 110.91/15.49 | | | | | | | | | | | all_640_0 = 0) % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | ALPHA: (1430) implies: % 110.91/15.49 | | | | | | | | | | | (1431) vptcheck(all_346_5, all_605_0, all_346_4) = % 110.91/15.49 | | | | | | | | | | | all_640_0 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | REDUCE: (1422), (1424) imply: % 110.91/15.49 | | | | | | | | | | | (1432) vptcheck(all_346_5, vq2, all_346_4) = 0 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | REDUCE: (1427), (1431) imply: % 110.91/15.49 | | | | | | | | | | | (1433) vptcheck(all_346_5, all_359_0, all_346_4) = % 110.91/15.49 | | | | | | | | | | | all_640_0 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | REDUCE: (1414), (1425) imply: % 110.91/15.49 | | | | | | | | | | | (1434) vreduce(vq1, all_346_6) = all_613_2 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | REDUCE: (1427), (1428) imply: % 110.91/15.49 | | | | | | | | | | | (1435) vgetQuery(all_346_2) = all_359_0 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | REDUCE: (1418), (1424), (1429) imply: % 110.91/15.49 | | | | | | | | | | | (1436) vUnion(all_613_1, vq2) = all_346_3 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | GROUND_INST: instantiating (10) with all_346_2, all_613_2, % 110.91/15.49 | | | | | | | | | | | all_346_6, vq1, simplifying with (30), (1434) % 110.91/15.49 | | | | | | | | | | | gives: % 110.91/15.49 | | | | | | | | | | | (1437) all_613_2 = all_346_2 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | GROUND_INST: instantiating (12) with 0, all_640_0, all_346_4, % 110.91/15.49 | | | | | | | | | | | all_359_0, all_346_5, simplifying with (56), % 110.91/15.49 | | | | | | | | | | | (1433) gives: % 110.91/15.49 | | | | | | | | | | | (1438) all_640_0 = 0 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | REDUCE: (1416), (1437) imply: % 110.91/15.49 | | | | | | | | | | | (1439) vgetQuery(all_346_2) = all_613_1 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | GROUND_INST: instantiating (7) with all_359_0, all_613_1, % 110.91/15.49 | | | | | | | | | | | all_346_2, simplifying with (1435), (1439) gives: % 110.91/15.49 | | | | | | | | | | | (1440) all_613_1 = all_359_0 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | REDUCE: (1436), (1440) imply: % 110.91/15.49 | | | | | | | | | | | (1441) vUnion(all_359_0, vq2) = all_346_3 % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | REF_CLOSE: (5), (12), (21), (22), (25), (34), (41), (56), % 110.91/15.49 | | | | | | | | | | | (1432), (1441), (TUnion) are inconsistent by % 110.91/15.49 | | | | | | | | | | | sub-proof #5. % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | Case 2: % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | (1442) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.49 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.49 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.49 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vDifference(v0, % 110.91/15.49 | | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.49 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.49 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.49 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.49 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.49 | | | | | | | | | | | vTable(v4))) % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | DELTA: instantiating (1442) with fresh symbols all_612_0, % 110.91/15.49 | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.91/15.49 | | | | | | | | | | | (1443) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.91/15.49 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.91/15.49 | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.91/15.49 | | | | | | | | | | | vDifference(all_612_3, all_612_2) = all_338_0 & % 110.91/15.49 | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.91/15.49 | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.91/15.49 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.91/15.49 | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.91/15.49 | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.91/15.49 | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1443) are inconsistent by % 110.91/15.49 | | | | | | | | | | | sub-proof #4. % 110.91/15.49 | | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | End of split % 110.91/15.49 | | | | | | | | | | % 110.91/15.49 | | | | | | | | | Case 2: % 110.91/15.49 | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | (1444) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.49 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.49 | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.49 | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vIntersection(v0, % 110.91/15.49 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.49 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.49 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.49 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.49 | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.49 | | | | | | | | | | vTable(v4))) | ? [v0: vQuery] : ? [v1: % 110.91/15.49 | | | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 110.91/15.49 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 110.91/15.49 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 110.91/15.49 | | | | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 110.91/15.49 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! % 110.91/15.49 | | | | | | | | | | [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 110.91/15.49 | | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 110.91/15.49 | | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ % 110.91/15.49 | | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 110.91/15.49 | | | | | | | | | | vTable] : (all_346_1 = vnoQuery & vtvalue(v0) = % 110.91/15.49 | | | | | | | | | | all_338_0 & vTable(v0)) % 110.91/15.49 | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | BETA: splitting (1444) gives: % 110.91/15.49 | | | | | | | | | | % 110.91/15.49 | | | | | | | | | | Case 1: % 110.91/15.49 | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | | (1445) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.50 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.50 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.50 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vIntersection(v0, % 110.91/15.50 | | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.50 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.50 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.50 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.50 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.50 | | | | | | | | | | | vTable(v4))) % 110.91/15.50 | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | | DELTA: instantiating (1445) with fresh symbols all_612_0, % 110.91/15.50 | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.91/15.50 | | | | | | | | | | | (1446) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.91/15.50 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.91/15.50 | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.91/15.50 | | | | | | | | | | | vIntersection(all_612_3, all_612_2) = all_338_0 & % 110.91/15.50 | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.91/15.50 | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.91/15.50 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.91/15.50 | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.91/15.50 | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.91/15.50 | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.91/15.50 | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1446) are inconsistent by % 110.91/15.50 | | | | | | | | | | | sub-proof #3. % 110.91/15.50 | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | Case 2: % 110.91/15.50 | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | | (1447) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.50 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.50 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.50 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.91/15.50 | | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.50 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.50 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.50 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.50 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.50 | | | | | | | | | | | vTable(v4))) | ? [v0: vTable] : (all_346_1 = % 110.91/15.50 | | | | | | | | | | | vnoQuery & vtvalue(v0) = all_338_0 & vTable(v0)) % 110.91/15.50 | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | | BETA: splitting (1447) gives: % 110.91/15.50 | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | | Case 1: % 110.91/15.50 | | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | | | (1448) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 110.91/15.50 | | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 110.91/15.50 | | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 110.91/15.50 | | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 110.91/15.50 | | | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 110.91/15.50 | | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 110.91/15.50 | | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 110.91/15.50 | | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 110.91/15.50 | | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 110.91/15.50 | | | | | | | | | | | | vTable(v4))) % 110.91/15.50 | | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | | | DELTA: instantiating (1448) with fresh symbols all_612_0, % 110.91/15.50 | | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 110.91/15.50 | | | | | | | | | | | | (1449) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 110.91/15.50 | | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 110.91/15.50 | | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 110.91/15.50 | | | | | | | | | | | | vUnion(all_612_3, all_612_2) = all_338_0 & % 110.91/15.50 | | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 110.91/15.50 | | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 110.91/15.50 | | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 110.91/15.50 | | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 110.91/15.50 | | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 110.91/15.50 | | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 110.91/15.50 | | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1449) are inconsistent by % 110.91/15.50 | | | | | | | | | | | | sub-proof #2. % 110.91/15.50 | | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | | Case 2: % 110.91/15.50 | | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | | | (1450) ? [v0: vTable] : (all_346_1 = vnoQuery & % 110.91/15.50 | | | | | | | | | | | | vtvalue(v0) = all_338_0 & vTable(v0)) % 110.91/15.50 | | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | | | DELTA: instantiating (1450) with fresh symbol all_612_0 % 110.91/15.50 | | | | | | | | | | | | gives: % 110.91/15.50 | | | | | | | | | | | | (1451) all_346_1 = vnoQuery & vtvalue(all_612_0) = % 110.91/15.50 | | | | | | | | | | | | all_338_0 & vTable(all_612_0) % 110.91/15.50 | | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1451) are inconsistent by % 110.91/15.50 | | | | | | | | | | | | sub-proof #1. % 110.91/15.50 | | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | | End of split % 110.91/15.50 | | | | | | | | | | | % 110.91/15.50 | | | | | | | | | | End of split % 110.91/15.50 | | | | | | | | | | % 110.91/15.50 | | | | | | | | | End of split % 110.91/15.50 | | | | | | | | | % 110.91/15.50 | | | | | | | | End of split % 110.91/15.50 | | | | | | | | % 110.91/15.50 | | | | | | | End of split % 110.91/15.50 | | | | | | | % 110.91/15.50 | | | | | | End of split % 110.91/15.50 | | | | | | % 110.91/15.50 | | | | | End of split % 110.91/15.50 | | | | | % 110.91/15.50 | | | | End of split % 110.91/15.50 | | | | % 110.91/15.50 | | | Case 2: % 110.91/15.50 | | | | % 111.36/15.50 | | | | (1452) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 111.36/15.50 | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 % 111.36/15.50 | | | | & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) % 111.36/15.50 | | | | = all_346_2 & vUnion(v3, v1) = v4 & vUnion(v0, v1) = vq1 & % 111.36/15.50 | | | | vOptQuery(v2) & vOptQuery(all_346_2) & vQuery(v4) & % 111.36/15.50 | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 111.36/15.50 | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 111.36/15.50 | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : % 111.36/15.50 | | | | ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: vQuery] : % 111.36/15.50 | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 111.36/15.50 | | | | (all_346_2 = vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) = % 111.36/15.50 | | | | v2 & visSomeQuery(v2) = v3 & vDifference(v0, v1) = vq1 & % 111.36/15.50 | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: vTable] : % 111.36/15.50 | | | | ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 111.36/15.50 | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : % 111.36/15.50 | | | | ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: vQuery] : % 111.36/15.50 | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 111.36/15.50 | | | | (all_346_2 = vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) = % 111.36/15.50 | | | | v2 & visSomeQuery(v2) = v3 & vIntersection(v0, v1) = vq1 & % 111.36/15.50 | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: vTable] : % 111.36/15.50 | | | | ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 111.36/15.50 | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : % 111.36/15.50 | | | | ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: vQuery] : % 111.36/15.50 | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 111.36/15.50 | | | | (all_346_2 = vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) = % 111.36/15.50 | | | | v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = vq1 & % 111.36/15.50 | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: vTable] : % 111.36/15.50 | | | | ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 111.36/15.50 | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : % 111.36/15.50 | | | | ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: vTable] : % 111.36/15.50 | | | | (all_346_2 = vnoQuery & vtvalue(v0) = vq1 & vTable(v0)) % 111.36/15.50 | | | | % 111.36/15.50 | | | | BETA: splitting (1452) gives: % 111.36/15.50 | | | | % 111.36/15.50 | | | | Case 1: % 111.36/15.50 | | | | | % 111.36/15.50 | | | | | (1453) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 111.36/15.50 | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, all_346_6) = % 111.36/15.50 | | | | | v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 111.36/15.50 | | | | | vsomeQuery(v4) = all_346_2 & vUnion(v3, v1) = v4 & % 111.36/15.50 | | | | | vUnion(v0, v1) = vq1 & vOptQuery(v2) & % 111.36/15.50 | | | | | vOptQuery(all_346_2) & vQuery(v4) & vQuery(v3) & % 111.36/15.50 | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 111.36/15.50 | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) % 111.36/15.50 | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 111.36/15.50 | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: vQuery] : % 111.36/15.50 | | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 111.36/15.50 | | | | | (all_346_2 = vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 111.36/15.50 | | | | | = v2 & visSomeQuery(v2) = v3 & vDifference(v0, v1) = vq1 & % 111.36/15.50 | | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: vTable] % 111.36/15.50 | | | | | : ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 111.36/15.50 | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! % 111.36/15.50 | | | | | [v4: vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 111.36/15.50 | | | | | % 111.36/15.50 | | | | | BETA: splitting (1453) gives: % 111.36/15.50 | | | | | % 111.36/15.50 | | | | | Case 1: % 111.36/15.50 | | | | | | % 111.36/15.50 | | | | | | (1454) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 111.36/15.50 | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, all_346_6) % 111.36/15.50 | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 111.36/15.50 | | | | | | vsomeQuery(v4) = all_346_2 & vUnion(v3, v1) = v4 & % 111.36/15.50 | | | | | | vUnion(v0, v1) = vq1 & vOptQuery(v2) & % 111.36/15.50 | | | | | | vOptQuery(all_346_2) & vQuery(v4) & vQuery(v3) & % 111.36/15.50 | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 111.36/15.50 | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 111.36/15.50 | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 111.36/15.50 | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 111.36/15.50 | | | | | | % 111.36/15.50 | | | | | | DELTA: instantiating (1454) with fresh symbols all_605_0, all_605_1, % 111.36/15.50 | | | | | | all_605_2, all_605_3, all_605_4 gives: % 111.36/15.50 | | | | | | (1455) vreduce(all_605_4, all_346_6) = all_605_2 & % 111.36/15.50 | | | | | | visSomeQuery(all_605_2) = 0 & vgetQuery(all_605_2) = % 111.36/15.50 | | | | | | all_605_1 & vsomeQuery(all_605_0) = all_346_2 & % 111.36/15.50 | | | | | | vUnion(all_605_1, all_605_3) = all_605_0 & % 111.36/15.50 | | | | | | vUnion(all_605_4, all_605_3) = vq1 & vOptQuery(all_605_2) % 111.36/15.50 | | | | | | & vOptQuery(all_346_2) & vQuery(all_605_0) & % 111.36/15.50 | | | | | | vQuery(all_605_1) & vQuery(all_605_3) & vQuery(all_605_4) % 111.36/15.50 | | | | | | & ! [v0: vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 111.36/15.50 | | | | | | all_605_3) | ~ (vtvalue(v0) = all_605_4) | ~ % 111.36/15.50 | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : ( ~ % 111.36/15.50 | | | | | | (vtvalue(v0) = all_605_4) | ~ vTable(v0)) % 111.36/15.50 | | | | | | % 111.36/15.50 | | | | | | ALPHA: (1455) implies: % 111.36/15.50 | | | | | | (1456) vQuery(all_605_4) % 111.36/15.50 | | | | | | (1457) vQuery(all_605_3) % 111.36/15.50 | | | | | | (1458) vQuery(all_605_0) % 111.36/15.50 | | | | | | (1459) vUnion(all_605_4, all_605_3) = vq1 % 111.36/15.50 | | | | | | (1460) vsomeQuery(all_605_0) = all_346_2 % 111.36/15.50 | | | | | | % 111.36/15.50 | | | | | | BETA: splitting (38) gives: % 111.36/15.50 | | | | | | % 111.36/15.50 | | | | | | Case 1: % 111.36/15.50 | | | | | | | % 111.36/15.50 | | | | | | | (1461) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? % 111.36/15.50 | | | | | | | [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? % 111.36/15.50 | | | | | | | [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : % 111.36/15.50 | | | | | | | ? [v9: vQuery] : (vrawDifference(v5, v6) = v7 & % 111.36/15.50 | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 111.36/15.50 | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 111.36/15.50 | | | | | | | & vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 111.36/15.50 | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 111.36/15.50 | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 111.36/15.50 | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 111.36/15.50 | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 111.36/15.50 | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 111.36/15.50 | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 111.36/15.50 | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 111.36/15.50 | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 111.36/15.50 | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 111.36/15.50 | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) = % 111.36/15.50 | | | | | | | v8 & vsomeQuery(v9) = all_346_1 & vIntersection(v2, % 111.36/15.50 | | | | | | | v3) = all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = % 111.36/15.50 | | | | | | | v3 & vtvalue(v0) = v2 & vOptQuery(all_346_1) & % 111.36/15.50 | | | | | | | vTable(v8) & vTable(v1) & vTable(v0) & vQuery(v9) & % 111.36/15.50 | | | | | | | vQuery(v3) & vQuery(v2) & vRawTable(v7) & % 111.36/15.50 | | | | | | | vRawTable(v6) & vRawTable(v5) & vAttrL(v4)) | ? [v0: % 111.36/15.50 | | | | | | | vTable] : ? [v1: vTable] : ? [v2: vQuery] : ? [v3: % 111.36/15.50 | | | | | | | vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] : ? % 111.36/15.50 | | | | | | | [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: vTable] : % 111.36/15.50 | | | | | | | ? [v9: vQuery] : (vrawUnion(v5, v6) = v7 & % 111.36/15.50 | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = % 111.36/15.50 | | | | | | | v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 111.36/15.50 | | | | | | | & vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 111.36/15.50 | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 111.36/15.50 | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 111.36/15.50 | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) & % 111.36/15.50 | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 111.36/15.50 | | | | | | | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : ? % 111.36/15.50 | | | | | | | [v2: vSelect] : ? [v3: vOptTable] : ? [v4: vOptTable] % 111.36/15.50 | | | | | | | : ? [v5: vName] : ? [v6: vTable] : ? [v7: vTable] : % 111.36/15.50 | | | | | | | ? [v8: vQuery] : (vfilterTable(v6, v0) = v1 & % 111.36/15.50 | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 111.36/15.50 | | | | | | | all_346_6) = v3 & visSomeTable(v4) = 0 & % 111.36/15.50 | | | | | | | visSomeTable(v3) = 0 & vgetTable(v4) = v7 & % 111.36/15.50 | | | | | | | vgetTable(v3) = v6 & vsomeQuery(v8) = all_346_1 & % 111.36/15.50 | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & vtvalue(v7) % 111.36/15.50 | | | | | | | = v8 & vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) % 111.36/15.50 | | | | | | | & vTable(v6) & vTable(v1) & vOptTable(v4) & % 111.36/15.50 | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & vPred(v0)) | % 111.36/15.50 | | | | | | | ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : ? % 111.36/15.50 | | | | | | | [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: vName] : % 111.36/15.50 | | | | | | | ? [v6: vTable] : ? [v7: int] : (all_346_1 = vnoQuery & % 111.36/15.50 | | | | | | | ~ (v7 = 0) & vfilterTable(v6, v0) = v1 & % 111.36/15.50 | | | | | | | vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 111.36/15.50 | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 111.36/15.50 | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 111.36/15.50 | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & vSelect(v2) % 111.36/15.50 | | | | | | | & vTable(v6) & vTable(v1) & vOptTable(v4) & % 111.36/15.50 | | | | | | | vOptTable(v3) & vName(v5) & vPred(v0)) | ? [v0: % 111.36/15.50 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 111.36/15.50 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 111.36/15.50 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 111.36/15.50 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 111.36/15.50 | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 111.36/15.50 | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 111.36/15.50 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 111.36/15.50 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] % 111.36/15.50 | | | | | | | : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 111.36/15.50 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 111.36/15.50 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 111.36/15.50 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 111.36/15.50 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 111.36/15.50 | | | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) = % 111.36/15.50 | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 111.36/15.50 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 111.36/15.50 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] % 111.36/15.50 | | | | | | | : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 111.36/15.50 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 111.36/15.50 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : ? [v5: vQuery] : % 111.36/15.50 | | | | | | | (vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = 0 & % 111.36/15.50 | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 111.36/15.50 | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 111.36/15.50 | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 111.36/15.50 | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 111.36/15.50 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: vTable] % 111.36/15.50 | | | | | | | : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 111.36/15.50 | | | | | | | vPred] : ? [v1: vSelect] : ? [v2: vOptTable] : ? % 111.36/15.50 | | | | | | | [v3: vName] : ? [v4: int] : (all_346_1 = vnoQuery & ~ % 111.36/15.50 | | | | | | | (v4 = 0) & vlookupStore(v3, all_346_6) = v2 & % 111.36/15.50 | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, v0) = % 111.36/15.50 | | | | | | | all_338_0 & vSelect(v1) & vOptTable(v2) & vName(v3) & % 111.36/15.50 | | | | | | | vPred(v0)) % 111.36/15.50 | | | | | | | % 111.36/15.50 | | | | | | | BETA: splitting (1461) gives: % 111.36/15.50 | | | | | | | % 111.36/15.50 | | | | | | | Case 1: % 111.36/15.50 | | | | | | | | % 111.36/15.50 | | | | | | | | (1462) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] : % 111.36/15.50 | | | | | | | | ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: vRawTable] % 111.36/15.50 | | | | | | | | : ? [v6: vRawTable] : ? [v7: vRawTable] : ? [v8: % 111.36/15.50 | | | | | | | | vTable] : ? [v9: vQuery] : (vrawDifference(v5, v6) % 111.36/15.50 | | | | | | | | = v7 & vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & % 111.36/15.50 | | | | | | | | vgetRaw(v0) = v5 & vtable(v4, v7) = v8 & % 111.36/15.50 | | | | | | | | vsomeQuery(v9) = all_346_1 & vDifference(v2, v3) = % 111.36/15.50 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 111.36/15.50 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 111.36/15.50 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) % 111.36/15.50 | | | | | | | | & vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 111.36/15.50 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vTable] : ? % 111.36/15.50 | | | | | | | | [v1: vTable] : ? [v2: vQuery] : ? [v3: vQuery] : ? % 111.36/15.50 | | | | | | | | [v4: vAttrL] : ? [v5: vRawTable] : ? [v6: vRawTable] % 111.36/15.50 | | | | | | | | : ? [v7: vRawTable] : ? [v8: vTable] : ? [v9: % 111.36/15.50 | | | | | | | | vQuery] : (vrawIntersection(v5, v6) = v7 & % 111.36/15.50 | | | | | | | | vgetAttrL(v0) = v4 & vgetRaw(v1) = v6 & vgetRaw(v0) % 111.36/15.50 | | | | | | | | = v5 & vtable(v4, v7) = v8 & vsomeQuery(v9) = % 111.36/15.50 | | | | | | | | all_346_1 & vIntersection(v2, v3) = all_338_0 & % 111.36/15.50 | | | | | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & vtvalue(v0) = % 111.36/15.50 | | | | | | | | v2 & vOptQuery(all_346_1) & vTable(v8) & vTable(v1) % 111.36/15.50 | | | | | | | | & vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 111.36/15.50 | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 111.36/15.50 | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : ? % 111.36/15.50 | | | | | | | | [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 111.36/15.50 | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 111.36/15.50 | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 111.36/15.50 | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 111.36/15.50 | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, v7) % 111.36/15.50 | | | | | | | | = v8 & vsomeQuery(v9) = all_346_1 & vUnion(v2, v3) = % 111.36/15.50 | | | | | | | | all_338_0 & vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 111.36/15.50 | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & vTable(v8) % 111.36/15.50 | | | | | | | | & vTable(v1) & vTable(v0) & vQuery(v9) & vQuery(v3) % 111.36/15.50 | | | | | | | | & vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 111.36/15.50 | | | | | | | | vRawTable(v5) & vAttrL(v4)) | ? [v0: vPred] : ? % 111.36/15.50 | | | | | | | | [v1: vTable] : ? [v2: vSelect] : ? [v3: vOptTable] : % 111.36/15.50 | | | | | | | | ? [v4: vOptTable] : ? [v5: vName] : ? [v6: vTable] % 111.36/15.50 | | | | | | | | : ? [v7: vTable] : ? [v8: vQuery] : % 111.36/15.50 | | | | | | | | (vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) = % 111.36/15.50 | | | | | | | | v4 & vlookupStore(v5, all_346_6) = v3 & % 111.36/15.50 | | | | | | | | visSomeTable(v4) = 0 & visSomeTable(v3) = 0 & % 111.36/15.50 | | | | | | | | vgetTable(v4) = v7 & vgetTable(v3) = v6 & % 111.36/15.50 | | | | | | | | vsomeQuery(v8) = all_346_1 & vselectFromWhere(v2, % 111.36/15.50 | | | | | | | | v5, v0) = all_338_0 & vtvalue(v7) = v8 & % 111.36/15.50 | | | | | | | | vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) & % 111.36/15.50 | | | | | | | | vTable(v6) & vTable(v1) & vOptTable(v4) & % 111.36/15.50 | | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & vPred(v0)) % 111.36/15.50 | | | | | | | | % 111.36/15.50 | | | | | | | | BETA: splitting (1462) gives: % 111.36/15.50 | | | | | | | | % 111.36/15.50 | | | | | | | | Case 1: % 111.36/15.50 | | | | | | | | | % 111.36/15.50 | | | | | | | | | (1463) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 111.36/15.50 | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 111.36/15.50 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 111.36/15.50 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 111.36/15.50 | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 111.36/15.50 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 111.36/15.50 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 111.36/15.50 | | | | | | | | | vDifference(v2, v3) = all_338_0 & vtvalue(v8) = v9 % 111.36/15.50 | | | | | | | | | & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 111.36/15.50 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 111.36/15.50 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 111.36/15.50 | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 111.36/15.50 | | | | | | | | | vAttrL(v4)) | ? [v0: vTable] : ? [v1: vTable] : % 111.36/15.50 | | | | | | | | | ? [v2: vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : % 111.36/15.50 | | | | | | | | | ? [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 111.36/15.50 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 111.36/15.50 | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = v4 % 111.36/15.50 | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 111.36/15.50 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 111.36/15.50 | | | | | | | | | vIntersection(v2, v3) = all_338_0 & vtvalue(v8) = % 111.36/15.50 | | | | | | | | | v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 111.36/15.50 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 111.36/15.50 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 111.36/15.50 | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 111.36/15.50 | | | | | | | | | vAttrL(v4)) % 111.36/15.50 | | | | | | | | | % 111.36/15.50 | | | | | | | | | BETA: splitting (1463) gives: % 111.36/15.50 | | | | | | | | | % 111.36/15.50 | | | | | | | | | Case 1: % 111.36/15.50 | | | | | | | | | | % 111.36/15.50 | | | | | | | | | | (1464) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 111.36/15.50 | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 111.36/15.50 | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 111.36/15.50 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 111.36/15.50 | | | | | | | | | | (vrawDifference(v5, v6) = v7 & vgetAttrL(v0) = v4 % 111.36/15.50 | | | | | | | | | | & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 111.36/15.50 | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 111.36/15.50 | | | | | | | | | | & vDifference(v2, v3) = all_338_0 & vtvalue(v8) % 111.36/15.50 | | | | | | | | | | = v9 & vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 111.36/15.50 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 111.36/15.50 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & % 111.36/15.50 | | | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 111.36/15.50 | | | | | | | | | | vRawTable(v5) & vAttrL(v4)) % 111.36/15.50 | | | | | | | | | | % 111.36/15.50 | | | | | | | | | | DELTA: instantiating (1464) with fresh symbols all_613_0, % 111.36/15.50 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 111.36/15.50 | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, all_613_9 % 111.36/15.50 | | | | | | | | | | gives: % 111.36/15.50 | | | | | | | | | | (1465) vrawDifference(all_613_4, all_613_3) = all_613_2 & % 111.36/15.50 | | | | | | | | | | vgetAttrL(all_613_9) = all_613_5 & % 111.36/15.50 | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & % 111.36/15.50 | | | | | | | | | | vgetRaw(all_613_9) = all_613_4 & vtable(all_613_5, % 111.36/15.50 | | | | | | | | | | all_613_2) = all_613_1 & vsomeQuery(all_613_0) = % 111.36/15.50 | | | | | | | | | | all_346_1 & vDifference(all_613_7, all_613_6) = % 111.36/15.50 | | | | | | | | | | all_338_0 & vtvalue(all_613_1) = all_613_0 & % 111.36/15.50 | | | | | | | | | | vtvalue(all_613_8) = all_613_6 & % 111.36/15.50 | | | | | | | | | | vtvalue(all_613_9) = all_613_7 & % 111.36/15.50 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 111.36/15.50 | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 111.36/15.50 | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 111.36/15.50 | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 111.36/15.50 | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 111.36/15.50 | | | | | | | | | | vAttrL(all_613_5) % 111.36/15.50 | | | | | | | | | | % 111.36/15.50 | | | | | | | | | | ALPHA: (1465) implies: % 111.36/15.50 | | | | | | | | | | (1466) vQuery(all_613_7) % 111.36/15.50 | | | | | | | | | | (1467) vQuery(all_613_6) % 111.36/15.50 | | | | | | | | | | (1468) vDifference(all_613_7, all_613_6) = all_338_0 % 111.36/15.50 | | | | | | | | | | % 111.36/15.50 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 111.36/15.50 | | | | | | | | | | vq2, all_613_7, all_613_6, all_338_0, simplifying % 111.36/15.50 | | | | | | | | | | with (4), (5), (18), (1466), (1467), (1468) gives: % 111.36/15.50 | | | | | | | | | | (1469) $false % 111.36/15.50 | | | | | | | | | | % 111.36/15.50 | | | | | | | | | | CLOSE: (1469) is inconsistent. % 111.36/15.50 | | | | | | | | | | % 111.36/15.50 | | | | | | | | | Case 2: % 111.36/15.50 | | | | | | | | | | % 111.36/15.50 | | | | | | | | | | (1470) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 111.36/15.50 | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 111.36/15.50 | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 111.36/15.50 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 111.36/15.50 | | | | | | | | | | (vrawIntersection(v5, v6) = v7 & vgetAttrL(v0) = % 111.36/15.50 | | | | | | | | | | v4 & vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & % 111.36/15.50 | | | | | | | | | | vtable(v4, v7) = v8 & vsomeQuery(v9) = all_346_1 % 111.36/15.50 | | | | | | | | | | & vIntersection(v2, v3) = all_338_0 & % 111.36/15.50 | | | | | | | | | | vtvalue(v8) = v9 & vtvalue(v1) = v3 & % 111.36/15.50 | | | | | | | | | | vtvalue(v0) = v2 & vOptQuery(all_346_1) & % 111.36/15.50 | | | | | | | | | | vTable(v8) & vTable(v1) & vTable(v0) & % 111.36/15.50 | | | | | | | | | | vQuery(v9) & vQuery(v3) & vQuery(v2) & % 111.36/15.50 | | | | | | | | | | vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 111.36/15.50 | | | | | | | | | | vAttrL(v4)) % 111.36/15.50 | | | | | | | | | | % 111.36/15.50 | | | | | | | | | | DELTA: instantiating (1470) with fresh symbols all_613_0, % 111.36/15.50 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 111.36/15.50 | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, all_613_9 % 111.36/15.50 | | | | | | | | | | gives: % 111.36/15.50 | | | | | | | | | | (1471) vrawIntersection(all_613_4, all_613_3) = all_613_2 % 111.36/15.50 | | | | | | | | | | & vgetAttrL(all_613_9) = all_613_5 & % 111.36/15.50 | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & % 111.36/15.50 | | | | | | | | | | vgetRaw(all_613_9) = all_613_4 & vtable(all_613_5, % 111.36/15.50 | | | | | | | | | | all_613_2) = all_613_1 & vsomeQuery(all_613_0) = % 111.36/15.50 | | | | | | | | | | all_346_1 & vIntersection(all_613_7, all_613_6) = % 111.36/15.50 | | | | | | | | | | all_338_0 & vtvalue(all_613_1) = all_613_0 & % 111.36/15.50 | | | | | | | | | | vtvalue(all_613_8) = all_613_6 & % 111.36/15.50 | | | | | | | | | | vtvalue(all_613_9) = all_613_7 & % 111.36/15.50 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 111.36/15.50 | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 111.36/15.50 | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 111.36/15.50 | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 111.36/15.50 | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 111.36/15.50 | | | | | | | | | | vAttrL(all_613_5) % 111.36/15.50 | | | | | | | | | | % 111.36/15.50 | | | | | | | | | | ALPHA: (1471) implies: % 111.36/15.50 | | | | | | | | | | (1472) vQuery(all_613_7) % 111.36/15.51 | | | | | | | | | | (1473) vQuery(all_613_6) % 111.36/15.51 | | | | | | | | | | (1474) vIntersection(all_613_7, all_613_6) = all_338_0 % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 111.36/15.51 | | | | | | | | | | vq2, all_613_7, all_613_6, all_338_0, simplifying % 111.36/15.51 | | | | | | | | | | with (4), (5), (18), (1472), (1473), (1474) gives: % 111.36/15.51 | | | | | | | | | | (1475) $false % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | CLOSE: (1475) is inconsistent. % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | End of split % 111.36/15.51 | | | | | | | | | % 111.36/15.51 | | | | | | | | Case 2: % 111.36/15.51 | | | | | | | | | % 111.36/15.51 | | | | | | | | | (1476) ? [v0: vTable] : ? [v1: vTable] : ? [v2: vQuery] % 111.36/15.51 | | | | | | | | | : ? [v3: vQuery] : ? [v4: vAttrL] : ? [v5: % 111.36/15.51 | | | | | | | | | vRawTable] : ? [v6: vRawTable] : ? [v7: % 111.36/15.51 | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 111.36/15.51 | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 111.36/15.51 | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 111.36/15.51 | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 111.36/15.51 | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 111.36/15.51 | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 111.36/15.51 | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 111.36/15.51 | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & vQuery(v2) % 111.36/15.51 | | | | | | | | | & vRawTable(v7) & vRawTable(v6) & vRawTable(v5) & % 111.36/15.51 | | | | | | | | | vAttrL(v4)) | ? [v0: vPred] : ? [v1: vTable] : % 111.36/15.51 | | | | | | | | | ? [v2: vSelect] : ? [v3: vOptTable] : ? [v4: % 111.36/15.51 | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : ? % 111.36/15.51 | | | | | | | | | [v7: vTable] : ? [v8: vQuery] : (vfilterTable(v6, % 111.36/15.51 | | | | | | | | | v0) = v1 & vprojectTable(v2, v1) = v4 & % 111.36/15.51 | | | | | | | | | vlookupStore(v5, all_346_6) = v3 & % 111.36/15.51 | | | | | | | | | visSomeTable(v4) = 0 & visSomeTable(v3) = 0 & % 111.36/15.51 | | | | | | | | | vgetTable(v4) = v7 & vgetTable(v3) = v6 & % 111.36/15.51 | | | | | | | | | vsomeQuery(v8) = all_346_1 & vselectFromWhere(v2, % 111.36/15.51 | | | | | | | | | v5, v0) = all_338_0 & vtvalue(v7) = v8 & % 111.36/15.51 | | | | | | | | | vOptQuery(all_346_1) & vSelect(v2) & vTable(v7) & % 111.36/15.51 | | | | | | | | | vTable(v6) & vTable(v1) & vOptTable(v4) & % 111.36/15.51 | | | | | | | | | vOptTable(v3) & vQuery(v8) & vName(v5) & % 111.36/15.51 | | | | | | | | | vPred(v0)) % 111.36/15.51 | | | | | | | | | % 111.36/15.51 | | | | | | | | | BETA: splitting (1476) gives: % 111.36/15.51 | | | | | | | | | % 111.36/15.51 | | | | | | | | | Case 1: % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | (1477) ? [v0: vTable] : ? [v1: vTable] : ? [v2: % 111.36/15.51 | | | | | | | | | | vQuery] : ? [v3: vQuery] : ? [v4: vAttrL] : ? % 111.36/15.51 | | | | | | | | | | [v5: vRawTable] : ? [v6: vRawTable] : ? [v7: % 111.36/15.51 | | | | | | | | | | vRawTable] : ? [v8: vTable] : ? [v9: vQuery] : % 111.36/15.51 | | | | | | | | | | (vrawUnion(v5, v6) = v7 & vgetAttrL(v0) = v4 & % 111.36/15.51 | | | | | | | | | | vgetRaw(v1) = v6 & vgetRaw(v0) = v5 & vtable(v4, % 111.36/15.51 | | | | | | | | | | v7) = v8 & vsomeQuery(v9) = all_346_1 & % 111.36/15.51 | | | | | | | | | | vUnion(v2, v3) = all_338_0 & vtvalue(v8) = v9 & % 111.36/15.51 | | | | | | | | | | vtvalue(v1) = v3 & vtvalue(v0) = v2 & % 111.36/15.51 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v8) & vTable(v1) & % 111.36/15.51 | | | | | | | | | | vTable(v0) & vQuery(v9) & vQuery(v3) & % 111.36/15.51 | | | | | | | | | | vQuery(v2) & vRawTable(v7) & vRawTable(v6) & % 111.36/15.51 | | | | | | | | | | vRawTable(v5) & vAttrL(v4)) % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | DELTA: instantiating (1477) with fresh symbols all_613_0, % 111.36/15.51 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 111.36/15.51 | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8, all_613_9 % 111.36/15.51 | | | | | | | | | | gives: % 111.36/15.51 | | | | | | | | | | (1478) vrawUnion(all_613_4, all_613_3) = all_613_2 & % 111.36/15.51 | | | | | | | | | | vgetAttrL(all_613_9) = all_613_5 & % 111.36/15.51 | | | | | | | | | | vgetRaw(all_613_8) = all_613_3 & % 111.36/15.51 | | | | | | | | | | vgetRaw(all_613_9) = all_613_4 & vtable(all_613_5, % 111.36/15.51 | | | | | | | | | | all_613_2) = all_613_1 & vsomeQuery(all_613_0) = % 111.36/15.51 | | | | | | | | | | all_346_1 & vUnion(all_613_7, all_613_6) = % 111.36/15.51 | | | | | | | | | | all_338_0 & vtvalue(all_613_1) = all_613_0 & % 111.36/15.51 | | | | | | | | | | vtvalue(all_613_8) = all_613_6 & % 111.36/15.51 | | | | | | | | | | vtvalue(all_613_9) = all_613_7 & % 111.36/15.51 | | | | | | | | | | vOptQuery(all_346_1) & vTable(all_613_1) & % 111.36/15.51 | | | | | | | | | | vTable(all_613_8) & vTable(all_613_9) & % 111.36/15.51 | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_6) & % 111.36/15.51 | | | | | | | | | | vQuery(all_613_7) & vRawTable(all_613_2) & % 111.36/15.51 | | | | | | | | | | vRawTable(all_613_3) & vRawTable(all_613_4) & % 111.36/15.51 | | | | | | | | | | vAttrL(all_613_5) % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | ALPHA: (1478) implies: % 111.36/15.51 | | | | | | | | | | (1479) vQuery(all_613_7) % 111.36/15.51 | | | | | | | | | | (1480) vQuery(all_613_6) % 111.36/15.51 | | | | | | | | | | (1481) vTable(all_613_9) % 111.36/15.51 | | | | | | | | | | (1482) vtvalue(all_613_9) = all_613_7 % 111.36/15.51 | | | | | | | | | | (1483) vUnion(all_613_7, all_613_6) = all_338_0 % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_613_9, % 111.36/15.51 | | | | | | | | | | all_613_7, simplifying with (1481), (1482) gives: % 111.36/15.51 | | | | | | | | | | (1484) visValue(all_613_7) = 0 % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | GROUND_INST: instantiating (isValue-2) with all_605_4, % 111.36/15.51 | | | | | | | | | | all_605_3, vq1, simplifying with (1456), (1457), % 111.36/15.51 | | | | | | | | | | (1459) gives: % 111.36/15.51 | | | | | | | | | | (1485) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_7, % 111.36/15.51 | | | | | | | | | | all_613_6, all_338_0, simplifying with (4), (5), % 111.36/15.51 | | | | | | | | | | (18), (1479), (1480), (1483) gives: % 111.36/15.51 | | | | | | | | | | (1486) all_613_6 = vq2 & all_613_7 = vq1 % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | ALPHA: (1486) implies: % 111.36/15.51 | | | | | | | | | | (1487) all_613_7 = vq1 % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | DELTA: instantiating (1485) with fresh symbol all_631_0 % 111.36/15.51 | | | | | | | | | | gives: % 111.36/15.51 | | | | | | | | | | (1488) ~ (all_631_0 = 0) & visValue(vq1) = all_631_0 % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | ALPHA: (1488) implies: % 111.36/15.51 | | | | | | | | | | (1489) ~ (all_631_0 = 0) % 111.36/15.51 | | | | | | | | | | (1490) visValue(vq1) = all_631_0 % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | REDUCE: (1484), (1487) imply: % 111.36/15.51 | | | | | | | | | | (1491) visValue(vq1) = 0 % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_631_0, vq1, % 111.36/15.51 | | | | | | | | | | simplifying with (1490), (1491) gives: % 111.36/15.51 | | | | | | | | | | (1492) all_631_0 = 0 % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | REDUCE: (1489), (1492) imply: % 111.36/15.51 | | | | | | | | | | (1493) $false % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | CLOSE: (1493) is inconsistent. % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | Case 2: % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | (1494) ? [v0: vPred] : ? [v1: vTable] : ? [v2: % 111.36/15.51 | | | | | | | | | | vSelect] : ? [v3: vOptTable] : ? [v4: % 111.36/15.51 | | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 111.36/15.51 | | | | | | | | | | ? [v7: vTable] : ? [v8: vQuery] : % 111.36/15.51 | | | | | | | | | | (vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 111.36/15.51 | | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 111.36/15.51 | | | | | | | | | | visSomeTable(v4) = 0 & visSomeTable(v3) = 0 & % 111.36/15.51 | | | | | | | | | | vgetTable(v4) = v7 & vgetTable(v3) = v6 & % 111.36/15.51 | | | | | | | | | | vsomeQuery(v8) = all_346_1 & % 111.36/15.51 | | | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 111.36/15.51 | | | | | | | | | | vtvalue(v7) = v8 & vOptQuery(all_346_1) & % 111.36/15.51 | | | | | | | | | | vSelect(v2) & vTable(v7) & vTable(v6) & % 111.36/15.51 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 111.36/15.51 | | | | | | | | | | vQuery(v8) & vName(v5) & vPred(v0)) % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | DELTA: instantiating (1494) with fresh symbols all_613_0, % 111.36/15.51 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 111.36/15.51 | | | | | | | | | | all_613_5, all_613_6, all_613_7, all_613_8 gives: % 111.36/15.51 | | | | | | | | | | (1495) vfilterTable(all_613_2, all_613_8) = all_613_7 & % 111.36/15.51 | | | | | | | | | | vprojectTable(all_613_6, all_613_7) = all_613_4 & % 111.36/15.51 | | | | | | | | | | vlookupStore(all_613_3, all_346_6) = all_613_5 & % 111.36/15.51 | | | | | | | | | | visSomeTable(all_613_4) = 0 & % 111.36/15.51 | | | | | | | | | | visSomeTable(all_613_5) = 0 & vgetTable(all_613_4) % 111.36/15.51 | | | | | | | | | | = all_613_1 & vgetTable(all_613_5) = all_613_2 & % 111.36/15.51 | | | | | | | | | | vsomeQuery(all_613_0) = all_346_1 & % 111.36/15.51 | | | | | | | | | | vselectFromWhere(all_613_6, all_613_3, all_613_8) % 111.36/15.51 | | | | | | | | | | = all_338_0 & vtvalue(all_613_1) = all_613_0 & % 111.36/15.51 | | | | | | | | | | vOptQuery(all_346_1) & vSelect(all_613_6) & % 111.36/15.51 | | | | | | | | | | vTable(all_613_1) & vTable(all_613_2) & % 111.36/15.51 | | | | | | | | | | vTable(all_613_7) & vOptTable(all_613_4) & % 111.36/15.51 | | | | | | | | | | vOptTable(all_613_5) & vQuery(all_613_0) & % 111.36/15.51 | | | | | | | | | | vName(all_613_3) & vPred(all_613_8) % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | ALPHA: (1495) implies: % 111.36/15.51 | | | | | | | | | | (1496) vPred(all_613_8) % 111.36/15.51 | | | | | | | | | | (1497) vName(all_613_3) % 111.36/15.51 | | | | | | | | | | (1498) vSelect(all_613_6) % 111.36/15.51 | | | | | | | | | | (1499) vselectFromWhere(all_613_6, all_613_3, all_613_8) % 111.36/15.51 | | | | | | | | | | = all_338_0 % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | GROUND_INST: instantiating (DIFF-selectFromWhere-Union) with % 111.36/15.51 | | | | | | | | | | all_613_3, all_613_8, all_613_6, vq2, vq1, % 111.36/15.51 | | | | | | | | | | all_338_0, simplifying with (4), (5), (18), % 111.36/15.51 | | | | | | | | | | (1496), (1497), (1498), (1499) gives: % 111.36/15.51 | | | | | | | | | | (1500) $false % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | CLOSE: (1500) is inconsistent. % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | End of split % 111.36/15.51 | | | | | | | | | % 111.36/15.51 | | | | | | | | End of split % 111.36/15.51 | | | | | | | | % 111.36/15.51 | | | | | | | Case 2: % 111.36/15.51 | | | | | | | | % 111.36/15.51 | | | | | | | | (1501) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] : % 111.36/15.51 | | | | | | | | ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 111.36/15.51 | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : (all_346_1 % 111.36/15.51 | | | | | | | | = vnoQuery & ~ (v7 = 0) & vfilterTable(v6, v0) = v1 % 111.36/15.51 | | | | | | | | & vprojectTable(v2, v1) = v4 & vlookupStore(v5, % 111.36/15.51 | | | | | | | | all_346_6) = v3 & visSomeTable(v4) = v7 & % 111.36/15.51 | | | | | | | | visSomeTable(v3) = 0 & vgetTable(v3) = v6 & % 111.36/15.51 | | | | | | | | vselectFromWhere(v2, v5, v0) = all_338_0 & % 111.36/15.51 | | | | | | | | vSelect(v2) & vTable(v6) & vTable(v1) & % 111.36/15.51 | | | | | | | | vOptTable(v4) & vOptTable(v3) & vName(v5) & % 111.36/15.51 | | | | | | | | vPred(v0)) | ? [v0: vTable] : ? [v1: vQuery] : ? % 111.36/15.51 | | | | | | | | [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 111.36/15.51 | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 111.36/15.51 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 111.36/15.51 | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) = % 111.36/15.51 | | | | | | | | v5 & vDifference(v3, v1) = all_338_0 & vtvalue(v0) = % 111.36/15.51 | | | | | | | | v3 & vOptQuery(v2) & vOptQuery(all_346_1) & % 111.36/15.51 | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & vQuery(v3) & % 111.36/15.51 | | | | | | | | vQuery(v1) & ! [v6: vTable] : ( ~ (vtvalue(v6) = % 111.36/15.51 | | | | | | | | v1) | ~ vTable(v6))) | ? [v0: vTable] : ? % 111.36/15.51 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 111.36/15.51 | | | | | | | | ? [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 111.36/15.51 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 111.36/15.51 | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 111.36/15.51 | | | | | | | | vIntersection(v3, v4) = v5 & vIntersection(v3, v1) = % 111.36/15.51 | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 111.36/15.51 | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 111.36/15.51 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 111.36/15.51 | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ vTable(v6))) % 111.36/15.51 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 111.36/15.51 | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : ? % 111.36/15.51 | | | | | | | | [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 111.36/15.51 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 111.36/15.51 | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 & % 111.36/15.51 | | | | | | | | vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 & % 111.36/15.51 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vTable(v0) & % 111.36/15.51 | | | | | | | | vQuery(v5) & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 111.36/15.51 | | | | | | | | ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 111.36/15.51 | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] : % 111.36/15.51 | | | | | | | | ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] : % 111.36/15.51 | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 111.36/15.51 | | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 111.36/15.51 | | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & % 111.36/15.51 | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & vPred(v0)) % 111.36/15.51 | | | | | | | | % 111.36/15.51 | | | | | | | | BETA: splitting (1501) gives: % 111.36/15.51 | | | | | | | | % 111.36/15.51 | | | | | | | | Case 1: % 111.36/15.51 | | | | | | | | | % 111.36/15.51 | | | | | | | | | (1502) ? [v0: vPred] : ? [v1: vTable] : ? [v2: vSelect] % 111.36/15.51 | | | | | | | | | : ? [v3: vOptTable] : ? [v4: vOptTable] : ? [v5: % 111.36/15.51 | | | | | | | | | vName] : ? [v6: vTable] : ? [v7: int] : % 111.36/15.51 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v7 = 0) & % 111.36/15.51 | | | | | | | | | vfilterTable(v6, v0) = v1 & vprojectTable(v2, v1) % 111.36/15.51 | | | | | | | | | = v4 & vlookupStore(v5, all_346_6) = v3 & % 111.36/15.51 | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 111.36/15.51 | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, v0) % 111.36/15.51 | | | | | | | | | = all_338_0 & vSelect(v2) & vTable(v6) & % 111.36/15.51 | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 111.36/15.51 | | | | | | | | | vName(v5) & vPred(v0)) | ? [v0: vTable] : ? [v1: % 111.36/15.51 | | | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 111.36/15.51 | | | | | | | | | ? [v4: vQuery] : ? [v5: vQuery] : (vreduce(v1, % 111.36/15.51 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 111.36/15.51 | | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 111.36/15.51 | | | | | | | | | vDifference(v3, v4) = v5 & vDifference(v3, v1) = % 111.36/15.51 | | | | | | | | | all_338_0 & vtvalue(v0) = v3 & vOptQuery(v2) & % 111.36/15.51 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 111.36/15.51 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 111.36/15.51 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 111.36/15.51 | | | | | | | | | vTable(v6))) % 111.36/15.51 | | | | | | | | | % 111.36/15.51 | | | | | | | | | BETA: splitting (1502) gives: % 111.36/15.51 | | | | | | | | | % 111.36/15.51 | | | | | | | | | Case 1: % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | (1503) ? [v0: vPred] : ? [v1: vTable] : ? [v2: % 111.36/15.51 | | | | | | | | | | vSelect] : ? [v3: vOptTable] : ? [v4: % 111.36/15.51 | | | | | | | | | | vOptTable] : ? [v5: vName] : ? [v6: vTable] : % 111.36/15.51 | | | | | | | | | | ? [v7: int] : (all_346_1 = vnoQuery & ~ (v7 = 0) % 111.36/15.51 | | | | | | | | | | & vfilterTable(v6, v0) = v1 & vprojectTable(v2, % 111.36/15.51 | | | | | | | | | | v1) = v4 & vlookupStore(v5, all_346_6) = v3 & % 111.36/15.51 | | | | | | | | | | visSomeTable(v4) = v7 & visSomeTable(v3) = 0 & % 111.36/15.51 | | | | | | | | | | vgetTable(v3) = v6 & vselectFromWhere(v2, v5, % 111.36/15.51 | | | | | | | | | | v0) = all_338_0 & vSelect(v2) & vTable(v6) & % 111.36/15.51 | | | | | | | | | | vTable(v1) & vOptTable(v4) & vOptTable(v3) & % 111.36/15.51 | | | | | | | | | | vName(v5) & vPred(v0)) % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | DELTA: instantiating (1503) with fresh symbols all_612_0, % 111.36/15.51 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4, % 111.36/15.51 | | | | | | | | | | all_612_5, all_612_6, all_612_7 gives: % 111.36/15.51 | | | | | | | | | | (1504) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 111.36/15.51 | | | | | | | | | | vfilterTable(all_612_1, all_612_7) = all_612_6 & % 111.36/15.51 | | | | | | | | | | vprojectTable(all_612_5, all_612_6) = all_612_3 & % 111.36/15.51 | | | | | | | | | | vlookupStore(all_612_2, all_346_6) = all_612_4 & % 111.36/15.51 | | | | | | | | | | visSomeTable(all_612_3) = all_612_0 & % 111.36/15.51 | | | | | | | | | | visSomeTable(all_612_4) = 0 & vgetTable(all_612_4) % 111.36/15.51 | | | | | | | | | | = all_612_1 & vselectFromWhere(all_612_5, % 111.36/15.51 | | | | | | | | | | all_612_2, all_612_7) = all_338_0 & % 111.36/15.51 | | | | | | | | | | vSelect(all_612_5) & vTable(all_612_1) & % 111.36/15.51 | | | | | | | | | | vTable(all_612_6) & vOptTable(all_612_3) & % 111.36/15.51 | | | | | | | | | | vOptTable(all_612_4) & vName(all_612_2) & % 111.36/15.51 | | | | | | | | | | vPred(all_612_7) % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1504) are inconsistent by % 111.36/15.51 | | | | | | | | | | sub-proof #10. % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | Case 2: % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | (1505) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 111.36/15.51 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 111.36/15.51 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 111.36/15.51 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 111.36/15.51 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vDifference(v3, v4) % 111.36/15.51 | | | | | | | | | | = v5 & vDifference(v3, v1) = all_338_0 & % 111.36/15.51 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 111.36/15.51 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 111.36/15.51 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 111.36/15.51 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 111.36/15.51 | | | | | | | | | | vTable(v6))) % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | DELTA: instantiating (1505) with fresh symbols all_613_0, % 111.36/15.51 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, all_613_5 % 111.36/15.51 | | | | | | | | | | gives: % 111.36/15.51 | | | | | | | | | | (1506) vreduce(all_613_4, all_346_6) = all_613_3 & % 111.36/15.51 | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 111.36/15.51 | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 111.36/15.51 | | | | | | | | | | vDifference(all_613_2, all_613_1) = all_613_0 & % 111.36/15.51 | | | | | | | | | | vDifference(all_613_2, all_613_4) = all_338_0 & % 111.36/15.51 | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 111.36/15.51 | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 111.36/15.51 | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 111.36/15.51 | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 111.36/15.51 | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 111.36/15.51 | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | ALPHA: (1506) implies: % 111.36/15.51 | | | | | | | | | | (1507) vQuery(all_613_4) % 111.36/15.51 | | | | | | | | | | (1508) vQuery(all_613_2) % 111.36/15.51 | | | | | | | | | | (1509) vDifference(all_613_2, all_613_4) = all_338_0 % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 111.36/15.51 | | | | | | | | | | vq2, all_613_2, all_613_4, all_338_0, simplifying % 111.36/15.51 | | | | | | | | | | with (4), (5), (18), (1507), (1508), (1509) gives: % 111.36/15.51 | | | | | | | | | | (1510) $false % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | CLOSE: (1510) is inconsistent. % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | End of split % 111.36/15.51 | | | | | | | | | % 111.36/15.51 | | | | | | | | Case 2: % 111.36/15.51 | | | | | | | | | % 111.36/15.51 | | | | | | | | | (1511) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 111.36/15.51 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 111.36/15.51 | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 111.36/15.51 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 111.36/15.51 | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, v4) % 111.36/15.51 | | | | | | | | | = v5 & vIntersection(v3, v1) = all_338_0 & % 111.36/15.51 | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 111.36/15.51 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 111.36/15.51 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 111.36/15.51 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 111.36/15.51 | | | | | | | | | vTable(v6))) | ? [v0: vTable] : ? [v1: vQuery] % 111.36/15.51 | | | | | | | | | : ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: % 111.36/15.51 | | | | | | | | | vQuery] : ? [v5: vQuery] : (vreduce(v1, % 111.36/15.51 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 111.36/15.51 | | | | | | | | | vgetQuery(v2) = v4 & vsomeQuery(v5) = all_346_1 & % 111.36/15.51 | | | | | | | | | vUnion(v3, v4) = v5 & vUnion(v3, v1) = all_338_0 & % 111.36/15.51 | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 111.36/15.51 | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 111.36/15.51 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 111.36/15.51 | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 111.36/15.51 | | | | | | | | | vTable(v6))) | ? [v0: vPred] : ? [v1: vSelect] % 111.36/15.51 | | | | | | | | | : ? [v2: vOptTable] : ? [v3: vName] : ? [v4: int] % 111.36/15.51 | | | | | | | | | : (all_346_1 = vnoQuery & ~ (v4 = 0) & % 111.36/15.51 | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & % 111.36/15.51 | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 111.36/15.51 | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) & % 111.36/15.51 | | | | | | | | | vName(v3) & vPred(v0)) % 111.36/15.51 | | | | | | | | | % 111.36/15.51 | | | | | | | | | BETA: splitting (1511) gives: % 111.36/15.51 | | | | | | | | | % 111.36/15.51 | | | | | | | | | Case 1: % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | (1512) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 111.36/15.51 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 111.36/15.51 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 111.36/15.51 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 111.36/15.51 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vIntersection(v3, % 111.36/15.51 | | | | | | | | | | v4) = v5 & vIntersection(v3, v1) = all_338_0 & % 111.36/15.51 | | | | | | | | | | vtvalue(v0) = v3 & vOptQuery(v2) & % 111.36/15.51 | | | | | | | | | | vOptQuery(all_346_1) & vTable(v0) & vQuery(v5) & % 111.36/15.51 | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & ! [v6: % 111.36/15.51 | | | | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 111.36/15.51 | | | | | | | | | | vTable(v6))) % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | DELTA: instantiating (1512) with fresh symbols all_613_0, % 111.36/15.51 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, all_613_5 % 111.36/15.51 | | | | | | | | | | gives: % 111.36/15.51 | | | | | | | | | | (1513) vreduce(all_613_4, all_346_6) = all_613_3 & % 111.36/15.51 | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 111.36/15.51 | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 111.36/15.51 | | | | | | | | | | vIntersection(all_613_2, all_613_1) = all_613_0 & % 111.36/15.51 | | | | | | | | | | vIntersection(all_613_2, all_613_4) = all_338_0 & % 111.36/15.51 | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 111.36/15.51 | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 111.36/15.51 | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 111.36/15.51 | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 111.36/15.51 | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 111.36/15.51 | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | ALPHA: (1513) implies: % 111.36/15.51 | | | | | | | | | | (1514) vQuery(all_613_4) % 111.36/15.51 | | | | | | | | | | (1515) vQuery(all_613_2) % 111.36/15.51 | | | | | | | | | | (1516) vIntersection(all_613_2, all_613_4) = all_338_0 % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 111.36/15.51 | | | | | | | | | | vq2, all_613_2, all_613_4, all_338_0, simplifying % 111.36/15.51 | | | | | | | | | | with (4), (5), (18), (1514), (1515), (1516) gives: % 111.36/15.51 | | | | | | | | | | (1517) $false % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | CLOSE: (1517) is inconsistent. % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | Case 2: % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | (1518) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 111.36/15.51 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 111.36/15.51 | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 111.36/15.51 | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 111.36/15.51 | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 111.36/15.51 | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 111.36/15.51 | | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 111.36/15.51 | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 111.36/15.51 | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 111.36/15.51 | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) | ? [v0: % 111.36/15.51 | | | | | | | | | | vPred] : ? [v1: vSelect] : ? [v2: vOptTable] : % 111.36/15.51 | | | | | | | | | | ? [v3: vName] : ? [v4: int] : (all_346_1 = % 111.36/15.51 | | | | | | | | | | vnoQuery & ~ (v4 = 0) & vlookupStore(v3, % 111.36/15.51 | | | | | | | | | | all_346_6) = v2 & visSomeTable(v2) = v4 & % 111.36/15.51 | | | | | | | | | | vselectFromWhere(v1, v3, v0) = all_338_0 & % 111.36/15.51 | | | | | | | | | | vSelect(v1) & vOptTable(v2) & vName(v3) & % 111.36/15.51 | | | | | | | | | | vPred(v0)) % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | BETA: splitting (1518) gives: % 111.36/15.51 | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | Case 1: % 111.36/15.51 | | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | | (1519) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 111.36/15.51 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 111.36/15.51 | | | | | | | | | | | ? [v5: vQuery] : (vreduce(v1, all_346_6) = v2 & % 111.36/15.51 | | | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v4 & % 111.36/15.51 | | | | | | | | | | | vsomeQuery(v5) = all_346_1 & vUnion(v3, v4) = v5 % 111.36/15.51 | | | | | | | | | | | & vUnion(v3, v1) = all_338_0 & vtvalue(v0) = v3 % 111.36/15.51 | | | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 111.36/15.51 | | | | | | | | | | | vTable(v0) & vQuery(v5) & vQuery(v4) & % 111.36/15.51 | | | | | | | | | | | vQuery(v3) & vQuery(v1) & ! [v6: vTable] : ( ~ % 111.36/15.51 | | | | | | | | | | | (vtvalue(v6) = v1) | ~ vTable(v6))) % 111.36/15.51 | | | | | | | | | | | % 111.36/15.51 | | | | | | | | | | | DELTA: instantiating (1519) with fresh symbols all_613_0, % 111.36/15.51 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4, % 111.36/15.51 | | | | | | | | | | | all_613_5 gives: % 111.36/15.52 | | | | | | | | | | | (1520) vreduce(all_613_4, all_346_6) = all_613_3 & % 111.36/15.52 | | | | | | | | | | | visSomeQuery(all_613_3) = 0 & vgetQuery(all_613_3) % 111.36/15.52 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 111.36/15.52 | | | | | | | | | | | vUnion(all_613_2, all_613_1) = all_613_0 & % 111.36/15.52 | | | | | | | | | | | vUnion(all_613_2, all_613_4) = all_338_0 & % 111.36/15.52 | | | | | | | | | | | vtvalue(all_613_5) = all_613_2 & % 111.36/15.52 | | | | | | | | | | | vOptQuery(all_613_3) & vOptQuery(all_346_1) & % 111.36/15.52 | | | | | | | | | | | vTable(all_613_5) & vQuery(all_613_0) & % 111.36/15.52 | | | | | | | | | | | vQuery(all_613_1) & vQuery(all_613_2) & % 111.36/15.52 | | | | | | | | | | | vQuery(all_613_4) & ! [v0: vTable] : ( ~ % 111.36/15.52 | | | | | | | | | | | (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | ALPHA: (1520) implies: % 111.36/15.52 | | | | | | | | | | | (1521) vQuery(all_613_4) % 111.36/15.52 | | | | | | | | | | | (1522) vQuery(all_613_2) % 111.36/15.52 | | | | | | | | | | | (1523) vTable(all_613_5) % 111.36/15.52 | | | | | | | | | | | (1524) vtvalue(all_613_5) = all_613_2 % 111.36/15.52 | | | | | | | | | | | (1525) vUnion(all_613_2, all_613_4) = all_338_0 % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | GROUND_INST: instantiating (isValue-0) with all_613_5, % 111.36/15.52 | | | | | | | | | | | all_613_2, simplifying with (1523), (1524) gives: % 111.36/15.52 | | | | | | | | | | | (1526) visValue(all_613_2) = 0 % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | GROUND_INST: instantiating (isValue-2) with all_605_4, % 111.36/15.52 | | | | | | | | | | | all_605_3, vq1, simplifying with (1456), (1457), % 111.36/15.52 | | | | | | | | | | | (1459) gives: % 111.36/15.52 | | | | | | | | | | | (1527) ? [v0: int] : ( ~ (v0 = 0) & visValue(vq1) = v0) % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_2, % 111.36/15.52 | | | | | | | | | | | all_613_4, all_338_0, simplifying with (4), (5), % 111.36/15.52 | | | | | | | | | | | (18), (1521), (1522), (1525) gives: % 111.36/15.52 | | | | | | | | | | | (1528) all_613_2 = vq1 & all_613_4 = vq2 % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | ALPHA: (1528) implies: % 111.36/15.52 | | | | | | | | | | | (1529) all_613_2 = vq1 % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | DELTA: instantiating (1527) with fresh symbol all_634_0 % 111.36/15.52 | | | | | | | | | | | gives: % 111.36/15.52 | | | | | | | | | | | (1530) ~ (all_634_0 = 0) & visValue(vq1) = all_634_0 % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | ALPHA: (1530) implies: % 111.36/15.52 | | | | | | | | | | | (1531) ~ (all_634_0 = 0) % 111.36/15.52 | | | | | | | | | | | (1532) visValue(vq1) = all_634_0 % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | REDUCE: (1526), (1529) imply: % 111.36/15.52 | | | | | | | | | | | (1533) visValue(vq1) = 0 % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | GROUND_INST: instantiating (8) with 0, all_634_0, vq1, % 111.36/15.52 | | | | | | | | | | | simplifying with (1532), (1533) gives: % 111.36/15.52 | | | | | | | | | | | (1534) all_634_0 = 0 % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | REDUCE: (1531), (1534) imply: % 111.36/15.52 | | | | | | | | | | | (1535) $false % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | CLOSE: (1535) is inconsistent. % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | Case 2: % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | (1536) ? [v0: vPred] : ? [v1: vSelect] : ? [v2: % 111.36/15.52 | | | | | | | | | | | vOptTable] : ? [v3: vName] : ? [v4: int] : % 111.36/15.52 | | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v4 = 0) & % 111.36/15.52 | | | | | | | | | | | vlookupStore(v3, all_346_6) = v2 & % 111.36/15.52 | | | | | | | | | | | visSomeTable(v2) = v4 & vselectFromWhere(v1, v3, % 111.36/15.52 | | | | | | | | | | | v0) = all_338_0 & vSelect(v1) & vOptTable(v2) % 111.36/15.52 | | | | | | | | | | | & vName(v3) & vPred(v0)) % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | DELTA: instantiating (1536) with fresh symbols all_612_0, % 111.36/15.52 | | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 111.36/15.52 | | | | | | | | | | | (1537) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 111.36/15.52 | | | | | | | | | | | vlookupStore(all_612_1, all_346_6) = all_612_2 & % 111.36/15.52 | | | | | | | | | | | visSomeTable(all_612_2) = all_612_0 & % 111.36/15.52 | | | | | | | | | | | vselectFromWhere(all_612_3, all_612_1, all_612_4) % 111.36/15.52 | | | | | | | | | | | = all_338_0 & vSelect(all_612_3) & % 111.36/15.52 | | | | | | | | | | | vOptTable(all_612_2) & vName(all_612_1) & % 111.36/15.52 | | | | | | | | | | | vPred(all_612_4) % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1537) are inconsistent by % 111.36/15.52 | | | | | | | | | | | sub-proof #9. % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | End of split % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | End of split % 111.36/15.52 | | | | | | | | | % 111.36/15.52 | | | | | | | | End of split % 111.36/15.52 | | | | | | | | % 111.36/15.52 | | | | | | | End of split % 111.36/15.52 | | | | | | | % 111.36/15.52 | | | | | | Case 2: % 111.36/15.52 | | | | | | | % 111.36/15.52 | | | | | | | (1538) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 111.36/15.52 | | | | | | | ? [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & % 111.36/15.52 | | | | | | | ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 111.36/15.52 | | | | | | | visSomeQuery(v2) = v3 & vDifference(v4, v1) = % 111.36/15.52 | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 111.36/15.52 | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: vTable] % 111.36/15.52 | | | | | | | : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 111.36/15.52 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 111.36/15.52 | | | | | | | [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ % 111.36/15.52 | | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 111.36/15.52 | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v4, v1) = % 111.36/15.52 | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 111.36/15.52 | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: vTable] % 111.36/15.52 | | | | | | | : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 111.36/15.52 | | | | | | | vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 111.36/15.52 | | | | | | | [v3: int] : ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ % 111.36/15.52 | | | | | | | (v3 = 0) & vreduce(v1, all_346_6) = v2 & % 111.36/15.52 | | | | | | | visSomeQuery(v2) = v3 & vUnion(v4, v1) = all_338_0 & % 111.36/15.52 | | | | | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 111.36/15.52 | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 111.36/15.52 | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) | ? [v0: % 111.36/15.52 | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 111.36/15.52 | | | | | | | [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, all_346_6) % 111.36/15.52 | | | | | | | = v2 & visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 111.36/15.52 | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = v4 % 111.36/15.52 | | | | | | | & vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 111.36/15.52 | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 111.36/15.52 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 111.36/15.52 | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 111.36/15.52 | | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 111.36/15.52 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 111.36/15.52 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 111.36/15.52 | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 111.36/15.52 | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 111.36/15.52 | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 111.36/15.52 | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) = % 111.36/15.52 | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 111.36/15.52 | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! % 111.36/15.52 | | | | | | | [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 111.36/15.52 | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 111.36/15.52 | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 111.36/15.52 | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? [v1: % 111.36/15.52 | | | | | | | vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : ? % 111.36/15.52 | | | | | | | [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 111.36/15.52 | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 111.36/15.52 | | | | | | | vsomeQuery(v4) = all_346_1 & vUnion(v3, v1) = v4 & % 111.36/15.52 | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 111.36/15.52 | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 111.36/15.52 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! [v6: % 111.36/15.52 | | | | | | | vTable] : ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = % 111.36/15.52 | | | | | | | v0) | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 111.36/15.52 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | % 111.36/15.52 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 111.36/15.52 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 111.36/15.52 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.52 | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 111.36/15.52 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 111.36/15.52 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 111.36/15.52 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 111.36/15.52 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 111.36/15.52 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 111.36/15.52 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 111.36/15.52 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.52 | | | | | | | vIntersection(v0, v1) = all_338_0 & vOptQuery(v2) & % 111.36/15.52 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 111.36/15.52 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 111.36/15.52 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 111.36/15.52 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 111.36/15.52 | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 111.36/15.52 | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 111.36/15.52 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.52 | | | | | | | vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 111.36/15.52 | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 111.36/15.52 | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = % 111.36/15.52 | | | | | | | v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 111.36/15.52 | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 111.36/15.52 | | | | | | | ? [v0: vTable] : (all_346_1 = vnoQuery & vtvalue(v0) = % 111.36/15.52 | | | | | | | all_338_0 & vTable(v0)) % 111.36/15.52 | | | | | | | % 111.36/15.52 | | | | | | | BETA: splitting (1538) gives: % 111.36/15.52 | | | | | | | % 111.36/15.52 | | | | | | | Case 1: % 111.36/15.52 | | | | | | | | % 111.36/15.52 | | | | | | | | (1539) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: vOptQuery] % 111.36/15.52 | | | | | | | | : ? [v3: int] : ? [v4: vQuery] : (all_346_1 = % 111.36/15.52 | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v1, all_346_6) = v2 % 111.36/15.52 | | | | | | | | & visSomeQuery(v2) = v3 & vDifference(v4, v1) = % 111.36/15.52 | | | | | | | | all_338_0 & vtvalue(v0) = v4 & vOptQuery(v2) & % 111.36/15.52 | | | | | | | | vTable(v0) & vQuery(v4) & vQuery(v1) & ! [v5: % 111.36/15.52 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ vTable(v5))) % 111.36/15.52 | | | | | | | | | ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 111.36/15.52 | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 111.36/15.52 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 111.36/15.52 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.52 | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 111.36/15.52 | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 111.36/15.52 | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 111.36/15.52 | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 111.36/15.52 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : ? % 111.36/15.52 | | | | | | | | [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 111.36/15.52 | | | | | | | | vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = v3 % 111.36/15.52 | | | | | | | | & vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 111.36/15.52 | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & vQuery(v1) % 111.36/15.52 | | | | | | | | & ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 111.36/15.52 | | | | | | | | vTable(v5))) | ? [v0: vQuery] : ? [v1: vQuery] : % 111.36/15.52 | | | | | | | | ? [v2: vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] % 111.36/15.52 | | | | | | | | : (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 111.36/15.52 | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 111.36/15.52 | | | | | | | | vDifference(v3, v1) = v4 & vDifference(v0, v1) = % 111.36/15.52 | | | | | | | | all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) & % 111.36/15.52 | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) & % 111.36/15.52 | | | | | | | | ! [v5: vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) % 111.36/15.52 | | | | | | | | = v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 111.36/15.52 | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 111.36/15.52 | | | | | | | | = v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 111.36/15.52 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] : % 111.36/15.52 | | | | | | | | ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 111.36/15.52 | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 111.36/15.52 | | | | | | | | vsomeQuery(v4) = all_346_1 & vIntersection(v3, v1) = % 111.36/15.52 | | | | | | | | v4 & vIntersection(v0, v1) = all_338_0 & % 111.36/15.52 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 111.36/15.52 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 111.36/15.52 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 111.36/15.52 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 111.36/15.52 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 111.36/15.52 | | | | | | | | v0) | ~ vTable(v5))) % 111.36/15.52 | | | | | | | | % 111.36/15.52 | | | | | | | | BETA: splitting (1539) gives: % 111.36/15.52 | | | | | | | | % 111.36/15.52 | | | | | | | | Case 1: % 111.36/15.52 | | | | | | | | | % 111.36/15.52 | | | | | | | | | (1540) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 111.36/15.52 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 111.36/15.52 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 111.36/15.52 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.52 | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = v4 % 111.36/15.52 | | | | | | | | | & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 111.36/15.52 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 111.36/15.52 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vTable] : ? % 111.36/15.52 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 111.36/15.52 | | | | | | | | | ? [v4: vQuery] : (all_346_1 = vnoQuery & ~ (v3 = 0) % 111.36/15.52 | | | | | | | | | & vreduce(v1, all_346_6) = v2 & visSomeQuery(v2) = % 111.36/15.52 | | | | | | | | | v3 & vIntersection(v4, v1) = all_338_0 & % 111.36/15.52 | | | | | | | | | vtvalue(v0) = v4 & vOptQuery(v2) & vTable(v0) & % 111.36/15.52 | | | | | | | | | vQuery(v4) & vQuery(v1) & ! [v5: vTable] : ( ~ % 111.36/15.52 | | | | | | | | | (vtvalue(v5) = v1) | ~ vTable(v5))) % 111.36/15.52 | | | | | | | | | % 111.36/15.52 | | | | | | | | | BETA: splitting (1540) gives: % 111.36/15.52 | | | | | | | | | % 111.36/15.52 | | | | | | | | | Case 1: % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | (1541) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 111.36/15.52 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 111.36/15.52 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 111.36/15.52 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.52 | | | | | | | | | | vDifference(v4, v1) = all_338_0 & vtvalue(v0) = % 111.36/15.52 | | | | | | | | | | v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 111.36/15.52 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 111.36/15.52 | | | | | | | | | | = v1) | ~ vTable(v5))) % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | DELTA: instantiating (1541) with fresh symbols all_612_0, % 111.36/15.52 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 111.36/15.52 | | | | | | | | | | (1542) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 111.36/15.52 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 111.36/15.52 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 111.36/15.52 | | | | | | | | | | vDifference(all_612_0, all_612_3) = all_338_0 & % 111.36/15.52 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 111.36/15.52 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 111.36/15.52 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 111.36/15.52 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 111.36/15.52 | | | | | | | | | | vTable(v0)) % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1542) are inconsistent by % 111.36/15.52 | | | | | | | | | | sub-proof #8. % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | Case 2: % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | (1543) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 111.36/15.52 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 111.36/15.52 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 111.36/15.52 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.52 | | | | | | | | | | vIntersection(v4, v1) = all_338_0 & vtvalue(v0) % 111.36/15.52 | | | | | | | | | | = v4 & vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 111.36/15.52 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 111.36/15.52 | | | | | | | | | | = v1) | ~ vTable(v5))) % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | DELTA: instantiating (1543) with fresh symbols all_612_0, % 111.36/15.52 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 111.36/15.52 | | | | | | | | | | (1544) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 111.36/15.52 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 111.36/15.52 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 111.36/15.52 | | | | | | | | | | vIntersection(all_612_0, all_612_3) = all_338_0 & % 111.36/15.52 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 111.36/15.52 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 111.36/15.52 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 111.36/15.52 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 111.36/15.52 | | | | | | | | | | vTable(v0)) % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1544) are inconsistent by % 111.36/15.52 | | | | | | | | | | sub-proof #7. % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | End of split % 111.36/15.52 | | | | | | | | | % 111.36/15.52 | | | | | | | | Case 2: % 111.36/15.52 | | | | | | | | | % 111.36/15.52 | | | | | | | | | (1545) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 111.36/15.52 | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 111.36/15.52 | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 111.36/15.52 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.52 | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 111.36/15.52 | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 111.36/15.52 | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 111.36/15.52 | | | | | | | | | v1) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 111.36/15.52 | | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: vQuery] % 111.36/15.52 | | | | | | | | | : ? [v4: vQuery] : (vreduce(v0, all_346_6) = v2 & % 111.36/15.52 | | | | | | | | | visSomeQuery(v2) = 0 & vgetQuery(v2) = v3 & % 111.36/15.52 | | | | | | | | | vsomeQuery(v4) = all_346_1 & vDifference(v3, v1) = % 111.36/15.52 | | | | | | | | | v4 & vDifference(v0, v1) = all_338_0 & % 111.36/15.52 | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) % 111.36/15.52 | | | | | | | | | & vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 111.36/15.52 | | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = % 111.36/15.52 | | | | | | | | | v1) | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | % 111.36/15.52 | | | | | | | | | ~ vTable(v5)) & ! [v5: vTable] : ( ~ % 111.36/15.52 | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 111.36/15.52 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 111.36/15.52 | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 111.36/15.52 | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 111.36/15.52 | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 111.36/15.52 | | | | | | | | | vIntersection(v3, v1) = v4 & vIntersection(v0, v1) % 111.36/15.52 | | | | | | | | | = all_338_0 & vOptQuery(v2) & vOptQuery(all_346_1) % 111.36/15.52 | | | | | | | | | & vQuery(v4) & vQuery(v3) & vQuery(v1) & % 111.36/15.52 | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : ( % 111.36/15.52 | | | | | | | | | ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 111.36/15.52 | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] % 111.36/15.52 | | | | | | | | | : ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) % 111.36/15.52 | | | | | | | | | % 111.36/15.52 | | | | | | | | | BETA: splitting (1545) gives: % 111.36/15.52 | | | | | | | | | % 111.36/15.52 | | | | | | | | | Case 1: % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | (1546) ? [v0: vTable] : ? [v1: vQuery] : ? [v2: % 111.36/15.52 | | | | | | | | | | vOptQuery] : ? [v3: int] : ? [v4: vQuery] : % 111.36/15.52 | | | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v1, % 111.36/15.52 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.52 | | | | | | | | | | vUnion(v4, v1) = all_338_0 & vtvalue(v0) = v4 & % 111.36/15.52 | | | | | | | | | | vOptQuery(v2) & vTable(v0) & vQuery(v4) & % 111.36/15.52 | | | | | | | | | | vQuery(v1) & ! [v5: vTable] : ( ~ (vtvalue(v5) % 111.36/15.52 | | | | | | | | | | = v1) | ~ vTable(v5))) % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | DELTA: instantiating (1546) with fresh symbols all_612_0, % 111.36/15.52 | | | | | | | | | | all_612_1, all_612_2, all_612_3, all_612_4 gives: % 111.36/15.52 | | | | | | | | | | (1547) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & % 111.36/15.52 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_2 & % 111.36/15.52 | | | | | | | | | | visSomeQuery(all_612_2) = all_612_1 & % 111.36/15.52 | | | | | | | | | | vUnion(all_612_0, all_612_3) = all_338_0 & % 111.36/15.52 | | | | | | | | | | vtvalue(all_612_4) = all_612_0 & % 111.36/15.52 | | | | | | | | | | vOptQuery(all_612_2) & vTable(all_612_4) & % 111.36/15.52 | | | | | | | | | | vQuery(all_612_0) & vQuery(all_612_3) & ! [v0: % 111.36/15.52 | | | | | | | | | | vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 111.36/15.52 | | | | | | | | | | vTable(v0)) % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1547) are inconsistent by % 111.36/15.52 | | | | | | | | | | sub-proof #6. % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | Case 2: % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | (1548) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 111.36/15.52 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 111.36/15.52 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 111.36/15.52 | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 111.36/15.52 | | | | | | | | | | all_346_1 & vDifference(v3, v1) = v4 & % 111.36/15.52 | | | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) % 111.36/15.52 | | | | | | | | | | & vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) % 111.36/15.52 | | | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 111.36/15.52 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 111.36/15.52 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 111.36/15.52 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 111.36/15.52 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 111.36/15.52 | | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 111.36/15.52 | | | | | | | | | | ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 111.36/15.52 | | | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 111.36/15.52 | | | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 111.36/15.52 | | | | | | | | | | & vIntersection(v3, v1) = v4 & vIntersection(v0, % 111.36/15.52 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & % 111.36/15.52 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 111.36/15.52 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 111.36/15.52 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 111.36/15.52 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 111.36/15.52 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 111.36/15.52 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | BETA: splitting (1548) gives: % 111.36/15.52 | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | Case 1: % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | (1549) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 111.36/15.52 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 111.36/15.52 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 111.36/15.52 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 111.36/15.52 | | | | | | | | | | | all_346_1 & vDifference(v3, v1) = v4 & % 111.36/15.52 | | | | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) % 111.36/15.52 | | | | | | | | | | | & vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) % 111.36/15.52 | | | | | | | | | | | & vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 111.36/15.52 | | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 111.36/15.52 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 111.36/15.52 | | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 111.36/15.52 | | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | DELTA: instantiating (1549) with fresh symbols all_613_0, % 111.36/15.52 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 111.36/15.52 | | | | | | | | | | | (1550) vreduce(all_613_4, all_346_6) = all_613_2 & % 111.36/15.52 | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 111.36/15.52 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 111.36/15.52 | | | | | | | | | | | vDifference(all_613_1, all_613_3) = all_613_0 & % 111.36/15.52 | | | | | | | | | | | vDifference(all_613_4, all_613_3) = all_338_0 & % 111.36/15.52 | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 111.36/15.52 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 111.36/15.52 | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 111.36/15.52 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 111.36/15.52 | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 111.36/15.52 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 111.36/15.52 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | ALPHA: (1550) implies: % 111.36/15.52 | | | | | | | | | | | (1551) vQuery(all_613_4) % 111.36/15.52 | | | | | | | | | | | (1552) vQuery(all_613_3) % 111.36/15.52 | | | | | | | | | | | (1553) vDifference(all_613_4, all_613_3) = all_338_0 % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Difference) with vq1, % 111.36/15.52 | | | | | | | | | | | vq2, all_613_4, all_613_3, all_338_0, simplifying % 111.36/15.52 | | | | | | | | | | | with (4), (5), (18), (1551), (1552), (1553) gives: % 111.36/15.52 | | | | | | | | | | | (1554) $false % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | CLOSE: (1554) is inconsistent. % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | Case 2: % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | (1555) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 111.36/15.52 | | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 111.36/15.52 | | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 111.36/15.52 | | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 111.36/15.52 | | | | | | | | | | | all_346_1 & vIntersection(v3, v1) = v4 & % 111.36/15.52 | | | | | | | | | | | vIntersection(v0, v1) = all_338_0 & % 111.36/15.52 | | | | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & % 111.36/15.52 | | | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & % 111.36/15.52 | | | | | | | | | | | vQuery(v0) & ! [v5: vTable] : ! [v6: vTable] : % 111.36/15.52 | | | | | | | | | | | ( ~ (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | % 111.36/15.52 | | | | | | | | | | | ~ vTable(v6) | ~ vTable(v5)) & ! [v5: % 111.36/15.52 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v0) | ~ % 111.36/15.52 | | | | | | | | | | | vTable(v5))) % 111.36/15.52 | | | | | | | | | | | % 111.36/15.52 | | | | | | | | | | | DELTA: instantiating (1555) with fresh symbols all_613_0, % 111.36/15.53 | | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 111.36/15.53 | | | | | | | | | | | (1556) vreduce(all_613_4, all_346_6) = all_613_2 & % 111.36/15.53 | | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 111.36/15.53 | | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 111.36/15.53 | | | | | | | | | | | vIntersection(all_613_1, all_613_3) = all_613_0 & % 111.36/15.53 | | | | | | | | | | | vIntersection(all_613_4, all_613_3) = all_338_0 & % 111.36/15.53 | | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 111.36/15.53 | | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 111.36/15.53 | | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 111.36/15.53 | | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 111.36/15.53 | | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 111.36/15.53 | | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 111.36/15.53 | | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 111.36/15.53 | | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | | ALPHA: (1556) implies: % 111.36/15.53 | | | | | | | | | | | (1557) vQuery(all_613_4) % 111.36/15.53 | | | | | | | | | | | (1558) vQuery(all_613_3) % 111.36/15.53 | | | | | | | | | | | (1559) vIntersection(all_613_4, all_613_3) = all_338_0 % 111.36/15.53 | | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | | GROUND_INST: instantiating (DIFF-Union-Intersection) with vq1, % 111.36/15.53 | | | | | | | | | | | vq2, all_613_4, all_613_3, all_338_0, simplifying % 111.36/15.53 | | | | | | | | | | | with (4), (5), (18), (1557), (1558), (1559) gives: % 111.36/15.53 | | | | | | | | | | | (1560) $false % 111.36/15.53 | | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | | CLOSE: (1560) is inconsistent. % 111.36/15.53 | | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | End of split % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | End of split % 111.36/15.53 | | | | | | | | | % 111.36/15.53 | | | | | | | | End of split % 111.36/15.53 | | | | | | | | % 111.36/15.53 | | | | | | | Case 2: % 111.36/15.53 | | | | | | | | % 111.36/15.53 | | | | | | | | (1561) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] % 111.36/15.53 | | | | | | | | : ? [v3: vQuery] : ? [v4: vQuery] : (vreduce(v0, % 111.36/15.53 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = 0 & % 111.36/15.53 | | | | | | | | vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 & % 111.36/15.53 | | | | | | | | vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 & % 111.36/15.53 | | | | | | | | vOptQuery(v2) & vOptQuery(all_346_1) & vQuery(v4) & % 111.36/15.53 | | | | | | | | vQuery(v3) & vQuery(v1) & vQuery(v0) & ! [v5: % 111.36/15.53 | | | | | | | | vTable] : ! [v6: vTable] : ( ~ (vtvalue(v6) = v1) % 111.36/15.53 | | | | | | | | | ~ (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 111.36/15.53 | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ (vtvalue(v5) = % 111.36/15.53 | | | | | | | | v0) | ~ vTable(v5))) | ? [v0: vQuery] : ? % 111.36/15.53 | | | | | | | | [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 111.36/15.53 | | | | | | | | (all_346_1 = vnoQuery & ~ (v3 = 0) & vreduce(v0, % 111.36/15.53 | | | | | | | | all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.53 | | | | | | | | vDifference(v0, v1) = all_338_0 & vOptQuery(v2) & % 111.36/15.53 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 111.36/15.53 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 111.36/15.53 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 111.36/15.53 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 111.36/15.53 | | | | | | | | | ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 111.36/15.53 | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery & % 111.36/15.53 | | | | | | | | ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 111.36/15.53 | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 111.36/15.53 | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & vQuery(v0) % 111.36/15.53 | | | | | | | | & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 111.36/15.53 | | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 111.36/15.53 | | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( % 111.36/15.53 | | | | | | | | ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: % 111.36/15.53 | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 111.36/15.53 | | | | | | | | [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 111.36/15.53 | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 % 111.36/15.53 | | | | | | | | & vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 111.36/15.53 | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! [v5: % 111.36/15.53 | | | | | | | | vTable] : ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) % 111.36/15.53 | | | | | | | | = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 111.36/15.53 | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) % 111.36/15.53 | | | | | | | | | ? [v0: vTable] : (all_346_1 = vnoQuery & % 111.36/15.53 | | | | | | | | vtvalue(v0) = all_338_0 & vTable(v0)) % 111.36/15.53 | | | | | | | | % 111.36/15.53 | | | | | | | | BETA: splitting (1561) gives: % 111.36/15.53 | | | | | | | | % 111.36/15.53 | | | | | | | | Case 1: % 111.36/15.53 | | | | | | | | | % 111.36/15.53 | | | | | | | | | (1562) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 111.36/15.53 | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 111.36/15.53 | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = 0 % 111.36/15.53 | | | | | | | | | & vgetQuery(v2) = v3 & vsomeQuery(v4) = all_346_1 % 111.36/15.53 | | | | | | | | | & vUnion(v3, v1) = v4 & vUnion(v0, v1) = all_338_0 % 111.36/15.53 | | | | | | | | | & vOptQuery(v2) & vOptQuery(all_346_1) & % 111.36/15.53 | | | | | | | | | vQuery(v4) & vQuery(v3) & vQuery(v1) & vQuery(v0) % 111.36/15.53 | | | | | | | | | & ! [v5: vTable] : ! [v6: vTable] : ( ~ % 111.36/15.53 | | | | | | | | | (vtvalue(v6) = v1) | ~ (vtvalue(v5) = v0) | ~ % 111.36/15.53 | | | | | | | | | vTable(v6) | ~ vTable(v5)) & ! [v5: vTable] : % 111.36/15.53 | | | | | | | | | ( ~ (vtvalue(v5) = v0) | ~ vTable(v5))) | ? [v0: % 111.36/15.53 | | | | | | | | | vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 111.36/15.53 | | | | | | | | | ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) & % 111.36/15.53 | | | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 111.36/15.53 | | | | | | | | | v3 & vDifference(v0, v1) = all_338_0 & % 111.36/15.53 | | | | | | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: % 111.36/15.53 | | | | | | | | | vTable] : ! [v5: vTable] : ( ~ (vtvalue(v5) = % 111.36/15.53 | | | | | | | | | v1) | ~ (vtvalue(v4) = v0) | ~ vTable(v5) | % 111.36/15.53 | | | | | | | | | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 111.36/15.53 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) % 111.36/15.53 | | | | | | | | | % 111.36/15.53 | | | | | | | | | BETA: splitting (1562) gives: % 111.36/15.53 | | | | | | | | | % 111.36/15.53 | | | | | | | | | Case 1: % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | (1563) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 111.36/15.53 | | | | | | | | | | vOptQuery] : ? [v3: vQuery] : ? [v4: vQuery] : % 111.36/15.53 | | | | | | | | | | (vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 111.36/15.53 | | | | | | | | | | 0 & vgetQuery(v2) = v3 & vsomeQuery(v4) = % 111.36/15.53 | | | | | | | | | | all_346_1 & vUnion(v3, v1) = v4 & vUnion(v0, v1) % 111.36/15.53 | | | | | | | | | | = all_338_0 & vOptQuery(v2) & % 111.36/15.53 | | | | | | | | | | vOptQuery(all_346_1) & vQuery(v4) & vQuery(v3) & % 111.36/15.53 | | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v5: vTable] : ! % 111.36/15.53 | | | | | | | | | | [v6: vTable] : ( ~ (vtvalue(v6) = v1) | ~ % 111.36/15.53 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v6) | ~ % 111.36/15.53 | | | | | | | | | | vTable(v5)) & ! [v5: vTable] : ( ~ % 111.36/15.53 | | | | | | | | | | (vtvalue(v5) = v0) | ~ vTable(v5))) % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | DELTA: instantiating (1563) with fresh symbols all_613_0, % 111.36/15.53 | | | | | | | | | | all_613_1, all_613_2, all_613_3, all_613_4 gives: % 111.36/15.53 | | | | | | | | | | (1564) vreduce(all_613_4, all_346_6) = all_613_2 & % 111.36/15.53 | | | | | | | | | | visSomeQuery(all_613_2) = 0 & vgetQuery(all_613_2) % 111.36/15.53 | | | | | | | | | | = all_613_1 & vsomeQuery(all_613_0) = all_346_1 & % 111.36/15.53 | | | | | | | | | | vUnion(all_613_1, all_613_3) = all_613_0 & % 111.36/15.53 | | | | | | | | | | vUnion(all_613_4, all_613_3) = all_338_0 & % 111.36/15.53 | | | | | | | | | | vOptQuery(all_613_2) & vOptQuery(all_346_1) & % 111.36/15.53 | | | | | | | | | | vQuery(all_613_0) & vQuery(all_613_1) & % 111.36/15.53 | | | | | | | | | | vQuery(all_613_3) & vQuery(all_613_4) & ! [v0: % 111.36/15.53 | | | | | | | | | | vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) = % 111.36/15.53 | | | | | | | | | | all_613_3) | ~ (vtvalue(v0) = all_613_4) | ~ % 111.36/15.53 | | | | | | | | | | vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : % 111.36/15.53 | | | | | | | | | | ( ~ (vtvalue(v0) = all_613_4) | ~ vTable(v0)) % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | ALPHA: (1564) implies: % 111.36/15.53 | | | | | | | | | | (1565) vUnion(all_613_4, all_613_3) = all_338_0 % 111.36/15.53 | | | | | | | | | | (1566) vQuery(all_613_4) % 111.36/15.53 | | | | | | | | | | (1567) vQuery(all_613_3) % 111.36/15.53 | | | | | | | | | | (1568) vQuery(all_613_0) % 111.36/15.53 | | | | | | | | | | (1569) vreduce(all_613_4, all_346_6) = all_613_2 % 111.36/15.53 | | | | | | | | | | (1570) vQuery(all_613_1) % 111.36/15.53 | | | | | | | | | | (1571) vUnion(all_613_1, all_613_3) = all_613_0 % 111.36/15.53 | | | | | | | | | | (1572) vsomeQuery(all_613_0) = all_346_1 % 111.36/15.53 | | | | | | | | | | (1573) vgetQuery(all_613_2) = all_613_1 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | GROUND_INST: instantiating (TUnion_inv2) with all_346_5, % 111.36/15.53 | | | | | | | | | | all_613_4, all_613_3, all_346_4, all_338_0, % 111.36/15.53 | | | | | | | | | | simplifying with (22), (25), (33), (1565), (1566), % 111.36/15.53 | | | | | | | | | | (1567) gives: % 111.36/15.53 | | | | | | | | | | (1574) vptcheck(all_346_5, all_613_3, all_346_4) = 0 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | GROUND_INST: instantiating (EQ-Union) with vq1, vq2, all_613_4, % 111.36/15.53 | | | | | | | | | | all_613_3, all_338_0, simplifying with (4), (5), % 111.36/15.53 | | | | | | | | | | (18), (1565), (1566), (1567) gives: % 111.36/15.53 | | | | | | | | | | (1575) all_613_3 = vq2 & all_613_4 = vq1 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | ALPHA: (1575) implies: % 111.36/15.53 | | | | | | | | | | (1576) all_613_3 = vq2 % 111.36/15.53 | | | | | | | | | | (1577) all_613_4 = vq1 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | GROUND_INST: instantiating (3) with all_346_6, all_346_5, % 111.36/15.53 | | | | | | | | | | all_346_4, all_605_0, all_346_2, simplifying with % 111.36/15.53 | | | | | | | | | | (22), (24), (25), (30), (39), (1458), (1460) % 111.36/15.53 | | | | | | | | | | gives: % 111.36/15.53 | | | | | | | | | | (1578) ? [v0: any] : ? [v1: any] : (vptcheck(all_346_5, % 111.36/15.53 | | | | | | | | | | all_605_0, all_346_4) = v1 & % 111.36/15.53 | | | | | | | | | | vstoreContextConsistent(all_346_6, all_346_5) = % 111.36/15.53 | | | | | | | | | | v0 & ( ~ (v0 = 0) | v1 = 0)) % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_359_0, % 111.36/15.53 | | | | | | | | | | all_605_0, all_346_2, simplifying with (41), (42), % 111.36/15.53 | | | | | | | | | | (1458), (1460) gives: % 111.36/15.53 | | | | | | | | | | (1579) all_605_0 = all_359_0 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | GROUND_INST: instantiating (getQuery-0) with all_605_0, % 111.36/15.53 | | | | | | | | | | all_346_2, simplifying with (1458), (1460) gives: % 111.36/15.53 | | | | | | | | | | (1580) vgetQuery(all_346_2) = all_605_0 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | GROUND_INST: instantiating (EQ-someQuery) with all_346_3, % 111.36/15.53 | | | | | | | | | | all_613_0, all_346_1, simplifying with (23), (28), % 111.36/15.53 | | | | | | | | | | (1568), (1572) gives: % 111.36/15.53 | | | | | | | | | | (1581) all_613_0 = all_346_3 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | DELTA: instantiating (1578) with fresh symbols all_640_0, % 111.36/15.53 | | | | | | | | | | all_640_1 gives: % 111.36/15.53 | | | | | | | | | | (1582) vptcheck(all_346_5, all_605_0, all_346_4) = % 111.36/15.53 | | | | | | | | | | all_640_0 & vstoreContextConsistent(all_346_6, % 111.36/15.53 | | | | | | | | | | all_346_5) = all_640_1 & ( ~ (all_640_1 = 0) | % 111.36/15.53 | | | | | | | | | | all_640_0 = 0) % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | ALPHA: (1582) implies: % 111.36/15.53 | | | | | | | | | | (1583) vptcheck(all_346_5, all_605_0, all_346_4) = % 111.36/15.53 | | | | | | | | | | all_640_0 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | REDUCE: (1574), (1576) imply: % 111.36/15.53 | | | | | | | | | | (1584) vptcheck(all_346_5, vq2, all_346_4) = 0 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | REDUCE: (1579), (1583) imply: % 111.36/15.53 | | | | | | | | | | (1585) vptcheck(all_346_5, all_359_0, all_346_4) = % 111.36/15.53 | | | | | | | | | | all_640_0 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | REDUCE: (1569), (1577) imply: % 111.36/15.53 | | | | | | | | | | (1586) vreduce(vq1, all_346_6) = all_613_2 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | REDUCE: (1579), (1580) imply: % 111.36/15.53 | | | | | | | | | | (1587) vgetQuery(all_346_2) = all_359_0 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | REDUCE: (1571), (1576), (1581) imply: % 111.36/15.53 | | | | | | | | | | (1588) vUnion(all_613_1, vq2) = all_346_3 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | GROUND_INST: instantiating (10) with all_346_2, all_613_2, % 111.36/15.53 | | | | | | | | | | all_346_6, vq1, simplifying with (30), (1586) % 111.36/15.53 | | | | | | | | | | gives: % 111.36/15.53 | | | | | | | | | | (1589) all_613_2 = all_346_2 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | GROUND_INST: instantiating (12) with 0, all_640_0, all_346_4, % 111.36/15.53 | | | | | | | | | | all_359_0, all_346_5, simplifying with (56), % 111.36/15.53 | | | | | | | | | | (1585) gives: % 111.36/15.53 | | | | | | | | | | (1590) all_640_0 = 0 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | REDUCE: (1573), (1589) imply: % 111.36/15.53 | | | | | | | | | | (1591) vgetQuery(all_346_2) = all_613_1 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | GROUND_INST: instantiating (7) with all_359_0, all_613_1, % 111.36/15.53 | | | | | | | | | | all_346_2, simplifying with (1587), (1591) gives: % 111.36/15.53 | | | | | | | | | | (1592) all_613_1 = all_359_0 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | REDUCE: (1588), (1592) imply: % 111.36/15.53 | | | | | | | | | | (1593) vUnion(all_359_0, vq2) = all_346_3 % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | REF_CLOSE: (5), (12), (21), (22), (25), (34), (41), (56), % 111.36/15.53 | | | | | | | | | | (1584), (1593), (TUnion) are inconsistent by % 111.36/15.53 | | | | | | | | | | sub-proof #5. % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | Case 2: % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | (1594) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 111.36/15.53 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 111.36/15.53 | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 111.36/15.53 | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vDifference(v0, % 111.36/15.53 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) & % 111.36/15.53 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 111.36/15.53 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 111.36/15.53 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 111.36/15.53 | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 111.36/15.53 | | | | | | | | | | vTable(v4))) % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | DELTA: instantiating (1594) with fresh symbols all_612_0, % 111.36/15.53 | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 111.36/15.53 | | | | | | | | | | (1595) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 111.36/15.53 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 111.36/15.53 | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 111.36/15.53 | | | | | | | | | | vDifference(all_612_3, all_612_2) = all_338_0 & % 111.36/15.53 | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 111.36/15.53 | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 111.36/15.53 | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 111.36/15.53 | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 111.36/15.53 | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 111.36/15.53 | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1595) are inconsistent by % 111.36/15.53 | | | | | | | | | | sub-proof #4. % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | End of split % 111.36/15.53 | | | | | | | | | % 111.36/15.53 | | | | | | | | Case 2: % 111.36/15.53 | | | | | | | | | % 111.36/15.53 | | | | | | | | | (1596) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 111.36/15.53 | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = vnoQuery % 111.36/15.53 | | | | | | | | | & ~ (v3 = 0) & vreduce(v0, all_346_6) = v2 & % 111.36/15.53 | | | | | | | | | visSomeQuery(v2) = v3 & vIntersection(v0, v1) = % 111.36/15.53 | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 111.36/15.53 | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( % 111.36/15.53 | | | | | | | | | ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 111.36/15.53 | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] % 111.36/15.53 | | | | | | | | | : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | ? % 111.36/15.53 | | | | | | | | | [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] % 111.36/15.53 | | | | | | | | | : ? [v3: int] : (all_346_1 = vnoQuery & ~ (v3 = 0) % 111.36/15.53 | | | | | | | | | & vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = % 111.36/15.53 | | | | | | | | | v3 & vUnion(v0, v1) = all_338_0 & vOptQuery(v2) & % 111.36/15.53 | | | | | | | | | vQuery(v1) & vQuery(v0) & ! [v4: vTable] : ! % 111.36/15.53 | | | | | | | | | [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 111.36/15.53 | | | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ % 111.36/15.53 | | | | | | | | | vTable(v4)) & ! [v4: vTable] : ( ~ (vtvalue(v4) % 111.36/15.53 | | | | | | | | | = v0) | ~ vTable(v4))) | ? [v0: vTable] : % 111.36/15.53 | | | | | | | | | (all_346_1 = vnoQuery & vtvalue(v0) = all_338_0 & % 111.36/15.53 | | | | | | | | | vTable(v0)) % 111.36/15.53 | | | | | | | | | % 111.36/15.53 | | | | | | | | | BETA: splitting (1596) gives: % 111.36/15.53 | | | | | | | | | % 111.36/15.53 | | | | | | | | | Case 1: % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | (1597) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 111.36/15.53 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 111.36/15.53 | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 111.36/15.53 | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vIntersection(v0, % 111.36/15.53 | | | | | | | | | | v1) = all_338_0 & vOptQuery(v2) & vQuery(v1) & % 111.36/15.53 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 111.36/15.53 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 111.36/15.53 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 111.36/15.53 | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 111.36/15.53 | | | | | | | | | | vTable(v4))) % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | DELTA: instantiating (1597) with fresh symbols all_612_0, % 111.36/15.53 | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 111.36/15.53 | | | | | | | | | | (1598) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 111.36/15.53 | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 111.36/15.53 | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 111.36/15.53 | | | | | | | | | | vIntersection(all_612_3, all_612_2) = all_338_0 & % 111.36/15.53 | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 111.36/15.53 | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 111.36/15.53 | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 111.36/15.53 | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 111.36/15.53 | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 111.36/15.53 | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1598) are inconsistent by % 111.36/15.53 | | | | | | | | | | sub-proof #3. % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | Case 2: % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | (1599) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 111.36/15.53 | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 111.36/15.53 | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 111.36/15.53 | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 111.36/15.53 | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 111.36/15.53 | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 111.36/15.53 | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 111.36/15.53 | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 111.36/15.53 | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 111.36/15.53 | | | | | | | | | | vTable(v4))) | ? [v0: vTable] : (all_346_1 = % 111.36/15.53 | | | | | | | | | | vnoQuery & vtvalue(v0) = all_338_0 & vTable(v0)) % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | BETA: splitting (1599) gives: % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | Case 1: % 111.36/15.53 | | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | | (1600) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: % 111.36/15.53 | | | | | | | | | | | vOptQuery] : ? [v3: int] : (all_346_1 = % 111.36/15.53 | | | | | | | | | | | vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 111.36/15.53 | | | | | | | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = % 111.36/15.53 | | | | | | | | | | | all_338_0 & vOptQuery(v2) & vQuery(v1) & % 111.36/15.53 | | | | | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : % 111.36/15.53 | | | | | | | | | | | ( ~ (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | % 111.36/15.53 | | | | | | | | | | | ~ vTable(v5) | ~ vTable(v4)) & ! [v4: % 111.36/15.53 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v4) = v0) | ~ % 111.36/15.53 | | | | | | | | | | | vTable(v4))) % 111.36/15.53 | | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | | DELTA: instantiating (1600) with fresh symbols all_612_0, % 111.36/15.53 | | | | | | | | | | | all_612_1, all_612_2, all_612_3 gives: % 111.36/15.53 | | | | | | | | | | | (1601) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & % 111.36/15.53 | | | | | | | | | | | vreduce(all_612_3, all_346_6) = all_612_1 & % 111.36/15.53 | | | | | | | | | | | visSomeQuery(all_612_1) = all_612_0 & % 111.36/15.53 | | | | | | | | | | | vUnion(all_612_3, all_612_2) = all_338_0 & % 111.36/15.53 | | | | | | | | | | | vOptQuery(all_612_1) & vQuery(all_612_2) & % 111.36/15.53 | | | | | | | | | | | vQuery(all_612_3) & ! [v0: vTable] : ! [v1: % 111.36/15.53 | | | | | | | | | | | vTable] : ( ~ (vtvalue(v1) = all_612_2) | ~ % 111.36/15.53 | | | | | | | | | | | (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 111.36/15.53 | | | | | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) % 111.36/15.53 | | | | | | | | | | | = all_612_3) | ~ vTable(v0)) % 111.36/15.53 | | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1601) are inconsistent by % 111.36/15.53 | | | | | | | | | | | sub-proof #2. % 111.36/15.53 | | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | Case 2: % 111.36/15.53 | | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | | (1602) ? [v0: vTable] : (all_346_1 = vnoQuery & % 111.36/15.53 | | | | | | | | | | | vtvalue(v0) = all_338_0 & vTable(v0)) % 111.36/15.53 | | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | | DELTA: instantiating (1602) with fresh symbol all_612_0 % 111.36/15.53 | | | | | | | | | | | gives: % 111.36/15.53 | | | | | | | | | | | (1603) all_346_1 = vnoQuery & vtvalue(all_612_0) = % 111.36/15.53 | | | | | | | | | | | all_338_0 & vTable(all_612_0) % 111.36/15.53 | | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | | REF_CLOSE: (9), (14), (15), (35), (1603) are inconsistent by % 111.36/15.53 | | | | | | | | | | | sub-proof #1. % 111.36/15.53 | | | | | | | | | | | % 111.36/15.53 | | | | | | | | | | End of split % 111.36/15.53 | | | | | | | | | | % 111.36/15.53 | | | | | | | | | End of split % 111.36/15.53 | | | | | | | | | % 111.36/15.53 | | | | | | | | End of split % 111.36/15.53 | | | | | | | | % 111.36/15.53 | | | | | | | End of split % 111.36/15.53 | | | | | | | % 111.36/15.53 | | | | | | End of split % 111.36/15.53 | | | | | | % 111.36/15.53 | | | | | Case 2: % 111.36/15.53 | | | | | | % 111.36/15.53 | | | | | | (1604) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 111.36/15.53 | | | | | | ? [v3: int] : (all_346_2 = vnoQuery & ~ (v3 = 0) & % 111.36/15.53 | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.53 | | | | | | vDifference(v0, v1) = vq1 & vOptQuery(v2) & vQuery(v1) & % 111.36/15.53 | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 111.36/15.53 | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 111.36/15.53 | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 111.36/15.53 | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) % 111.36/15.53 | | | | | | % 111.36/15.53 | | | | | | DELTA: instantiating (1604) with fresh symbols all_605_0, all_605_1, % 111.36/15.53 | | | | | | all_605_2, all_605_3 gives: % 111.36/15.53 | | | | | | (1605) all_346_2 = vnoQuery & ~ (all_605_0 = 0) & % 111.36/15.53 | | | | | | vreduce(all_605_3, all_346_6) = all_605_1 & % 111.36/15.53 | | | | | | visSomeQuery(all_605_1) = all_605_0 & % 111.36/15.53 | | | | | | vDifference(all_605_3, all_605_2) = vq1 & % 111.36/15.53 | | | | | | vOptQuery(all_605_1) & vQuery(all_605_2) & % 111.36/15.53 | | | | | | vQuery(all_605_3) & ! [v0: vTable] : ! [v1: vTable] : ( % 111.36/15.53 | | | | | | ~ (vtvalue(v1) = all_605_2) | ~ (vtvalue(v0) = % 111.36/15.53 | | | | | | all_605_3) | ~ vTable(v1) | ~ vTable(v0)) & ! [v0: % 111.36/15.53 | | | | | | vTable] : ( ~ (vtvalue(v0) = all_605_3) | ~ vTable(v0)) % 111.36/15.53 | | | | | | % 111.36/15.53 | | | | | | ALPHA: (1605) implies: % 111.36/15.53 | | | | | | (1606) all_346_2 = vnoQuery % 111.36/15.53 | | | | | | % 111.36/15.53 | | | | | | REDUCE: (29), (1606) imply: % 111.36/15.53 | | | | | | (1607) visSomeQuery(vnoQuery) = 0 % 111.36/15.53 | | | | | | % 111.36/15.53 | | | | | | GROUND_INST: instantiating (9) with all_307_0, 0, vnoQuery, % 111.36/15.53 | | | | | | simplifying with (15), (1607) gives: % 111.36/15.53 | | | | | | (1608) all_307_0 = 0 % 111.36/15.53 | | | | | | % 111.36/15.53 | | | | | | REDUCE: (14), (1608) imply: % 111.36/15.54 | | | | | | (1609) $false % 111.36/15.54 | | | | | | % 111.36/15.54 | | | | | | CLOSE: (1609) is inconsistent. % 111.36/15.54 | | | | | | % 111.36/15.54 | | | | | End of split % 111.36/15.54 | | | | | % 111.36/15.54 | | | | Case 2: % 111.36/15.54 | | | | | % 111.36/15.54 | | | | | (1610) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : ? % 111.36/15.54 | | | | | [v3: int] : (all_346_2 = vnoQuery & ~ (v3 = 0) & % 111.36/15.54 | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.54 | | | | | vIntersection(v0, v1) = vq1 & vOptQuery(v2) & vQuery(v1) & % 111.36/15.54 | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 111.36/15.54 | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 111.36/15.54 | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 111.36/15.54 | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: vQuery] : % 111.36/15.54 | | | | | ? [v1: vQuery] : ? [v2: vOptQuery] : ? [v3: int] : % 111.36/15.54 | | | | | (all_346_2 = vnoQuery & ~ (v3 = 0) & vreduce(v0, all_346_6) % 111.36/15.54 | | | | | = v2 & visSomeQuery(v2) = v3 & vUnion(v0, v1) = vq1 & % 111.36/15.54 | | | | | vOptQuery(v2) & vQuery(v1) & vQuery(v0) & ! [v4: vTable] % 111.36/15.54 | | | | | : ! [v5: vTable] : ( ~ (vtvalue(v5) = v1) | ~ % 111.36/15.54 | | | | | (vtvalue(v4) = v0) | ~ vTable(v5) | ~ vTable(v4)) & ! % 111.36/15.54 | | | | | [v4: vTable] : ( ~ (vtvalue(v4) = v0) | ~ vTable(v4))) | % 111.36/15.54 | | | | | ? [v0: vTable] : (all_346_2 = vnoQuery & vtvalue(v0) = vq1 & % 111.36/15.54 | | | | | vTable(v0)) % 111.36/15.54 | | | | | % 111.36/15.54 | | | | | BETA: splitting (1610) gives: % 111.36/15.54 | | | | | % 111.36/15.54 | | | | | Case 1: % 111.36/15.54 | | | | | | % 111.36/15.54 | | | | | | (1611) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 111.36/15.54 | | | | | | ? [v3: int] : (all_346_2 = vnoQuery & ~ (v3 = 0) & % 111.36/15.54 | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.54 | | | | | | vIntersection(v0, v1) = vq1 & vOptQuery(v2) & vQuery(v1) % 111.36/15.54 | | | | | | & vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 111.36/15.54 | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 111.36/15.54 | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 111.36/15.54 | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) % 111.36/15.54 | | | | | | % 111.36/15.54 | | | | | | DELTA: instantiating (1611) with fresh symbols all_605_0, all_605_1, % 111.36/15.54 | | | | | | all_605_2, all_605_3 gives: % 111.36/15.54 | | | | | | (1612) all_346_2 = vnoQuery & ~ (all_605_0 = 0) & % 111.36/15.54 | | | | | | vreduce(all_605_3, all_346_6) = all_605_1 & % 111.36/15.54 | | | | | | visSomeQuery(all_605_1) = all_605_0 & % 111.36/15.54 | | | | | | vIntersection(all_605_3, all_605_2) = vq1 & % 111.36/15.54 | | | | | | vOptQuery(all_605_1) & vQuery(all_605_2) & % 111.36/15.54 | | | | | | vQuery(all_605_3) & ! [v0: vTable] : ! [v1: vTable] : ( % 111.36/15.54 | | | | | | ~ (vtvalue(v1) = all_605_2) | ~ (vtvalue(v0) = % 111.36/15.54 | | | | | | all_605_3) | ~ vTable(v1) | ~ vTable(v0)) & ! [v0: % 111.36/15.54 | | | | | | vTable] : ( ~ (vtvalue(v0) = all_605_3) | ~ vTable(v0)) % 111.36/15.54 | | | | | | % 111.36/15.54 | | | | | | ALPHA: (1612) implies: % 111.36/15.54 | | | | | | (1613) all_346_2 = vnoQuery % 111.36/15.54 | | | | | | % 111.36/15.54 | | | | | | REDUCE: (29), (1613) imply: % 111.36/15.54 | | | | | | (1614) visSomeQuery(vnoQuery) = 0 % 111.36/15.54 | | | | | | % 111.36/15.54 | | | | | | GROUND_INST: instantiating (9) with all_307_0, 0, vnoQuery, % 111.36/15.54 | | | | | | simplifying with (15), (1614) gives: % 111.36/15.54 | | | | | | (1615) all_307_0 = 0 % 111.36/15.54 | | | | | | % 111.36/15.54 | | | | | | REDUCE: (14), (1615) imply: % 111.36/15.54 | | | | | | (1616) $false % 111.36/15.54 | | | | | | % 111.36/15.54 | | | | | | CLOSE: (1616) is inconsistent. % 111.36/15.54 | | | | | | % 111.36/15.54 | | | | | Case 2: % 111.36/15.54 | | | | | | % 111.36/15.54 | | | | | | (1617) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 111.36/15.54 | | | | | | ? [v3: int] : (all_346_2 = vnoQuery & ~ (v3 = 0) & % 111.36/15.54 | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.54 | | | | | | vUnion(v0, v1) = vq1 & vOptQuery(v2) & vQuery(v1) & % 111.36/15.54 | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 111.36/15.54 | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 111.36/15.54 | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 111.36/15.54 | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) | ? [v0: vTable] % 111.36/15.54 | | | | | | : (all_346_2 = vnoQuery & vtvalue(v0) = vq1 & vTable(v0)) % 111.36/15.54 | | | | | | % 111.36/15.54 | | | | | | BETA: splitting (1617) gives: % 111.36/15.54 | | | | | | % 111.36/15.54 | | | | | | Case 1: % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | | (1618) ? [v0: vQuery] : ? [v1: vQuery] : ? [v2: vOptQuery] : % 111.36/15.54 | | | | | | | ? [v3: int] : (all_346_2 = vnoQuery & ~ (v3 = 0) & % 111.36/15.54 | | | | | | | vreduce(v0, all_346_6) = v2 & visSomeQuery(v2) = v3 & % 111.36/15.54 | | | | | | | vUnion(v0, v1) = vq1 & vOptQuery(v2) & vQuery(v1) & % 111.36/15.54 | | | | | | | vQuery(v0) & ! [v4: vTable] : ! [v5: vTable] : ( ~ % 111.36/15.54 | | | | | | | (vtvalue(v5) = v1) | ~ (vtvalue(v4) = v0) | ~ % 111.36/15.54 | | | | | | | vTable(v5) | ~ vTable(v4)) & ! [v4: vTable] : ( ~ % 111.36/15.54 | | | | | | | (vtvalue(v4) = v0) | ~ vTable(v4))) % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | | DELTA: instantiating (1618) with fresh symbols all_605_0, % 111.36/15.54 | | | | | | | all_605_1, all_605_2, all_605_3 gives: % 111.36/15.54 | | | | | | | (1619) all_346_2 = vnoQuery & ~ (all_605_0 = 0) & % 111.36/15.54 | | | | | | | vreduce(all_605_3, all_346_6) = all_605_1 & % 111.36/15.54 | | | | | | | visSomeQuery(all_605_1) = all_605_0 & vUnion(all_605_3, % 111.36/15.54 | | | | | | | all_605_2) = vq1 & vOptQuery(all_605_1) & % 111.36/15.54 | | | | | | | vQuery(all_605_2) & vQuery(all_605_3) & ! [v0: vTable] % 111.36/15.54 | | | | | | | : ! [v1: vTable] : ( ~ (vtvalue(v1) = all_605_2) | ~ % 111.36/15.54 | | | | | | | (vtvalue(v0) = all_605_3) | ~ vTable(v1) | ~ % 111.36/15.54 | | | | | | | vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) = % 111.36/15.54 | | | | | | | all_605_3) | ~ vTable(v0)) % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | | ALPHA: (1619) implies: % 111.36/15.54 | | | | | | | (1620) all_346_2 = vnoQuery % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | | REDUCE: (29), (1620) imply: % 111.36/15.54 | | | | | | | (1621) visSomeQuery(vnoQuery) = 0 % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | | GROUND_INST: instantiating (9) with all_307_0, 0, vnoQuery, % 111.36/15.54 | | | | | | | simplifying with (15), (1621) gives: % 111.36/15.54 | | | | | | | (1622) all_307_0 = 0 % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | | REDUCE: (14), (1622) imply: % 111.36/15.54 | | | | | | | (1623) $false % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | | CLOSE: (1623) is inconsistent. % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | Case 2: % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | | (1624) ? [v0: vTable] : (all_346_2 = vnoQuery & vtvalue(v0) = % 111.36/15.54 | | | | | | | vq1 & vTable(v0)) % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | | DELTA: instantiating (1624) with fresh symbol all_605_0 gives: % 111.36/15.54 | | | | | | | (1625) all_346_2 = vnoQuery & vtvalue(all_605_0) = vq1 & % 111.36/15.54 | | | | | | | vTable(all_605_0) % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | | ALPHA: (1625) implies: % 111.36/15.54 | | | | | | | (1626) all_346_2 = vnoQuery % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | | REDUCE: (29), (1626) imply: % 111.36/15.54 | | | | | | | (1627) visSomeQuery(vnoQuery) = 0 % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | | GROUND_INST: instantiating (9) with all_307_0, 0, vnoQuery, % 111.36/15.54 | | | | | | | simplifying with (15), (1627) gives: % 111.36/15.54 | | | | | | | (1628) all_307_0 = 0 % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | | REDUCE: (14), (1628) imply: % 111.36/15.54 | | | | | | | (1629) $false % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | | CLOSE: (1629) is inconsistent. % 111.36/15.54 | | | | | | | % 111.36/15.54 | | | | | | End of split % 111.36/15.54 | | | | | | % 111.36/15.54 | | | | | End of split % 111.36/15.54 | | | | | % 111.36/15.54 | | | | End of split % 111.36/15.54 | | | | % 111.36/15.54 | | | End of split % 111.36/15.54 | | | % 111.36/15.54 | | End of split % 111.36/15.54 | | % 111.36/15.54 | End of split % 111.36/15.54 | % 111.36/15.54 End of proof % 111.36/15.54 % 111.36/15.54 Sub-proof #1 shows that the following formulas are inconsistent: % 111.36/15.54 ---------------------------------------------------------------- % 111.36/15.54 (1) all_346_1 = vnoQuery & vtvalue(all_612_0) = all_338_0 & vTable(all_612_0) % 111.36/15.54 (2) ~ (all_307_0 = 0) % 111.36/15.54 (3) visSomeQuery(vnoQuery) = all_307_0 % 111.36/15.54 (4) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 111.36/15.54 vOptQuery] : (v1 = v0 | ~ (visSomeQuery(v2) = v1) | ~ % 111.36/15.54 (visSomeQuery(v2) = v0)) % 111.36/15.54 (5) visSomeQuery(all_346_1) = 0 % 111.36/15.54 % 111.36/15.54 Begin of proof % 111.36/15.54 | % 111.36/15.54 | ALPHA: (1) implies: % 111.36/15.54 | (6) all_346_1 = vnoQuery % 111.36/15.54 | % 111.36/15.54 | REDUCE: (5), (6) imply: % 111.36/15.54 | (7) visSomeQuery(vnoQuery) = 0 % 111.36/15.54 | % 111.36/15.54 | GROUND_INST: instantiating (4) with all_307_0, 0, vnoQuery, simplifying with % 111.36/15.54 | (3), (7) gives: % 111.36/15.54 | (8) all_307_0 = 0 % 111.36/15.54 | % 111.36/15.54 | REDUCE: (2), (8) imply: % 111.36/15.54 | (9) $false % 111.36/15.54 | % 111.36/15.54 | CLOSE: (9) is inconsistent. % 111.36/15.54 | % 111.36/15.54 End of proof % 111.36/15.54 % 111.36/15.54 Sub-proof #2 shows that the following formulas are inconsistent: % 111.36/15.54 ---------------------------------------------------------------- % 111.36/15.54 (1) ~ (all_307_0 = 0) % 111.36/15.54 (2) visSomeQuery(vnoQuery) = all_307_0 % 111.36/15.54 (3) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 111.36/15.54 vOptQuery] : (v1 = v0 | ~ (visSomeQuery(v2) = v1) | ~ % 111.36/15.54 (visSomeQuery(v2) = v0)) % 111.36/15.54 (4) visSomeQuery(all_346_1) = 0 % 111.36/15.54 (5) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & vreduce(all_612_3, all_346_6) % 111.36/15.54 = all_612_1 & visSomeQuery(all_612_1) = all_612_0 & vUnion(all_612_3, % 111.36/15.54 all_612_2) = all_338_0 & vOptQuery(all_612_1) & vQuery(all_612_2) & % 111.36/15.54 vQuery(all_612_3) & ! [v0: vTable] : ! [v1: vTable] : ( ~ (vtvalue(v1) % 111.36/15.54 = all_612_2) | ~ (vtvalue(v0) = all_612_3) | ~ vTable(v1) | ~ % 111.36/15.54 vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 111.36/15.54 vTable(v0)) % 111.36/15.54 % 111.36/15.54 Begin of proof % 111.36/15.54 | % 111.36/15.54 | ALPHA: (5) implies: % 111.36/15.54 | (6) all_346_1 = vnoQuery % 111.36/15.54 | % 111.36/15.54 | REDUCE: (4), (6) imply: % 111.36/15.54 | (7) visSomeQuery(vnoQuery) = 0 % 111.36/15.54 | % 111.36/15.54 | GROUND_INST: instantiating (3) with all_307_0, 0, vnoQuery, simplifying with % 111.36/15.54 | (2), (7) gives: % 111.36/15.54 | (8) all_307_0 = 0 % 111.36/15.54 | % 111.36/15.54 | REDUCE: (1), (8) imply: % 111.36/15.54 | (9) $false % 111.36/15.54 | % 111.36/15.54 | CLOSE: (9) is inconsistent. % 111.36/15.54 | % 111.36/15.54 End of proof % 111.36/15.54 % 111.36/15.54 Sub-proof #3 shows that the following formulas are inconsistent: % 111.36/15.54 ---------------------------------------------------------------- % 111.36/15.54 (1) ~ (all_307_0 = 0) % 111.36/15.54 (2) visSomeQuery(vnoQuery) = all_307_0 % 111.36/15.54 (3) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 111.36/15.54 vOptQuery] : (v1 = v0 | ~ (visSomeQuery(v2) = v1) | ~ % 111.36/15.54 (visSomeQuery(v2) = v0)) % 111.36/15.54 (4) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & vreduce(all_612_3, all_346_6) % 111.36/15.54 = all_612_1 & visSomeQuery(all_612_1) = all_612_0 & % 111.36/15.54 vIntersection(all_612_3, all_612_2) = all_338_0 & vOptQuery(all_612_1) & % 111.36/15.54 vQuery(all_612_2) & vQuery(all_612_3) & ! [v0: vTable] : ! [v1: vTable] % 111.36/15.54 : ( ~ (vtvalue(v1) = all_612_2) | ~ (vtvalue(v0) = all_612_3) | ~ % 111.36/15.54 vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) = % 111.36/15.54 all_612_3) | ~ vTable(v0)) % 111.36/15.54 (5) visSomeQuery(all_346_1) = 0 % 111.36/15.54 % 111.36/15.54 Begin of proof % 111.36/15.54 | % 111.36/15.54 | ALPHA: (4) implies: % 111.36/15.54 | (6) all_346_1 = vnoQuery % 111.36/15.54 | % 111.36/15.54 | REDUCE: (5), (6) imply: % 111.36/15.54 | (7) visSomeQuery(vnoQuery) = 0 % 111.36/15.54 | % 111.36/15.54 | GROUND_INST: instantiating (3) with all_307_0, 0, vnoQuery, simplifying with % 111.36/15.54 | (2), (7) gives: % 111.36/15.54 | (8) all_307_0 = 0 % 111.36/15.54 | % 111.36/15.54 | REDUCE: (1), (8) imply: % 111.36/15.54 | (9) $false % 111.36/15.54 | % 111.36/15.54 | CLOSE: (9) is inconsistent. % 111.36/15.54 | % 111.36/15.54 End of proof % 111.36/15.54 % 111.36/15.54 Sub-proof #4 shows that the following formulas are inconsistent: % 111.36/15.54 ---------------------------------------------------------------- % 111.36/15.54 (1) ~ (all_307_0 = 0) % 111.36/15.54 (2) visSomeQuery(vnoQuery) = all_307_0 % 111.36/15.54 (3) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 111.36/15.54 vOptQuery] : (v1 = v0 | ~ (visSomeQuery(v2) = v1) | ~ % 111.36/15.54 (visSomeQuery(v2) = v0)) % 111.36/15.54 (4) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & vreduce(all_612_3, all_346_6) % 111.36/15.54 = all_612_1 & visSomeQuery(all_612_1) = all_612_0 & % 111.36/15.54 vDifference(all_612_3, all_612_2) = all_338_0 & vOptQuery(all_612_1) & % 111.36/15.54 vQuery(all_612_2) & vQuery(all_612_3) & ! [v0: vTable] : ! [v1: vTable] % 111.36/15.54 : ( ~ (vtvalue(v1) = all_612_2) | ~ (vtvalue(v0) = all_612_3) | ~ % 111.36/15.54 vTable(v1) | ~ vTable(v0)) & ! [v0: vTable] : ( ~ (vtvalue(v0) = % 111.36/15.54 all_612_3) | ~ vTable(v0)) % 111.36/15.54 (5) visSomeQuery(all_346_1) = 0 % 111.36/15.54 % 111.36/15.54 Begin of proof % 111.36/15.54 | % 111.36/15.54 | ALPHA: (4) implies: % 111.36/15.54 | (6) all_346_1 = vnoQuery % 111.36/15.54 | % 111.36/15.54 | REDUCE: (5), (6) imply: % 111.36/15.54 | (7) visSomeQuery(vnoQuery) = 0 % 111.36/15.54 | % 111.36/15.54 | GROUND_INST: instantiating (3) with all_307_0, 0, vnoQuery, simplifying with % 111.36/15.54 | (2), (7) gives: % 111.36/15.54 | (8) all_307_0 = 0 % 111.36/15.54 | % 111.36/15.54 | REDUCE: (1), (8) imply: % 111.36/15.54 | (9) $false % 111.36/15.54 | % 111.36/15.54 | CLOSE: (9) is inconsistent. % 111.36/15.54 | % 111.36/15.54 End of proof % 111.36/15.54 % 111.36/15.54 Sub-proof #5 shows that the following formulas are inconsistent: % 111.36/15.54 ---------------------------------------------------------------- % 111.36/15.54 (1) vQuery(all_359_0) % 111.36/15.54 (2) vUnion(all_359_0, vq2) = all_346_3 % 111.36/15.54 (3) vptcheck(all_346_5, vq2, all_346_4) = 0 % 111.36/15.54 (4) vTTContext(all_346_5) % 111.36/15.54 (5) vTType(all_346_4) % 111.36/15.54 (6) ~ (all_346_0 = 0) % 111.36/15.54 (7) vptcheck(all_346_5, all_359_0, all_346_4) = 0 % 111.36/15.54 (8) ! [v0: vTTContext] : ! [v1: vQuery] : ! [v2: vTType] : ! [v3: vQuery] % 111.36/15.54 : ! [v4: vQuery] : ! [v5: int] : (v5 = 0 | ~ (vptcheck(v0, v4, v2) = % 111.36/15.54 v5) | ~ (vUnion(v1, v3) = v4) | ~ vTType(v2) | ~ vQuery(v3) | ~ % 111.36/15.54 vQuery(v1) | ~ vTTContext(v0) | ? [v6: any] : ? [v7: any] : % 111.36/15.54 (vptcheck(v0, v3, v2) = v7 & vptcheck(v0, v1, v2) = v6 & ( ~ (v7 = 0) | % 111.36/15.54 ~ (v6 = 0)))) % 111.36/15.54 (9) vQuery(vq2) % 111.36/15.54 (10) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 111.36/15.54 vTType] : ! [v3: vQuery] : ! [v4: vTTContext] : (v1 = v0 | ~ % 111.36/15.54 (vptcheck(v4, v3, v2) = v1) | ~ (vptcheck(v4, v3, v2) = v0)) % 111.36/15.54 (11) vptcheck(all_346_5, all_346_3, all_346_4) = all_346_0 % 111.36/15.54 % 111.36/15.54 Begin of proof % 111.36/15.54 | % 111.36/15.54 | GROUND_INST: instantiating (8) with all_346_5, all_359_0, all_346_4, vq2, % 111.36/15.54 | all_346_3, all_346_0, simplifying with (1), (2), (4), (5), (9), % 111.36/15.54 | (11) gives: % 111.36/15.54 | (12) all_346_0 = 0 | ? [v0: any] : ? [v1: any] : (vptcheck(all_346_5, % 111.36/15.54 | all_359_0, all_346_4) = v0 & vptcheck(all_346_5, vq2, all_346_4) = % 111.36/15.54 | v1 & ( ~ (v1 = 0) | ~ (v0 = 0))) % 111.36/15.54 | % 111.36/15.54 | BETA: splitting (12) gives: % 111.36/15.54 | % 111.36/15.54 | Case 1: % 111.36/15.54 | | % 111.36/15.54 | | (13) all_346_0 = 0 % 111.36/15.54 | | % 111.36/15.54 | | REDUCE: (6), (13) imply: % 111.36/15.54 | | (14) $false % 111.36/15.54 | | % 111.36/15.54 | | CLOSE: (14) is inconsistent. % 111.36/15.54 | | % 111.36/15.54 | Case 2: % 111.36/15.54 | | % 111.36/15.54 | | (15) ? [v0: any] : ? [v1: any] : (vptcheck(all_346_5, all_359_0, % 111.36/15.54 | | all_346_4) = v0 & vptcheck(all_346_5, vq2, all_346_4) = v1 & ( ~ % 111.36/15.54 | | (v1 = 0) | ~ (v0 = 0))) % 111.36/15.54 | | % 111.36/15.54 | | DELTA: instantiating (15) with fresh symbols all_727_0, all_727_1 gives: % 111.36/15.54 | | (16) vptcheck(all_346_5, all_359_0, all_346_4) = all_727_1 & % 111.36/15.54 | | vptcheck(all_346_5, vq2, all_346_4) = all_727_0 & ( ~ (all_727_0 = % 111.36/15.54 | | 0) | ~ (all_727_1 = 0)) % 111.36/15.54 | | % 111.36/15.54 | | ALPHA: (16) implies: % 111.36/15.54 | | (17) vptcheck(all_346_5, vq2, all_346_4) = all_727_0 % 111.36/15.54 | | (18) vptcheck(all_346_5, all_359_0, all_346_4) = all_727_1 % 111.36/15.54 | | (19) ~ (all_727_0 = 0) | ~ (all_727_1 = 0) % 111.36/15.54 | | % 111.36/15.54 | | GROUND_INST: instantiating (10) with 0, all_727_0, all_346_4, vq2, % 111.36/15.54 | | all_346_5, simplifying with (3), (17) gives: % 111.36/15.54 | | (20) all_727_0 = 0 % 111.36/15.54 | | % 111.36/15.54 | | GROUND_INST: instantiating (10) with 0, all_727_1, all_346_4, all_359_0, % 111.36/15.54 | | all_346_5, simplifying with (7), (18) gives: % 111.36/15.54 | | (21) all_727_1 = 0 % 111.36/15.54 | | % 111.36/15.54 | | BETA: splitting (19) gives: % 111.36/15.54 | | % 111.36/15.54 | | Case 1: % 111.36/15.54 | | | % 111.36/15.54 | | | (22) ~ (all_727_0 = 0) % 111.36/15.54 | | | % 111.36/15.54 | | | REDUCE: (20), (22) imply: % 111.36/15.54 | | | (23) $false % 111.36/15.54 | | | % 111.36/15.54 | | | CLOSE: (23) is inconsistent. % 111.36/15.54 | | | % 111.36/15.54 | | Case 2: % 111.36/15.54 | | | % 111.36/15.54 | | | (24) ~ (all_727_1 = 0) % 111.36/15.54 | | | % 111.36/15.54 | | | REDUCE: (21), (24) imply: % 111.36/15.54 | | | (25) $false % 111.36/15.54 | | | % 111.36/15.54 | | | CLOSE: (25) is inconsistent. % 111.36/15.54 | | | % 111.36/15.54 | | End of split % 111.36/15.54 | | % 111.36/15.54 | End of split % 111.36/15.54 | % 111.36/15.54 End of proof % 111.36/15.54 % 111.36/15.54 Sub-proof #6 shows that the following formulas are inconsistent: % 111.36/15.54 ---------------------------------------------------------------- % 111.36/15.54 (1) ~ (all_307_0 = 0) % 111.36/15.54 (2) visSomeQuery(vnoQuery) = all_307_0 % 111.36/15.54 (3) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 111.36/15.54 vOptQuery] : (v1 = v0 | ~ (visSomeQuery(v2) = v1) | ~ % 111.36/15.54 (visSomeQuery(v2) = v0)) % 111.36/15.54 (4) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & vreduce(all_612_3, all_346_6) % 111.36/15.54 = all_612_2 & visSomeQuery(all_612_2) = all_612_1 & vUnion(all_612_0, % 111.36/15.54 all_612_3) = all_338_0 & vtvalue(all_612_4) = all_612_0 & % 111.36/15.54 vOptQuery(all_612_2) & vTable(all_612_4) & vQuery(all_612_0) & % 111.36/15.54 vQuery(all_612_3) & ! [v0: vTable] : ( ~ (vtvalue(v0) = all_612_3) | ~ % 111.36/15.54 vTable(v0)) % 111.36/15.54 (5) visSomeQuery(all_346_1) = 0 % 111.36/15.54 % 111.36/15.54 Begin of proof % 111.36/15.54 | % 111.36/15.54 | ALPHA: (4) implies: % 111.36/15.54 | (6) all_346_1 = vnoQuery % 111.36/15.54 | % 111.36/15.54 | REDUCE: (5), (6) imply: % 111.36/15.54 | (7) visSomeQuery(vnoQuery) = 0 % 111.36/15.54 | % 111.36/15.54 | GROUND_INST: instantiating (3) with all_307_0, 0, vnoQuery, simplifying with % 111.36/15.54 | (2), (7) gives: % 111.36/15.54 | (8) all_307_0 = 0 % 111.36/15.54 | % 111.36/15.54 | REDUCE: (1), (8) imply: % 111.36/15.54 | (9) $false % 111.36/15.54 | % 111.36/15.54 | CLOSE: (9) is inconsistent. % 111.36/15.54 | % 111.36/15.54 End of proof % 111.36/15.54 % 111.36/15.54 Sub-proof #7 shows that the following formulas are inconsistent: % 111.36/15.54 ---------------------------------------------------------------- % 111.36/15.54 (1) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & vreduce(all_612_3, all_346_6) % 111.36/15.54 = all_612_2 & visSomeQuery(all_612_2) = all_612_1 & % 111.36/15.54 vIntersection(all_612_0, all_612_3) = all_338_0 & vtvalue(all_612_4) = % 111.36/15.54 all_612_0 & vOptQuery(all_612_2) & vTable(all_612_4) & vQuery(all_612_0) % 111.36/15.54 & vQuery(all_612_3) & ! [v0: vTable] : ( ~ (vtvalue(v0) = all_612_3) | % 111.36/15.54 ~ vTable(v0)) % 111.36/15.55 (2) ~ (all_307_0 = 0) % 111.36/15.55 (3) visSomeQuery(vnoQuery) = all_307_0 % 111.36/15.55 (4) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 111.36/15.55 vOptQuery] : (v1 = v0 | ~ (visSomeQuery(v2) = v1) | ~ % 111.36/15.55 (visSomeQuery(v2) = v0)) % 111.36/15.55 (5) visSomeQuery(all_346_1) = 0 % 111.36/15.55 % 111.36/15.55 Begin of proof % 111.36/15.55 | % 111.36/15.55 | ALPHA: (1) implies: % 111.36/15.55 | (6) all_346_1 = vnoQuery % 111.36/15.55 | % 111.36/15.55 | REDUCE: (5), (6) imply: % 111.36/15.55 | (7) visSomeQuery(vnoQuery) = 0 % 111.36/15.55 | % 111.36/15.55 | GROUND_INST: instantiating (4) with all_307_0, 0, vnoQuery, simplifying with % 111.36/15.55 | (3), (7) gives: % 111.36/15.55 | (8) all_307_0 = 0 % 111.36/15.55 | % 111.36/15.55 | REDUCE: (2), (8) imply: % 111.36/15.55 | (9) $false % 111.36/15.55 | % 111.36/15.55 | CLOSE: (9) is inconsistent. % 111.36/15.55 | % 111.36/15.55 End of proof % 111.36/15.55 % 111.36/15.55 Sub-proof #8 shows that the following formulas are inconsistent: % 111.36/15.55 ---------------------------------------------------------------- % 111.36/15.55 (1) ~ (all_307_0 = 0) % 111.36/15.55 (2) all_346_1 = vnoQuery & ~ (all_612_1 = 0) & vreduce(all_612_3, all_346_6) % 111.36/15.55 = all_612_2 & visSomeQuery(all_612_2) = all_612_1 & % 111.36/15.55 vDifference(all_612_0, all_612_3) = all_338_0 & vtvalue(all_612_4) = % 111.36/15.55 all_612_0 & vOptQuery(all_612_2) & vTable(all_612_4) & vQuery(all_612_0) % 111.36/15.55 & vQuery(all_612_3) & ! [v0: vTable] : ( ~ (vtvalue(v0) = all_612_3) | % 111.36/15.55 ~ vTable(v0)) % 111.36/15.55 (3) visSomeQuery(vnoQuery) = all_307_0 % 111.36/15.55 (4) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 111.36/15.55 vOptQuery] : (v1 = v0 | ~ (visSomeQuery(v2) = v1) | ~ % 111.36/15.55 (visSomeQuery(v2) = v0)) % 111.36/15.55 (5) visSomeQuery(all_346_1) = 0 % 111.36/15.55 % 111.36/15.55 Begin of proof % 111.36/15.55 | % 111.36/15.55 | ALPHA: (2) implies: % 111.36/15.55 | (6) all_346_1 = vnoQuery % 111.36/15.55 | % 111.36/15.55 | REDUCE: (5), (6) imply: % 111.36/15.55 | (7) visSomeQuery(vnoQuery) = 0 % 111.36/15.55 | % 111.36/15.55 | GROUND_INST: instantiating (4) with all_307_0, 0, vnoQuery, simplifying with % 111.36/15.55 | (3), (7) gives: % 111.36/15.55 | (8) all_307_0 = 0 % 111.36/15.55 | % 111.36/15.55 | REDUCE: (1), (8) imply: % 111.36/15.55 | (9) $false % 111.36/15.55 | % 111.36/15.55 | CLOSE: (9) is inconsistent. % 111.36/15.55 | % 111.36/15.55 End of proof % 111.36/15.55 % 111.36/15.55 Sub-proof #9 shows that the following formulas are inconsistent: % 111.36/15.55 ---------------------------------------------------------------- % 111.36/15.55 (1) ~ (all_307_0 = 0) % 111.36/15.55 (2) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & vlookupStore(all_612_1, % 111.36/15.55 all_346_6) = all_612_2 & visSomeTable(all_612_2) = all_612_0 & % 111.36/15.55 vselectFromWhere(all_612_3, all_612_1, all_612_4) = all_338_0 & % 111.36/15.55 vSelect(all_612_3) & vOptTable(all_612_2) & vName(all_612_1) & % 111.36/15.55 vPred(all_612_4) % 111.36/15.55 (3) visSomeQuery(vnoQuery) = all_307_0 % 111.36/15.55 (4) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 111.36/15.55 vOptQuery] : (v1 = v0 | ~ (visSomeQuery(v2) = v1) | ~ % 111.36/15.55 (visSomeQuery(v2) = v0)) % 111.36/15.55 (5) visSomeQuery(all_346_1) = 0 % 111.36/15.55 % 111.36/15.55 Begin of proof % 111.36/15.55 | % 111.36/15.55 | ALPHA: (2) implies: % 111.36/15.55 | (6) all_346_1 = vnoQuery % 111.36/15.55 | % 111.36/15.55 | REDUCE: (5), (6) imply: % 111.36/15.55 | (7) visSomeQuery(vnoQuery) = 0 % 111.36/15.55 | % 111.36/15.55 | GROUND_INST: instantiating (4) with all_307_0, 0, vnoQuery, simplifying with % 111.36/15.55 | (3), (7) gives: % 111.36/15.55 | (8) all_307_0 = 0 % 111.36/15.55 | % 111.36/15.55 | REDUCE: (1), (8) imply: % 111.36/15.55 | (9) $false % 111.36/15.55 | % 111.36/15.55 | CLOSE: (9) is inconsistent. % 111.36/15.55 | % 111.36/15.55 End of proof % 111.36/15.55 % 111.36/15.55 Sub-proof #10 shows that the following formulas are inconsistent: % 111.36/15.55 ---------------------------------------------------------------- % 111.36/15.55 (1) ~ (all_307_0 = 0) % 111.36/15.55 (2) visSomeQuery(vnoQuery) = all_307_0 % 111.36/15.55 (3) all_346_1 = vnoQuery & ~ (all_612_0 = 0) & vfilterTable(all_612_1, % 111.36/15.55 all_612_7) = all_612_6 & vprojectTable(all_612_5, all_612_6) = % 111.36/15.55 all_612_3 & vlookupStore(all_612_2, all_346_6) = all_612_4 & % 111.36/15.55 visSomeTable(all_612_3) = all_612_0 & visSomeTable(all_612_4) = 0 & % 111.36/15.55 vgetTable(all_612_4) = all_612_1 & vselectFromWhere(all_612_5, all_612_2, % 111.36/15.55 all_612_7) = all_338_0 & vSelect(all_612_5) & vTable(all_612_1) & % 111.36/15.55 vTable(all_612_6) & vOptTable(all_612_3) & vOptTable(all_612_4) & % 111.36/15.55 vName(all_612_2) & vPred(all_612_7) % 111.36/15.55 (4) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 111.36/15.55 vOptQuery] : (v1 = v0 | ~ (visSomeQuery(v2) = v1) | ~ % 111.36/15.55 (visSomeQuery(v2) = v0)) % 111.36/15.55 (5) visSomeQuery(all_346_1) = 0 % 111.36/15.55 % 111.36/15.55 Begin of proof % 111.36/15.55 | % 111.36/15.55 | ALPHA: (3) implies: % 111.36/15.55 | (6) all_346_1 = vnoQuery % 111.36/15.55 | % 111.36/15.55 | REDUCE: (5), (6) imply: % 111.36/15.55 | (7) visSomeQuery(vnoQuery) = 0 % 111.36/15.55 | % 111.36/15.55 | GROUND_INST: instantiating (4) with all_307_0, 0, vnoQuery, simplifying with % 111.36/15.55 | (2), (7) gives: % 111.36/15.55 | (8) all_307_0 = 0 % 111.36/15.55 | % 111.36/15.55 | REDUCE: (1), (8) imply: % 111.36/15.55 | (9) $false % 111.36/15.55 | % 111.36/15.55 | CLOSE: (9) is inconsistent. % 111.36/15.55 | % 111.36/15.55 End of proof % 111.36/15.55 % SZS output end Proof for theBenchmark % 111.36/15.55 % 111.36/15.55 14922ms %------------------------------------------------------------------------------