%------------------------------------------------------------------------------ % File : Princess---230619 % Problem : SWW593_2 : TPTP v8.1.2. Released v6.1.0. % Transfm : none % Format : tptp % Command : princess -inputFormat=tptp +threads -portfolio=casc +printProof -timeoutSec=%d %s % Computer : n004.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 : Fri Sep 1 00:50:50 EDT 2023 % Result : Theorem 16.78s 3.09s % Output : Proof 22.37s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.10/0.12 % Problem : SWW593_2 : TPTP v8.1.2. Released v6.1.0. % 0.10/0.12 % Command : princess -inputFormat=tptp +threads -portfolio=casc +printProof -timeoutSec=%d %s % 0.12/0.33 % Computer : n004.cluster.edu % 0.12/0.33 % Model : x86_64 x86_64 % 0.12/0.33 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.12/0.33 % Memory : 8042.1875MB % 0.12/0.33 % OS : Linux 3.10.0-693.el7.x86_64 % 0.12/0.33 % CPULimit : 300 % 0.12/0.33 % WCLimit : 300 % 0.12/0.33 % DateTime : Sun Aug 27 18:34:08 EDT 2023 % 0.12/0.34 % CPUTime : % 0.18/0.61 ________ _____ % 0.18/0.61 ___ __ \_________(_)________________________________ % 0.18/0.61 __ /_/ /_ ___/_ /__ __ \ ___/ _ \_ ___/_ ___/ % 0.18/0.61 _ ____/_ / _ / _ / / / /__ / __/(__ )_(__ ) % 0.18/0.61 /_/ /_/ /_/ /_/ /_/\___/ \___//____/ /____/ % 0.18/0.61 % 0.18/0.61 A Theorem Prover for First-Order Logic modulo Linear Integer Arithmetic % 0.18/0.61 (2023-06-19) % 0.18/0.61 % 0.18/0.61 (c) Philipp Rümmer, 2009-2023 % 0.18/0.61 Contributors: Peter Backeman, Peter Baumgartner, Angelo Brillout, Zafer Esen, % 0.18/0.61 Amanda Stjerna. % 0.18/0.61 Free software under BSD-3-Clause. % 0.18/0.61 % 0.18/0.61 For more information, visit http://www.philipp.ruemmer.org/princess.shtml % 0.18/0.61 % 0.18/0.62 Loading /export/starexec/sandbox2/benchmark/theBenchmark.p ... % 0.18/0.63 Running up to 7 provers in parallel. % 0.18/0.64 Prover 0: Options: +triggersInConjecture +genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1042961893 % 0.18/0.64 Prover 1: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1571432423 % 0.18/0.64 Prover 2: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMinimalAndEmpty -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1065072994 % 0.18/0.64 Prover 3: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1922548996 % 0.18/0.64 Prover 4: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=1868514696 % 0.18/0.64 Prover 5: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMaximal -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=complete -randomSeed=1259561288 % 0.18/0.64 Prover 6: Options: -triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximalOutermost -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1399714365 % 3.38/1.27 Prover 1: Preprocessing ... % 3.38/1.27 Prover 0: Preprocessing ... % 3.38/1.27 Prover 2: Preprocessing ... % 3.38/1.27 Prover 5: Preprocessing ... % 3.38/1.27 Prover 3: Preprocessing ... % 3.38/1.28 Prover 4: Preprocessing ... % 3.84/1.29 Prover 6: Preprocessing ... % 9.97/2.15 Prover 4: Warning: ignoring some quantifiers % 9.97/2.16 Prover 1: Warning: ignoring some quantifiers % 10.51/2.20 Prover 3: Warning: ignoring some quantifiers % 10.51/2.22 Prover 4: Constructing countermodel ... % 10.51/2.22 Prover 3: Constructing countermodel ... % 10.51/2.24 Prover 1: Constructing countermodel ... % 10.51/2.24 Prover 0: Proving ... % 10.51/2.25 Prover 6: Proving ... % 11.20/2.30 Prover 5: Proving ... % 11.20/2.30 Prover 2: Proving ... % 14.45/2.79 Prover 3: gave up % 14.45/2.79 Prover 7: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-236303470 % 15.68/2.89 Prover 7: Preprocessing ... % 16.78/3.06 Prover 7: Warning: ignoring some quantifiers % 16.78/3.08 Prover 7: Constructing countermodel ... % 16.78/3.09 Prover 0: proved (2454ms) % 16.78/3.09 % 16.78/3.09 % SZS status Theorem for /export/starexec/sandbox2/benchmark/theBenchmark.p % 16.78/3.09 % 16.78/3.09 Prover 2: stopped % 16.78/3.09 Prover 5: stopped % 16.78/3.11 Prover 6: stopped % 16.78/3.11 Prover 8: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-200781089 % 16.78/3.11 Prover 10: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=919308125 % 16.78/3.11 Prover 11: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1509710984 % 16.78/3.11 Prover 13: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=complete -randomSeed=1138197443 % 16.78/3.19 Prover 8: Preprocessing ... % 16.78/3.20 Prover 13: Preprocessing ... % 16.78/3.20 Prover 10: Preprocessing ... % 16.78/3.24 Prover 11: Preprocessing ... % 18.96/3.36 Prover 10: Warning: ignoring some quantifiers % 18.96/3.37 Prover 10: Constructing countermodel ... % 19.59/3.42 Prover 8: Warning: ignoring some quantifiers % 19.59/3.42 Prover 11: Warning: ignoring some quantifiers % 19.59/3.43 Prover 11: Constructing countermodel ... % 19.59/3.43 Prover 8: Constructing countermodel ... % 20.18/3.48 Prover 13: Warning: ignoring some quantifiers % 20.18/3.50 Prover 13: Constructing countermodel ... % 20.18/3.55 Prover 1: gave up % 20.18/3.55 Prover 16: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=completeFrugal -randomSeed=-2043353683 % 20.92/3.58 Prover 4: Found proof (size 347) % 20.92/3.58 Prover 4: proved (2942ms) % 20.92/3.58 Prover 13: stopped % 20.92/3.58 Prover 10: stopped % 20.92/3.58 Prover 11: stopped % 20.92/3.58 Prover 8: stopped % 20.92/3.58 Prover 7: stopped % 21.04/3.59 Prover 16: Preprocessing ... % 21.19/3.63 Prover 16: stopped % 21.19/3.63 % 21.19/3.63 % SZS status Theorem for /export/starexec/sandbox2/benchmark/theBenchmark.p % 21.19/3.63 % 21.19/3.65 % SZS output start Proof for theBenchmark % 21.19/3.66 Assumptions after simplification: % 21.19/3.66 --------------------------------- % 21.19/3.66 % 21.19/3.66 (bridgeL) % 21.19/3.67 ! [v0: int] : ! [v1: uni] : ( ~ (t2tb(v0) = v1) | tb2t(v1) = v0) % 21.19/3.67 % 21.19/3.67 (bridgeL1) % 21.19/3.67 ! [v0: elt] : ! [v1: uni] : ( ~ (t2tb1(v0) = v1) | ~ elt(v0) | tb2t1(v1) = % 21.19/3.67 v0) % 21.19/3.67 % 21.19/3.67 (bridgeR1) % 21.19/3.67 ty(elt1) & ! [v0: uni] : ! [v1: elt] : ( ~ (tb2t1(v0) = v1) | ~ uni(v0) | % 21.19/3.67 ? [v2: any] : ? [v3: uni] : (t2tb1(v1) = v3 & sort(elt1, v0) = v2 & uni(v3) % 21.19/3.67 & ( ~ (v2 = 0) | v3 = v0))) & ! [v0: uni] : ( ~ (sort(elt1, v0) = 0) | ~ % 21.19/3.67 uni(v0) | ? [v1: elt] : (tb2t1(v0) = v1 & t2tb1(v1) = v0 & elt(v1))) % 21.19/3.67 % 21.19/3.67 (bridgeR2) % 21.19/3.68 ty(elt1) & ty(int) & ? [v0: ty] : (map(int, elt1) = v0 & ty(v0) & ! [v1: % 21.19/3.68 uni] : ! [v2: map_int_elt] : ( ~ (tb2t2(v1) = v2) | ~ uni(v1) | ? [v3: % 21.19/3.68 any] : ? [v4: uni] : (t2tb2(v2) = v4 & sort(v0, v1) = v3 & uni(v4) & ( % 21.19/3.68 ~ (v3 = 0) | v4 = v1))) & ! [v1: uni] : ( ~ (sort(v0, v1) = 0) | ~ % 21.19/3.68 uni(v1) | ? [v2: map_int_elt] : (tb2t2(v1) = v2 & t2tb2(v2) = v1 & % 21.19/3.68 map_int_elt(v2)))) % 21.19/3.68 % 21.19/3.68 (contains_def) % 21.19/3.68 tree(null) & ! [v0: elt] : ! [v1: tree] : ! [v2: elt] : ! [v3: tree] : ! % 21.19/3.68 [v4: tree] : ! [v5: int] : (v5 = 0 | ~ (contains(v4, v0) = v5) | ~ % 21.19/3.68 (node(v1, v2, v3) = v4) | ~ tree(v3) | ~ tree(v1) | ~ elt(v2) | ~ % 21.19/3.68 elt(v0) | ? [v6: int] : ? [v7: int] : ( ~ (v7 = 0) & ~ (v6 = 0) & % 21.19/3.68 contains(v3, v0) = v7 & contains(v1, v0) = v6)) & ! [v0: elt] : ! [v1: % 21.19/3.68 tree] : ! [v2: tree] : ! [v3: tree] : ! [v4: int] : (v4 = 0 | ~ % 21.19/3.68 (contains(v3, v0) = v4) | ~ (node(v1, v0, v2) = v3) | ~ tree(v2) | ~ % 21.19/3.68 tree(v1) | ~ elt(v0)) & ! [v0: elt] : ! [v1: tree] : ! [v2: elt] : ! % 21.19/3.68 [v3: tree] : ! [v4: tree] : (v2 = v0 | ~ (contains(v4, v0) = 0) | ~ % 21.19/3.68 (node(v1, v2, v3) = v4) | ~ tree(v3) | ~ tree(v1) | ~ elt(v2) | ~ % 21.19/3.68 elt(v0) | ? [v5: any] : ? [v6: any] : (contains(v3, v0) = v6 & % 21.19/3.68 contains(v1, v0) = v5 & (v6 = 0 | v5 = 0))) & ! [v0: elt] : ( ~ % 21.19/3.68 (contains(null, v0) = 0) | ~ elt(v0)) % 21.19/3.68 % 21.19/3.68 (get_sort) % 21.19/3.68 ! [v0: ty] : ! [v1: ty] : ! [v2: uni] : ! [v3: uni] : ! [v4: uni] : ( ~ % 21.19/3.68 (get(v1, v0, v2, v3) = v4) | ~ ty(v1) | ~ ty(v0) | ~ uni(v3) | ~ uni(v2) % 21.19/3.68 | sort(v1, v4) = 0) % 21.19/3.68 % 21.19/3.68 (node_proj_1_def) % 21.19/3.68 ! [v0: tree] : ! [v1: elt] : ! [v2: tree] : ! [v3: tree] : ( ~ (node(v0, % 21.19/3.68 v1, v2) = v3) | ~ tree(v2) | ~ tree(v0) | ~ elt(v1) | node_proj_1(v3) % 21.19/3.68 = v0) % 21.19/3.68 % 21.19/3.68 (node_proj_3_def) % 21.19/3.68 ! [v0: tree] : ! [v1: elt] : ! [v2: tree] : ! [v3: tree] : ( ~ (node(v0, % 21.19/3.68 v1, v2) = v3) | ~ tree(v2) | ~ tree(v0) | ~ elt(v1) | node_proj_3(v3) % 21.19/3.68 = v2) % 21.19/3.68 % 21.19/3.68 (null_Node) % 21.19/3.68 tree(null) & ! [v0: tree] : ! [v1: elt] : ! [v2: tree] : ( ~ (node(v0, v1, % 21.19/3.68 v2) = null) | ~ tree(v2) | ~ tree(v0) | ~ elt(v1)) % 21.19/3.68 % 21.19/3.68 (select_eq) % 21.19/3.69 ! [v0: ty] : ! [v1: ty] : ! [v2: uni] : ! [v3: uni] : ! [v4: uni] : ! % 21.19/3.69 [v5: uni] : ! [v6: uni] : (v6 = v4 | ~ (set(v1, v0, v2, v3, v4) = v5) | ~ % 21.19/3.69 (get(v1, v0, v5, v3) = v6) | ~ ty(v1) | ~ ty(v0) | ~ uni(v4) | ~ uni(v3) % 21.19/3.69 | ~ uni(v2) | ? [v7: int] : ( ~ (v7 = 0) & sort(v1, v4) = v7)) % 21.19/3.69 % 21.19/3.69 (select_neq) % 21.19/3.69 ! [v0: ty] : ! [v1: ty] : ! [v2: uni] : ! [v3: uni] : ! [v4: uni] : ! % 21.19/3.69 [v5: uni] : ! [v6: uni] : ! [v7: uni] : (v4 = v3 | ~ (set(v1, v0, v2, v3, % 21.19/3.69 v6) = v7) | ~ (get(v1, v0, v2, v4) = v5) | ~ (sort(v0, v3) = 0) | ~ % 21.19/3.69 ty(v1) | ~ ty(v0) | ~ uni(v6) | ~ uni(v4) | ~ uni(v3) | ~ uni(v2) | ? % 21.19/3.69 [v8: any] : ((v8 = v5 & get(v1, v0, v7, v4) = v5 & uni(v5)) | ( ~ (v8 = 0) & % 21.19/3.69 sort(v0, v4) = v8))) % 21.19/3.69 % 21.19/3.69 (set_sort) % 21.19/3.69 ! [v0: ty] : ! [v1: ty] : ! [v2: uni] : ! [v3: uni] : ! [v4: uni] : ! % 21.19/3.69 [v5: uni] : ( ~ (set(v1, v0, v2, v3, v4) = v5) | ~ ty(v1) | ~ ty(v0) | ~ % 21.19/3.69 uni(v4) | ~ uni(v3) | ~ uni(v2) | ? [v6: ty] : (map(v0, v1) = v6 & % 21.19/3.69 sort(v6, v5) = 0 & ty(v6))) % 21.19/3.69 % 21.19/3.69 (t2tb_sort) % 21.19/3.69 ty(int) & ! [v0: int] : ! [v1: uni] : ( ~ (t2tb(v0) = v1) | sort(int, v1) = % 21.19/3.69 0) % 21.19/3.69 % 21.19/3.69 (t2tb_sort1) % 21.19/3.69 ty(elt1) & ! [v0: elt] : ! [v1: uni] : ( ~ (t2tb1(v0) = v1) | ~ elt(v0) | % 21.19/3.69 sort(elt1, v1) = 0) % 21.19/3.69 % 21.19/3.69 (t2tb_sort2) % 21.19/3.69 ty(elt1) & ty(int) & ? [v0: ty] : (map(int, elt1) = v0 & ty(v0) & ! [v1: % 21.19/3.69 map_int_elt] : ! [v2: uni] : ( ~ (t2tb2(v1) = v2) | ~ map_int_elt(v1) | % 21.19/3.69 sort(v0, v2) = 0)) % 21.19/3.69 % 21.19/3.69 (wP_parameter_fill) % 21.19/3.70 tree(null) & ty(elt1) & ty(int) & ? [v0: tree] : ? [v1: int] : ? [v2: % 21.19/3.70 map_int_elt] : ? [v3: int] : ? [v4: uni] : ? [v5: tree] : ? [v6: elt] : % 21.19/3.70 ? [v7: tree] : ? [v8: uni] : ? [v9: map_int_elt] : ? [v10: int] : ? [v11: % 21.19/3.70 uni] : ? [v12: uni] : ? [v13: uni] : ? [v14: map_int_elt] : ? [v15: int] % 21.19/3.70 : ? [v16: uni] : ? [v17: uni] : ? [v18: elt] : ? [v19: any] : ? [v20: % 21.19/3.70 elt] : ? [v21: map_int_elt] : ? [v22: uni] : ? [v23: map_int_elt] : ? % 21.19/3.70 [v24: int] : ? [v25: uni] : ? [v26: int] : ? [v27: uni] : ? [v28: uni] : % 21.19/3.70 ? [v29: elt] : ? [v30: any] : ? [v31: elt] : ? [v32: tree] : ? [v33: elt] % 21.19/3.70 : ? [v34: tree] : ? [v35: tree] : ? [v36: tree] : ? [v37: elt] : ? [v38: % 21.19/3.70 tree] : ? [v39: tree] : ($lesseq(v3, v1) & $lesseq(0, v3) & t2tb2(v2) = v4 % 21.19/3.70 & t2tb1(v6) = v8 & node(v5, v6, v7) = v0 & map_int_elt(v23) & % 21.19/3.70 map_int_elt(v21) & map_int_elt(v9) & map_int_elt(v2) & tree(v38) & tree(v36) % 21.19/3.70 & tree(v34) & tree(v32) & tree(v7) & tree(v5) & tree(v0) & elt(v37) & % 21.19/3.70 elt(v33) & elt(v6) & uni(v8) & uni(v4) & (v0 = null | (v39 = v0 & ~ (v38 = % 21.19/3.70 v5) & ~ (v36 = v5) & node(v36, v37, v38) = v0) | ($lesseq(v10, v1) & % 21.19/3.70 $lesseq(v3, v10) & tb2t2(v13) = v14 & t2tb2(v9) = v11 & t2tb(v10) = v12 % 21.19/3.70 & set(elt1, int, v11, v12, v8) = v13 & map_int_elt(v14) & uni(v13) & % 21.19/3.70 uni(v12) & uni(v11) & ! [v40: int] : ! [v41: uni] : ( ~ ($lesseq(1, % 21.19/3.70 $difference(v10, v40))) | ~ ($lesseq(v3, v40)) | ~ (t2tb(v40) = % 21.19/3.70 v41) | ? [v42: uni] : ? [v43: elt] : (tb2t1(v42) = v43 & % 21.19/3.70 contains(v5, v43) = 0 & get(elt1, int, v11, v41) = v42 & elt(v43) & % 21.19/3.70 uni(v42))) & ! [v40: int] : ! [v41: uni] : ( ~ ($lesseq(1, % 21.19/3.70 $difference(v3, v40))) | ~ ($lesseq(0, v40)) | ~ (t2tb(v40) = % 21.19/3.70 v41) | ? [v42: uni] : ? [v43: elt] : ? [v44: uni] : (tb2t1(v44) = % 21.19/3.70 v43 & tb2t1(v42) = v43 & get(elt1, int, v11, v41) = v42 & get(elt1, % 21.19/3.70 int, v4, v41) = v44 & elt(v43) & uni(v44) & uni(v42))) & ((v10 = % 21.19/3.70 v1 & (( ~ (v20 = v18) & $lesseq(1, $difference(v3, v15)) & % 21.19/3.70 $lesseq(0, v15) & tb2t1(v19) = v20 & tb2t1(v17) = v18 & % 21.19/3.70 t2tb(v15) = v16 & get(elt1, int, v11, v16) = v17 & get(elt1, % 21.19/3.70 int, v4, v16) = v19 & elt(v20) & elt(v18) & uni(v19) & % 21.19/3.70 uni(v17) & uni(v16)) | ( ~ (v19 = 0) & $lesseq(1, % 21.19/3.70 $difference(v1, v15)) & $lesseq(v3, v15) & tb2t1(v17) = v18 & % 21.19/3.70 contains(v0, v18) = v19 & t2tb(v15) = v16 & get(elt1, int, v11, % 21.19/3.70 v16) = v17 & elt(v18) & uni(v17) & uni(v16)))) | ($lesseq(1, % 21.19/3.70 $difference(v1, v10)) & ( ~ ($lesseq(0, v10)) | (v21 = v14 & % 21.19/3.70 t2tb2(v14) = v22 & uni(v22) & ((v35 = v0 & ~ (v34 = v7) & ~ % 21.19/3.70 (v32 = v7) & node(v32, v33, v34) = v0) | ($lesseq(v24, v1) & % 21.19/3.70 $lesseq(1, $difference(v24, v10)) & t2tb2(v23) = v25 & % 21.19/3.70 uni(v25) & ! [v40: int] : ! [v41: uni] : ( ~ ($lesseq(1, % 21.19/3.70 $difference(v24, v40))) | ~ ($lesseq(1, % 21.19/3.70 $difference(v40, v10))) | ~ (t2tb(v40) = v41) | ? % 21.19/3.70 [v42: uni] : ? [v43: elt] : (tb2t1(v42) = v43 & % 21.19/3.70 contains(v7, v43) = 0 & get(elt1, int, v25, v41) = v42 & % 21.19/3.70 elt(v43) & uni(v42))) & ! [v40: int] : ! [v41: uni] : % 21.19/3.70 ( ~ ($lesseq(v40, v10)) | ~ ($lesseq(0, v40)) | ~ % 21.19/3.70 (t2tb(v40) = v41) | ? [v42: uni] : ? [v43: elt] : ? % 21.19/3.70 [v44: uni] : (tb2t1(v44) = v43 & tb2t1(v42) = v43 & % 21.19/3.70 get(elt1, int, v25, v41) = v42 & get(elt1, int, v22, % 21.19/3.70 v41) = v44 & elt(v43) & uni(v44) & uni(v42))) & ( ~ % 21.19/3.70 ($lesseq(v3, v24)) | ( ~ (v31 = v29) & $lesseq(1, % 21.19/3.70 $difference(v3, v26)) & $lesseq(0, v26) & tb2t1(v30) = % 21.19/3.70 v31 & tb2t1(v28) = v29 & t2tb(v26) = v27 & get(elt1, % 21.19/3.70 int, v25, v27) = v28 & get(elt1, int, v4, v27) = v30 & % 21.19/3.70 elt(v31) & elt(v29) & uni(v30) & uni(v28) & uni(v27)) | % 21.19/3.70 ( ~ (v30 = 0) & $lesseq(1, $difference(v24, v26)) & % 21.19/3.70 $lesseq(v3, v26) & tb2t1(v28) = v29 & contains(v0, v29) % 21.19/3.70 = v30 & t2tb(v26) = v27 & get(elt1, int, v25, v27) = v28 % 21.19/3.70 & elt(v29) & uni(v28) & uni(v27)))))))))))) % 21.19/3.70 % 21.19/3.70 (function-axioms) % 21.58/3.71 ! [v0: uni] : ! [v1: uni] : ! [v2: uni] : ! [v3: uni] : ! [v4: uni] : ! % 21.58/3.71 [v5: ty] : ! [v6: ty] : (v1 = v0 | ~ (set(v6, v5, v4, v3, v2) = v1) | ~ % 21.58/3.71 (set(v6, v5, v4, v3, v2) = v0)) & ! [v0: uni] : ! [v1: uni] : ! [v2: uni] % 21.58/3.71 : ! [v3: uni] : ! [v4: tree] : ! [v5: ty] : (v1 = v0 | ~ (match_tree(v5, % 21.58/3.71 v4, v3, v2) = v1) | ~ (match_tree(v5, v4, v3, v2) = v0)) & ! [v0: uni] % 21.58/3.71 : ! [v1: uni] : ! [v2: uni] : ! [v3: int] : ! [v4: uni] : ! [v5: ty] : % 21.58/3.71 (v1 = v0 | ~ (set1(v5, v4, v3, v2) = v1) | ~ (set1(v5, v4, v3, v2) = v0)) & % 21.58/3.71 ! [v0: uni] : ! [v1: uni] : ! [v2: uni] : ! [v3: uni] : ! [v4: ty] : ! % 21.58/3.71 [v5: ty] : (v1 = v0 | ~ (get(v5, v4, v3, v2) = v1) | ~ (get(v5, v4, v3, v2) % 21.58/3.71 = v0)) & ! [v0: uni] : ! [v1: uni] : ! [v2: uni] : ! [v3: uni] : ! % 21.58/3.71 [v4: bool] : ! [v5: ty] : (v1 = v0 | ~ (match_bool(v5, v4, v3, v2) = v1) | % 21.58/3.71 ~ (match_bool(v5, v4, v3, v2) = v0)) & ! [v0: tree] : ! [v1: tree] : ! % 21.58/3.71 [v2: tree] : ! [v3: elt] : ! [v4: tree] : (v1 = v0 | ~ (node(v4, v3, v2) = % 21.58/3.71 v1) | ~ (node(v4, v3, v2) = v0)) & ! [v0: uni] : ! [v1: uni] : ! [v2: % 21.58/3.71 uni] : ! [v3: int] : ! [v4: ty] : (v1 = v0 | ~ (make(v4, v3, v2) = v1) | % 21.58/3.71 ~ (make(v4, v3, v2) = v0)) & ! [v0: uni] : ! [v1: uni] : ! [v2: int] : ! % 21.58/3.71 [v3: uni] : ! [v4: ty] : (v1 = v0 | ~ (get1(v4, v3, v2) = v1) | ~ (get1(v4, % 21.58/3.71 v3, v2) = v0)) & ! [v0: uni] : ! [v1: uni] : ! [v2: uni] : ! [v3: % 21.58/3.71 int] : ! [v4: ty] : (v1 = v0 | ~ (mk_array(v4, v3, v2) = v1) | ~ % 21.58/3.71 (mk_array(v4, v3, v2) = v0)) & ! [v0: uni] : ! [v1: uni] : ! [v2: uni] : % 21.58/3.71 ! [v3: ty] : ! [v4: ty] : (v1 = v0 | ~ (const(v4, v3, v2) = v1) | ~ % 21.58/3.71 (const(v4, v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 21.58/3.71 MultipleValueBool] : ! [v2: elt] : ! [v3: tree] : (v1 = v0 | ~ % 21.58/3.71 (contains(v3, v2) = v1) | ~ (contains(v3, v2) = v0)) & ! [v0: uni] : ! % 21.58/3.71 [v1: uni] : ! [v2: uni] : ! [v3: ty] : (v1 = v0 | ~ (elts(v3, v2) = v1) | % 21.58/3.71 ~ (elts(v3, v2) = v0)) & ! [v0: int] : ! [v1: int] : ! [v2: uni] : ! % 21.58/3.71 [v3: ty] : (v1 = v0 | ~ (length(v3, v2) = v1) | ~ (length(v3, v2) = v0)) & % 21.58/3.71 ! [v0: ty] : ! [v1: ty] : ! [v2: ty] : ! [v3: ty] : (v1 = v0 | ~ (map(v3, % 21.58/3.71 v2) = v1) | ~ (map(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! % 21.58/3.71 [v1: MultipleValueBool] : ! [v2: uni] : ! [v3: ty] : (v1 = v0 | ~ (sort(v3, % 21.58/3.71 v2) = v1) | ~ (sort(v3, v2) = v0)) & ! [v0: map_int_elt] : ! [v1: % 21.58/3.71 map_int_elt] : ! [v2: uni] : (v1 = v0 | ~ (tb2t2(v2) = v1) | ~ (tb2t2(v2) % 21.58/3.71 = v0)) & ! [v0: uni] : ! [v1: uni] : ! [v2: map_int_elt] : (v1 = v0 | % 21.58/3.71 ~ (t2tb2(v2) = v1) | ~ (t2tb2(v2) = v0)) & ! [v0: elt] : ! [v1: elt] : ! % 21.58/3.71 [v2: uni] : (v1 = v0 | ~ (tb2t1(v2) = v1) | ~ (tb2t1(v2) = v0)) & ! [v0: % 21.58/3.71 uni] : ! [v1: uni] : ! [v2: elt] : (v1 = v0 | ~ (t2tb1(v2) = v1) | ~ % 21.58/3.71 (t2tb1(v2) = v0)) & ! [v0: tree] : ! [v1: tree] : ! [v2: tree] : (v1 = v0 % 21.58/3.71 | ~ (node_proj_3(v2) = v1) | ~ (node_proj_3(v2) = v0)) & ! [v0: elt] : ! % 21.58/3.71 [v1: elt] : ! [v2: tree] : (v1 = v0 | ~ (node_proj_2(v2) = v1) | ~ % 21.58/3.71 (node_proj_2(v2) = v0)) & ! [v0: tree] : ! [v1: tree] : ! [v2: tree] : % 21.58/3.71 (v1 = v0 | ~ (node_proj_1(v2) = v1) | ~ (node_proj_1(v2) = v0)) & ! [v0: % 21.58/3.71 int] : ! [v1: int] : ! [v2: uni] : (v1 = v0 | ~ (tb2t(v2) = v1) | ~ % 21.58/3.71 (tb2t(v2) = v0)) & ! [v0: uni] : ! [v1: uni] : ! [v2: int] : (v1 = v0 | % 21.58/3.71 ~ (t2tb(v2) = v1) | ~ (t2tb(v2) = v0)) & ! [v0: ty] : ! [v1: ty] : ! % 21.58/3.71 [v2: ty] : (v1 = v0 | ~ (array(v2) = v1) | ~ (array(v2) = v0)) & ! [v0: % 21.58/3.71 uni] : ! [v1: uni] : ! [v2: ty] : (v1 = v0 | ~ (witness(v2) = v1) | ~ % 21.58/3.71 (witness(v2) = v0)) % 21.58/3.71 % 21.58/3.71 Further assumptions not needed in the proof: % 21.58/3.71 -------------------------------------------- % 21.58/3.71 array_inversion, bool_inversion, bridgeL2, bridgeR, compatOrderMult, const1, % 21.58/3.71 const_sort, elts_def, elts_sort, get_def, get_sort1, length_def, make_def, % 21.58/3.71 make_sort, match_bool_False, match_bool_True, match_bool_sort, match_tree_Node, % 21.58/3.71 match_tree_Null, match_tree_sort, mk_array_sort, node_proj_2_def, set_def, % 21.58/3.71 set_sort1, tree_inversion, true_False, tuple0_inversion, witness_sort % 21.58/3.71 % 21.58/3.71 Those formulas are unsatisfiable: % 21.58/3.71 --------------------------------- % 21.58/3.71 % 21.58/3.71 Begin of proof % 21.58/3.71 | % 21.58/3.71 | ALPHA: (t2tb_sort) implies: % 21.58/3.71 | (1) ! [v0: int] : ! [v1: uni] : ( ~ (t2tb(v0) = v1) | sort(int, v1) = 0) % 21.58/3.71 | % 21.58/3.71 | ALPHA: (null_Node) implies: % 21.58/3.71 | (2) ! [v0: tree] : ! [v1: elt] : ! [v2: tree] : ( ~ (node(v0, v1, v2) = % 21.58/3.71 | null) | ~ tree(v2) | ~ tree(v0) | ~ elt(v1)) % 21.58/3.71 | % 21.58/3.71 | ALPHA: (contains_def) implies: % 21.58/3.71 | (3) ! [v0: elt] : ! [v1: tree] : ! [v2: tree] : ! [v3: tree] : ! [v4: % 21.58/3.71 | int] : (v4 = 0 | ~ (contains(v3, v0) = v4) | ~ (node(v1, v0, v2) = % 21.58/3.71 | v3) | ~ tree(v2) | ~ tree(v1) | ~ elt(v0)) % 21.58/3.71 | (4) ! [v0: elt] : ! [v1: tree] : ! [v2: elt] : ! [v3: tree] : ! [v4: % 21.58/3.71 | tree] : ! [v5: int] : (v5 = 0 | ~ (contains(v4, v0) = v5) | ~ % 21.58/3.71 | (node(v1, v2, v3) = v4) | ~ tree(v3) | ~ tree(v1) | ~ elt(v2) | ~ % 21.58/3.71 | elt(v0) | ? [v6: int] : ? [v7: int] : ( ~ (v7 = 0) & ~ (v6 = 0) & % 21.58/3.71 | contains(v3, v0) = v7 & contains(v1, v0) = v6)) % 21.58/3.71 | % 21.58/3.71 | ALPHA: (t2tb_sort1) implies: % 21.58/3.71 | (5) ! [v0: elt] : ! [v1: uni] : ( ~ (t2tb1(v0) = v1) | ~ elt(v0) | % 21.58/3.71 | sort(elt1, v1) = 0) % 21.58/3.71 | % 21.58/3.71 | ALPHA: (bridgeR1) implies: % 21.58/3.71 | (6) ! [v0: uni] : ! [v1: elt] : ( ~ (tb2t1(v0) = v1) | ~ uni(v0) | ? % 21.58/3.71 | [v2: any] : ? [v3: uni] : (t2tb1(v1) = v3 & sort(elt1, v0) = v2 & % 21.58/3.71 | uni(v3) & ( ~ (v2 = 0) | v3 = v0))) % 21.58/3.71 | % 21.58/3.71 | ALPHA: (t2tb_sort2) implies: % 21.58/3.71 | (7) ? [v0: ty] : (map(int, elt1) = v0 & ty(v0) & ! [v1: map_int_elt] : ! % 21.58/3.71 | [v2: uni] : ( ~ (t2tb2(v1) = v2) | ~ map_int_elt(v1) | sort(v0, v2) % 21.58/3.71 | = 0)) % 21.58/3.71 | % 21.58/3.72 | ALPHA: (bridgeR2) implies: % 21.58/3.72 | (8) ? [v0: ty] : (map(int, elt1) = v0 & ty(v0) & ! [v1: uni] : ! [v2: % 21.58/3.72 | map_int_elt] : ( ~ (tb2t2(v1) = v2) | ~ uni(v1) | ? [v3: any] : % 21.58/3.72 | ? [v4: uni] : (t2tb2(v2) = v4 & sort(v0, v1) = v3 & uni(v4) & ( ~ % 21.58/3.72 | (v3 = 0) | v4 = v1))) & ! [v1: uni] : ( ~ (sort(v0, v1) = 0) | % 21.58/3.72 | ~ uni(v1) | ? [v2: map_int_elt] : (tb2t2(v1) = v2 & t2tb2(v2) = % 21.58/3.72 | v1 & map_int_elt(v2)))) % 21.58/3.72 | % 21.58/3.72 | ALPHA: (wP_parameter_fill) implies: % 21.58/3.72 | (9) ty(int) % 21.58/3.72 | (10) ty(elt1) % 21.58/3.73 | (11) ? [v0: tree] : ? [v1: int] : ? [v2: map_int_elt] : ? [v3: int] : % 21.58/3.73 | ? [v4: uni] : ? [v5: tree] : ? [v6: elt] : ? [v7: tree] : ? [v8: % 21.58/3.73 | uni] : ? [v9: map_int_elt] : ? [v10: int] : ? [v11: uni] : ? % 21.58/3.73 | [v12: uni] : ? [v13: uni] : ? [v14: map_int_elt] : ? [v15: int] : % 21.58/3.73 | ? [v16: uni] : ? [v17: uni] : ? [v18: elt] : ? [v19: any] : ? % 21.58/3.73 | [v20: elt] : ? [v21: map_int_elt] : ? [v22: uni] : ? [v23: % 21.58/3.73 | map_int_elt] : ? [v24: int] : ? [v25: uni] : ? [v26: int] : ? % 21.58/3.73 | [v27: uni] : ? [v28: uni] : ? [v29: elt] : ? [v30: any] : ? [v31: % 21.58/3.73 | elt] : ? [v32: tree] : ? [v33: elt] : ? [v34: tree] : ? [v35: % 21.58/3.73 | tree] : ? [v36: tree] : ? [v37: elt] : ? [v38: tree] : ? [v39: % 21.58/3.73 | tree] : ($lesseq(v3, v1) & $lesseq(0, v3) & t2tb2(v2) = v4 & % 21.58/3.73 | t2tb1(v6) = v8 & node(v5, v6, v7) = v0 & map_int_elt(v23) & % 21.58/3.73 | map_int_elt(v21) & map_int_elt(v9) & map_int_elt(v2) & tree(v38) & % 21.58/3.73 | tree(v36) & tree(v34) & tree(v32) & tree(v7) & tree(v5) & tree(v0) & % 21.58/3.73 | elt(v37) & elt(v33) & elt(v6) & uni(v8) & uni(v4) & (v0 = null | % 21.58/3.73 | (v39 = v0 & ~ (v38 = v5) & ~ (v36 = v5) & node(v36, v37, v38) = % 21.58/3.73 | v0) | ($lesseq(v10, v1) & $lesseq(v3, v10) & tb2t2(v13) = v14 & % 21.58/3.73 | t2tb2(v9) = v11 & t2tb(v10) = v12 & set(elt1, int, v11, v12, v8) % 21.58/3.73 | = v13 & map_int_elt(v14) & uni(v13) & uni(v12) & uni(v11) & ! % 21.58/3.73 | [v40: int] : ! [v41: uni] : ( ~ ($lesseq(1, $difference(v10, % 21.58/3.73 | v40))) | ~ ($lesseq(v3, v40)) | ~ (t2tb(v40) = v41) | % 21.58/3.73 | ? [v42: uni] : ? [v43: elt] : (tb2t1(v42) = v43 & % 21.58/3.73 | contains(v5, v43) = 0 & get(elt1, int, v11, v41) = v42 & % 21.58/3.73 | elt(v43) & uni(v42))) & ! [v40: int] : ! [v41: uni] : ( ~ % 21.58/3.73 | ($lesseq(1, $difference(v3, v40))) | ~ ($lesseq(0, v40)) | ~ % 21.58/3.73 | (t2tb(v40) = v41) | ? [v42: uni] : ? [v43: elt] : ? [v44: % 21.58/3.73 | uni] : (tb2t1(v44) = v43 & tb2t1(v42) = v43 & get(elt1, int, % 21.58/3.73 | v11, v41) = v42 & get(elt1, int, v4, v41) = v44 & elt(v43) % 21.58/3.73 | & uni(v44) & uni(v42))) & ((v10 = v1 & (( ~ (v20 = v18) & % 21.58/3.73 | $lesseq(1, $difference(v3, v15)) & $lesseq(0, v15) & % 21.58/3.73 | tb2t1(v19) = v20 & tb2t1(v17) = v18 & t2tb(v15) = v16 & % 21.58/3.73 | get(elt1, int, v11, v16) = v17 & get(elt1, int, v4, v16) % 21.58/3.73 | = v19 & elt(v20) & elt(v18) & uni(v19) & uni(v17) & % 21.58/3.73 | uni(v16)) | ( ~ (v19 = 0) & $lesseq(1, $difference(v1, % 21.58/3.73 | v15)) & $lesseq(v3, v15) & tb2t1(v17) = v18 & % 21.58/3.73 | contains(v0, v18) = v19 & t2tb(v15) = v16 & get(elt1, % 21.58/3.73 | int, v11, v16) = v17 & elt(v18) & uni(v17) & % 21.58/3.73 | uni(v16)))) | ($lesseq(1, $difference(v1, v10)) & ( ~ % 21.58/3.73 | ($lesseq(0, v10)) | (v21 = v14 & t2tb2(v14) = v22 & % 21.58/3.73 | uni(v22) & ((v35 = v0 & ~ (v34 = v7) & ~ (v32 = v7) & % 21.58/3.73 | node(v32, v33, v34) = v0) | ($lesseq(v24, v1) & % 21.58/3.73 | $lesseq(1, $difference(v24, v10)) & t2tb2(v23) = v25 % 21.58/3.73 | & uni(v25) & ! [v40: int] : ! [v41: uni] : ( ~ % 21.58/3.73 | ($lesseq(1, $difference(v24, v40))) | ~ % 21.58/3.73 | ($lesseq(1, $difference(v40, v10))) | ~ % 21.58/3.73 | (t2tb(v40) = v41) | ? [v42: uni] : ? [v43: elt] % 21.58/3.73 | : (tb2t1(v42) = v43 & contains(v7, v43) = 0 & % 21.58/3.73 | get(elt1, int, v25, v41) = v42 & elt(v43) & % 21.58/3.73 | uni(v42))) & ! [v40: int] : ! [v41: uni] : ( ~ % 21.58/3.73 | ($lesseq(v40, v10)) | ~ ($lesseq(0, v40)) | ~ % 21.58/3.73 | (t2tb(v40) = v41) | ? [v42: uni] : ? [v43: elt] % 21.58/3.73 | : ? [v44: uni] : (tb2t1(v44) = v43 & tb2t1(v42) = % 21.58/3.73 | v43 & get(elt1, int, v25, v41) = v42 & get(elt1, % 21.58/3.73 | int, v22, v41) = v44 & elt(v43) & uni(v44) & % 21.58/3.73 | uni(v42))) & ( ~ ($lesseq(v3, v24)) | ( ~ (v31 = % 21.58/3.73 | v29) & $lesseq(1, $difference(v3, v26)) & % 21.58/3.73 | $lesseq(0, v26) & tb2t1(v30) = v31 & tb2t1(v28) % 21.58/3.73 | = v29 & t2tb(v26) = v27 & get(elt1, int, v25, % 21.58/3.73 | v27) = v28 & get(elt1, int, v4, v27) = v30 & % 21.58/3.73 | elt(v31) & elt(v29) & uni(v30) & uni(v28) & % 21.58/3.73 | uni(v27)) | ( ~ (v30 = 0) & $lesseq(1, % 21.58/3.73 | $difference(v24, v26)) & $lesseq(v3, v26) & % 21.58/3.73 | tb2t1(v28) = v29 & contains(v0, v29) = v30 & % 21.58/3.73 | t2tb(v26) = v27 & get(elt1, int, v25, v27) = v28 % 21.58/3.73 | & elt(v29) & uni(v28) & uni(v27)))))))))))) % 21.58/3.73 | % 21.58/3.73 | ALPHA: (function-axioms) implies: % 21.58/3.73 | (12) ! [v0: uni] : ! [v1: uni] : ! [v2: int] : (v1 = v0 | ~ (t2tb(v2) = % 21.58/3.73 | v1) | ~ (t2tb(v2) = v0)) % 21.58/3.73 | (13) ! [v0: int] : ! [v1: int] : ! [v2: uni] : (v1 = v0 | ~ (tb2t(v2) = % 21.58/3.73 | v1) | ~ (tb2t(v2) = v0)) % 21.58/3.73 | (14) ! [v0: tree] : ! [v1: tree] : ! [v2: tree] : (v1 = v0 | ~ % 21.58/3.73 | (node_proj_1(v2) = v1) | ~ (node_proj_1(v2) = v0)) % 21.58/3.73 | (15) ! [v0: tree] : ! [v1: tree] : ! [v2: tree] : (v1 = v0 | ~ % 21.58/3.73 | (node_proj_3(v2) = v1) | ~ (node_proj_3(v2) = v0)) % 21.58/3.73 | (16) ! [v0: uni] : ! [v1: uni] : ! [v2: elt] : (v1 = v0 | ~ (t2tb1(v2) % 21.58/3.73 | = v1) | ~ (t2tb1(v2) = v0)) % 21.58/3.73 | (17) ! [v0: elt] : ! [v1: elt] : ! [v2: uni] : (v1 = v0 | ~ (tb2t1(v2) % 21.58/3.73 | = v1) | ~ (tb2t1(v2) = v0)) % 21.58/3.73 | (18) ! [v0: uni] : ! [v1: uni] : ! [v2: map_int_elt] : (v1 = v0 | ~ % 21.58/3.73 | (t2tb2(v2) = v1) | ~ (t2tb2(v2) = v0)) % 21.58/3.73 | (19) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: uni] % 21.58/3.73 | : ! [v3: ty] : (v1 = v0 | ~ (sort(v3, v2) = v1) | ~ (sort(v3, v2) = % 21.58/3.73 | v0)) % 21.58/3.73 | (20) ! [v0: ty] : ! [v1: ty] : ! [v2: ty] : ! [v3: ty] : (v1 = v0 | ~ % 21.58/3.73 | (map(v3, v2) = v1) | ~ (map(v3, v2) = v0)) % 21.58/3.73 | (21) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: elt] % 21.58/3.73 | : ! [v3: tree] : (v1 = v0 | ~ (contains(v3, v2) = v1) | ~ % 21.58/3.73 | (contains(v3, v2) = v0)) % 21.58/3.73 | (22) ! [v0: uni] : ! [v1: uni] : ! [v2: uni] : ! [v3: uni] : ! [v4: % 21.58/3.73 | ty] : ! [v5: ty] : (v1 = v0 | ~ (get(v5, v4, v3, v2) = v1) | ~ % 21.58/3.73 | (get(v5, v4, v3, v2) = v0)) % 21.58/3.73 | % 21.58/3.73 | DELTA: instantiating (7) with fresh symbol all_58_0 gives: % 21.58/3.73 | (23) map(int, elt1) = all_58_0 & ty(all_58_0) & ! [v0: map_int_elt] : ! % 21.58/3.73 | [v1: uni] : ( ~ (t2tb2(v0) = v1) | ~ map_int_elt(v0) | sort(all_58_0, % 21.58/3.73 | v1) = 0) % 21.58/3.73 | % 21.58/3.73 | ALPHA: (23) implies: % 21.58/3.73 | (24) map(int, elt1) = all_58_0 % 21.58/3.73 | % 21.58/3.73 | DELTA: instantiating (8) with fresh symbol all_61_0 gives: % 21.58/3.74 | (25) map(int, elt1) = all_61_0 & ty(all_61_0) & ! [v0: uni] : ! [v1: % 21.58/3.74 | map_int_elt] : ( ~ (tb2t2(v0) = v1) | ~ uni(v0) | ? [v2: any] : ? % 21.58/3.74 | [v3: uni] : (t2tb2(v1) = v3 & sort(all_61_0, v0) = v2 & uni(v3) & ( % 21.58/3.74 | ~ (v2 = 0) | v3 = v0))) & ! [v0: uni] : ( ~ (sort(all_61_0, v0) % 21.58/3.74 | = 0) | ~ uni(v0) | ? [v1: map_int_elt] : (tb2t2(v0) = v1 & % 21.58/3.74 | t2tb2(v1) = v0 & map_int_elt(v1))) % 21.58/3.74 | % 21.58/3.74 | ALPHA: (25) implies: % 21.58/3.74 | (26) map(int, elt1) = all_61_0 % 21.58/3.74 | (27) ! [v0: uni] : ! [v1: map_int_elt] : ( ~ (tb2t2(v0) = v1) | ~ % 21.58/3.74 | uni(v0) | ? [v2: any] : ? [v3: uni] : (t2tb2(v1) = v3 & % 21.58/3.74 | sort(all_61_0, v0) = v2 & uni(v3) & ( ~ (v2 = 0) | v3 = v0))) % 21.58/3.74 | % 21.58/3.74 | DELTA: instantiating (11) with fresh symbols all_64_0, all_64_1, all_64_2, % 21.58/3.74 | all_64_3, all_64_4, all_64_5, all_64_6, all_64_7, all_64_8, all_64_9, % 21.58/3.74 | all_64_10, all_64_11, all_64_12, all_64_13, all_64_14, all_64_15, % 21.58/3.74 | all_64_16, all_64_17, all_64_18, all_64_19, all_64_20, all_64_21, % 21.58/3.74 | all_64_22, all_64_23, all_64_24, all_64_25, all_64_26, all_64_27, % 21.58/3.74 | all_64_28, all_64_29, all_64_30, all_64_31, all_64_32, all_64_33, % 21.58/3.74 | all_64_34, all_64_35, all_64_36, all_64_37, all_64_38, all_64_39 gives: % 21.58/3.74 | (28) $lesseq(all_64_36, all_64_38) & $lesseq(0, all_64_36) & % 21.58/3.74 | t2tb2(all_64_37) = all_64_35 & t2tb1(all_64_33) = all_64_31 & % 21.58/3.74 | node(all_64_34, all_64_33, all_64_32) = all_64_39 & % 21.58/3.74 | map_int_elt(all_64_16) & map_int_elt(all_64_18) & % 21.58/3.74 | map_int_elt(all_64_30) & map_int_elt(all_64_37) & tree(all_64_1) & % 21.58/3.74 | tree(all_64_3) & tree(all_64_5) & tree(all_64_7) & tree(all_64_32) & % 21.58/3.74 | tree(all_64_34) & tree(all_64_39) & elt(all_64_2) & elt(all_64_6) & % 21.58/3.74 | elt(all_64_33) & uni(all_64_31) & uni(all_64_35) & (all_64_39 = null | % 21.58/3.74 | (all_64_0 = all_64_39 & ~ (all_64_1 = all_64_34) & ~ (all_64_3 = % 21.58/3.74 | all_64_34) & node(all_64_3, all_64_2, all_64_1) = all_64_39) | % 21.58/3.74 | ($lesseq(all_64_29, all_64_38) & $lesseq(all_64_36, all_64_29) & % 21.58/3.74 | tb2t2(all_64_26) = all_64_25 & t2tb2(all_64_30) = all_64_28 & % 21.58/3.74 | t2tb(all_64_29) = all_64_27 & set(elt1, int, all_64_28, all_64_27, % 21.58/3.74 | all_64_31) = all_64_26 & map_int_elt(all_64_25) & uni(all_64_26) % 21.58/3.74 | & uni(all_64_27) & uni(all_64_28) & ! [v0: int] : ! [v1: uni] : % 21.58/3.74 | ( ~ ($lesseq(1, $difference(all_64_29, v0))) | ~ % 21.58/3.74 | ($lesseq(all_64_36, v0)) | ~ (t2tb(v0) = v1) | ? [v2: uni] : % 21.58/3.74 | ? [v3: elt] : (tb2t1(v2) = v3 & contains(all_64_34, v3) = 0 & % 21.58/3.74 | get(elt1, int, all_64_28, v1) = v2 & elt(v3) & uni(v2))) & ! % 21.58/3.74 | [v0: int] : ! [v1: uni] : ( ~ ($lesseq(1, $difference(all_64_36, % 21.58/3.74 | v0))) | ~ ($lesseq(0, v0)) | ~ (t2tb(v0) = v1) | ? [v2: % 21.58/3.74 | uni] : ? [v3: elt] : ? [v4: uni] : (tb2t1(v4) = v3 & % 21.58/3.74 | tb2t1(v2) = v3 & get(elt1, int, all_64_28, v1) = v2 & % 21.58/3.74 | get(elt1, int, all_64_35, v1) = v4 & elt(v3) & uni(v4) & % 21.58/3.74 | uni(v2))) & ((all_64_29 = all_64_38 & (( ~ (all_64_19 = % 21.58/3.74 | all_64_21) & $lesseq(1, $difference(all_64_36, % 21.58/3.74 | all_64_24)) & $lesseq(0, all_64_24) & tb2t1(all_64_20) % 21.58/3.74 | = all_64_19 & tb2t1(all_64_22) = all_64_21 & % 21.58/3.74 | t2tb(all_64_24) = all_64_23 & get(elt1, int, all_64_28, % 21.58/3.74 | all_64_23) = all_64_22 & get(elt1, int, all_64_35, % 21.58/3.74 | all_64_23) = all_64_20 & elt(all_64_19) & elt(all_64_21) % 21.58/3.74 | & uni(all_64_20) & uni(all_64_22) & uni(all_64_23)) | ( ~ % 21.58/3.74 | (all_64_20 = 0) & $lesseq(1, $difference(all_64_38, % 21.58/3.74 | all_64_24)) & $lesseq(all_64_36, all_64_24) & % 21.58/3.74 | tb2t1(all_64_22) = all_64_21 & contains(all_64_39, % 21.58/3.74 | all_64_21) = all_64_20 & t2tb(all_64_24) = all_64_23 & % 21.58/3.74 | get(elt1, int, all_64_28, all_64_23) = all_64_22 & % 21.58/3.74 | elt(all_64_21) & uni(all_64_22) & uni(all_64_23)))) | % 21.58/3.74 | ($lesseq(1, $difference(all_64_38, all_64_29)) & ( ~ ($lesseq(0, % 21.58/3.74 | all_64_29)) | (all_64_18 = all_64_25 & t2tb2(all_64_25) % 21.58/3.74 | = all_64_17 & uni(all_64_17) & ((all_64_4 = all_64_39 & ~ % 21.58/3.74 | (all_64_5 = all_64_32) & ~ (all_64_7 = all_64_32) & % 21.58/3.74 | node(all_64_7, all_64_6, all_64_5) = all_64_39) | % 21.58/3.74 | ($lesseq(all_64_15, all_64_38) & $lesseq(1, % 21.58/3.74 | $difference(all_64_15, all_64_29)) & % 21.58/3.74 | t2tb2(all_64_16) = all_64_14 & uni(all_64_14) & ! % 21.58/3.74 | [v0: int] : ! [v1: uni] : ( ~ ($lesseq(1, % 21.58/3.74 | $difference(all_64_15, v0))) | ~ ($lesseq(1, % 21.58/3.74 | $difference(v0, all_64_29))) | ~ (t2tb(v0) = % 21.58/3.74 | v1) | ? [v2: uni] : ? [v3: elt] : (tb2t1(v2) = % 21.58/3.74 | v3 & contains(all_64_32, v3) = 0 & get(elt1, int, % 21.58/3.74 | all_64_14, v1) = v2 & elt(v3) & uni(v2))) & ! % 21.58/3.74 | [v0: int] : ! [v1: uni] : ( ~ ($lesseq(v0, % 21.58/3.74 | all_64_29)) | ~ ($lesseq(0, v0)) | ~ (t2tb(v0) % 21.58/3.74 | = v1) | ? [v2: uni] : ? [v3: elt] : ? [v4: uni] % 21.58/3.74 | : (tb2t1(v4) = v3 & tb2t1(v2) = v3 & get(elt1, int, % 21.58/3.74 | all_64_14, v1) = v2 & get(elt1, int, all_64_17, % 21.58/3.74 | v1) = v4 & elt(v3) & uni(v4) & uni(v2))) & ( ~ % 21.58/3.74 | ($lesseq(all_64_36, all_64_15)) | ( ~ (all_64_8 = % 21.58/3.74 | all_64_10) & $lesseq(1, $difference(all_64_36, % 21.58/3.74 | all_64_13)) & $lesseq(0, all_64_13) & % 21.58/3.74 | tb2t1(all_64_9) = all_64_8 & tb2t1(all_64_11) = % 21.58/3.74 | all_64_10 & t2tb(all_64_13) = all_64_12 & % 21.58/3.74 | get(elt1, int, all_64_14, all_64_12) = all_64_11 & % 21.58/3.74 | get(elt1, int, all_64_35, all_64_12) = all_64_9 & % 21.58/3.74 | elt(all_64_8) & elt(all_64_10) & uni(all_64_9) & % 21.58/3.74 | uni(all_64_11) & uni(all_64_12)) | ( ~ (all_64_9 = % 21.58/3.74 | 0) & $lesseq(1, $difference(all_64_15, % 21.58/3.74 | all_64_13)) & $lesseq(all_64_36, all_64_13) & % 21.58/3.74 | tb2t1(all_64_11) = all_64_10 & contains(all_64_39, % 21.58/3.74 | all_64_10) = all_64_9 & t2tb(all_64_13) = % 21.58/3.74 | all_64_12 & get(elt1, int, all_64_14, all_64_12) = % 21.58/3.74 | all_64_11 & elt(all_64_10) & uni(all_64_11) & % 21.58/3.74 | uni(all_64_12))))))))))) % 21.58/3.74 | % 21.58/3.74 | ALPHA: (28) implies: % 21.58/3.74 | (29) $lesseq(0, all_64_36) % 21.58/3.74 | (30) uni(all_64_35) % 21.58/3.74 | (31) uni(all_64_31) % 21.58/3.75 | (32) elt(all_64_33) % 21.58/3.75 | (33) elt(all_64_6) % 21.58/3.75 | (34) elt(all_64_2) % 21.58/3.75 | (35) tree(all_64_34) % 21.58/3.75 | (36) tree(all_64_32) % 21.58/3.75 | (37) tree(all_64_7) % 21.58/3.75 | (38) tree(all_64_5) % 21.58/3.75 | (39) tree(all_64_3) % 21.58/3.75 | (40) tree(all_64_1) % 21.58/3.75 | (41) node(all_64_34, all_64_33, all_64_32) = all_64_39 % 21.58/3.75 | (42) t2tb1(all_64_33) = all_64_31 % 21.58/3.75 | (43) all_64_39 = null | (all_64_0 = all_64_39 & ~ (all_64_1 = all_64_34) & % 21.58/3.75 | ~ (all_64_3 = all_64_34) & node(all_64_3, all_64_2, all_64_1) = % 21.58/3.75 | all_64_39) | ($lesseq(all_64_29, all_64_38) & $lesseq(all_64_36, % 21.58/3.75 | all_64_29) & tb2t2(all_64_26) = all_64_25 & t2tb2(all_64_30) = % 21.58/3.75 | all_64_28 & t2tb(all_64_29) = all_64_27 & set(elt1, int, all_64_28, % 21.58/3.75 | all_64_27, all_64_31) = all_64_26 & map_int_elt(all_64_25) & % 21.58/3.75 | uni(all_64_26) & uni(all_64_27) & uni(all_64_28) & ! [v0: int] : ! % 21.58/3.75 | [v1: uni] : ( ~ ($lesseq(1, $difference(all_64_29, v0))) | ~ % 21.58/3.75 | ($lesseq(all_64_36, v0)) | ~ (t2tb(v0) = v1) | ? [v2: uni] : ? % 21.58/3.75 | [v3: elt] : (tb2t1(v2) = v3 & contains(all_64_34, v3) = 0 & % 21.58/3.75 | get(elt1, int, all_64_28, v1) = v2 & elt(v3) & uni(v2))) & ! % 21.58/3.75 | [v0: int] : ! [v1: uni] : ( ~ ($lesseq(1, $difference(all_64_36, % 21.58/3.75 | v0))) | ~ ($lesseq(0, v0)) | ~ (t2tb(v0) = v1) | ? [v2: % 21.58/3.75 | uni] : ? [v3: elt] : ? [v4: uni] : (tb2t1(v4) = v3 & tb2t1(v2) % 21.58/3.75 | = v3 & get(elt1, int, all_64_28, v1) = v2 & get(elt1, int, % 21.58/3.75 | all_64_35, v1) = v4 & elt(v3) & uni(v4) & uni(v2))) & % 21.58/3.75 | ((all_64_29 = all_64_38 & (( ~ (all_64_19 = all_64_21) & $lesseq(1, % 21.58/3.75 | $difference(all_64_36, all_64_24)) & $lesseq(0, all_64_24) % 21.58/3.75 | & tb2t1(all_64_20) = all_64_19 & tb2t1(all_64_22) = % 21.58/3.75 | all_64_21 & t2tb(all_64_24) = all_64_23 & get(elt1, int, % 21.58/3.75 | all_64_28, all_64_23) = all_64_22 & get(elt1, int, % 21.58/3.75 | all_64_35, all_64_23) = all_64_20 & elt(all_64_19) & % 21.58/3.75 | elt(all_64_21) & uni(all_64_20) & uni(all_64_22) & % 21.58/3.75 | uni(all_64_23)) | ( ~ (all_64_20 = 0) & $lesseq(1, % 21.58/3.75 | $difference(all_64_38, all_64_24)) & $lesseq(all_64_36, % 21.58/3.75 | all_64_24) & tb2t1(all_64_22) = all_64_21 & % 21.58/3.75 | contains(all_64_39, all_64_21) = all_64_20 & t2tb(all_64_24) % 21.58/3.75 | = all_64_23 & get(elt1, int, all_64_28, all_64_23) = % 21.58/3.75 | all_64_22 & elt(all_64_21) & uni(all_64_22) & % 21.58/3.75 | uni(all_64_23)))) | ($lesseq(1, $difference(all_64_38, % 21.58/3.75 | all_64_29)) & ( ~ ($lesseq(0, all_64_29)) | (all_64_18 = % 21.58/3.75 | all_64_25 & t2tb2(all_64_25) = all_64_17 & uni(all_64_17) & % 21.58/3.75 | ((all_64_4 = all_64_39 & ~ (all_64_5 = all_64_32) & ~ % 21.58/3.75 | (all_64_7 = all_64_32) & node(all_64_7, all_64_6, % 21.58/3.75 | all_64_5) = all_64_39) | ($lesseq(all_64_15, % 21.58/3.75 | all_64_38) & $lesseq(1, $difference(all_64_15, % 21.58/3.75 | all_64_29)) & t2tb2(all_64_16) = all_64_14 & % 21.58/3.75 | uni(all_64_14) & ! [v0: int] : ! [v1: uni] : ( ~ % 21.58/3.75 | ($lesseq(1, $difference(all_64_15, v0))) | ~ % 21.58/3.75 | ($lesseq(1, $difference(v0, all_64_29))) | ~ % 21.58/3.75 | (t2tb(v0) = v1) | ? [v2: uni] : ? [v3: elt] : % 21.58/3.75 | (tb2t1(v2) = v3 & contains(all_64_32, v3) = 0 & % 21.58/3.75 | get(elt1, int, all_64_14, v1) = v2 & elt(v3) & % 21.58/3.75 | uni(v2))) & ! [v0: int] : ! [v1: uni] : ( ~ % 21.58/3.75 | ($lesseq(v0, all_64_29)) | ~ ($lesseq(0, v0)) | ~ % 21.58/3.75 | (t2tb(v0) = v1) | ? [v2: uni] : ? [v3: elt] : ? % 21.58/3.75 | [v4: uni] : (tb2t1(v4) = v3 & tb2t1(v2) = v3 & % 21.58/3.75 | get(elt1, int, all_64_14, v1) = v2 & get(elt1, int, % 21.58/3.75 | all_64_17, v1) = v4 & elt(v3) & uni(v4) & % 21.58/3.75 | uni(v2))) & ( ~ ($lesseq(all_64_36, all_64_15)) | ( % 21.58/3.75 | ~ (all_64_8 = all_64_10) & $lesseq(1, % 21.58/3.75 | $difference(all_64_36, all_64_13)) & $lesseq(0, % 21.58/3.75 | all_64_13) & tb2t1(all_64_9) = all_64_8 & % 21.58/3.75 | tb2t1(all_64_11) = all_64_10 & t2tb(all_64_13) = % 21.58/3.75 | all_64_12 & get(elt1, int, all_64_14, all_64_12) = % 21.58/3.75 | all_64_11 & get(elt1, int, all_64_35, all_64_12) = % 21.58/3.75 | all_64_9 & elt(all_64_8) & elt(all_64_10) & % 21.58/3.75 | uni(all_64_9) & uni(all_64_11) & uni(all_64_12)) | ( % 21.58/3.75 | ~ (all_64_9 = 0) & $lesseq(1, $difference(all_64_15, % 21.58/3.75 | all_64_13)) & $lesseq(all_64_36, all_64_13) & % 21.58/3.75 | tb2t1(all_64_11) = all_64_10 & contains(all_64_39, % 21.58/3.75 | all_64_10) = all_64_9 & t2tb(all_64_13) = % 21.58/3.75 | all_64_12 & get(elt1, int, all_64_14, all_64_12) = % 21.58/3.75 | all_64_11 & elt(all_64_10) & uni(all_64_11) & % 21.58/3.75 | uni(all_64_12)))))))))) % 21.58/3.75 | % 21.58/3.75 | GROUND_INST: instantiating (20) with all_58_0, all_61_0, elt1, int, % 21.58/3.75 | simplifying with (24), (26) gives: % 21.58/3.75 | (44) all_61_0 = all_58_0 % 21.58/3.75 | % 21.58/3.75 | GROUND_INST: instantiating (node_proj_3_def) with all_64_34, all_64_33, % 21.58/3.75 | all_64_32, all_64_39, simplifying with (32), (35), (36), (41) % 21.58/3.75 | gives: % 21.58/3.75 | (45) node_proj_3(all_64_39) = all_64_32 % 21.58/3.75 | % 21.58/3.75 | GROUND_INST: instantiating (node_proj_1_def) with all_64_34, all_64_33, % 21.58/3.75 | all_64_32, all_64_39, simplifying with (32), (35), (36), (41) % 21.58/3.75 | gives: % 21.58/3.75 | (46) node_proj_1(all_64_39) = all_64_34 % 21.58/3.75 | % 21.58/3.75 | GROUND_INST: instantiating (bridgeL1) with all_64_33, all_64_31, simplifying % 21.58/3.75 | with (32), (42) gives: % 21.58/3.75 | (47) tb2t1(all_64_31) = all_64_33 % 21.58/3.75 | % 21.58/3.75 | GROUND_INST: instantiating (5) with all_64_33, all_64_31, simplifying with % 21.58/3.75 | (32), (42) gives: % 21.58/3.75 | (48) sort(elt1, all_64_31) = 0 % 21.58/3.75 | % 21.58/3.75 | BETA: splitting (43) gives: % 21.58/3.75 | % 21.58/3.75 | Case 1: % 21.58/3.75 | | % 21.58/3.75 | | (49) all_64_39 = null % 21.58/3.75 | | % 21.58/3.75 | | REDUCE: (41), (49) imply: % 21.58/3.75 | | (50) node(all_64_34, all_64_33, all_64_32) = null % 21.58/3.75 | | % 21.58/3.75 | | GROUND_INST: instantiating (2) with all_64_34, all_64_33, all_64_32, % 21.58/3.75 | | simplifying with (32), (35), (36), (50) gives: % 21.58/3.75 | | (51) $false % 21.58/3.76 | | % 21.58/3.76 | | CLOSE: (51) is inconsistent. % 21.58/3.76 | | % 21.58/3.76 | Case 2: % 21.58/3.76 | | % 21.58/3.76 | | (52) (all_64_0 = all_64_39 & ~ (all_64_1 = all_64_34) & ~ (all_64_3 = % 21.58/3.76 | | all_64_34) & node(all_64_3, all_64_2, all_64_1) = all_64_39) | % 21.58/3.76 | | ($lesseq(all_64_29, all_64_38) & $lesseq(all_64_36, all_64_29) & % 21.58/3.76 | | tb2t2(all_64_26) = all_64_25 & t2tb2(all_64_30) = all_64_28 & % 21.58/3.76 | | t2tb(all_64_29) = all_64_27 & set(elt1, int, all_64_28, all_64_27, % 21.58/3.76 | | all_64_31) = all_64_26 & map_int_elt(all_64_25) & uni(all_64_26) % 21.58/3.76 | | & uni(all_64_27) & uni(all_64_28) & ! [v0: int] : ! [v1: uni] : % 21.58/3.76 | | ( ~ ($lesseq(1, $difference(all_64_29, v0))) | ~ % 21.58/3.76 | | ($lesseq(all_64_36, v0)) | ~ (t2tb(v0) = v1) | ? [v2: uni] : % 21.58/3.76 | | ? [v3: elt] : (tb2t1(v2) = v3 & contains(all_64_34, v3) = 0 & % 21.58/3.76 | | get(elt1, int, all_64_28, v1) = v2 & elt(v3) & uni(v2))) & ! % 21.58/3.76 | | [v0: int] : ! [v1: uni] : ( ~ ($lesseq(1, $difference(all_64_36, % 21.58/3.76 | | v0))) | ~ ($lesseq(0, v0)) | ~ (t2tb(v0) = v1) | ? [v2: % 21.58/3.76 | | uni] : ? [v3: elt] : ? [v4: uni] : (tb2t1(v4) = v3 & % 21.58/3.76 | | tb2t1(v2) = v3 & get(elt1, int, all_64_28, v1) = v2 & % 21.58/3.76 | | get(elt1, int, all_64_35, v1) = v4 & elt(v3) & uni(v4) & % 21.58/3.76 | | uni(v2))) & ((all_64_29 = all_64_38 & (( ~ (all_64_19 = % 21.58/3.76 | | all_64_21) & $lesseq(1, $difference(all_64_36, % 21.58/3.76 | | all_64_24)) & $lesseq(0, all_64_24) & tb2t1(all_64_20) % 21.58/3.76 | | = all_64_19 & tb2t1(all_64_22) = all_64_21 & % 21.58/3.76 | | t2tb(all_64_24) = all_64_23 & get(elt1, int, all_64_28, % 21.58/3.76 | | all_64_23) = all_64_22 & get(elt1, int, all_64_35, % 21.58/3.76 | | all_64_23) = all_64_20 & elt(all_64_19) & elt(all_64_21) % 21.58/3.76 | | & uni(all_64_20) & uni(all_64_22) & uni(all_64_23)) | ( ~ % 21.58/3.76 | | (all_64_20 = 0) & $lesseq(1, $difference(all_64_38, % 21.58/3.76 | | all_64_24)) & $lesseq(all_64_36, all_64_24) & % 21.58/3.76 | | tb2t1(all_64_22) = all_64_21 & contains(all_64_39, % 21.58/3.76 | | all_64_21) = all_64_20 & t2tb(all_64_24) = all_64_23 & % 21.58/3.76 | | get(elt1, int, all_64_28, all_64_23) = all_64_22 & % 21.58/3.76 | | elt(all_64_21) & uni(all_64_22) & uni(all_64_23)))) | % 21.58/3.76 | | ($lesseq(1, $difference(all_64_38, all_64_29)) & ( ~ ($lesseq(0, % 21.58/3.76 | | all_64_29)) | (all_64_18 = all_64_25 & t2tb2(all_64_25) % 21.58/3.76 | | = all_64_17 & uni(all_64_17) & ((all_64_4 = all_64_39 & ~ % 21.58/3.76 | | (all_64_5 = all_64_32) & ~ (all_64_7 = all_64_32) & % 21.58/3.76 | | node(all_64_7, all_64_6, all_64_5) = all_64_39) | % 21.58/3.76 | | ($lesseq(all_64_15, all_64_38) & $lesseq(1, % 21.58/3.76 | | $difference(all_64_15, all_64_29)) & % 21.58/3.76 | | t2tb2(all_64_16) = all_64_14 & uni(all_64_14) & ! % 21.58/3.76 | | [v0: int] : ! [v1: uni] : ( ~ ($lesseq(1, % 21.58/3.76 | | $difference(all_64_15, v0))) | ~ ($lesseq(1, % 21.58/3.76 | | $difference(v0, all_64_29))) | ~ (t2tb(v0) = % 21.58/3.76 | | v1) | ? [v2: uni] : ? [v3: elt] : (tb2t1(v2) = % 21.58/3.76 | | v3 & contains(all_64_32, v3) = 0 & get(elt1, int, % 21.58/3.76 | | all_64_14, v1) = v2 & elt(v3) & uni(v2))) & ! % 21.58/3.76 | | [v0: int] : ! [v1: uni] : ( ~ ($lesseq(v0, % 21.58/3.76 | | all_64_29)) | ~ ($lesseq(0, v0)) | ~ (t2tb(v0) % 21.58/3.76 | | = v1) | ? [v2: uni] : ? [v3: elt] : ? [v4: uni] % 21.58/3.76 | | : (tb2t1(v4) = v3 & tb2t1(v2) = v3 & get(elt1, int, % 21.58/3.76 | | all_64_14, v1) = v2 & get(elt1, int, all_64_17, % 21.58/3.76 | | v1) = v4 & elt(v3) & uni(v4) & uni(v2))) & ( ~ % 21.58/3.76 | | ($lesseq(all_64_36, all_64_15)) | ( ~ (all_64_8 = % 21.58/3.76 | | all_64_10) & $lesseq(1, $difference(all_64_36, % 21.58/3.76 | | all_64_13)) & $lesseq(0, all_64_13) & % 21.58/3.76 | | tb2t1(all_64_9) = all_64_8 & tb2t1(all_64_11) = % 21.58/3.76 | | all_64_10 & t2tb(all_64_13) = all_64_12 & % 21.58/3.76 | | get(elt1, int, all_64_14, all_64_12) = all_64_11 & % 21.58/3.76 | | get(elt1, int, all_64_35, all_64_12) = all_64_9 & % 21.58/3.76 | | elt(all_64_8) & elt(all_64_10) & uni(all_64_9) & % 21.58/3.76 | | uni(all_64_11) & uni(all_64_12)) | ( ~ (all_64_9 = % 21.58/3.76 | | 0) & $lesseq(1, $difference(all_64_15, % 21.58/3.76 | | all_64_13)) & $lesseq(all_64_36, all_64_13) & % 21.58/3.76 | | tb2t1(all_64_11) = all_64_10 & contains(all_64_39, % 21.58/3.76 | | all_64_10) = all_64_9 & t2tb(all_64_13) = % 21.58/3.76 | | all_64_12 & get(elt1, int, all_64_14, all_64_12) = % 21.58/3.76 | | all_64_11 & elt(all_64_10) & uni(all_64_11) & % 21.58/3.76 | | uni(all_64_12)))))))))) % 21.58/3.76 | | % 21.58/3.76 | | BETA: splitting (52) gives: % 21.58/3.76 | | % 21.58/3.76 | | Case 1: % 21.58/3.76 | | | % 21.58/3.76 | | | (53) all_64_0 = all_64_39 & ~ (all_64_1 = all_64_34) & ~ (all_64_3 = % 21.58/3.76 | | | all_64_34) & node(all_64_3, all_64_2, all_64_1) = all_64_39 % 21.58/3.76 | | | % 21.58/3.76 | | | ALPHA: (53) implies: % 21.58/3.76 | | | (54) ~ (all_64_3 = all_64_34) % 21.58/3.76 | | | (55) node(all_64_3, all_64_2, all_64_1) = all_64_39 % 21.58/3.76 | | | % 21.58/3.76 | | | GROUND_INST: instantiating (node_proj_1_def) with all_64_3, all_64_2, % 21.58/3.76 | | | all_64_1, all_64_39, simplifying with (34), (39), (40), (55) % 21.58/3.76 | | | gives: % 21.58/3.76 | | | (56) node_proj_1(all_64_39) = all_64_3 % 21.58/3.76 | | | % 21.58/3.76 | | | GROUND_INST: instantiating (14) with all_64_34, all_64_3, all_64_39, % 21.58/3.76 | | | simplifying with (46), (56) gives: % 21.58/3.76 | | | (57) all_64_3 = all_64_34 % 21.58/3.76 | | | % 21.58/3.76 | | | REDUCE: (54), (57) imply: % 21.58/3.76 | | | (58) $false % 21.58/3.76 | | | % 21.58/3.76 | | | CLOSE: (58) is inconsistent. % 21.58/3.76 | | | % 21.58/3.76 | | Case 2: % 21.58/3.76 | | | % 21.58/3.77 | | | (59) $lesseq(all_64_29, all_64_38) & $lesseq(all_64_36, all_64_29) & % 21.58/3.77 | | | tb2t2(all_64_26) = all_64_25 & t2tb2(all_64_30) = all_64_28 & % 21.58/3.77 | | | t2tb(all_64_29) = all_64_27 & set(elt1, int, all_64_28, all_64_27, % 21.58/3.77 | | | all_64_31) = all_64_26 & map_int_elt(all_64_25) & uni(all_64_26) % 21.58/3.77 | | | & uni(all_64_27) & uni(all_64_28) & ! [v0: int] : ! [v1: uni] : % 21.58/3.77 | | | ( ~ ($lesseq(1, $difference(all_64_29, v0))) | ~ % 21.58/3.77 | | | ($lesseq(all_64_36, v0)) | ~ (t2tb(v0) = v1) | ? [v2: uni] : % 21.58/3.77 | | | ? [v3: elt] : (tb2t1(v2) = v3 & contains(all_64_34, v3) = 0 & % 21.58/3.77 | | | get(elt1, int, all_64_28, v1) = v2 & elt(v3) & uni(v2))) & ! % 21.58/3.77 | | | [v0: int] : ! [v1: uni] : ( ~ ($lesseq(1, $difference(all_64_36, % 21.58/3.77 | | | v0))) | ~ ($lesseq(0, v0)) | ~ (t2tb(v0) = v1) | ? [v2: % 21.58/3.77 | | | uni] : ? [v3: elt] : ? [v4: uni] : (tb2t1(v4) = v3 & % 21.58/3.77 | | | tb2t1(v2) = v3 & get(elt1, int, all_64_28, v1) = v2 & % 21.58/3.77 | | | get(elt1, int, all_64_35, v1) = v4 & elt(v3) & uni(v4) & % 21.58/3.77 | | | uni(v2))) & ((all_64_29 = all_64_38 & (( ~ (all_64_19 = % 21.58/3.77 | | | all_64_21) & $lesseq(1, $difference(all_64_36, % 21.58/3.77 | | | all_64_24)) & $lesseq(0, all_64_24) & tb2t1(all_64_20) % 21.58/3.77 | | | = all_64_19 & tb2t1(all_64_22) = all_64_21 & % 21.58/3.77 | | | t2tb(all_64_24) = all_64_23 & get(elt1, int, all_64_28, % 21.58/3.77 | | | all_64_23) = all_64_22 & get(elt1, int, all_64_35, % 21.58/3.77 | | | all_64_23) = all_64_20 & elt(all_64_19) & elt(all_64_21) % 21.58/3.77 | | | & uni(all_64_20) & uni(all_64_22) & uni(all_64_23)) | ( ~ % 21.58/3.77 | | | (all_64_20 = 0) & $lesseq(1, $difference(all_64_38, % 21.58/3.77 | | | all_64_24)) & $lesseq(all_64_36, all_64_24) & % 21.58/3.77 | | | tb2t1(all_64_22) = all_64_21 & contains(all_64_39, % 21.58/3.77 | | | all_64_21) = all_64_20 & t2tb(all_64_24) = all_64_23 & % 21.58/3.77 | | | get(elt1, int, all_64_28, all_64_23) = all_64_22 & % 21.58/3.77 | | | elt(all_64_21) & uni(all_64_22) & uni(all_64_23)))) | % 21.58/3.77 | | | ($lesseq(1, $difference(all_64_38, all_64_29)) & ( ~ ($lesseq(0, % 21.58/3.77 | | | all_64_29)) | (all_64_18 = all_64_25 & t2tb2(all_64_25) % 21.58/3.77 | | | = all_64_17 & uni(all_64_17) & ((all_64_4 = all_64_39 & ~ % 21.58/3.77 | | | (all_64_5 = all_64_32) & ~ (all_64_7 = all_64_32) & % 21.58/3.77 | | | node(all_64_7, all_64_6, all_64_5) = all_64_39) | % 21.58/3.77 | | | ($lesseq(all_64_15, all_64_38) & $lesseq(1, % 21.58/3.77 | | | $difference(all_64_15, all_64_29)) & % 21.58/3.77 | | | t2tb2(all_64_16) = all_64_14 & uni(all_64_14) & ! % 21.58/3.77 | | | [v0: int] : ! [v1: uni] : ( ~ ($lesseq(1, % 21.58/3.77 | | | $difference(all_64_15, v0))) | ~ ($lesseq(1, % 21.58/3.77 | | | $difference(v0, all_64_29))) | ~ (t2tb(v0) = % 21.58/3.77 | | | v1) | ? [v2: uni] : ? [v3: elt] : (tb2t1(v2) = % 21.58/3.77 | | | v3 & contains(all_64_32, v3) = 0 & get(elt1, int, % 21.58/3.77 | | | all_64_14, v1) = v2 & elt(v3) & uni(v2))) & ! % 21.58/3.77 | | | [v0: int] : ! [v1: uni] : ( ~ ($lesseq(v0, % 21.58/3.77 | | | all_64_29)) | ~ ($lesseq(0, v0)) | ~ (t2tb(v0) % 21.58/3.77 | | | = v1) | ? [v2: uni] : ? [v3: elt] : ? [v4: uni] % 21.58/3.77 | | | : (tb2t1(v4) = v3 & tb2t1(v2) = v3 & get(elt1, int, % 21.58/3.77 | | | all_64_14, v1) = v2 & get(elt1, int, all_64_17, % 21.58/3.77 | | | v1) = v4 & elt(v3) & uni(v4) & uni(v2))) & ( ~ % 21.58/3.77 | | | ($lesseq(all_64_36, all_64_15)) | ( ~ (all_64_8 = % 21.58/3.77 | | | all_64_10) & $lesseq(1, $difference(all_64_36, % 21.58/3.77 | | | all_64_13)) & $lesseq(0, all_64_13) & % 21.58/3.77 | | | tb2t1(all_64_9) = all_64_8 & tb2t1(all_64_11) = % 21.58/3.77 | | | all_64_10 & t2tb(all_64_13) = all_64_12 & % 21.58/3.77 | | | get(elt1, int, all_64_14, all_64_12) = all_64_11 & % 21.58/3.77 | | | get(elt1, int, all_64_35, all_64_12) = all_64_9 & % 21.58/3.77 | | | elt(all_64_8) & elt(all_64_10) & uni(all_64_9) & % 21.58/3.77 | | | uni(all_64_11) & uni(all_64_12)) | ( ~ (all_64_9 = % 21.58/3.77 | | | 0) & $lesseq(1, $difference(all_64_15, % 21.58/3.77 | | | all_64_13)) & $lesseq(all_64_36, all_64_13) & % 21.58/3.77 | | | tb2t1(all_64_11) = all_64_10 & contains(all_64_39, % 21.58/3.77 | | | all_64_10) = all_64_9 & t2tb(all_64_13) = % 21.58/3.77 | | | all_64_12 & get(elt1, int, all_64_14, all_64_12) = % 21.58/3.77 | | | all_64_11 & elt(all_64_10) & uni(all_64_11) & % 21.58/3.77 | | | uni(all_64_12))))))))) % 21.58/3.77 | | | % 21.58/3.77 | | | ALPHA: (59) implies: % 21.58/3.77 | | | (60) $lesseq(all_64_36, all_64_29) % 21.58/3.77 | | | (61) uni(all_64_28) % 21.58/3.77 | | | (62) uni(all_64_27) % 21.58/3.77 | | | (63) uni(all_64_26) % 21.58/3.77 | | | (64) set(elt1, int, all_64_28, all_64_27, all_64_31) = all_64_26 % 21.58/3.77 | | | (65) t2tb(all_64_29) = all_64_27 % 21.58/3.77 | | | (66) tb2t2(all_64_26) = all_64_25 % 21.58/3.77 | | | (67) (all_64_29 = all_64_38 & (( ~ (all_64_19 = all_64_21) & $lesseq(1, % 21.58/3.77 | | | $difference(all_64_36, all_64_24)) & $lesseq(0, all_64_24) % 21.58/3.77 | | | & tb2t1(all_64_20) = all_64_19 & tb2t1(all_64_22) = % 21.58/3.77 | | | all_64_21 & t2tb(all_64_24) = all_64_23 & get(elt1, int, % 21.58/3.77 | | | all_64_28, all_64_23) = all_64_22 & get(elt1, int, % 21.58/3.77 | | | all_64_35, all_64_23) = all_64_20 & elt(all_64_19) & % 21.58/3.77 | | | elt(all_64_21) & uni(all_64_20) & uni(all_64_22) & % 21.58/3.77 | | | uni(all_64_23)) | ( ~ (all_64_20 = 0) & $lesseq(1, % 21.58/3.77 | | | $difference(all_64_38, all_64_24)) & $lesseq(all_64_36, % 21.58/3.77 | | | all_64_24) & tb2t1(all_64_22) = all_64_21 & % 21.58/3.77 | | | contains(all_64_39, all_64_21) = all_64_20 & t2tb(all_64_24) % 21.58/3.77 | | | = all_64_23 & get(elt1, int, all_64_28, all_64_23) = % 21.58/3.77 | | | all_64_22 & elt(all_64_21) & uni(all_64_22) & % 21.58/3.77 | | | uni(all_64_23)))) | ($lesseq(1, $difference(all_64_38, % 21.58/3.77 | | | all_64_29)) & ( ~ ($lesseq(0, all_64_29)) | (all_64_18 = % 21.58/3.77 | | | all_64_25 & t2tb2(all_64_25) = all_64_17 & uni(all_64_17) & % 21.58/3.77 | | | ((all_64_4 = all_64_39 & ~ (all_64_5 = all_64_32) & ~ % 21.58/3.77 | | | (all_64_7 = all_64_32) & node(all_64_7, all_64_6, % 21.58/3.77 | | | all_64_5) = all_64_39) | ($lesseq(all_64_15, % 21.58/3.77 | | | all_64_38) & $lesseq(1, $difference(all_64_15, % 21.58/3.77 | | | all_64_29)) & t2tb2(all_64_16) = all_64_14 & % 21.58/3.77 | | | uni(all_64_14) & ! [v0: int] : ! [v1: uni] : ( ~ % 21.58/3.77 | | | ($lesseq(1, $difference(all_64_15, v0))) | ~ % 21.58/3.77 | | | ($lesseq(1, $difference(v0, all_64_29))) | ~ % 21.58/3.77 | | | (t2tb(v0) = v1) | ? [v2: uni] : ? [v3: elt] : % 21.58/3.77 | | | (tb2t1(v2) = v3 & contains(all_64_32, v3) = 0 & % 21.58/3.77 | | | get(elt1, int, all_64_14, v1) = v2 & elt(v3) & % 21.58/3.77 | | | uni(v2))) & ! [v0: int] : ! [v1: uni] : ( ~ % 21.58/3.77 | | | ($lesseq(v0, all_64_29)) | ~ ($lesseq(0, v0)) | ~ % 21.58/3.77 | | | (t2tb(v0) = v1) | ? [v2: uni] : ? [v3: elt] : ? % 21.58/3.77 | | | [v4: uni] : (tb2t1(v4) = v3 & tb2t1(v2) = v3 & % 21.58/3.77 | | | get(elt1, int, all_64_14, v1) = v2 & get(elt1, int, % 21.58/3.77 | | | all_64_17, v1) = v4 & elt(v3) & uni(v4) & % 21.58/3.77 | | | uni(v2))) & ( ~ ($lesseq(all_64_36, all_64_15)) | ( % 21.58/3.77 | | | ~ (all_64_8 = all_64_10) & $lesseq(1, % 21.58/3.77 | | | $difference(all_64_36, all_64_13)) & $lesseq(0, % 21.58/3.77 | | | all_64_13) & tb2t1(all_64_9) = all_64_8 & % 21.58/3.77 | | | tb2t1(all_64_11) = all_64_10 & t2tb(all_64_13) = % 21.58/3.77 | | | all_64_12 & get(elt1, int, all_64_14, all_64_12) = % 21.58/3.77 | | | all_64_11 & get(elt1, int, all_64_35, all_64_12) = % 21.58/3.77 | | | all_64_9 & elt(all_64_8) & elt(all_64_10) & % 21.58/3.77 | | | uni(all_64_9) & uni(all_64_11) & uni(all_64_12)) | ( % 21.58/3.77 | | | ~ (all_64_9 = 0) & $lesseq(1, $difference(all_64_15, % 21.58/3.77 | | | all_64_13)) & $lesseq(all_64_36, all_64_13) & % 21.58/3.77 | | | tb2t1(all_64_11) = all_64_10 & contains(all_64_39, % 21.58/3.77 | | | all_64_10) = all_64_9 & t2tb(all_64_13) = % 21.58/3.77 | | | all_64_12 & get(elt1, int, all_64_14, all_64_12) = % 21.58/3.77 | | | all_64_11 & elt(all_64_10) & uni(all_64_11) & % 21.58/3.77 | | | uni(all_64_12)))))))) % 21.58/3.77 | | | (68) ! [v0: int] : ! [v1: uni] : ( ~ ($lesseq(1, % 21.58/3.77 | | | $difference(all_64_36, v0))) | ~ ($lesseq(0, v0)) | ~ % 21.58/3.77 | | | (t2tb(v0) = v1) | ? [v2: uni] : ? [v3: elt] : ? [v4: uni] : % 21.58/3.77 | | | (tb2t1(v4) = v3 & tb2t1(v2) = v3 & get(elt1, int, all_64_28, v1) % 21.58/3.77 | | | = v2 & get(elt1, int, all_64_35, v1) = v4 & elt(v3) & uni(v4) % 21.58/3.77 | | | & uni(v2))) % 21.58/3.77 | | | (69) ! [v0: int] : ! [v1: uni] : ( ~ ($lesseq(1, % 21.58/3.77 | | | $difference(all_64_29, v0))) | ~ ($lesseq(all_64_36, v0)) | % 21.58/3.77 | | | ~ (t2tb(v0) = v1) | ? [v2: uni] : ? [v3: elt] : (tb2t1(v2) = % 21.58/3.77 | | | v3 & contains(all_64_34, v3) = 0 & get(elt1, int, all_64_28, % 21.58/3.77 | | | v1) = v2 & elt(v3) & uni(v2))) % 21.58/3.77 | | | % 21.58/3.77 | | | GROUND_INST: instantiating (set_sort) with int, elt1, all_64_28, % 21.58/3.77 | | | all_64_27, all_64_31, all_64_26, simplifying with (9), (10), % 21.58/3.77 | | | (31), (61), (62), (64) gives: % 21.58/3.77 | | | (70) ? [v0: ty] : (map(int, elt1) = v0 & sort(v0, all_64_26) = 0 & % 21.58/3.77 | | | ty(v0)) % 21.58/3.77 | | | % 21.58/3.77 | | | GROUND_INST: instantiating (bridgeL) with all_64_29, all_64_27, % 21.58/3.77 | | | simplifying with (65) gives: % 21.58/3.77 | | | (71) tb2t(all_64_27) = all_64_29 % 21.58/3.77 | | | % 21.58/3.77 | | | GROUND_INST: instantiating (1) with all_64_29, all_64_27, simplifying with % 21.58/3.77 | | | (65) gives: % 21.58/3.77 | | | (72) sort(int, all_64_27) = 0 % 21.58/3.77 | | | % 21.58/3.77 | | | GROUND_INST: instantiating (27) with all_64_26, all_64_25, simplifying % 21.58/3.77 | | | with (63), (66) gives: % 21.58/3.77 | | | (73) ? [v0: any] : ? [v1: uni] : (t2tb2(all_64_25) = v1 & % 21.58/3.77 | | | sort(all_61_0, all_64_26) = v0 & uni(v1) & ( ~ (v0 = 0) | v1 = % 21.58/3.77 | | | all_64_26)) % 21.58/3.77 | | | % 21.58/3.77 | | | DELTA: instantiating (70) with fresh symbol all_155_0 gives: % 21.58/3.78 | | | (74) map(int, elt1) = all_155_0 & sort(all_155_0, all_64_26) = 0 & % 21.58/3.78 | | | ty(all_155_0) % 21.58/3.78 | | | % 21.58/3.78 | | | ALPHA: (74) implies: % 21.58/3.78 | | | (75) sort(all_155_0, all_64_26) = 0 % 21.58/3.78 | | | (76) map(int, elt1) = all_155_0 % 21.58/3.78 | | | % 21.58/3.78 | | | DELTA: instantiating (73) with fresh symbols all_157_0, all_157_1 gives: % 21.58/3.78 | | | (77) t2tb2(all_64_25) = all_157_0 & sort(all_61_0, all_64_26) = % 21.58/3.78 | | | all_157_1 & uni(all_157_0) & ( ~ (all_157_1 = 0) | all_157_0 = % 21.58/3.78 | | | all_64_26) % 21.58/3.78 | | | % 21.58/3.78 | | | ALPHA: (77) implies: % 21.58/3.78 | | | (78) sort(all_61_0, all_64_26) = all_157_1 % 21.58/3.78 | | | (79) t2tb2(all_64_25) = all_157_0 % 21.58/3.78 | | | (80) ~ (all_157_1 = 0) | all_157_0 = all_64_26 % 21.58/3.78 | | | % 21.58/3.78 | | | REDUCE: (44), (78) imply: % 21.58/3.78 | | | (81) sort(all_58_0, all_64_26) = all_157_1 % 21.58/3.78 | | | % 21.58/3.78 | | | GROUND_INST: instantiating (20) with all_58_0, all_155_0, elt1, int, % 21.58/3.78 | | | simplifying with (24), (76) gives: % 21.58/3.78 | | | (82) all_155_0 = all_58_0 % 21.58/3.78 | | | % 21.58/3.78 | | | REDUCE: (75), (82) imply: % 21.58/3.78 | | | (83) sort(all_58_0, all_64_26) = 0 % 21.58/3.78 | | | % 21.58/3.78 | | | GROUND_INST: instantiating (19) with all_157_1, 0, all_64_26, all_58_0, % 21.58/3.78 | | | simplifying with (81), (83) gives: % 21.58/3.78 | | | (84) all_157_1 = 0 % 21.58/3.78 | | | % 21.58/3.78 | | | BETA: splitting (80) gives: % 21.58/3.78 | | | % 21.58/3.78 | | | Case 1: % 21.58/3.78 | | | | % 21.58/3.78 | | | | (85) ~ (all_157_1 = 0) % 21.58/3.78 | | | | % 21.58/3.78 | | | | REDUCE: (84), (85) imply: % 21.58/3.78 | | | | (86) $false % 21.58/3.78 | | | | % 21.58/3.78 | | | | CLOSE: (86) is inconsistent. % 21.58/3.78 | | | | % 21.58/3.78 | | | Case 2: % 21.58/3.78 | | | | % 21.58/3.78 | | | | (87) all_157_0 = all_64_26 % 21.58/3.78 | | | | % 21.95/3.78 | | | | REDUCE: (79), (87) imply: % 21.95/3.78 | | | | (88) t2tb2(all_64_25) = all_64_26 % 21.95/3.78 | | | | % 21.95/3.78 | | | | BETA: splitting (67) gives: % 21.95/3.78 | | | | % 21.95/3.78 | | | | Case 1: % 21.95/3.78 | | | | | % 21.95/3.78 | | | | | (89) all_64_29 = all_64_38 & (( ~ (all_64_19 = all_64_21) & % 21.95/3.78 | | | | | $lesseq(1, $difference(all_64_36, all_64_24)) & $lesseq(0, % 21.95/3.78 | | | | | all_64_24) & tb2t1(all_64_20) = all_64_19 & % 21.95/3.78 | | | | | tb2t1(all_64_22) = all_64_21 & t2tb(all_64_24) = all_64_23 % 21.95/3.78 | | | | | & get(elt1, int, all_64_28, all_64_23) = all_64_22 & % 21.95/3.78 | | | | | get(elt1, int, all_64_35, all_64_23) = all_64_20 & % 21.95/3.78 | | | | | elt(all_64_19) & elt(all_64_21) & uni(all_64_20) & % 21.95/3.78 | | | | | uni(all_64_22) & uni(all_64_23)) | ( ~ (all_64_20 = 0) & % 21.95/3.78 | | | | | $lesseq(1, $difference(all_64_38, all_64_24)) & % 21.95/3.78 | | | | | $lesseq(all_64_36, all_64_24) & tb2t1(all_64_22) = % 21.95/3.78 | | | | | all_64_21 & contains(all_64_39, all_64_21) = all_64_20 & % 21.95/3.78 | | | | | t2tb(all_64_24) = all_64_23 & get(elt1, int, all_64_28, % 21.95/3.78 | | | | | all_64_23) = all_64_22 & elt(all_64_21) & uni(all_64_22) % 21.95/3.78 | | | | | & uni(all_64_23))) % 21.95/3.78 | | | | | % 21.95/3.78 | | | | | ALPHA: (89) implies: % 21.95/3.78 | | | | | (90) all_64_29 = all_64_38 % 21.95/3.78 | | | | | (91) ( ~ (all_64_19 = all_64_21) & $lesseq(1, % 21.95/3.78 | | | | | $difference(all_64_36, all_64_24)) & $lesseq(0, all_64_24) % 21.95/3.78 | | | | | & tb2t1(all_64_20) = all_64_19 & tb2t1(all_64_22) = % 21.95/3.78 | | | | | all_64_21 & t2tb(all_64_24) = all_64_23 & get(elt1, int, % 21.95/3.78 | | | | | all_64_28, all_64_23) = all_64_22 & get(elt1, int, % 21.95/3.78 | | | | | all_64_35, all_64_23) = all_64_20 & elt(all_64_19) & % 21.95/3.78 | | | | | elt(all_64_21) & uni(all_64_20) & uni(all_64_22) & % 21.95/3.78 | | | | | uni(all_64_23)) | ( ~ (all_64_20 = 0) & $lesseq(1, % 21.95/3.78 | | | | | $difference(all_64_38, all_64_24)) & $lesseq(all_64_36, % 21.95/3.78 | | | | | all_64_24) & tb2t1(all_64_22) = all_64_21 & % 21.95/3.78 | | | | | contains(all_64_39, all_64_21) = all_64_20 & t2tb(all_64_24) % 21.95/3.78 | | | | | = all_64_23 & get(elt1, int, all_64_28, all_64_23) = % 21.95/3.78 | | | | | all_64_22 & elt(all_64_21) & uni(all_64_22) & % 21.95/3.78 | | | | | uni(all_64_23)) % 21.95/3.78 | | | | | % 21.95/3.78 | | | | | BETA: splitting (91) gives: % 21.95/3.78 | | | | | % 21.95/3.78 | | | | | Case 1: % 21.95/3.78 | | | | | | % 21.95/3.78 | | | | | | (92) ~ (all_64_19 = all_64_21) & $lesseq(1, % 21.95/3.78 | | | | | | $difference(all_64_36, all_64_24)) & $lesseq(0, all_64_24) % 21.95/3.78 | | | | | | & tb2t1(all_64_20) = all_64_19 & tb2t1(all_64_22) = % 21.95/3.78 | | | | | | all_64_21 & t2tb(all_64_24) = all_64_23 & get(elt1, int, % 21.95/3.78 | | | | | | all_64_28, all_64_23) = all_64_22 & get(elt1, int, % 21.95/3.78 | | | | | | all_64_35, all_64_23) = all_64_20 & elt(all_64_19) & % 21.95/3.78 | | | | | | elt(all_64_21) & uni(all_64_20) & uni(all_64_22) & % 21.95/3.78 | | | | | | uni(all_64_23) % 21.95/3.78 | | | | | | % 21.95/3.78 | | | | | | ALPHA: (92) implies: % 21.95/3.78 | | | | | | (93) ~ (all_64_19 = all_64_21) % 21.95/3.78 | | | | | | (94) $lesseq(0, all_64_24) % 21.95/3.78 | | | | | | (95) $lesseq(1, $difference(all_64_36, all_64_24)) % 21.95/3.78 | | | | | | (96) get(elt1, int, all_64_35, all_64_23) = all_64_20 % 21.95/3.78 | | | | | | (97) get(elt1, int, all_64_28, all_64_23) = all_64_22 % 21.95/3.78 | | | | | | (98) t2tb(all_64_24) = all_64_23 % 21.95/3.78 | | | | | | (99) tb2t1(all_64_22) = all_64_21 % 21.95/3.78 | | | | | | (100) tb2t1(all_64_20) = all_64_19 % 21.95/3.78 | | | | | | % 21.95/3.78 | | | | | | GROUND_INST: instantiating (68) with all_64_24, all_64_23, % 21.95/3.78 | | | | | | simplifying with (98) gives: % 21.95/3.78 | | | | | | (101) ~ ($lesseq(1, $difference(all_64_36, all_64_24))) | ~ % 21.95/3.78 | | | | | | ($lesseq(0, all_64_24)) | ? [v0: uni] : ? [v1: elt] : ? % 21.95/3.78 | | | | | | [v2: uni] : (tb2t1(v2) = v1 & tb2t1(v0) = v1 & get(elt1, % 21.95/3.78 | | | | | | int, all_64_28, all_64_23) = v0 & get(elt1, int, % 21.95/3.78 | | | | | | all_64_35, all_64_23) = v2 & elt(v1) & uni(v2) & % 21.95/3.78 | | | | | | uni(v0)) % 21.95/3.78 | | | | | | % 21.95/3.78 | | | | | | BETA: splitting (101) gives: % 21.95/3.78 | | | | | | % 21.95/3.78 | | | | | | Case 1: % 21.95/3.78 | | | | | | | % 21.95/3.78 | | | | | | | (102) $lesseq(all_64_24, -1) % 21.95/3.78 | | | | | | | % 21.95/3.78 | | | | | | | COMBINE_INEQS: (94), (102) imply: % 21.95/3.78 | | | | | | | (103) $false % 21.95/3.78 | | | | | | | % 21.95/3.78 | | | | | | | CLOSE: (103) is inconsistent. % 21.95/3.78 | | | | | | | % 21.95/3.78 | | | | | | Case 2: % 21.95/3.78 | | | | | | | % 21.95/3.78 | | | | | | | (104) ~ ($lesseq(1, $difference(all_64_36, all_64_24))) | ? % 21.95/3.78 | | | | | | | [v0: uni] : ? [v1: elt] : ? [v2: uni] : (tb2t1(v2) = v1 % 21.95/3.78 | | | | | | | & tb2t1(v0) = v1 & get(elt1, int, all_64_28, all_64_23) % 21.95/3.78 | | | | | | | = v0 & get(elt1, int, all_64_35, all_64_23) = v2 & % 21.95/3.78 | | | | | | | elt(v1) & uni(v2) & uni(v0)) % 21.95/3.78 | | | | | | | % 21.95/3.78 | | | | | | | BETA: splitting (104) gives: % 21.95/3.78 | | | | | | | % 21.95/3.78 | | | | | | | Case 1: % 21.95/3.78 | | | | | | | | % 21.95/3.78 | | | | | | | | (105) $lesseq(all_64_36, all_64_24) % 21.95/3.78 | | | | | | | | % 21.95/3.78 | | | | | | | | COMBINE_INEQS: (95), (105) imply: % 21.95/3.78 | | | | | | | | (106) $false % 21.95/3.78 | | | | | | | | % 21.95/3.78 | | | | | | | | CLOSE: (106) is inconsistent. % 21.95/3.78 | | | | | | | | % 21.95/3.78 | | | | | | | Case 2: % 21.95/3.78 | | | | | | | | % 21.95/3.79 | | | | | | | | (107) ? [v0: uni] : ? [v1: elt] : ? [v2: uni] : (tb2t1(v2) % 21.95/3.79 | | | | | | | | = v1 & tb2t1(v0) = v1 & get(elt1, int, all_64_28, % 21.95/3.79 | | | | | | | | all_64_23) = v0 & get(elt1, int, all_64_35, % 21.95/3.79 | | | | | | | | all_64_23) = v2 & elt(v1) & uni(v2) & uni(v0)) % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | DELTA: instantiating (107) with fresh symbols all_215_0, % 21.95/3.79 | | | | | | | | all_215_1, all_215_2 gives: % 21.95/3.79 | | | | | | | | (108) tb2t1(all_215_0) = all_215_1 & tb2t1(all_215_2) = % 21.95/3.79 | | | | | | | | all_215_1 & get(elt1, int, all_64_28, all_64_23) = % 21.95/3.79 | | | | | | | | all_215_2 & get(elt1, int, all_64_35, all_64_23) = % 21.95/3.79 | | | | | | | | all_215_0 & elt(all_215_1) & uni(all_215_0) & % 21.95/3.79 | | | | | | | | uni(all_215_2) % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | ALPHA: (108) implies: % 21.95/3.79 | | | | | | | | (109) get(elt1, int, all_64_35, all_64_23) = all_215_0 % 21.95/3.79 | | | | | | | | (110) get(elt1, int, all_64_28, all_64_23) = all_215_2 % 21.95/3.79 | | | | | | | | (111) tb2t1(all_215_2) = all_215_1 % 21.95/3.79 | | | | | | | | (112) tb2t1(all_215_0) = all_215_1 % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | GROUND_INST: instantiating (22) with all_64_20, all_215_0, % 21.95/3.79 | | | | | | | | all_64_23, all_64_35, int, elt1, simplifying with % 21.95/3.79 | | | | | | | | (96), (109) gives: % 21.95/3.79 | | | | | | | | (113) all_215_0 = all_64_20 % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | GROUND_INST: instantiating (22) with all_64_22, all_215_2, % 21.95/3.79 | | | | | | | | all_64_23, all_64_28, int, elt1, simplifying with % 21.95/3.79 | | | | | | | | (97), (110) gives: % 21.95/3.79 | | | | | | | | (114) all_215_2 = all_64_22 % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | REDUCE: (112), (113) imply: % 21.95/3.79 | | | | | | | | (115) tb2t1(all_64_20) = all_215_1 % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | REDUCE: (111), (114) imply: % 21.95/3.79 | | | | | | | | (116) tb2t1(all_64_22) = all_215_1 % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | GROUND_INST: instantiating (17) with all_64_21, all_215_1, % 21.95/3.79 | | | | | | | | all_64_22, simplifying with (99), (116) gives: % 21.95/3.79 | | | | | | | | (117) all_215_1 = all_64_21 % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | GROUND_INST: instantiating (17) with all_64_19, all_215_1, % 21.95/3.79 | | | | | | | | all_64_20, simplifying with (100), (115) gives: % 21.95/3.79 | | | | | | | | (118) all_215_1 = all_64_19 % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | COMBINE_EQS: (117), (118) imply: % 21.95/3.79 | | | | | | | | (119) all_64_19 = all_64_21 % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | REDUCE: (93), (119) imply: % 21.95/3.79 | | | | | | | | (120) $false % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | CLOSE: (120) is inconsistent. % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | End of split % 21.95/3.79 | | | | | | | % 21.95/3.79 | | | | | | End of split % 21.95/3.79 | | | | | | % 21.95/3.79 | | | | | Case 2: % 21.95/3.79 | | | | | | % 21.95/3.79 | | | | | | (121) ~ (all_64_20 = 0) & $lesseq(1, $difference(all_64_38, % 21.95/3.79 | | | | | | all_64_24)) & $lesseq(all_64_36, all_64_24) & % 21.95/3.79 | | | | | | tb2t1(all_64_22) = all_64_21 & contains(all_64_39, % 21.95/3.79 | | | | | | all_64_21) = all_64_20 & t2tb(all_64_24) = all_64_23 & % 21.95/3.79 | | | | | | get(elt1, int, all_64_28, all_64_23) = all_64_22 & % 21.95/3.79 | | | | | | elt(all_64_21) & uni(all_64_22) & uni(all_64_23) % 21.95/3.79 | | | | | | % 21.95/3.79 | | | | | | ALPHA: (121) implies: % 21.95/3.79 | | | | | | (122) ~ (all_64_20 = 0) % 21.95/3.79 | | | | | | (123) $lesseq(all_64_36, all_64_24) % 21.95/3.79 | | | | | | (124) $lesseq(1, $difference(all_64_38, all_64_24)) % 21.95/3.79 | | | | | | (125) elt(all_64_21) % 21.95/3.79 | | | | | | (126) get(elt1, int, all_64_28, all_64_23) = all_64_22 % 21.95/3.79 | | | | | | (127) t2tb(all_64_24) = all_64_23 % 21.95/3.79 | | | | | | (128) contains(all_64_39, all_64_21) = all_64_20 % 21.95/3.79 | | | | | | (129) tb2t1(all_64_22) = all_64_21 % 21.95/3.79 | | | | | | % 21.95/3.79 | | | | | | GROUND_INST: instantiating (69) with all_64_24, all_64_23, % 21.95/3.79 | | | | | | simplifying with (127) gives: % 21.95/3.79 | | | | | | (130) ~ ($lesseq(1, $difference(all_64_29, all_64_24))) | ~ % 21.95/3.79 | | | | | | ($lesseq(all_64_36, all_64_24)) | ? [v0: uni] : ? [v1: % 21.95/3.79 | | | | | | elt] : (tb2t1(v0) = v1 & contains(all_64_34, v1) = 0 & % 21.95/3.79 | | | | | | get(elt1, int, all_64_28, all_64_23) = v0 & elt(v1) & % 21.95/3.79 | | | | | | uni(v0)) % 21.95/3.79 | | | | | | % 21.95/3.79 | | | | | | GROUND_INST: instantiating (4) with all_64_21, all_64_34, all_64_33, % 21.95/3.79 | | | | | | all_64_32, all_64_39, all_64_20, simplifying with (32), % 21.95/3.79 | | | | | | (35), (36), (41), (125), (128) gives: % 21.95/3.79 | | | | | | (131) all_64_20 = 0 | ? [v0: int] : ? [v1: int] : ( ~ (v1 = 0) % 21.95/3.79 | | | | | | & ~ (v0 = 0) & contains(all_64_32, all_64_21) = v1 & % 21.95/3.79 | | | | | | contains(all_64_34, all_64_21) = v0) % 21.95/3.79 | | | | | | % 21.95/3.79 | | | | | | BETA: splitting (130) gives: % 21.95/3.79 | | | | | | % 21.95/3.79 | | | | | | Case 1: % 21.95/3.79 | | | | | | | % 21.95/3.79 | | | | | | | (132) $lesseq(1, $difference(all_64_36, all_64_24)) % 21.95/3.79 | | | | | | | % 21.95/3.79 | | | | | | | COMBINE_INEQS: (123), (132) imply: % 21.95/3.79 | | | | | | | (133) $false % 21.95/3.79 | | | | | | | % 21.95/3.79 | | | | | | | CLOSE: (133) is inconsistent. % 21.95/3.79 | | | | | | | % 21.95/3.79 | | | | | | Case 2: % 21.95/3.79 | | | | | | | % 21.95/3.79 | | | | | | | (134) ~ ($lesseq(1, $difference(all_64_29, all_64_24))) | ? % 21.95/3.79 | | | | | | | [v0: uni] : ? [v1: elt] : (tb2t1(v0) = v1 & % 21.95/3.79 | | | | | | | contains(all_64_34, v1) = 0 & get(elt1, int, all_64_28, % 21.95/3.79 | | | | | | | all_64_23) = v0 & elt(v1) & uni(v0)) % 21.95/3.79 | | | | | | | % 21.95/3.79 | | | | | | | BETA: splitting (131) gives: % 21.95/3.79 | | | | | | | % 21.95/3.79 | | | | | | | Case 1: % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | (135) all_64_20 = 0 % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | REDUCE: (122), (135) imply: % 21.95/3.79 | | | | | | | | (136) $false % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | CLOSE: (136) is inconsistent. % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | Case 2: % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | (137) ? [v0: int] : ? [v1: int] : ( ~ (v1 = 0) & ~ (v0 = % 21.95/3.79 | | | | | | | | 0) & contains(all_64_32, all_64_21) = v1 & % 21.95/3.79 | | | | | | | | contains(all_64_34, all_64_21) = v0) % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | DELTA: instantiating (137) with fresh symbols all_211_0, % 21.95/3.79 | | | | | | | | all_211_1 gives: % 21.95/3.79 | | | | | | | | (138) ~ (all_211_0 = 0) & ~ (all_211_1 = 0) & % 21.95/3.79 | | | | | | | | contains(all_64_32, all_64_21) = all_211_0 & % 21.95/3.79 | | | | | | | | contains(all_64_34, all_64_21) = all_211_1 % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | ALPHA: (138) implies: % 21.95/3.79 | | | | | | | | (139) ~ (all_211_1 = 0) % 21.95/3.79 | | | | | | | | (140) contains(all_64_34, all_64_21) = all_211_1 % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | BETA: splitting (134) gives: % 21.95/3.79 | | | | | | | | % 21.95/3.79 | | | | | | | | Case 1: % 21.95/3.79 | | | | | | | | | % 21.95/3.79 | | | | | | | | | (141) $lesseq(all_64_29, all_64_24) % 21.95/3.79 | | | | | | | | | % 21.95/3.79 | | | | | | | | | REDUCE: (90), (141) imply: % 21.95/3.79 | | | | | | | | | (142) $lesseq(all_64_38, all_64_24) % 21.95/3.79 | | | | | | | | | % 21.95/3.79 | | | | | | | | | COMBINE_INEQS: (124), (142) imply: % 21.95/3.79 | | | | | | | | | (143) $false % 21.95/3.79 | | | | | | | | | % 21.95/3.79 | | | | | | | | | CLOSE: (143) is inconsistent. % 21.95/3.79 | | | | | | | | | % 21.95/3.79 | | | | | | | | Case 2: % 21.95/3.79 | | | | | | | | | % 21.95/3.79 | | | | | | | | | (144) ? [v0: uni] : ? [v1: elt] : (tb2t1(v0) = v1 & % 21.95/3.79 | | | | | | | | | contains(all_64_34, v1) = 0 & get(elt1, int, % 21.95/3.79 | | | | | | | | | all_64_28, all_64_23) = v0 & elt(v1) & uni(v0)) % 21.95/3.79 | | | | | | | | | % 21.95/3.79 | | | | | | | | | DELTA: instantiating (144) with fresh symbols all_218_0, % 21.95/3.79 | | | | | | | | | all_218_1 gives: % 21.95/3.79 | | | | | | | | | (145) tb2t1(all_218_1) = all_218_0 & contains(all_64_34, % 21.95/3.79 | | | | | | | | | all_218_0) = 0 & get(elt1, int, all_64_28, % 21.95/3.79 | | | | | | | | | all_64_23) = all_218_1 & elt(all_218_0) & % 21.95/3.79 | | | | | | | | | uni(all_218_1) % 21.95/3.79 | | | | | | | | | % 21.95/3.79 | | | | | | | | | ALPHA: (145) implies: % 21.95/3.79 | | | | | | | | | (146) get(elt1, int, all_64_28, all_64_23) = all_218_1 % 21.95/3.79 | | | | | | | | | (147) contains(all_64_34, all_218_0) = 0 % 21.95/3.79 | | | | | | | | | (148) tb2t1(all_218_1) = all_218_0 % 21.95/3.79 | | | | | | | | | % 21.95/3.79 | | | | | | | | | GROUND_INST: instantiating (22) with all_64_22, all_218_1, % 21.95/3.79 | | | | | | | | | all_64_23, all_64_28, int, elt1, simplifying with % 21.95/3.79 | | | | | | | | | (126), (146) gives: % 21.95/3.79 | | | | | | | | | (149) all_218_1 = all_64_22 % 21.95/3.79 | | | | | | | | | % 21.95/3.79 | | | | | | | | | REDUCE: (148), (149) imply: % 21.95/3.80 | | | | | | | | | (150) tb2t1(all_64_22) = all_218_0 % 21.95/3.80 | | | | | | | | | % 21.95/3.80 | | | | | | | | | GROUND_INST: instantiating (17) with all_64_21, all_218_0, % 21.95/3.80 | | | | | | | | | all_64_22, simplifying with (129), (150) gives: % 21.95/3.80 | | | | | | | | | (151) all_218_0 = all_64_21 % 21.95/3.80 | | | | | | | | | % 21.95/3.80 | | | | | | | | | REDUCE: (147), (151) imply: % 21.95/3.80 | | | | | | | | | (152) contains(all_64_34, all_64_21) = 0 % 21.95/3.80 | | | | | | | | | % 21.95/3.80 | | | | | | | | | GROUND_INST: instantiating (21) with all_211_1, 0, all_64_21, % 21.95/3.80 | | | | | | | | | all_64_34, simplifying with (140), (152) gives: % 21.95/3.80 | | | | | | | | | (153) all_211_1 = 0 % 21.95/3.80 | | | | | | | | | % 21.95/3.80 | | | | | | | | | REDUCE: (139), (153) imply: % 21.95/3.80 | | | | | | | | | (154) $false % 21.95/3.80 | | | | | | | | | % 21.95/3.80 | | | | | | | | | CLOSE: (154) is inconsistent. % 21.95/3.80 | | | | | | | | | % 21.95/3.80 | | | | | | | | End of split % 21.95/3.80 | | | | | | | | % 21.95/3.80 | | | | | | | End of split % 21.95/3.80 | | | | | | | % 21.95/3.80 | | | | | | End of split % 21.95/3.80 | | | | | | % 21.95/3.80 | | | | | End of split % 21.95/3.80 | | | | | % 21.95/3.80 | | | | Case 2: % 21.95/3.80 | | | | | % 21.95/3.80 | | | | | (155) $lesseq(1, $difference(all_64_38, all_64_29)) & ( ~ % 21.95/3.80 | | | | | ($lesseq(0, all_64_29)) | (all_64_18 = all_64_25 & % 21.95/3.80 | | | | | t2tb2(all_64_25) = all_64_17 & uni(all_64_17) & % 21.95/3.80 | | | | | ((all_64_4 = all_64_39 & ~ (all_64_5 = all_64_32) & ~ % 21.95/3.80 | | | | | (all_64_7 = all_64_32) & node(all_64_7, all_64_6, % 21.95/3.80 | | | | | all_64_5) = all_64_39) | ($lesseq(all_64_15, % 21.95/3.80 | | | | | all_64_38) & $lesseq(1, $difference(all_64_15, % 21.95/3.80 | | | | | all_64_29)) & t2tb2(all_64_16) = all_64_14 & % 21.95/3.80 | | | | | uni(all_64_14) & ! [v0: int] : ! [v1: uni] : ( ~ % 21.95/3.80 | | | | | ($lesseq(1, $difference(all_64_15, v0))) | ~ % 21.95/3.80 | | | | | ($lesseq(1, $difference(v0, all_64_29))) | ~ % 21.95/3.80 | | | | | (t2tb(v0) = v1) | ? [v2: uni] : ? [v3: elt] : % 21.95/3.80 | | | | | (tb2t1(v2) = v3 & contains(all_64_32, v3) = 0 & % 21.95/3.80 | | | | | get(elt1, int, all_64_14, v1) = v2 & elt(v3) & % 21.95/3.80 | | | | | uni(v2))) & ! [v0: int] : ! [v1: uni] : ( ~ % 21.95/3.80 | | | | | ($lesseq(v0, all_64_29)) | ~ ($lesseq(0, v0)) | ~ % 21.95/3.80 | | | | | (t2tb(v0) = v1) | ? [v2: uni] : ? [v3: elt] : ? % 21.95/3.80 | | | | | [v4: uni] : (tb2t1(v4) = v3 & tb2t1(v2) = v3 & % 21.95/3.80 | | | | | get(elt1, int, all_64_14, v1) = v2 & get(elt1, % 21.95/3.80 | | | | | int, all_64_17, v1) = v4 & elt(v3) & uni(v4) & % 21.95/3.80 | | | | | uni(v2))) & ( ~ ($lesseq(all_64_36, all_64_15)) | % 21.95/3.80 | | | | | ( ~ (all_64_8 = all_64_10) & $lesseq(1, % 21.95/3.80 | | | | | $difference(all_64_36, all_64_13)) & $lesseq(0, % 21.95/3.80 | | | | | all_64_13) & tb2t1(all_64_9) = all_64_8 & % 21.95/3.80 | | | | | tb2t1(all_64_11) = all_64_10 & t2tb(all_64_13) = % 21.95/3.80 | | | | | all_64_12 & get(elt1, int, all_64_14, all_64_12) % 21.95/3.80 | | | | | = all_64_11 & get(elt1, int, all_64_35, % 21.95/3.80 | | | | | all_64_12) = all_64_9 & elt(all_64_8) & % 21.95/3.80 | | | | | elt(all_64_10) & uni(all_64_9) & uni(all_64_11) & % 21.95/3.80 | | | | | uni(all_64_12)) | ( ~ (all_64_9 = 0) & $lesseq(1, % 21.95/3.80 | | | | | $difference(all_64_15, all_64_13)) & % 21.95/3.80 | | | | | $lesseq(all_64_36, all_64_13) & tb2t1(all_64_11) % 21.95/3.80 | | | | | = all_64_10 & contains(all_64_39, all_64_10) = % 21.95/3.80 | | | | | all_64_9 & t2tb(all_64_13) = all_64_12 & % 21.95/3.80 | | | | | get(elt1, int, all_64_14, all_64_12) = all_64_11 % 21.95/3.80 | | | | | & elt(all_64_10) & uni(all_64_11) & % 21.95/3.80 | | | | | uni(all_64_12))))))) % 21.95/3.80 | | | | | % 21.95/3.80 | | | | | ALPHA: (155) implies: % 21.95/3.80 | | | | | (156) ~ ($lesseq(0, all_64_29)) | (all_64_18 = all_64_25 & % 21.95/3.80 | | | | | t2tb2(all_64_25) = all_64_17 & uni(all_64_17) & ((all_64_4 % 21.95/3.80 | | | | | = all_64_39 & ~ (all_64_5 = all_64_32) & ~ (all_64_7 % 21.95/3.80 | | | | | = all_64_32) & node(all_64_7, all_64_6, all_64_5) = % 21.95/3.80 | | | | | all_64_39) | ($lesseq(all_64_15, all_64_38) & % 21.95/3.80 | | | | | $lesseq(1, $difference(all_64_15, all_64_29)) & % 21.95/3.80 | | | | | t2tb2(all_64_16) = all_64_14 & uni(all_64_14) & ! [v0: % 21.95/3.80 | | | | | int] : ! [v1: uni] : ( ~ ($lesseq(1, % 21.95/3.80 | | | | | $difference(all_64_15, v0))) | ~ ($lesseq(1, % 21.95/3.80 | | | | | $difference(v0, all_64_29))) | ~ (t2tb(v0) = v1) % 21.95/3.80 | | | | | | ? [v2: uni] : ? [v3: elt] : (tb2t1(v2) = v3 & % 21.95/3.80 | | | | | contains(all_64_32, v3) = 0 & get(elt1, int, % 21.95/3.80 | | | | | all_64_14, v1) = v2 & elt(v3) & uni(v2))) & ! % 21.95/3.80 | | | | | [v0: int] : ! [v1: uni] : ( ~ ($lesseq(v0, all_64_29)) % 21.95/3.80 | | | | | | ~ ($lesseq(0, v0)) | ~ (t2tb(v0) = v1) | ? [v2: % 21.95/3.80 | | | | | uni] : ? [v3: elt] : ? [v4: uni] : (tb2t1(v4) = % 21.95/3.80 | | | | | v3 & tb2t1(v2) = v3 & get(elt1, int, all_64_14, v1) % 21.95/3.80 | | | | | = v2 & get(elt1, int, all_64_17, v1) = v4 & elt(v3) % 21.95/3.80 | | | | | & uni(v4) & uni(v2))) & ( ~ ($lesseq(all_64_36, % 21.95/3.80 | | | | | all_64_15)) | ( ~ (all_64_8 = all_64_10) & % 21.95/3.80 | | | | | $lesseq(1, $difference(all_64_36, all_64_13)) & % 21.95/3.80 | | | | | $lesseq(0, all_64_13) & tb2t1(all_64_9) = all_64_8 % 21.95/3.80 | | | | | & tb2t1(all_64_11) = all_64_10 & t2tb(all_64_13) = % 21.95/3.80 | | | | | all_64_12 & get(elt1, int, all_64_14, all_64_12) = % 21.95/3.80 | | | | | all_64_11 & get(elt1, int, all_64_35, all_64_12) = % 21.95/3.80 | | | | | all_64_9 & elt(all_64_8) & elt(all_64_10) & % 21.95/3.80 | | | | | uni(all_64_9) & uni(all_64_11) & uni(all_64_12)) | % 21.95/3.80 | | | | | ( ~ (all_64_9 = 0) & $lesseq(1, % 21.95/3.80 | | | | | $difference(all_64_15, all_64_13)) & % 21.95/3.80 | | | | | $lesseq(all_64_36, all_64_13) & tb2t1(all_64_11) = % 21.95/3.80 | | | | | all_64_10 & contains(all_64_39, all_64_10) = % 21.95/3.80 | | | | | all_64_9 & t2tb(all_64_13) = all_64_12 & get(elt1, % 21.95/3.80 | | | | | int, all_64_14, all_64_12) = all_64_11 & % 21.95/3.80 | | | | | elt(all_64_10) & uni(all_64_11) & % 21.95/3.80 | | | | | uni(all_64_12)))))) % 21.95/3.80 | | | | | % 21.95/3.80 | | | | | BETA: splitting (156) gives: % 21.95/3.80 | | | | | % 21.95/3.80 | | | | | Case 1: % 21.95/3.80 | | | | | | % 21.95/3.80 | | | | | | (157) $lesseq(all_64_29, -1) % 21.95/3.80 | | | | | | % 21.95/3.80 | | | | | | COMBINE_INEQS: (60), (157) imply: % 21.95/3.80 | | | | | | (158) $lesseq(all_64_36, -1) % 21.95/3.80 | | | | | | % 21.95/3.80 | | | | | | COMBINE_INEQS: (29), (158) imply: % 21.95/3.80 | | | | | | (159) $false % 21.95/3.80 | | | | | | % 21.95/3.80 | | | | | | CLOSE: (159) is inconsistent. % 21.95/3.80 | | | | | | % 21.95/3.80 | | | | | Case 2: % 21.95/3.80 | | | | | | % 21.95/3.80 | | | | | | (160) all_64_18 = all_64_25 & t2tb2(all_64_25) = all_64_17 & % 21.95/3.80 | | | | | | uni(all_64_17) & ((all_64_4 = all_64_39 & ~ (all_64_5 = % 21.95/3.80 | | | | | | all_64_32) & ~ (all_64_7 = all_64_32) & % 21.95/3.80 | | | | | | node(all_64_7, all_64_6, all_64_5) = all_64_39) | % 21.95/3.80 | | | | | | ($lesseq(all_64_15, all_64_38) & $lesseq(1, % 21.95/3.80 | | | | | | $difference(all_64_15, all_64_29)) & t2tb2(all_64_16) % 21.95/3.80 | | | | | | = all_64_14 & uni(all_64_14) & ! [v0: int] : ! [v1: % 21.95/3.80 | | | | | | uni] : ( ~ ($lesseq(1, $difference(all_64_15, v0))) | % 21.95/3.80 | | | | | | ~ ($lesseq(1, $difference(v0, all_64_29))) | ~ % 21.95/3.80 | | | | | | (t2tb(v0) = v1) | ? [v2: uni] : ? [v3: elt] : % 21.95/3.80 | | | | | | (tb2t1(v2) = v3 & contains(all_64_32, v3) = 0 & % 21.95/3.80 | | | | | | get(elt1, int, all_64_14, v1) = v2 & elt(v3) & % 21.95/3.80 | | | | | | uni(v2))) & ! [v0: int] : ! [v1: uni] : ( ~ % 21.95/3.80 | | | | | | ($lesseq(v0, all_64_29)) | ~ ($lesseq(0, v0)) | ~ % 21.95/3.80 | | | | | | (t2tb(v0) = v1) | ? [v2: uni] : ? [v3: elt] : ? % 21.95/3.80 | | | | | | [v4: uni] : (tb2t1(v4) = v3 & tb2t1(v2) = v3 & % 21.95/3.80 | | | | | | get(elt1, int, all_64_14, v1) = v2 & get(elt1, int, % 21.95/3.80 | | | | | | all_64_17, v1) = v4 & elt(v3) & uni(v4) & % 21.95/3.80 | | | | | | uni(v2))) & ( ~ ($lesseq(all_64_36, all_64_15)) | ( % 21.95/3.80 | | | | | | ~ (all_64_8 = all_64_10) & $lesseq(1, % 21.95/3.80 | | | | | | $difference(all_64_36, all_64_13)) & $lesseq(0, % 21.95/3.80 | | | | | | all_64_13) & tb2t1(all_64_9) = all_64_8 & % 21.95/3.80 | | | | | | tb2t1(all_64_11) = all_64_10 & t2tb(all_64_13) = % 21.95/3.80 | | | | | | all_64_12 & get(elt1, int, all_64_14, all_64_12) = % 21.95/3.80 | | | | | | all_64_11 & get(elt1, int, all_64_35, all_64_12) = % 21.95/3.80 | | | | | | all_64_9 & elt(all_64_8) & elt(all_64_10) & % 21.95/3.80 | | | | | | uni(all_64_9) & uni(all_64_11) & uni(all_64_12)) | % 21.95/3.80 | | | | | | ( ~ (all_64_9 = 0) & $lesseq(1, % 21.95/3.80 | | | | | | $difference(all_64_15, all_64_13)) & % 21.95/3.80 | | | | | | $lesseq(all_64_36, all_64_13) & tb2t1(all_64_11) = % 21.95/3.80 | | | | | | all_64_10 & contains(all_64_39, all_64_10) = % 21.95/3.80 | | | | | | all_64_9 & t2tb(all_64_13) = all_64_12 & get(elt1, % 21.95/3.80 | | | | | | int, all_64_14, all_64_12) = all_64_11 & % 21.95/3.80 | | | | | | elt(all_64_10) & uni(all_64_11) & % 21.95/3.80 | | | | | | uni(all_64_12))))) % 21.95/3.80 | | | | | | % 21.95/3.80 | | | | | | ALPHA: (160) implies: % 21.95/3.80 | | | | | | (161) uni(all_64_17) % 21.95/3.80 | | | | | | (162) t2tb2(all_64_25) = all_64_17 % 21.95/3.81 | | | | | | (163) (all_64_4 = all_64_39 & ~ (all_64_5 = all_64_32) & ~ % 21.95/3.81 | | | | | | (all_64_7 = all_64_32) & node(all_64_7, all_64_6, % 21.95/3.81 | | | | | | all_64_5) = all_64_39) | ($lesseq(all_64_15, all_64_38) % 21.95/3.81 | | | | | | & $lesseq(1, $difference(all_64_15, all_64_29)) & % 21.95/3.81 | | | | | | t2tb2(all_64_16) = all_64_14 & uni(all_64_14) & ! [v0: % 21.95/3.81 | | | | | | int] : ! [v1: uni] : ( ~ ($lesseq(1, % 21.95/3.81 | | | | | | $difference(all_64_15, v0))) | ~ ($lesseq(1, % 21.95/3.81 | | | | | | $difference(v0, all_64_29))) | ~ (t2tb(v0) = v1) | % 21.95/3.81 | | | | | | ? [v2: uni] : ? [v3: elt] : (tb2t1(v2) = v3 & % 21.95/3.81 | | | | | | contains(all_64_32, v3) = 0 & get(elt1, int, % 21.95/3.81 | | | | | | all_64_14, v1) = v2 & elt(v3) & uni(v2))) & ! [v0: % 21.95/3.81 | | | | | | int] : ! [v1: uni] : ( ~ ($lesseq(v0, all_64_29)) | ~ % 21.95/3.81 | | | | | | ($lesseq(0, v0)) | ~ (t2tb(v0) = v1) | ? [v2: uni] : % 21.95/3.81 | | | | | | ? [v3: elt] : ? [v4: uni] : (tb2t1(v4) = v3 & % 21.95/3.81 | | | | | | tb2t1(v2) = v3 & get(elt1, int, all_64_14, v1) = v2 & % 21.95/3.81 | | | | | | get(elt1, int, all_64_17, v1) = v4 & elt(v3) & % 21.95/3.81 | | | | | | uni(v4) & uni(v2))) & ( ~ ($lesseq(all_64_36, % 21.95/3.81 | | | | | | all_64_15)) | ( ~ (all_64_8 = all_64_10) & % 21.95/3.81 | | | | | | $lesseq(1, $difference(all_64_36, all_64_13)) & % 21.95/3.81 | | | | | | $lesseq(0, all_64_13) & tb2t1(all_64_9) = all_64_8 & % 21.95/3.81 | | | | | | tb2t1(all_64_11) = all_64_10 & t2tb(all_64_13) = % 21.95/3.81 | | | | | | all_64_12 & get(elt1, int, all_64_14, all_64_12) = % 21.95/3.81 | | | | | | all_64_11 & get(elt1, int, all_64_35, all_64_12) = % 21.95/3.81 | | | | | | all_64_9 & elt(all_64_8) & elt(all_64_10) & % 21.95/3.81 | | | | | | uni(all_64_9) & uni(all_64_11) & uni(all_64_12)) | ( % 21.95/3.81 | | | | | | ~ (all_64_9 = 0) & $lesseq(1, $difference(all_64_15, % 21.95/3.81 | | | | | | all_64_13)) & $lesseq(all_64_36, all_64_13) & % 21.95/3.81 | | | | | | tb2t1(all_64_11) = all_64_10 & contains(all_64_39, % 21.95/3.81 | | | | | | all_64_10) = all_64_9 & t2tb(all_64_13) = all_64_12 % 21.95/3.81 | | | | | | & get(elt1, int, all_64_14, all_64_12) = all_64_11 & % 21.95/3.81 | | | | | | elt(all_64_10) & uni(all_64_11) & uni(all_64_12)))) % 21.95/3.81 | | | | | | % 21.95/3.81 | | | | | | GROUND_INST: instantiating (18) with all_64_26, all_64_17, % 21.95/3.81 | | | | | | all_64_25, simplifying with (88), (162) gives: % 21.95/3.81 | | | | | | (164) all_64_17 = all_64_26 % 21.95/3.81 | | | | | | % 21.95/3.81 | | | | | | BETA: splitting (163) gives: % 21.95/3.81 | | | | | | % 21.95/3.81 | | | | | | Case 1: % 21.95/3.81 | | | | | | | % 21.95/3.81 | | | | | | | (165) all_64_4 = all_64_39 & ~ (all_64_5 = all_64_32) & ~ % 21.95/3.81 | | | | | | | (all_64_7 = all_64_32) & node(all_64_7, all_64_6, % 21.95/3.81 | | | | | | | all_64_5) = all_64_39 % 21.95/3.81 | | | | | | | % 21.95/3.81 | | | | | | | ALPHA: (165) implies: % 21.95/3.81 | | | | | | | (166) ~ (all_64_5 = all_64_32) % 21.95/3.81 | | | | | | | (167) node(all_64_7, all_64_6, all_64_5) = all_64_39 % 21.95/3.81 | | | | | | | % 21.95/3.81 | | | | | | | GROUND_INST: instantiating (node_proj_3_def) with all_64_7, % 21.95/3.81 | | | | | | | all_64_6, all_64_5, all_64_39, simplifying with (33), % 21.95/3.81 | | | | | | | (37), (38), (167) gives: % 21.95/3.81 | | | | | | | (168) node_proj_3(all_64_39) = all_64_5 % 21.95/3.81 | | | | | | | % 21.95/3.81 | | | | | | | GROUND_INST: instantiating (15) with all_64_32, all_64_5, % 21.95/3.81 | | | | | | | all_64_39, simplifying with (45), (168) gives: % 21.95/3.81 | | | | | | | (169) all_64_5 = all_64_32 % 21.95/3.81 | | | | | | | % 21.95/3.81 | | | | | | | REDUCE: (166), (169) imply: % 21.95/3.81 | | | | | | | (170) $false % 21.95/3.81 | | | | | | | % 21.95/3.81 | | | | | | | CLOSE: (170) is inconsistent. % 21.95/3.81 | | | | | | | % 21.95/3.81 | | | | | | Case 2: % 21.95/3.81 | | | | | | | % 21.95/3.81 | | | | | | | (171) $lesseq(all_64_15, all_64_38) & $lesseq(1, % 21.95/3.81 | | | | | | | $difference(all_64_15, all_64_29)) & t2tb2(all_64_16) = % 21.95/3.81 | | | | | | | all_64_14 & uni(all_64_14) & ! [v0: int] : ! [v1: uni] % 21.95/3.81 | | | | | | | : ( ~ ($lesseq(1, $difference(all_64_15, v0))) | ~ % 21.95/3.81 | | | | | | | ($lesseq(1, $difference(v0, all_64_29))) | ~ (t2tb(v0) % 21.95/3.81 | | | | | | | = v1) | ? [v2: uni] : ? [v3: elt] : (tb2t1(v2) = v3 % 21.95/3.81 | | | | | | | & contains(all_64_32, v3) = 0 & get(elt1, int, % 21.95/3.81 | | | | | | | all_64_14, v1) = v2 & elt(v3) & uni(v2))) & ! [v0: % 21.95/3.81 | | | | | | | int] : ! [v1: uni] : ( ~ ($lesseq(v0, all_64_29)) | ~ % 21.95/3.81 | | | | | | | ($lesseq(0, v0)) | ~ (t2tb(v0) = v1) | ? [v2: uni] : % 21.95/3.81 | | | | | | | ? [v3: elt] : ? [v4: uni] : (tb2t1(v4) = v3 & % 21.95/3.81 | | | | | | | tb2t1(v2) = v3 & get(elt1, int, all_64_14, v1) = v2 & % 21.95/3.81 | | | | | | | get(elt1, int, all_64_17, v1) = v4 & elt(v3) & % 21.95/3.81 | | | | | | | uni(v4) & uni(v2))) & ( ~ ($lesseq(all_64_36, % 21.95/3.81 | | | | | | | all_64_15)) | ( ~ (all_64_8 = all_64_10) & % 21.95/3.81 | | | | | | | $lesseq(1, $difference(all_64_36, all_64_13)) & % 21.95/3.81 | | | | | | | $lesseq(0, all_64_13) & tb2t1(all_64_9) = all_64_8 & % 21.95/3.81 | | | | | | | tb2t1(all_64_11) = all_64_10 & t2tb(all_64_13) = % 21.95/3.81 | | | | | | | all_64_12 & get(elt1, int, all_64_14, all_64_12) = % 21.95/3.81 | | | | | | | all_64_11 & get(elt1, int, all_64_35, all_64_12) = % 21.95/3.81 | | | | | | | all_64_9 & elt(all_64_8) & elt(all_64_10) & % 21.95/3.81 | | | | | | | uni(all_64_9) & uni(all_64_11) & uni(all_64_12)) | ( % 21.95/3.81 | | | | | | | ~ (all_64_9 = 0) & $lesseq(1, $difference(all_64_15, % 21.95/3.81 | | | | | | | all_64_13)) & $lesseq(all_64_36, all_64_13) & % 21.95/3.81 | | | | | | | tb2t1(all_64_11) = all_64_10 & contains(all_64_39, % 21.95/3.81 | | | | | | | all_64_10) = all_64_9 & t2tb(all_64_13) = all_64_12 % 21.95/3.81 | | | | | | | & get(elt1, int, all_64_14, all_64_12) = all_64_11 & % 21.95/3.81 | | | | | | | elt(all_64_10) & uni(all_64_11) & uni(all_64_12))) % 21.95/3.81 | | | | | | | % 21.95/3.81 | | | | | | | ALPHA: (171) implies: % 21.95/3.81 | | | | | | | (172) $lesseq(1, $difference(all_64_15, all_64_29)) % 21.95/3.81 | | | | | | | (173) uni(all_64_14) % 21.95/3.81 | | | | | | | (174) ~ ($lesseq(all_64_36, all_64_15)) | ( ~ (all_64_8 = % 21.95/3.81 | | | | | | | all_64_10) & $lesseq(1, $difference(all_64_36, % 21.95/3.81 | | | | | | | all_64_13)) & $lesseq(0, all_64_13) & % 21.95/3.81 | | | | | | | tb2t1(all_64_9) = all_64_8 & tb2t1(all_64_11) = % 21.95/3.81 | | | | | | | all_64_10 & t2tb(all_64_13) = all_64_12 & get(elt1, % 21.95/3.81 | | | | | | | int, all_64_14, all_64_12) = all_64_11 & get(elt1, % 21.95/3.81 | | | | | | | int, all_64_35, all_64_12) = all_64_9 & elt(all_64_8) % 21.95/3.81 | | | | | | | & elt(all_64_10) & uni(all_64_9) & uni(all_64_11) & % 21.95/3.81 | | | | | | | uni(all_64_12)) | ( ~ (all_64_9 = 0) & $lesseq(1, % 21.95/3.81 | | | | | | | $difference(all_64_15, all_64_13)) & % 21.95/3.81 | | | | | | | $lesseq(all_64_36, all_64_13) & tb2t1(all_64_11) = % 21.95/3.81 | | | | | | | all_64_10 & contains(all_64_39, all_64_10) = all_64_9 & % 21.95/3.81 | | | | | | | t2tb(all_64_13) = all_64_12 & get(elt1, int, all_64_14, % 21.95/3.81 | | | | | | | all_64_12) = all_64_11 & elt(all_64_10) & % 21.95/3.81 | | | | | | | uni(all_64_11) & uni(all_64_12)) % 21.95/3.81 | | | | | | | (175) ! [v0: int] : ! [v1: uni] : ( ~ ($lesseq(v0, % 21.95/3.81 | | | | | | | all_64_29)) | ~ ($lesseq(0, v0)) | ~ (t2tb(v0) = % 21.95/3.81 | | | | | | | v1) | ? [v2: uni] : ? [v3: elt] : ? [v4: uni] : % 21.95/3.81 | | | | | | | (tb2t1(v4) = v3 & tb2t1(v2) = v3 & get(elt1, int, % 21.95/3.81 | | | | | | | all_64_14, v1) = v2 & get(elt1, int, all_64_17, v1) % 21.95/3.81 | | | | | | | = v4 & elt(v3) & uni(v4) & uni(v2))) % 21.95/3.81 | | | | | | | (176) ! [v0: int] : ! [v1: uni] : ( ~ ($lesseq(1, % 21.95/3.81 | | | | | | | $difference(all_64_15, v0))) | ~ ($lesseq(1, % 21.95/3.81 | | | | | | | $difference(v0, all_64_29))) | ~ (t2tb(v0) = v1) | % 21.95/3.81 | | | | | | | ? [v2: uni] : ? [v3: elt] : (tb2t1(v2) = v3 & % 21.95/3.81 | | | | | | | contains(all_64_32, v3) = 0 & get(elt1, int, % 21.95/3.81 | | | | | | | all_64_14, v1) = v2 & elt(v3) & uni(v2))) % 21.95/3.81 | | | | | | | % 21.95/3.81 | | | | | | | COMBINE_INEQS: (29), (60) imply: % 21.95/3.81 | | | | | | | (177) $lesseq(0, all_64_29) % 21.95/3.81 | | | | | | | % 21.95/3.81 | | | | | | | GROUND_INST: instantiating (175) with all_64_29, all_64_27, % 21.95/3.81 | | | | | | | simplifying with (65) gives: % 21.95/3.81 | | | | | | | (178) ~ ($lesseq(0, all_64_29)) | ? [v0: uni] : ? [v1: elt] % 21.95/3.81 | | | | | | | : ? [v2: uni] : (tb2t1(v2) = v1 & tb2t1(v0) = v1 & % 21.95/3.81 | | | | | | | get(elt1, int, all_64_14, all_64_27) = v0 & get(elt1, % 21.95/3.81 | | | | | | | int, all_64_17, all_64_27) = v2 & elt(v1) & uni(v2) & % 21.95/3.81 | | | | | | | uni(v0)) % 21.95/3.81 | | | | | | | % 21.95/3.81 | | | | | | | BETA: splitting (178) gives: % 21.95/3.81 | | | | | | | % 21.95/3.81 | | | | | | | Case 1: % 21.95/3.81 | | | | | | | | % 21.95/3.81 | | | | | | | | (179) $lesseq(all_64_29, -1) % 21.95/3.81 | | | | | | | | % 21.95/3.81 | | | | | | | | COMBINE_INEQS: (177), (179) imply: % 21.95/3.81 | | | | | | | | (180) $false % 21.95/3.81 | | | | | | | | % 21.95/3.81 | | | | | | | | CLOSE: (180) is inconsistent. % 21.95/3.81 | | | | | | | | % 21.95/3.81 | | | | | | | Case 2: % 21.95/3.81 | | | | | | | | % 21.95/3.82 | | | | | | | | (181) ? [v0: uni] : ? [v1: elt] : ? [v2: uni] : (tb2t1(v2) % 21.95/3.82 | | | | | | | | = v1 & tb2t1(v0) = v1 & get(elt1, int, all_64_14, % 21.95/3.82 | | | | | | | | all_64_27) = v0 & get(elt1, int, all_64_17, % 21.95/3.82 | | | | | | | | all_64_27) = v2 & elt(v1) & uni(v2) & uni(v0)) % 21.95/3.82 | | | | | | | | % 21.95/3.82 | | | | | | | | DELTA: instantiating (181) with fresh symbols all_209_0, % 21.95/3.82 | | | | | | | | all_209_1, all_209_2 gives: % 21.95/3.82 | | | | | | | | (182) tb2t1(all_209_0) = all_209_1 & tb2t1(all_209_2) = % 21.95/3.82 | | | | | | | | all_209_1 & get(elt1, int, all_64_14, all_64_27) = % 21.95/3.82 | | | | | | | | all_209_2 & get(elt1, int, all_64_17, all_64_27) = % 21.95/3.82 | | | | | | | | all_209_0 & elt(all_209_1) & uni(all_209_0) & % 21.95/3.82 | | | | | | | | uni(all_209_2) % 21.95/3.82 | | | | | | | | % 21.95/3.82 | | | | | | | | ALPHA: (182) implies: % 21.95/3.82 | | | | | | | | (183) uni(all_209_2) % 21.95/3.82 | | | | | | | | (184) uni(all_209_0) % 21.95/3.82 | | | | | | | | (185) elt(all_209_1) % 21.95/3.82 | | | | | | | | (186) get(elt1, int, all_64_17, all_64_27) = all_209_0 % 21.95/3.82 | | | | | | | | (187) get(elt1, int, all_64_14, all_64_27) = all_209_2 % 21.95/3.82 | | | | | | | | (188) tb2t1(all_209_2) = all_209_1 % 21.95/3.82 | | | | | | | | (189) tb2t1(all_209_0) = all_209_1 % 21.95/3.82 | | | | | | | | % 21.95/3.82 | | | | | | | | REDUCE: (164), (186) imply: % 21.95/3.82 | | | | | | | | (190) get(elt1, int, all_64_26, all_64_27) = all_209_0 % 21.95/3.82 | | | | | | | | % 21.95/3.82 | | | | | | | | GROUND_INST: instantiating (select_eq) with int, elt1, % 21.95/3.82 | | | | | | | | all_64_28, all_64_27, all_64_31, all_64_26, % 21.95/3.82 | | | | | | | | all_209_0, simplifying with (9), (10), (31), (61), % 21.95/3.82 | | | | | | | | (62), (64), (190) gives: % 21.95/3.82 | | | | | | | | (191) all_209_0 = all_64_31 | ? [v0: int] : ( ~ (v0 = 0) & % 21.95/3.82 | | | | | | | | sort(elt1, all_64_31) = v0) % 21.95/3.82 | | | | | | | | % 21.95/3.82 | | | | | | | | GROUND_INST: instantiating (get_sort) with int, elt1, all_64_26, % 21.95/3.82 | | | | | | | | all_64_27, all_209_0, simplifying with (9), (10), % 21.95/3.82 | | | | | | | | (62), (63), (190) gives: % 21.95/3.82 | | | | | | | | (192) sort(elt1, all_209_0) = 0 % 21.95/3.82 | | | | | | | | % 21.95/3.82 | | | | | | | | GROUND_INST: instantiating (get_sort) with int, elt1, all_64_14, % 21.95/3.82 | | | | | | | | all_64_27, all_209_2, simplifying with (9), (10), % 21.95/3.82 | | | | | | | | (62), (173), (187) gives: % 21.95/3.82 | | | | | | | | (193) sort(elt1, all_209_2) = 0 % 21.95/3.82 | | | | | | | | % 21.95/3.82 | | | | | | | | GROUND_INST: instantiating (6) with all_209_2, all_209_1, % 21.95/3.82 | | | | | | | | simplifying with (183), (188) gives: % 21.95/3.82 | | | | | | | | (194) ? [v0: any] : ? [v1: uni] : (t2tb1(all_209_1) = v1 & % 21.95/3.82 | | | | | | | | sort(elt1, all_209_2) = v0 & uni(v1) & ( ~ (v0 = 0) | % 21.95/3.82 | | | | | | | | v1 = all_209_2)) % 21.95/3.82 | | | | | | | | % 21.95/3.82 | | | | | | | | GROUND_INST: instantiating (6) with all_209_0, all_209_1, % 21.95/3.82 | | | | | | | | simplifying with (184), (189) gives: % 21.95/3.82 | | | | | | | | (195) ? [v0: any] : ? [v1: uni] : (t2tb1(all_209_1) = v1 & % 21.95/3.82 | | | | | | | | sort(elt1, all_209_0) = v0 & uni(v1) & ( ~ (v0 = 0) | % 21.95/3.82 | | | | | | | | v1 = all_209_0)) % 21.95/3.82 | | | | | | | | % 21.95/3.82 | | | | | | | | DELTA: instantiating (195) with fresh symbols all_219_0, % 21.95/3.82 | | | | | | | | all_219_1 gives: % 21.95/3.82 | | | | | | | | (196) t2tb1(all_209_1) = all_219_0 & sort(elt1, all_209_0) = % 21.95/3.82 | | | | | | | | all_219_1 & uni(all_219_0) & ( ~ (all_219_1 = 0) | % 21.95/3.82 | | | | | | | | all_219_0 = all_209_0) % 21.95/3.82 | | | | | | | | % 21.95/3.82 | | | | | | | | ALPHA: (196) implies: % 21.95/3.82 | | | | | | | | (197) sort(elt1, all_209_0) = all_219_1 % 21.95/3.82 | | | | | | | | (198) t2tb1(all_209_1) = all_219_0 % 21.95/3.82 | | | | | | | | (199) ~ (all_219_1 = 0) | all_219_0 = all_209_0 % 21.95/3.82 | | | | | | | | % 21.95/3.82 | | | | | | | | DELTA: instantiating (194) with fresh symbols all_221_0, % 21.95/3.82 | | | | | | | | all_221_1 gives: % 21.95/3.82 | | | | | | | | (200) t2tb1(all_209_1) = all_221_0 & sort(elt1, all_209_2) = % 21.95/3.82 | | | | | | | | all_221_1 & uni(all_221_0) & ( ~ (all_221_1 = 0) | % 21.95/3.82 | | | | | | | | all_221_0 = all_209_2) % 21.95/3.82 | | | | | | | | % 21.95/3.82 | | | | | | | | ALPHA: (200) implies: % 21.95/3.82 | | | | | | | | (201) sort(elt1, all_209_2) = all_221_1 % 21.95/3.82 | | | | | | | | (202) t2tb1(all_209_1) = all_221_0 % 21.95/3.82 | | | | | | | | (203) ~ (all_221_1 = 0) | all_221_0 = all_209_2 % 21.95/3.82 | | | | | | | | % 21.95/3.82 | | | | | | | | BETA: splitting (191) gives: % 21.95/3.82 | | | | | | | | % 21.95/3.82 | | | | | | | | Case 1: % 21.95/3.82 | | | | | | | | | % 21.95/3.82 | | | | | | | | | (204) all_209_0 = all_64_31 % 21.95/3.82 | | | | | | | | | % 21.95/3.82 | | | | | | | | | REDUCE: (189), (204) imply: % 21.95/3.82 | | | | | | | | | (205) tb2t1(all_64_31) = all_209_1 % 21.95/3.82 | | | | | | | | | % 21.95/3.82 | | | | | | | | | REDUCE: (197), (204) imply: % 21.95/3.82 | | | | | | | | | (206) sort(elt1, all_64_31) = all_219_1 % 21.95/3.82 | | | | | | | | | % 21.95/3.82 | | | | | | | | | GROUND_INST: instantiating (19) with 0, all_219_1, all_64_31, % 21.95/3.82 | | | | | | | | | elt1, simplifying with (48), (206) gives: % 21.95/3.82 | | | | | | | | | (207) all_219_1 = 0 % 21.95/3.82 | | | | | | | | | % 21.95/3.82 | | | | | | | | | GROUND_INST: instantiating (19) with 0, all_221_1, all_209_2, % 21.95/3.82 | | | | | | | | | elt1, simplifying with (193), (201) gives: % 21.95/3.82 | | | | | | | | | (208) all_221_1 = 0 % 21.95/3.82 | | | | | | | | | % 21.95/3.82 | | | | | | | | | GROUND_INST: instantiating (16) with all_219_0, all_221_0, % 21.95/3.82 | | | | | | | | | all_209_1, simplifying with (198), (202) gives: % 21.95/3.82 | | | | | | | | | (209) all_221_0 = all_219_0 % 21.95/3.82 | | | | | | | | | % 21.95/3.82 | | | | | | | | | GROUND_INST: instantiating (17) with all_64_33, all_209_1, % 21.95/3.82 | | | | | | | | | all_64_31, simplifying with (47), (205) gives: % 21.95/3.82 | | | | | | | | | (210) all_209_1 = all_64_33 % 21.95/3.82 | | | | | | | | | % 21.95/3.82 | | | | | | | | | REDUCE: (188), (210) imply: % 21.95/3.82 | | | | | | | | | (211) tb2t1(all_209_2) = all_64_33 % 21.95/3.82 | | | | | | | | | % 21.95/3.82 | | | | | | | | | BETA: splitting (199) gives: % 21.95/3.82 | | | | | | | | | % 21.95/3.82 | | | | | | | | | Case 1: % 21.95/3.82 | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | (212) ~ (all_219_1 = 0) % 21.95/3.82 | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | REDUCE: (207), (212) imply: % 21.95/3.82 | | | | | | | | | | (213) $false % 21.95/3.82 | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | CLOSE: (213) is inconsistent. % 21.95/3.82 | | | | | | | | | | % 21.95/3.82 | | | | | | | | | Case 2: % 21.95/3.82 | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | (214) all_219_0 = all_209_0 % 21.95/3.82 | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | COMBINE_EQS: (204), (214) imply: % 21.95/3.82 | | | | | | | | | | (215) all_219_0 = all_64_31 % 21.95/3.82 | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | COMBINE_EQS: (209), (215) imply: % 21.95/3.82 | | | | | | | | | | (216) all_221_0 = all_64_31 % 21.95/3.82 | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | BETA: splitting (203) gives: % 21.95/3.82 | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | Case 1: % 21.95/3.82 | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | (217) ~ (all_221_1 = 0) % 21.95/3.82 | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | REDUCE: (208), (217) imply: % 21.95/3.82 | | | | | | | | | | | (218) $false % 21.95/3.82 | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | CLOSE: (218) is inconsistent. % 21.95/3.82 | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | Case 2: % 21.95/3.82 | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | (219) all_221_0 = all_209_2 % 21.95/3.82 | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | COMBINE_EQS: (216), (219) imply: % 21.95/3.82 | | | | | | | | | | | (220) all_209_2 = all_64_31 % 21.95/3.82 | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | SIMP: (220) implies: % 21.95/3.82 | | | | | | | | | | | (221) all_209_2 = all_64_31 % 21.95/3.82 | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | REDUCE: (187), (221) imply: % 21.95/3.82 | | | | | | | | | | | (222) get(elt1, int, all_64_14, all_64_27) = all_64_31 % 21.95/3.82 | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | BETA: splitting (174) gives: % 21.95/3.82 | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | Case 1: % 21.95/3.82 | | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | | (223) $lesseq(1, $difference(all_64_36, all_64_15)) % 21.95/3.82 | | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | | COMBINE_INEQS: (172), (223) imply: % 21.95/3.82 | | | | | | | | | | | | (224) $lesseq(2, $difference(all_64_36, all_64_29)) % 21.95/3.82 | | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | | COMBINE_INEQS: (60), (224) imply: % 21.95/3.82 | | | | | | | | | | | | (225) $false % 21.95/3.82 | | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | | CLOSE: (225) is inconsistent. % 21.95/3.82 | | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | Case 2: % 21.95/3.82 | | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | | (226) ( ~ (all_64_8 = all_64_10) & $lesseq(1, % 21.95/3.82 | | | | | | | | | | | | $difference(all_64_36, all_64_13)) & % 21.95/3.82 | | | | | | | | | | | | $lesseq(0, all_64_13) & tb2t1(all_64_9) = % 21.95/3.82 | | | | | | | | | | | | all_64_8 & tb2t1(all_64_11) = all_64_10 & % 21.95/3.82 | | | | | | | | | | | | t2tb(all_64_13) = all_64_12 & get(elt1, int, % 21.95/3.82 | | | | | | | | | | | | all_64_14, all_64_12) = all_64_11 & get(elt1, % 21.95/3.82 | | | | | | | | | | | | int, all_64_35, all_64_12) = all_64_9 & % 21.95/3.82 | | | | | | | | | | | | elt(all_64_8) & elt(all_64_10) & uni(all_64_9) & % 21.95/3.82 | | | | | | | | | | | | uni(all_64_11) & uni(all_64_12)) | ( ~ (all_64_9 % 21.95/3.82 | | | | | | | | | | | | = 0) & $lesseq(1, $difference(all_64_15, % 21.95/3.82 | | | | | | | | | | | | all_64_13)) & $lesseq(all_64_36, all_64_13) % 21.95/3.82 | | | | | | | | | | | | & tb2t1(all_64_11) = all_64_10 & % 21.95/3.82 | | | | | | | | | | | | contains(all_64_39, all_64_10) = all_64_9 & % 21.95/3.82 | | | | | | | | | | | | t2tb(all_64_13) = all_64_12 & get(elt1, int, % 21.95/3.82 | | | | | | | | | | | | all_64_14, all_64_12) = all_64_11 & % 21.95/3.82 | | | | | | | | | | | | elt(all_64_10) & uni(all_64_11) & % 21.95/3.82 | | | | | | | | | | | | uni(all_64_12)) % 21.95/3.82 | | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | | BETA: splitting (226) gives: % 21.95/3.82 | | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | | Case 1: % 21.95/3.82 | | | | | | | | | | | | | % 21.95/3.82 | | | | | | | | | | | | | (227) ~ (all_64_8 = all_64_10) & $lesseq(1, % 21.95/3.82 | | | | | | | | | | | | | $difference(all_64_36, all_64_13)) & $lesseq(0, % 21.95/3.82 | | | | | | | | | | | | | all_64_13) & tb2t1(all_64_9) = all_64_8 & % 21.95/3.82 | | | | | | | | | | | | | tb2t1(all_64_11) = all_64_10 & t2tb(all_64_13) = % 21.95/3.82 | | | | | | | | | | | | | all_64_12 & get(elt1, int, all_64_14, all_64_12) = % 21.95/3.82 | | | | | | | | | | | | | all_64_11 & get(elt1, int, all_64_35, all_64_12) = % 21.95/3.82 | | | | | | | | | | | | | all_64_9 & elt(all_64_8) & elt(all_64_10) & % 21.95/3.82 | | | | | | | | | | | | | uni(all_64_9) & uni(all_64_11) & uni(all_64_12) % 21.95/3.83 | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | ALPHA: (227) implies: % 21.95/3.83 | | | | | | | | | | | | | (228) ~ (all_64_8 = all_64_10) % 21.95/3.83 | | | | | | | | | | | | | (229) $lesseq(0, all_64_13) % 21.95/3.83 | | | | | | | | | | | | | (230) $lesseq(1, $difference(all_64_36, all_64_13)) % 21.95/3.83 | | | | | | | | | | | | | (231) uni(all_64_12) % 21.95/3.83 | | | | | | | | | | | | | (232) uni(all_64_9) % 21.95/3.83 | | | | | | | | | | | | | (233) get(elt1, int, all_64_35, all_64_12) = all_64_9 % 21.95/3.83 | | | | | | | | | | | | | (234) get(elt1, int, all_64_14, all_64_12) = all_64_11 % 21.95/3.83 | | | | | | | | | | | | | (235) t2tb(all_64_13) = all_64_12 % 21.95/3.83 | | | | | | | | | | | | | (236) tb2t1(all_64_11) = all_64_10 % 21.95/3.83 | | | | | | | | | | | | | (237) tb2t1(all_64_9) = all_64_8 % 21.95/3.83 | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | GROUND_INST: instantiating (12) with all_64_27, all_64_12, % 21.95/3.83 | | | | | | | | | | | | | all_64_29, simplifying with (65) gives: % 21.95/3.83 | | | | | | | | | | | | | (238) all_64_12 = all_64_27 | ~ (t2tb(all_64_29) = % 21.95/3.83 | | | | | | | | | | | | | all_64_12) % 21.95/3.83 | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | GROUND_INST: instantiating (get_sort) with int, elt1, % 21.95/3.83 | | | | | | | | | | | | | all_64_35, all_64_12, all_64_9, simplifying with % 21.95/3.83 | | | | | | | | | | | | | (9), (10), (30), (231), (233) gives: % 21.95/3.83 | | | | | | | | | | | | | (239) sort(elt1, all_64_9) = 0 % 21.95/3.83 | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | GROUND_INST: instantiating (175) with all_64_13, all_64_12, % 21.95/3.83 | | | | | | | | | | | | | simplifying with (235) gives: % 21.95/3.83 | | | | | | | | | | | | | (240) ~ ($lesseq(all_64_13, all_64_29)) | ~ % 21.95/3.83 | | | | | | | | | | | | | ($lesseq(0, all_64_13)) | ? [v0: uni] : ? [v1: % 21.95/3.83 | | | | | | | | | | | | | elt] : ? [v2: uni] : (tb2t1(v2) = v1 & % 21.95/3.83 | | | | | | | | | | | | | tb2t1(v0) = v1 & get(elt1, int, all_64_14, % 21.95/3.83 | | | | | | | | | | | | | all_64_12) = v0 & get(elt1, int, all_64_17, % 21.95/3.83 | | | | | | | | | | | | | all_64_12) = v2 & elt(v1) & uni(v2) & uni(v0)) % 21.95/3.83 | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | GROUND_INST: instantiating (68) with all_64_13, all_64_12, % 21.95/3.83 | | | | | | | | | | | | | simplifying with (235) gives: % 21.95/3.83 | | | | | | | | | | | | | (241) ~ ($lesseq(1, $difference(all_64_36, all_64_13))) % 21.95/3.83 | | | | | | | | | | | | | | ~ ($lesseq(0, all_64_13)) | ? [v0: uni] : ? % 21.95/3.83 | | | | | | | | | | | | | [v1: elt] : ? [v2: uni] : (tb2t1(v2) = v1 & % 21.95/3.83 | | | | | | | | | | | | | tb2t1(v0) = v1 & get(elt1, int, all_64_28, % 21.95/3.83 | | | | | | | | | | | | | all_64_12) = v0 & get(elt1, int, all_64_35, % 21.95/3.83 | | | | | | | | | | | | | all_64_12) = v2 & elt(v1) & uni(v2) & uni(v0)) % 21.95/3.83 | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | GROUND_INST: instantiating (bridgeL) with all_64_13, all_64_12, % 21.95/3.83 | | | | | | | | | | | | | simplifying with (235) gives: % 21.95/3.83 | | | | | | | | | | | | | (242) tb2t(all_64_12) = all_64_13 % 21.95/3.83 | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | GROUND_INST: instantiating (1) with all_64_13, all_64_12, % 21.95/3.83 | | | | | | | | | | | | | simplifying with (235) gives: % 21.95/3.83 | | | | | | | | | | | | | (243) sort(int, all_64_12) = 0 % 21.95/3.83 | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | GROUND_INST: instantiating (6) with all_64_9, all_64_8, % 21.95/3.83 | | | | | | | | | | | | | simplifying with (232), (237) gives: % 21.95/3.83 | | | | | | | | | | | | | (244) ? [v0: any] : ? [v1: uni] : (t2tb1(all_64_8) = % 21.95/3.83 | | | | | | | | | | | | | v1 & sort(elt1, all_64_9) = v0 & uni(v1) & ( ~ % 21.95/3.83 | | | | | | | | | | | | | (v0 = 0) | v1 = all_64_9)) % 21.95/3.83 | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | DELTA: instantiating (244) with fresh symbols all_270_0, % 21.95/3.83 | | | | | | | | | | | | | all_270_1 gives: % 21.95/3.83 | | | | | | | | | | | | | (245) t2tb1(all_64_8) = all_270_0 & sort(elt1, all_64_9) % 21.95/3.83 | | | | | | | | | | | | | = all_270_1 & uni(all_270_0) & ( ~ (all_270_1 = 0) % 21.95/3.83 | | | | | | | | | | | | | | all_270_0 = all_64_9) % 21.95/3.83 | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | ALPHA: (245) implies: % 21.95/3.83 | | | | | | | | | | | | | (246) sort(elt1, all_64_9) = all_270_1 % 21.95/3.83 | | | | | | | | | | | | | (247) t2tb1(all_64_8) = all_270_0 % 21.95/3.83 | | | | | | | | | | | | | (248) ~ (all_270_1 = 0) | all_270_0 = all_64_9 % 21.95/3.83 | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | BETA: splitting (241) gives: % 21.95/3.83 | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | Case 1: % 21.95/3.83 | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | (249) $lesseq(all_64_13, -1) % 21.95/3.83 | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | COMBINE_INEQS: (229), (249) imply: % 21.95/3.83 | | | | | | | | | | | | | | (250) $false % 21.95/3.83 | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | CLOSE: (250) is inconsistent. % 21.95/3.83 | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | Case 2: % 21.95/3.83 | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | (251) ~ ($lesseq(1, $difference(all_64_36, all_64_13))) % 21.95/3.83 | | | | | | | | | | | | | | | ? [v0: uni] : ? [v1: elt] : ? [v2: uni] : % 21.95/3.83 | | | | | | | | | | | | | | (tb2t1(v2) = v1 & tb2t1(v0) = v1 & get(elt1, int, % 21.95/3.83 | | | | | | | | | | | | | | all_64_28, all_64_12) = v0 & get(elt1, int, % 21.95/3.83 | | | | | | | | | | | | | | all_64_35, all_64_12) = v2 & elt(v1) & uni(v2) % 21.95/3.83 | | | | | | | | | | | | | | & uni(v0)) % 21.95/3.83 | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | BETA: splitting (251) gives: % 21.95/3.83 | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | Case 1: % 21.95/3.83 | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | (252) $lesseq(all_64_36, all_64_13) % 21.95/3.83 | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | COMBINE_INEQS: (230), (252) imply: % 21.95/3.83 | | | | | | | | | | | | | | | (253) $false % 21.95/3.83 | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | CLOSE: (253) is inconsistent. % 21.95/3.83 | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | Case 2: % 21.95/3.83 | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | (254) ? [v0: uni] : ? [v1: elt] : ? [v2: uni] : % 21.95/3.83 | | | | | | | | | | | | | | | (tb2t1(v2) = v1 & tb2t1(v0) = v1 & get(elt1, int, % 21.95/3.83 | | | | | | | | | | | | | | | all_64_28, all_64_12) = v0 & get(elt1, int, % 21.95/3.83 | | | | | | | | | | | | | | | all_64_35, all_64_12) = v2 & elt(v1) & uni(v2) % 21.95/3.83 | | | | | | | | | | | | | | | & uni(v0)) % 21.95/3.83 | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | DELTA: instantiating (254) with fresh symbols all_284_0, % 21.95/3.83 | | | | | | | | | | | | | | | all_284_1, all_284_2 gives: % 21.95/3.83 | | | | | | | | | | | | | | | (255) tb2t1(all_284_0) = all_284_1 & tb2t1(all_284_2) = % 21.95/3.83 | | | | | | | | | | | | | | | all_284_1 & get(elt1, int, all_64_28, all_64_12) = % 21.95/3.83 | | | | | | | | | | | | | | | all_284_2 & get(elt1, int, all_64_35, all_64_12) = % 21.95/3.83 | | | | | | | | | | | | | | | all_284_0 & elt(all_284_1) & uni(all_284_0) & % 21.95/3.83 | | | | | | | | | | | | | | | uni(all_284_2) % 21.95/3.83 | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | ALPHA: (255) implies: % 21.95/3.83 | | | | | | | | | | | | | | | (256) uni(all_284_2) % 21.95/3.83 | | | | | | | | | | | | | | | (257) get(elt1, int, all_64_35, all_64_12) = all_284_0 % 21.95/3.83 | | | | | | | | | | | | | | | (258) get(elt1, int, all_64_28, all_64_12) = all_284_2 % 21.95/3.83 | | | | | | | | | | | | | | | (259) tb2t1(all_284_2) = all_284_1 % 21.95/3.83 | | | | | | | | | | | | | | | (260) tb2t1(all_284_0) = all_284_1 % 21.95/3.83 | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | GROUND_INST: instantiating (19) with 0, all_270_1, all_64_9, % 21.95/3.83 | | | | | | | | | | | | | | | elt1, simplifying with (239), (246) gives: % 21.95/3.83 | | | | | | | | | | | | | | | (261) all_270_1 = 0 % 21.95/3.83 | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | GROUND_INST: instantiating (22) with all_64_9, all_284_0, % 21.95/3.83 | | | | | | | | | | | | | | | all_64_12, all_64_35, int, elt1, simplifying with % 21.95/3.83 | | | | | | | | | | | | | | | (233), (257) gives: % 21.95/3.83 | | | | | | | | | | | | | | | (262) all_284_0 = all_64_9 % 21.95/3.83 | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | REDUCE: (260), (262) imply: % 21.95/3.83 | | | | | | | | | | | | | | | (263) tb2t1(all_64_9) = all_284_1 % 21.95/3.83 | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | BETA: splitting (248) gives: % 21.95/3.83 | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | Case 1: % 21.95/3.83 | | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | | (264) ~ (all_270_1 = 0) % 21.95/3.83 | | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | | REDUCE: (261), (264) imply: % 21.95/3.83 | | | | | | | | | | | | | | | | (265) $false % 21.95/3.83 | | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | | CLOSE: (265) is inconsistent. % 21.95/3.83 | | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | Case 2: % 21.95/3.83 | | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | | (266) all_270_0 = all_64_9 % 21.95/3.83 | | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | | REDUCE: (247), (266) imply: % 21.95/3.83 | | | | | | | | | | | | | | | | (267) t2tb1(all_64_8) = all_64_9 % 21.95/3.83 | | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | | GROUND_INST: instantiating (17) with all_64_8, all_284_1, % 21.95/3.83 | | | | | | | | | | | | | | | | all_64_9, simplifying with (237), (263) gives: % 21.95/3.83 | | | | | | | | | | | | | | | | (268) all_284_1 = all_64_8 % 21.95/3.83 | | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | | REDUCE: (259), (268) imply: % 21.95/3.83 | | | | | | | | | | | | | | | | (269) tb2t1(all_284_2) = all_64_8 % 21.95/3.83 | | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | | GROUND_INST: instantiating (select_neq) with int, elt1, % 21.95/3.83 | | | | | | | | | | | | | | | | all_64_28, all_64_27, all_64_12, all_284_2, % 21.95/3.83 | | | | | | | | | | | | | | | | all_64_31, all_64_26, simplifying with (9), (10), % 21.95/3.83 | | | | | | | | | | | | | | | | (31), (61), (62), (64), (72), (231), (258) gives: % 21.95/3.83 | | | | | | | | | | | | | | | | (270) all_64_12 = all_64_27 | ? [v0: int] : ((v0 = % 21.95/3.83 | | | | | | | | | | | | | | | | all_284_2 & get(elt1, int, all_64_26, % 21.95/3.83 | | | | | | | | | | | | | | | | all_64_12) = all_284_2 & uni(all_284_2)) | ( % 21.95/3.83 | | | | | | | | | | | | | | | | ~ (v0 = 0) & sort(int, all_64_12) = v0)) % 21.95/3.83 | | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | | GROUND_INST: instantiating (get_sort) with int, elt1, % 21.95/3.83 | | | | | | | | | | | | | | | | all_64_28, all_64_12, all_284_2, simplifying with % 21.95/3.83 | | | | | | | | | | | | | | | | (9), (10), (61), (231), (258) gives: % 21.95/3.83 | | | | | | | | | | | | | | | | (271) sort(elt1, all_284_2) = 0 % 21.95/3.83 | | | | | | | | | | | | | | | | % 21.95/3.83 | | | | | | | | | | | | | | | | GROUND_INST: instantiating (6) with all_284_2, all_64_8, % 21.95/3.83 | | | | | | | | | | | | | | | | simplifying with (256), (269) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | (272) ? [v0: any] : ? [v1: uni] : (t2tb1(all_64_8) = % 21.95/3.84 | | | | | | | | | | | | | | | | v1 & sort(elt1, all_284_2) = v0 & uni(v1) & ( ~ % 21.95/3.84 | | | | | | | | | | | | | | | | (v0 = 0) | v1 = all_284_2)) % 21.95/3.84 | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | DELTA: instantiating (272) with fresh symbols all_314_0, % 21.95/3.84 | | | | | | | | | | | | | | | | all_314_1 gives: % 21.95/3.84 | | | | | | | | | | | | | | | | (273) t2tb1(all_64_8) = all_314_0 & sort(elt1, % 21.95/3.84 | | | | | | | | | | | | | | | | all_284_2) = all_314_1 & uni(all_314_0) & ( ~ % 21.95/3.84 | | | | | | | | | | | | | | | | (all_314_1 = 0) | all_314_0 = all_284_2) % 21.95/3.84 | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | ALPHA: (273) implies: % 21.95/3.84 | | | | | | | | | | | | | | | | (274) sort(elt1, all_284_2) = all_314_1 % 21.95/3.84 | | | | | | | | | | | | | | | | (275) t2tb1(all_64_8) = all_314_0 % 21.95/3.84 | | | | | | | | | | | | | | | | (276) ~ (all_314_1 = 0) | all_314_0 = all_284_2 % 21.95/3.84 | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | GROUND_INST: instantiating (19) with 0, all_314_1, all_284_2, % 21.95/3.84 | | | | | | | | | | | | | | | | elt1, simplifying with (271), (274) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | (277) all_314_1 = 0 % 21.95/3.84 | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | GROUND_INST: instantiating (16) with all_64_9, all_314_0, % 21.95/3.84 | | | | | | | | | | | | | | | | all_64_8, simplifying with (267), (275) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | (278) all_314_0 = all_64_9 % 21.95/3.84 | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | BETA: splitting (276) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | Case 1: % 21.95/3.84 | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | (279) ~ (all_314_1 = 0) % 21.95/3.84 | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | REDUCE: (277), (279) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | (280) $false % 21.95/3.84 | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | CLOSE: (280) is inconsistent. % 21.95/3.84 | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | Case 2: % 21.95/3.84 | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | (281) all_314_0 = all_284_2 % 21.95/3.84 | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | COMBINE_EQS: (278), (281) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | (282) all_284_2 = all_64_9 % 21.95/3.84 | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | SIMP: (282) implies: % 21.95/3.84 | | | | | | | | | | | | | | | | | (283) all_284_2 = all_64_9 % 21.95/3.84 | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | BETA: splitting (238) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | Case 1: % 21.95/3.84 | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | (284) ~ (t2tb(all_64_29) = all_64_12) % 21.95/3.84 | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | BETA: splitting (240) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | Case 1: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | (285) $lesseq(all_64_13, -1) % 21.95/3.84 | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | COMBINE_INEQS: (229), (285) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | (286) $false % 21.95/3.84 | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | CLOSE: (286) is inconsistent. % 21.95/3.84 | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | Case 2: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | (287) ~ ($lesseq(all_64_13, all_64_29)) | ? [v0: uni] % 21.95/3.84 | | | | | | | | | | | | | | | | | | | : ? [v1: elt] : ? [v2: uni] : (tb2t1(v2) = v1 & % 21.95/3.84 | | | | | | | | | | | | | | | | | | | tb2t1(v0) = v1 & get(elt1, int, all_64_14, % 21.95/3.84 | | | | | | | | | | | | | | | | | | | all_64_12) = v0 & get(elt1, int, all_64_17, % 21.95/3.84 | | | | | | | | | | | | | | | | | | | all_64_12) = v2 & elt(v1) & uni(v2) & uni(v0)) % 21.95/3.84 | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | BETA: splitting (270) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | Case 1: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | (288) all_64_12 = all_64_27 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | REDUCE: (284), (288) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | (289) ~ (t2tb(all_64_29) = all_64_27) % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | PRED_UNIFY: (65), (289) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | (290) $false % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | CLOSE: (290) is inconsistent. % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | Case 2: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | (291) ? [v0: int] : ((v0 = all_284_2 & get(elt1, int, % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | all_64_26, all_64_12) = all_284_2 & % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | uni(all_284_2)) | ( ~ (v0 = 0) & sort(int, % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | all_64_12) = v0)) % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | DELTA: instantiating (291) with fresh symbol all_367_0 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | gives: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | (292) (all_367_0 = all_284_2 & get(elt1, int, all_64_26, % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | all_64_12) = all_284_2 & uni(all_284_2)) | ( ~ % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | (all_367_0 = 0) & sort(int, all_64_12) = % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | all_367_0) % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | BETA: splitting (292) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | Case 1: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | (293) all_367_0 = all_284_2 & get(elt1, int, all_64_26, % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | all_64_12) = all_284_2 & uni(all_284_2) % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | ALPHA: (293) implies: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | (294) get(elt1, int, all_64_26, all_64_12) = all_284_2 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | REDUCE: (283), (294) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | (295) get(elt1, int, all_64_26, all_64_12) = all_64_9 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | BETA: splitting (287) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | Case 1: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (296) $lesseq(1, $difference(all_64_13, all_64_29)) % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | COMBINE_INEQS: (230), (296) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (297) $lesseq(2, $difference(all_64_36, all_64_29)) % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | COMBINE_INEQS: (60), (297) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (298) $false % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | CLOSE: (298) is inconsistent. % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | Case 2: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (299) ? [v0: uni] : ? [v1: elt] : ? [v2: uni] : % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (tb2t1(v2) = v1 & tb2t1(v0) = v1 & get(elt1, int, % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | all_64_14, all_64_12) = v0 & get(elt1, int, % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | all_64_17, all_64_12) = v2 & elt(v1) & uni(v2) % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | & uni(v0)) % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | DELTA: instantiating (299) with fresh symbols all_378_0, % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | all_378_1, all_378_2 gives: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (300) tb2t1(all_378_0) = all_378_1 & tb2t1(all_378_2) = % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | all_378_1 & get(elt1, int, all_64_14, all_64_12) = % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | all_378_2 & get(elt1, int, all_64_17, all_64_12) = % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | all_378_0 & elt(all_378_1) & uni(all_378_0) & % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | uni(all_378_2) % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | ALPHA: (300) implies: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (301) get(elt1, int, all_64_17, all_64_12) = all_378_0 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (302) get(elt1, int, all_64_14, all_64_12) = all_378_2 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (303) tb2t1(all_378_2) = all_378_1 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (304) tb2t1(all_378_0) = all_378_1 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | REDUCE: (164), (301) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (305) get(elt1, int, all_64_26, all_64_12) = all_378_0 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (22) with all_64_9, all_378_0, % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | all_64_12, all_64_26, int, elt1, simplifying with % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (295), (305) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (306) all_378_0 = all_64_9 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (22) with all_64_11, all_378_2, % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | all_64_12, all_64_14, int, elt1, simplifying with % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (234), (302) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (307) all_378_2 = all_64_11 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | REDUCE: (304), (306) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (308) tb2t1(all_64_9) = all_378_1 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | REDUCE: (303), (307) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (309) tb2t1(all_64_11) = all_378_1 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (17) with all_64_10, all_378_1, % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | all_64_11, simplifying with (236), (309) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (310) all_378_1 = all_64_10 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (17) with all_64_8, all_378_1, % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | all_64_9, simplifying with (237), (308) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (311) all_378_1 = all_64_8 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | COMBINE_EQS: (310), (311) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (312) all_64_8 = all_64_10 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | SIMP: (312) implies: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (313) all_64_8 = all_64_10 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | REDUCE: (228), (313) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | (314) $false % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | CLOSE: (314) is inconsistent. % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | End of split % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | Case 2: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | (315) ~ (all_367_0 = 0) & sort(int, all_64_12) = % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | all_367_0 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | ALPHA: (315) implies: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | (316) ~ (all_367_0 = 0) % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | (317) sort(int, all_64_12) = all_367_0 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (19) with 0, all_367_0, all_64_12, % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | int, simplifying with (243), (317) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | (318) all_367_0 = 0 % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | REDUCE: (316), (318) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | (319) $false % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | CLOSE: (319) is inconsistent. % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | End of split % 21.95/3.84 | | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | | End of split % 21.95/3.84 | | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | End of split % 21.95/3.84 | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | Case 2: % 21.95/3.84 | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | (320) all_64_12 = all_64_27 % 21.95/3.84 | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | REDUCE: (242), (320) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | (321) tb2t(all_64_27) = all_64_13 % 21.95/3.84 | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (13) with all_64_29, all_64_13, % 21.95/3.84 | | | | | | | | | | | | | | | | | | all_64_27, simplifying with (71), (321) gives: % 21.95/3.84 | | | | | | | | | | | | | | | | | | (322) all_64_13 = all_64_29 % 21.95/3.84 | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | REDUCE: (230), (322) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | (323) $lesseq(1, $difference(all_64_36, all_64_29)) % 21.95/3.84 | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | COMBINE_INEQS: (60), (323) imply: % 21.95/3.84 | | | | | | | | | | | | | | | | | | (324) $false % 21.95/3.84 | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | | CLOSE: (324) is inconsistent. % 21.95/3.84 | | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | | End of split % 21.95/3.84 | | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | | End of split % 21.95/3.84 | | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | | End of split % 21.95/3.84 | | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | | End of split % 21.95/3.84 | | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | | End of split % 21.95/3.84 | | | | | | | | | | | | | % 21.95/3.84 | | | | | | | | | | | | Case 2: % 21.95/3.84 | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | (325) ~ (all_64_9 = 0) & $lesseq(1, % 21.95/3.85 | | | | | | | | | | | | | $difference(all_64_15, all_64_13)) & % 21.95/3.85 | | | | | | | | | | | | | $lesseq(all_64_36, all_64_13) & tb2t1(all_64_11) = % 21.95/3.85 | | | | | | | | | | | | | all_64_10 & contains(all_64_39, all_64_10) = % 21.95/3.85 | | | | | | | | | | | | | all_64_9 & t2tb(all_64_13) = all_64_12 & get(elt1, % 21.95/3.85 | | | | | | | | | | | | | int, all_64_14, all_64_12) = all_64_11 & % 21.95/3.85 | | | | | | | | | | | | | elt(all_64_10) & uni(all_64_11) & uni(all_64_12) % 21.95/3.85 | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | ALPHA: (325) implies: % 21.95/3.85 | | | | | | | | | | | | | (326) ~ (all_64_9 = 0) % 21.95/3.85 | | | | | | | | | | | | | (327) $lesseq(all_64_36, all_64_13) % 21.95/3.85 | | | | | | | | | | | | | (328) $lesseq(1, $difference(all_64_15, all_64_13)) % 21.95/3.85 | | | | | | | | | | | | | (329) uni(all_64_12) % 21.95/3.85 | | | | | | | | | | | | | (330) uni(all_64_11) % 21.95/3.85 | | | | | | | | | | | | | (331) elt(all_64_10) % 21.95/3.85 | | | | | | | | | | | | | (332) get(elt1, int, all_64_14, all_64_12) = all_64_11 % 21.95/3.85 | | | | | | | | | | | | | (333) t2tb(all_64_13) = all_64_12 % 21.95/3.85 | | | | | | | | | | | | | (334) contains(all_64_39, all_64_10) = all_64_9 % 21.95/3.85 | | | | | | | | | | | | | (335) tb2t1(all_64_11) = all_64_10 % 21.95/3.85 | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | GROUND_INST: instantiating (12) with all_64_27, all_64_12, % 21.95/3.85 | | | | | | | | | | | | | all_64_29, simplifying with (65) gives: % 21.95/3.85 | | | | | | | | | | | | | (336) all_64_12 = all_64_27 | ~ (t2tb(all_64_29) = % 21.95/3.85 | | | | | | | | | | | | | all_64_12) % 21.95/3.85 | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | GROUND_INST: instantiating (get_sort) with int, elt1, % 21.95/3.85 | | | | | | | | | | | | | all_64_14, all_64_12, all_64_11, simplifying with % 21.95/3.85 | | | | | | | | | | | | | (9), (10), (173), (329), (332) gives: % 21.95/3.85 | | | | | | | | | | | | | (337) sort(elt1, all_64_11) = 0 % 21.95/3.85 | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | GROUND_INST: instantiating (176) with all_64_13, all_64_12, % 21.95/3.85 | | | | | | | | | | | | | simplifying with (333) gives: % 21.95/3.85 | | | | | | | | | | | | | (338) ~ ($lesseq(1, $difference(all_64_15, all_64_13))) % 21.95/3.85 | | | | | | | | | | | | | | ~ ($lesseq(1, $difference(all_64_13, % 21.95/3.85 | | | | | | | | | | | | | all_64_29))) | ? [v0: uni] : ? [v1: elt] : % 21.95/3.85 | | | | | | | | | | | | | (tb2t1(v0) = v1 & contains(all_64_32, v1) = 0 & % 21.95/3.85 | | | | | | | | | | | | | get(elt1, int, all_64_14, all_64_12) = v0 & % 21.95/3.85 | | | | | | | | | | | | | elt(v1) & uni(v0)) % 21.95/3.85 | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | GROUND_INST: instantiating (69) with all_64_13, all_64_12, % 21.95/3.85 | | | | | | | | | | | | | simplifying with (333) gives: % 21.95/3.85 | | | | | | | | | | | | | (339) ~ ($lesseq(1, $difference(all_64_29, all_64_13))) % 21.95/3.85 | | | | | | | | | | | | | | ~ ($lesseq(all_64_36, all_64_13)) | ? [v0: % 21.95/3.85 | | | | | | | | | | | | | uni] : ? [v1: elt] : (tb2t1(v0) = v1 & % 21.95/3.85 | | | | | | | | | | | | | contains(all_64_34, v1) = 0 & get(elt1, int, % 21.95/3.85 | | | | | | | | | | | | | all_64_28, all_64_12) = v0 & elt(v1) & % 21.95/3.85 | | | | | | | | | | | | | uni(v0)) % 21.95/3.85 | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | GROUND_INST: instantiating (175) with all_64_13, all_64_12, % 21.95/3.85 | | | | | | | | | | | | | simplifying with (333) gives: % 21.95/3.85 | | | | | | | | | | | | | (340) ~ ($lesseq(all_64_13, all_64_29)) | ~ % 21.95/3.85 | | | | | | | | | | | | | ($lesseq(0, all_64_13)) | ? [v0: uni] : ? [v1: % 21.95/3.85 | | | | | | | | | | | | | elt] : ? [v2: uni] : (tb2t1(v2) = v1 & % 21.95/3.85 | | | | | | | | | | | | | tb2t1(v0) = v1 & get(elt1, int, all_64_14, % 21.95/3.85 | | | | | | | | | | | | | all_64_12) = v0 & get(elt1, int, all_64_17, % 21.95/3.85 | | | | | | | | | | | | | all_64_12) = v2 & elt(v1) & uni(v2) & uni(v0)) % 21.95/3.85 | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | GROUND_INST: instantiating (1) with all_64_13, all_64_12, % 21.95/3.85 | | | | | | | | | | | | | simplifying with (333) gives: % 21.95/3.85 | | | | | | | | | | | | | (341) sort(int, all_64_12) = 0 % 21.95/3.85 | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | GROUND_INST: instantiating (4) with all_64_10, all_64_34, % 21.95/3.85 | | | | | | | | | | | | | all_64_33, all_64_32, all_64_39, all_64_9, % 21.95/3.85 | | | | | | | | | | | | | simplifying with (32), (35), (36), (41), (331), % 21.95/3.85 | | | | | | | | | | | | | (334) gives: % 21.95/3.85 | | | | | | | | | | | | | (342) all_64_9 = 0 | ? [v0: int] : ? [v1: int] : ( ~ % 21.95/3.85 | | | | | | | | | | | | | (v1 = 0) & ~ (v0 = 0) & contains(all_64_32, % 21.95/3.85 | | | | | | | | | | | | | all_64_10) = v1 & contains(all_64_34, % 21.95/3.85 | | | | | | | | | | | | | all_64_10) = v0) % 21.95/3.85 | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | GROUND_INST: instantiating (6) with all_64_11, all_64_10, % 21.95/3.85 | | | | | | | | | | | | | simplifying with (330), (335) gives: % 21.95/3.85 | | | | | | | | | | | | | (343) ? [v0: any] : ? [v1: uni] : (t2tb1(all_64_10) = % 21.95/3.85 | | | | | | | | | | | | | v1 & sort(elt1, all_64_11) = v0 & uni(v1) & ( ~ % 21.95/3.85 | | | | | | | | | | | | | (v0 = 0) | v1 = all_64_11)) % 21.95/3.85 | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | DELTA: instantiating (343) with fresh symbols all_270_0, % 21.95/3.85 | | | | | | | | | | | | | all_270_1 gives: % 21.95/3.85 | | | | | | | | | | | | | (344) t2tb1(all_64_10) = all_270_0 & sort(elt1, % 21.95/3.85 | | | | | | | | | | | | | all_64_11) = all_270_1 & uni(all_270_0) & ( ~ % 21.95/3.85 | | | | | | | | | | | | | (all_270_1 = 0) | all_270_0 = all_64_11) % 21.95/3.85 | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | ALPHA: (344) implies: % 21.95/3.85 | | | | | | | | | | | | | (345) sort(elt1, all_64_11) = all_270_1 % 21.95/3.85 | | | | | | | | | | | | | (346) t2tb1(all_64_10) = all_270_0 % 21.95/3.85 | | | | | | | | | | | | | (347) ~ (all_270_1 = 0) | all_270_0 = all_64_11 % 21.95/3.85 | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | BETA: splitting (342) gives: % 21.95/3.85 | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | Case 1: % 21.95/3.85 | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | (348) all_64_9 = 0 % 21.95/3.85 | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | REDUCE: (326), (348) imply: % 21.95/3.85 | | | | | | | | | | | | | | (349) $false % 21.95/3.85 | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | CLOSE: (349) is inconsistent. % 21.95/3.85 | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | Case 2: % 21.95/3.85 | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | (350) ? [v0: int] : ? [v1: int] : ( ~ (v1 = 0) & ~ % 21.95/3.85 | | | | | | | | | | | | | | (v0 = 0) & contains(all_64_32, all_64_10) = v1 & % 21.95/3.85 | | | | | | | | | | | | | | contains(all_64_34, all_64_10) = v0) % 21.95/3.85 | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | DELTA: instantiating (350) with fresh symbols all_277_0, % 21.95/3.85 | | | | | | | | | | | | | | all_277_1 gives: % 21.95/3.85 | | | | | | | | | | | | | | (351) ~ (all_277_0 = 0) & ~ (all_277_1 = 0) & % 21.95/3.85 | | | | | | | | | | | | | | contains(all_64_32, all_64_10) = all_277_0 & % 21.95/3.85 | | | | | | | | | | | | | | contains(all_64_34, all_64_10) = all_277_1 % 21.95/3.85 | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | ALPHA: (351) implies: % 21.95/3.85 | | | | | | | | | | | | | | (352) ~ (all_277_1 = 0) % 21.95/3.85 | | | | | | | | | | | | | | (353) ~ (all_277_0 = 0) % 21.95/3.85 | | | | | | | | | | | | | | (354) contains(all_64_34, all_64_10) = all_277_1 % 21.95/3.85 | | | | | | | | | | | | | | (355) contains(all_64_32, all_64_10) = all_277_0 % 21.95/3.85 | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | BETA: splitting (338) gives: % 21.95/3.85 | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | Case 1: % 21.95/3.85 | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | (356) $lesseq(all_64_15, all_64_13) % 21.95/3.85 | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | COMBINE_INEQS: (328), (356) imply: % 21.95/3.85 | | | | | | | | | | | | | | | (357) $false % 21.95/3.85 | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | CLOSE: (357) is inconsistent. % 21.95/3.85 | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | Case 2: % 21.95/3.85 | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | (358) ~ ($lesseq(1, $difference(all_64_13, all_64_29))) % 21.95/3.85 | | | | | | | | | | | | | | | | ? [v0: uni] : ? [v1: elt] : (tb2t1(v0) = v1 & % 21.95/3.85 | | | | | | | | | | | | | | | contains(all_64_32, v1) = 0 & get(elt1, int, % 21.95/3.85 | | | | | | | | | | | | | | | all_64_14, all_64_12) = v0 & elt(v1) & % 21.95/3.85 | | | | | | | | | | | | | | | uni(v0)) % 21.95/3.85 | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | BETA: splitting (358) gives: % 21.95/3.85 | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | Case 1: % 21.95/3.85 | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | (359) $lesseq(all_64_13, all_64_29) % 21.95/3.85 | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | BETA: splitting (340) gives: % 21.95/3.85 | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | Case 1: % 21.95/3.85 | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | (360) $lesseq(all_64_13, -1) % 21.95/3.85 | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | COMBINE_INEQS: (327), (360) imply: % 21.95/3.85 | | | | | | | | | | | | | | | | | (361) $lesseq(all_64_36, -1) % 21.95/3.85 | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | COMBINE_INEQS: (29), (361) imply: % 21.95/3.85 | | | | | | | | | | | | | | | | | (362) $false % 21.95/3.85 | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | CLOSE: (362) is inconsistent. % 21.95/3.85 | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | Case 2: % 21.95/3.85 | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | (363) ~ ($lesseq(all_64_13, all_64_29)) | ? [v0: uni] % 21.95/3.85 | | | | | | | | | | | | | | | | | : ? [v1: elt] : ? [v2: uni] : (tb2t1(v2) = v1 & % 21.95/3.85 | | | | | | | | | | | | | | | | | tb2t1(v0) = v1 & get(elt1, int, all_64_14, % 21.95/3.85 | | | | | | | | | | | | | | | | | all_64_12) = v0 & get(elt1, int, all_64_17, % 21.95/3.85 | | | | | | | | | | | | | | | | | all_64_12) = v2 & elt(v1) & uni(v2) & uni(v0)) % 21.95/3.85 | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | BETA: splitting (363) gives: % 21.95/3.85 | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | Case 1: % 21.95/3.85 | | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | | (364) $lesseq(1, $difference(all_64_13, all_64_29)) % 21.95/3.85 | | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | | COMBINE_INEQS: (359), (364) imply: % 21.95/3.85 | | | | | | | | | | | | | | | | | | (365) $false % 21.95/3.85 | | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | | CLOSE: (365) is inconsistent. % 21.95/3.85 | | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | Case 2: % 21.95/3.85 | | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | | (366) ? [v0: uni] : ? [v1: elt] : ? [v2: uni] : % 21.95/3.85 | | | | | | | | | | | | | | | | | | (tb2t1(v2) = v1 & tb2t1(v0) = v1 & get(elt1, int, % 21.95/3.85 | | | | | | | | | | | | | | | | | | all_64_14, all_64_12) = v0 & get(elt1, int, % 21.95/3.85 | | | | | | | | | | | | | | | | | | all_64_17, all_64_12) = v2 & elt(v1) & uni(v2) % 21.95/3.85 | | | | | | | | | | | | | | | | | | & uni(v0)) % 21.95/3.85 | | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | | DELTA: instantiating (366) with fresh symbols all_299_0, % 21.95/3.85 | | | | | | | | | | | | | | | | | | all_299_1, all_299_2 gives: % 21.95/3.85 | | | | | | | | | | | | | | | | | | (367) tb2t1(all_299_0) = all_299_1 & tb2t1(all_299_2) = % 21.95/3.85 | | | | | | | | | | | | | | | | | | all_299_1 & get(elt1, int, all_64_14, all_64_12) = % 21.95/3.85 | | | | | | | | | | | | | | | | | | all_299_2 & get(elt1, int, all_64_17, all_64_12) = % 21.95/3.85 | | | | | | | | | | | | | | | | | | all_299_0 & elt(all_299_1) & uni(all_299_0) & % 21.95/3.85 | | | | | | | | | | | | | | | | | | uni(all_299_2) % 21.95/3.85 | | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | | ALPHA: (367) implies: % 21.95/3.85 | | | | | | | | | | | | | | | | | | (368) uni(all_299_0) % 21.95/3.85 | | | | | | | | | | | | | | | | | | (369) elt(all_299_1) % 21.95/3.85 | | | | | | | | | | | | | | | | | | (370) get(elt1, int, all_64_17, all_64_12) = all_299_0 % 21.95/3.85 | | | | | | | | | | | | | | | | | | (371) get(elt1, int, all_64_14, all_64_12) = all_299_2 % 21.95/3.85 | | | | | | | | | | | | | | | | | | (372) tb2t1(all_299_2) = all_299_1 % 21.95/3.85 | | | | | | | | | | | | | | | | | | (373) tb2t1(all_299_0) = all_299_1 % 21.95/3.85 | | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | | REDUCE: (164), (370) imply: % 21.95/3.85 | | | | | | | | | | | | | | | | | | (374) get(elt1, int, all_64_26, all_64_12) = all_299_0 % 21.95/3.85 | | | | | | | | | | | | | | | | | | % 21.95/3.85 | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (19) with 0, all_270_1, all_64_11, % 21.95/3.85 | | | | | | | | | | | | | | | | | | elt1, simplifying with (337), (345) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | (375) all_270_1 = 0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (22) with all_64_11, all_299_2, % 21.95/3.86 | | | | | | | | | | | | | | | | | | all_64_12, all_64_14, int, elt1, simplifying with % 21.95/3.86 | | | | | | | | | | | | | | | | | | (332), (371) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | (376) all_299_2 = all_64_11 % 21.95/3.86 | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | REDUCE: (372), (376) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | (377) tb2t1(all_64_11) = all_299_1 % 21.95/3.86 | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | BETA: splitting (347) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | Case 1: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (378) ~ (all_270_1 = 0) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | REDUCE: (375), (378) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (379) $false % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | CLOSE: (379) is inconsistent. % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | Case 2: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (380) all_270_0 = all_64_11 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | REDUCE: (346), (380) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (381) t2tb1(all_64_10) = all_64_11 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (17) with all_64_10, all_299_1, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | all_64_11, simplifying with (335), (377) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (382) all_299_1 = all_64_10 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | REDUCE: (373), (382) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (383) tb2t1(all_299_0) = all_64_10 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (get_sort) with int, elt1, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | all_64_26, all_64_12, all_299_0, simplifying with % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (9), (10), (63), (329), (374) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (384) sort(elt1, all_299_0) = 0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (6) with all_299_0, all_64_10, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | simplifying with (368), (383) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (385) ? [v0: any] : ? [v1: uni] : (t2tb1(all_64_10) = % 21.95/3.86 | | | | | | | | | | | | | | | | | | | v1 & sort(elt1, all_299_0) = v0 & uni(v1) & ( ~ % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (v0 = 0) | v1 = all_299_0)) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | DELTA: instantiating (385) with fresh symbols all_324_0, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | all_324_1 gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (386) t2tb1(all_64_10) = all_324_0 & sort(elt1, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | all_299_0) = all_324_1 & uni(all_324_0) & ( ~ % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (all_324_1 = 0) | all_324_0 = all_299_0) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | ALPHA: (386) implies: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (387) sort(elt1, all_299_0) = all_324_1 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (388) t2tb1(all_64_10) = all_324_0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (389) ~ (all_324_1 = 0) | all_324_0 = all_299_0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (19) with 0, all_324_1, all_299_0, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | elt1, simplifying with (384), (387) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (390) all_324_1 = 0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (16) with all_64_11, all_324_0, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | all_64_10, simplifying with (381), (388) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | (391) all_324_0 = all_64_11 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | BETA: splitting (389) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | Case 1: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | (392) ~ (all_324_1 = 0) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | REDUCE: (390), (392) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | (393) $false % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | CLOSE: (393) is inconsistent. % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | Case 2: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | (394) all_324_0 = all_299_0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | COMBINE_EQS: (391), (394) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | (395) all_299_0 = all_64_11 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | SIMP: (395) implies: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | (396) all_299_0 = all_64_11 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | REDUCE: (374), (396) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | (397) get(elt1, int, all_64_26, all_64_12) = all_64_11 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | BETA: splitting (336) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | Case 1: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | (398) ~ (t2tb(all_64_29) = all_64_12) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | PRED_UNIFY: (333), (398) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | (399) ~ (all_64_13 = all_64_29) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | STRENGTHEN: (359), (399) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | (400) $lesseq(1, $difference(all_64_29, all_64_13)) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | BETA: splitting (339) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | Case 1: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | (401) $lesseq(1, $difference(all_64_36, all_64_13)) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | COMBINE_INEQS: (327), (401) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | (402) $false % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | CLOSE: (402) is inconsistent. % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | Case 2: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | (403) ~ ($lesseq(1, $difference(all_64_29, all_64_13))) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | ? [v0: uni] : ? [v1: elt] : (tb2t1(v0) = v1 & % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | contains(all_64_34, v1) = 0 & get(elt1, int, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | all_64_28, all_64_12) = v0 & elt(v1) & % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | uni(v0)) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | BETA: splitting (403) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | Case 1: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | (404) $lesseq(all_64_29, all_64_13) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | COMBINE_INEQS: (400), (404) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | (405) $false % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | CLOSE: (405) is inconsistent. % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | Case 2: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | (406) ? [v0: uni] : ? [v1: elt] : (tb2t1(v0) = v1 & % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | contains(all_64_34, v1) = 0 & get(elt1, int, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | all_64_28, all_64_12) = v0 & elt(v1) & % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | uni(v0)) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | DELTA: instantiating (406) with fresh symbols all_360_0, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | all_360_1 gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | (407) tb2t1(all_360_1) = all_360_0 & contains(all_64_34, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | all_360_0) = 0 & get(elt1, int, all_64_28, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | all_64_12) = all_360_1 & elt(all_360_0) & % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | uni(all_360_1) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | ALPHA: (407) implies: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | (408) get(elt1, int, all_64_28, all_64_12) = all_360_1 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | (409) contains(all_64_34, all_360_0) = 0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | (410) tb2t1(all_360_1) = all_360_0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (select_neq) with int, elt1, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | all_64_28, all_64_27, all_64_12, all_360_1, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | all_64_31, all_64_26, simplifying with (9), (10), % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | (31), (61), (62), (64), (72), (329), (408) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | (411) all_64_12 = all_64_27 | ? [v0: int] : ((v0 = % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | all_360_1 & get(elt1, int, all_64_26, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | all_64_12) = all_360_1 & uni(all_360_1)) | ( % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | ~ (v0 = 0) & sort(int, all_64_12) = v0)) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | BETA: splitting (411) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | Case 1: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | (412) all_64_12 = all_64_27 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | REDUCE: (398), (412) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | (413) ~ (t2tb(all_64_29) = all_64_27) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | PRED_UNIFY: (65), (413) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | (414) $false % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | CLOSE: (414) is inconsistent. % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | Case 2: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | (415) ? [v0: int] : ((v0 = all_360_1 & get(elt1, int, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | all_64_26, all_64_12) = all_360_1 & % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | uni(all_360_1)) | ( ~ (v0 = 0) & sort(int, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | all_64_12) = v0)) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | DELTA: instantiating (415) with fresh symbol all_391_0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | (416) (all_391_0 = all_360_1 & get(elt1, int, all_64_26, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | all_64_12) = all_360_1 & uni(all_360_1)) | ( ~ % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | (all_391_0 = 0) & sort(int, all_64_12) = % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | all_391_0) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | BETA: splitting (416) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | Case 1: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | (417) all_391_0 = all_360_1 & get(elt1, int, all_64_26, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | all_64_12) = all_360_1 & uni(all_360_1) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | ALPHA: (417) implies: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | (418) get(elt1, int, all_64_26, all_64_12) = all_360_1 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (22) with all_64_11, all_360_1, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | all_64_12, all_64_26, int, elt1, simplifying with % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | (397), (418) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | (419) all_360_1 = all_64_11 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | REDUCE: (410), (419) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | (420) tb2t1(all_64_11) = all_360_0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (17) with all_64_10, all_360_0, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | all_64_11, simplifying with (335), (420) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | (421) all_360_0 = all_64_10 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | REDUCE: (409), (421) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | (422) contains(all_64_34, all_64_10) = 0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (21) with all_277_1, 0, all_64_10, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | all_64_34, simplifying with (354), (422) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | (423) all_277_1 = 0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | REDUCE: (352), (423) imply: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | (424) $false % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | CLOSE: (424) is inconsistent. % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | Case 2: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | (425) ~ (all_391_0 = 0) & sort(int, all_64_12) = % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | all_391_0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | ALPHA: (425) implies: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | (426) ~ (all_391_0 = 0) % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | (427) sort(int, all_64_12) = all_391_0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (19) with 0, all_391_0, all_64_12, % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | int, simplifying with (341), (427) gives: % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | (428) all_391_0 = 0 % 21.95/3.86 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | | | | | REDUCE: (426), (428) imply: % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | | | | | (429) $false % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | | | | | CLOSE: (429) is inconsistent. % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | Case 2: % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | (430) all_64_12 = all_64_27 % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | REDUCE: (332), (430) imply: % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | (431) get(elt1, int, all_64_14, all_64_27) = all_64_11 % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (22) with all_64_31, all_64_11, % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | all_64_27, all_64_14, int, elt1, simplifying with % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | (222), (431) gives: % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | (432) all_64_11 = all_64_31 % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | REDUCE: (335), (432) imply: % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | (433) tb2t1(all_64_31) = all_64_10 % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (17) with all_64_33, all_64_10, % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | all_64_31, simplifying with (47), (433) gives: % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | (434) all_64_10 = all_64_33 % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | REDUCE: (334), (434) imply: % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | (435) contains(all_64_39, all_64_33) = all_64_9 % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | GROUND_INST: instantiating (3) with all_64_33, all_64_34, % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | all_64_32, all_64_39, all_64_9, simplifying with % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | (32), (35), (36), (41), (435) gives: % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | (436) all_64_9 = 0 % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | REDUCE: (326), (436) imply: % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | (437) $false % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | CLOSE: (437) is inconsistent. % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | Case 2: % 21.95/3.87 | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | (438) ? [v0: uni] : ? [v1: elt] : (tb2t1(v0) = v1 & % 21.95/3.87 | | | | | | | | | | | | | | | | contains(all_64_32, v1) = 0 & get(elt1, int, % 21.95/3.87 | | | | | | | | | | | | | | | | all_64_14, all_64_12) = v0 & elt(v1) & % 21.95/3.87 | | | | | | | | | | | | | | | | uni(v0)) % 21.95/3.87 | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | DELTA: instantiating (438) with fresh symbols all_289_0, % 21.95/3.87 | | | | | | | | | | | | | | | | all_289_1 gives: % 21.95/3.87 | | | | | | | | | | | | | | | | (439) tb2t1(all_289_1) = all_289_0 & contains(all_64_32, % 21.95/3.87 | | | | | | | | | | | | | | | | all_289_0) = 0 & get(elt1, int, all_64_14, % 21.95/3.87 | | | | | | | | | | | | | | | | all_64_12) = all_289_1 & elt(all_289_0) & % 21.95/3.87 | | | | | | | | | | | | | | | | uni(all_289_1) % 21.95/3.87 | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | ALPHA: (439) implies: % 21.95/3.87 | | | | | | | | | | | | | | | | (440) get(elt1, int, all_64_14, all_64_12) = all_289_1 % 21.95/3.87 | | | | | | | | | | | | | | | | (441) contains(all_64_32, all_289_0) = 0 % 21.95/3.87 | | | | | | | | | | | | | | | | (442) tb2t1(all_289_1) = all_289_0 % 21.95/3.87 | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | GROUND_INST: instantiating (22) with all_64_11, all_289_1, % 21.95/3.87 | | | | | | | | | | | | | | | | all_64_12, all_64_14, int, elt1, simplifying with % 21.95/3.87 | | | | | | | | | | | | | | | | (332), (440) gives: % 21.95/3.87 | | | | | | | | | | | | | | | | (443) all_289_1 = all_64_11 % 21.95/3.87 | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | REDUCE: (442), (443) imply: % 21.95/3.87 | | | | | | | | | | | | | | | | (444) tb2t1(all_64_11) = all_289_0 % 21.95/3.87 | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | GROUND_INST: instantiating (17) with all_64_10, all_289_0, % 21.95/3.87 | | | | | | | | | | | | | | | | all_64_11, simplifying with (335), (444) gives: % 21.95/3.87 | | | | | | | | | | | | | | | | (445) all_289_0 = all_64_10 % 21.95/3.87 | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | REDUCE: (441), (445) imply: % 21.95/3.87 | | | | | | | | | | | | | | | | (446) contains(all_64_32, all_64_10) = 0 % 21.95/3.87 | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | GROUND_INST: instantiating (21) with all_277_0, 0, all_64_10, % 21.95/3.87 | | | | | | | | | | | | | | | | all_64_32, simplifying with (355), (446) gives: % 21.95/3.87 | | | | | | | | | | | | | | | | (447) all_277_0 = 0 % 21.95/3.87 | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | REDUCE: (353), (447) imply: % 21.95/3.87 | | | | | | | | | | | | | | | | (448) $false % 21.95/3.87 | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | | CLOSE: (448) is inconsistent. % 21.95/3.87 | | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | | % 21.95/3.87 | | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | | % 21.95/3.87 | | | | | | | | | End of split % 21.95/3.87 | | | | | | | | | % 21.95/3.87 | | | | | | | | Case 2: % 21.95/3.87 | | | | | | | | | % 21.95/3.87 | | | | | | | | | (449) ? [v0: int] : ( ~ (v0 = 0) & sort(elt1, all_64_31) = % 21.95/3.87 | | | | | | | | | v0) % 21.95/3.87 | | | | | | | | | % 21.95/3.87 | | | | | | | | | DELTA: instantiating (449) with fresh symbol all_228_0 gives: % 21.95/3.87 | | | | | | | | | (450) ~ (all_228_0 = 0) & sort(elt1, all_64_31) = % 21.95/3.87 | | | | | | | | | all_228_0 % 21.95/3.87 | | | | | | | | | % 21.95/3.87 | | | | | | | | | ALPHA: (450) implies: % 21.95/3.87 | | | | | | | | | (451) ~ (all_228_0 = 0) % 21.95/3.87 | | | | | | | | | (452) sort(elt1, all_64_31) = all_228_0 % 21.95/3.87 | | | | | | | | | % 21.95/3.87 | | | | | | | | | GROUND_INST: instantiating (19) with 0, all_228_0, all_64_31, % 21.95/3.87 | | | | | | | | | elt1, simplifying with (48), (452) gives: % 21.95/3.87 | | | | | | | | | (453) all_228_0 = 0 % 21.95/3.87 | | | | | | | | | % 21.95/3.87 | | | | | | | | | REDUCE: (451), (453) imply: % 21.95/3.87 | | | | | | | | | (454) $false % 21.95/3.87 | | | | | | | | | % 21.95/3.87 | | | | | | | | | CLOSE: (454) is inconsistent. % 21.95/3.87 | | | | | | | | | % 21.95/3.87 | | | | | | | | End of split % 21.95/3.87 | | | | | | | | % 21.95/3.87 | | | | | | | End of split % 21.95/3.87 | | | | | | | % 21.95/3.87 | | | | | | End of split % 21.95/3.87 | | | | | | % 21.95/3.87 | | | | | End of split % 21.95/3.87 | | | | | % 21.95/3.87 | | | | End of split % 21.95/3.87 | | | | % 21.95/3.87 | | | End of split % 21.95/3.87 | | | % 21.95/3.87 | | End of split % 21.95/3.87 | | % 21.95/3.87 | End of split % 21.95/3.87 | % 21.95/3.87 End of proof % 22.37/3.87 % SZS output end Proof for theBenchmark % 22.37/3.87 % 22.37/3.87 3256ms %------------------------------------------------------------------------------