%------------------------------------------------------------------------------ % File : Princess---230619 % Problem : SET715+4 : TPTP v8.1.2. Bugfixed v2.2.1. % Transfm : none % Format : tptp % Command : princess -inputFormat=tptp +threads -portfolio=casc +printProof -timeoutSec=%d %s % Computer : n015.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 : Thu Aug 31 15:26:06 EDT 2023 % Result : Theorem 15.67s 2.92s % Output : Proof 18.88s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.00/0.13 % Problem : SET715+4 : TPTP v8.1.2. Bugfixed v2.2.1. % 0.00/0.14 % Command : princess -inputFormat=tptp +threads -portfolio=casc +printProof -timeoutSec=%d %s % 0.14/0.35 % Computer : n015.cluster.edu % 0.14/0.35 % Model : x86_64 x86_64 % 0.14/0.35 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.14/0.35 % Memory : 8042.1875MB % 0.14/0.35 % OS : Linux 3.10.0-693.el7.x86_64 % 0.14/0.35 % CPULimit : 300 % 0.14/0.35 % WCLimit : 300 % 0.14/0.35 % DateTime : Sat Aug 26 15:01:53 EDT 2023 % 0.14/0.35 % CPUTime : % 0.20/0.63 ________ _____ % 0.20/0.63 ___ __ \_________(_)________________________________ % 0.20/0.63 __ /_/ /_ ___/_ /__ __ \ ___/ _ \_ ___/_ ___/ % 0.20/0.63 _ ____/_ / _ / _ / / / /__ / __/(__ )_(__ ) % 0.20/0.63 /_/ /_/ /_/ /_/ /_/\___/ \___//____/ /____/ % 0.20/0.63 % 0.20/0.63 A Theorem Prover for First-Order Logic modulo Linear Integer Arithmetic % 0.20/0.63 (2023-06-19) % 0.20/0.63 % 0.20/0.63 (c) Philipp Rümmer, 2009-2023 % 0.20/0.63 Contributors: Peter Backeman, Peter Baumgartner, Angelo Brillout, Zafer Esen, % 0.20/0.63 Amanda Stjerna. % 0.20/0.63 Free software under BSD-3-Clause. % 0.20/0.63 % 0.20/0.63 For more information, visit http://www.philipp.ruemmer.org/princess.shtml % 0.20/0.63 % 0.20/0.63 Loading /export/starexec/sandbox/benchmark/theBenchmark.p ... % 0.20/0.64 Running up to 7 provers in parallel. % 0.20/0.66 Prover 2: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMinimalAndEmpty -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1065072994 % 0.20/0.66 Prover 0: Options: +triggersInConjecture +genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1042961893 % 0.20/0.66 Prover 1: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1571432423 % 0.20/0.66 Prover 3: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1922548996 % 0.20/0.66 Prover 4: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=1868514696 % 0.20/0.66 Prover 5: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMaximal -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=complete -randomSeed=1259561288 % 0.20/0.66 Prover 6: Options: -triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximalOutermost -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1399714365 % 3.80/1.27 Prover 4: Preprocessing ... % 3.80/1.27 Prover 1: Preprocessing ... % 3.80/1.31 Prover 6: Preprocessing ... % 3.80/1.31 Prover 5: Preprocessing ... % 3.80/1.31 Prover 3: Preprocessing ... % 3.80/1.31 Prover 0: Preprocessing ... % 3.80/1.33 Prover 2: Preprocessing ... % 8.63/2.08 Prover 5: Proving ... % 8.63/2.08 Prover 2: Proving ... % 8.63/2.13 Prover 6: Proving ... % 10.32/2.20 Prover 3: Constructing countermodel ... % 10.32/2.21 Prover 1: Constructing countermodel ... % 11.29/2.32 Prover 3: gave up % 11.29/2.33 Prover 7: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-236303470 % 11.78/2.39 Prover 7: Preprocessing ... % 12.51/2.49 Prover 1: gave up % 12.51/2.50 Prover 8: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-200781089 % 12.51/2.51 Prover 7: Warning: ignoring some quantifiers % 12.51/2.54 Prover 8: Preprocessing ... % 13.36/2.59 Prover 7: Constructing countermodel ... % 13.36/2.59 Prover 0: Proving ... % 13.36/2.61 Prover 4: Constructing countermodel ... % 13.97/2.82 Prover 8: Warning: ignoring some quantifiers % 13.97/2.85 Prover 8: Constructing countermodel ... % 15.67/2.91 Prover 0: proved (2266ms) % 15.67/2.92 % 15.67/2.92 % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p % 15.67/2.92 % 15.67/2.92 Prover 6: stopped % 15.67/2.92 Prover 10: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=919308125 % 15.67/2.93 Prover 11: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1509710984 % 15.67/2.93 Prover 2: stopped % 15.67/2.94 Prover 5: stopped % 16.04/2.94 Prover 13: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=complete -randomSeed=1138197443 % 16.04/2.94 Prover 16: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=completeFrugal -randomSeed=-2043353683 % 16.04/2.95 Prover 10: Preprocessing ... % 16.04/2.98 Prover 11: Preprocessing ... % 16.04/3.01 Prover 13: Preprocessing ... % 16.04/3.01 Prover 16: Preprocessing ... % 16.80/3.05 Prover 8: gave up % 16.80/3.05 Prover 19: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=complete -randomSeed=-1780594085 % 16.80/3.06 Prover 4: Found proof (size 86) % 16.80/3.06 Prover 4: proved (2411ms) % 16.80/3.06 Prover 7: stopped % 16.80/3.08 Prover 10: Warning: ignoring some quantifiers % 16.80/3.09 Prover 13: stopped % 16.80/3.09 Prover 19: Preprocessing ... % 16.80/3.09 Prover 10: Constructing countermodel ... % 17.18/3.11 Prover 10: stopped % 17.18/3.11 Prover 16: Warning: ignoring some quantifiers % 17.18/3.12 Prover 11: stopped % 17.18/3.12 Prover 16: Constructing countermodel ... % 17.18/3.13 Prover 16: stopped % 17.98/3.29 Prover 19: Warning: ignoring some quantifiers % 18.18/3.30 Prover 19: Constructing countermodel ... % 18.18/3.31 Prover 19: stopped % 18.18/3.31 % 18.18/3.31 % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p % 18.18/3.31 % 18.18/3.33 % SZS output start Proof for theBenchmark % 18.18/3.34 Assumptions after simplification: % 18.18/3.34 --------------------------------- % 18.18/3.34 % 18.18/3.34 (compose_function) % 18.40/3.38 ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: $i] : ! [v4: $i] : ! [v5: % 18.40/3.38 $i] : ! [v6: $i] : ! [v7: $i] : ! [v8: int] : ! [v9: $i] : (v8 = 0 | ~ % 18.40/3.38 (compose_function(v0, v1, v2, v3, v4) = v7) | ~ (apply(v7, v5, v6) = v8) | % 18.40/3.38 ~ (apply(v1, v5, v9) = 0) | ~ $i(v9) | ~ $i(v6) | ~ $i(v5) | ~ $i(v4) | % 18.40/3.38 ~ $i(v3) | ~ $i(v2) | ~ $i(v1) | ~ $i(v0) | ? [v10: any] : ? [v11: any] % 18.40/3.38 : ((apply(v0, v9, v6) = v11 & member(v9, v3) = v10 & ( ~ (v11 = 0) | ~ (v10 % 18.40/3.38 = 0))) | (member(v6, v4) = v11 & member(v5, v2) = v10 & ( ~ (v11 = % 18.40/3.38 0) | ~ (v10 = 0))))) & ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! % 18.40/3.38 [v3: $i] : ! [v4: $i] : ! [v5: $i] : ! [v6: $i] : ! [v7: $i] : ! [v8: % 18.40/3.38 int] : ! [v9: $i] : (v8 = 0 | ~ (compose_function(v0, v1, v2, v3, v4) = % 18.40/3.38 v7) | ~ (apply(v7, v5, v6) = v8) | ~ (apply(v0, v9, v6) = 0) | ~ $i(v9) % 18.40/3.38 | ~ $i(v6) | ~ $i(v5) | ~ $i(v4) | ~ $i(v3) | ~ $i(v2) | ~ $i(v1) | ~ % 18.40/3.38 $i(v0) | ? [v10: any] : ? [v11: any] : ((apply(v1, v5, v9) = v11 & % 18.40/3.38 member(v9, v3) = v10 & ( ~ (v11 = 0) | ~ (v10 = 0))) | (member(v6, v4) % 18.40/3.38 = v11 & member(v5, v2) = v10 & ( ~ (v11 = 0) | ~ (v10 = 0))))) & ! % 18.40/3.38 [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: $i] : ! [v4: $i] : ! [v5: $i] % 18.40/3.38 : ! [v6: $i] : ! [v7: $i] : ! [v8: int] : ! [v9: $i] : (v8 = 0 | ~ % 18.40/3.38 (compose_function(v0, v1, v2, v3, v4) = v7) | ~ (apply(v7, v5, v6) = v8) | % 18.40/3.38 ~ (member(v9, v3) = 0) | ~ $i(v9) | ~ $i(v6) | ~ $i(v5) | ~ $i(v4) | ~ % 18.40/3.38 $i(v3) | ~ $i(v2) | ~ $i(v1) | ~ $i(v0) | ? [v10: any] : ? [v11: any] : % 18.40/3.38 ((apply(v1, v5, v9) = v10 & apply(v0, v9, v6) = v11 & ( ~ (v11 = 0) | ~ % 18.40/3.38 (v10 = 0))) | (member(v6, v4) = v11 & member(v5, v2) = v10 & ( ~ (v11 % 18.40/3.38 = 0) | ~ (v10 = 0))))) & ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : % 18.40/3.38 ! [v3: $i] : ! [v4: $i] : ! [v5: $i] : ! [v6: $i] : ! [v7: $i] : ( ~ % 18.40/3.38 (compose_function(v0, v1, v2, v3, v4) = v7) | ~ (apply(v7, v5, v6) = 0) | % 18.40/3.38 ~ $i(v6) | ~ $i(v5) | ~ $i(v4) | ~ $i(v3) | ~ $i(v2) | ~ $i(v1) | ~ % 18.40/3.38 $i(v0) | ? [v8: any] : ? [v9: any] : ? [v10: $i] : ? [v11: int] : ? % 18.40/3.38 [v12: int] : ? [v13: int] : ($i(v10) & ((v13 = 0 & v12 = 0 & v11 = 0 & % 18.40/3.38 apply(v1, v5, v10) = 0 & apply(v0, v10, v6) = 0 & member(v10, v3) = 0) % 18.40/3.38 | (member(v6, v4) = v9 & member(v5, v2) = v8 & ( ~ (v9 = 0) | ~ (v8 = % 18.40/3.38 0)))))) % 18.40/3.38 % 18.40/3.38 (identity) % 18.40/3.39 ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: int] : (v3 = 0 | ~ % 18.40/3.39 (identity(v0, v1) = 0) | ~ (apply(v0, v2, v2) = v3) | ~ $i(v2) | ~ $i(v1) % 18.40/3.39 | ~ $i(v0) | ? [v4: int] : ( ~ (v4 = 0) & member(v2, v1) = v4)) & ! [v0: % 18.40/3.39 $i] : ! [v1: $i] : ! [v2: int] : (v2 = 0 | ~ (identity(v0, v1) = v2) | ~ % 18.40/3.39 $i(v1) | ~ $i(v0) | ? [v3: $i] : ? [v4: int] : ( ~ (v4 = 0) & apply(v0, % 18.40/3.39 v3, v3) = v4 & member(v3, v1) = 0 & $i(v3))) & ! [v0: $i] : ! [v1: $i] % 18.40/3.39 : ! [v2: $i] : ( ~ (identity(v0, v1) = 0) | ~ (member(v2, v1) = 0) | ~ % 18.40/3.39 $i(v2) | ~ $i(v1) | ~ $i(v0) | apply(v0, v2, v2) = 0) % 18.40/3.39 % 18.40/3.39 (inverse_function) % 18.40/3.39 ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: $i] : ! [v4: $i] : ! [v5: % 18.40/3.39 $i] : ! [v6: any] : ( ~ (inverse_function(v0, v1, v2) = v5) | ~ (apply(v5, % 18.40/3.39 v4, v3) = v6) | ~ $i(v4) | ~ $i(v3) | ~ $i(v2) | ~ $i(v1) | ~ % 18.40/3.39 $i(v0) | ? [v7: any] : ? [v8: any] : ? [v9: any] : (apply(v0, v3, v4) = % 18.40/3.39 v9 & member(v4, v2) = v8 & member(v3, v1) = v7 & ( ~ (v8 = 0) | ~ (v7 = % 18.40/3.39 0) | (( ~ (v9 = 0) | v6 = 0) & ( ~ (v6 = 0) | v9 = 0))))) % 18.40/3.39 % 18.40/3.39 (one_to_one) % 18.40/3.39 ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: int] : (v3 = 0 | ~ % 18.40/3.39 (one_to_one(v0, v1, v2) = v3) | ~ $i(v2) | ~ $i(v1) | ~ $i(v0) | ? [v4: % 18.40/3.39 any] : ? [v5: any] : (surjective(v0, v1, v2) = v5 & injective(v0, v1, v2) % 18.40/3.39 = v4 & ( ~ (v5 = 0) | ~ (v4 = 0)))) & ! [v0: $i] : ! [v1: $i] : ! [v2: % 18.40/3.39 $i] : ! [v3: any] : ( ~ (surjective(v0, v1, v2) = v3) | ~ $i(v2) | ~ % 18.40/3.39 $i(v1) | ~ $i(v0) | ? [v4: any] : ? [v5: any] : (one_to_one(v0, v1, v2) = % 18.40/3.39 v4 & injective(v0, v1, v2) = v5 & ( ~ (v4 = 0) | (v5 = 0 & v3 = 0)))) & ! % 18.40/3.39 [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: any] : ( ~ (injective(v0, v1, % 18.40/3.39 v2) = v3) | ~ $i(v2) | ~ $i(v1) | ~ $i(v0) | ? [v4: any] : ? [v5: % 18.40/3.39 any] : (one_to_one(v0, v1, v2) = v4 & surjective(v0, v1, v2) = v5 & ( ~ % 18.40/3.39 (v4 = 0) | (v5 = 0 & v3 = 0)))) & ! [v0: $i] : ! [v1: $i] : ! [v2: % 18.40/3.39 $i] : ( ~ (one_to_one(v0, v1, v2) = 0) | ~ $i(v2) | ~ $i(v1) | ~ $i(v0) | % 18.40/3.39 (surjective(v0, v1, v2) = 0 & injective(v0, v1, v2) = 0)) & ! [v0: $i] : ! % 18.40/3.39 [v1: $i] : ! [v2: $i] : ( ~ (surjective(v0, v1, v2) = 0) | ~ $i(v2) | ~ % 18.40/3.39 $i(v1) | ~ $i(v0) | ? [v3: any] : ? [v4: any] : (one_to_one(v0, v1, v2) = % 18.40/3.39 v4 & injective(v0, v1, v2) = v3 & ( ~ (v3 = 0) | v4 = 0))) & ! [v0: $i] : % 18.40/3.39 ! [v1: $i] : ! [v2: $i] : ( ~ (injective(v0, v1, v2) = 0) | ~ $i(v2) | ~ % 18.40/3.39 $i(v1) | ~ $i(v0) | ? [v3: any] : ? [v4: any] : (one_to_one(v0, v1, v2) = % 18.40/3.39 v4 & surjective(v0, v1, v2) = v3 & ( ~ (v3 = 0) | v4 = 0))) % 18.40/3.39 % 18.40/3.39 (surjective) % 18.40/3.39 ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: int] : (v3 = 0 | ~ % 18.40/3.39 (surjective(v0, v1, v2) = v3) | ~ $i(v2) | ~ $i(v1) | ~ $i(v0) | ? [v4: % 18.40/3.39 $i] : (member(v4, v2) = 0 & $i(v4) & ! [v5: $i] : ( ~ (apply(v0, v5, v4) % 18.40/3.40 = 0) | ~ $i(v5) | ? [v6: int] : ( ~ (v6 = 0) & member(v5, v1) = v6)) % 18.40/3.40 & ! [v5: $i] : ( ~ (member(v5, v1) = 0) | ~ $i(v5) | ? [v6: int] : ( ~ % 18.40/3.40 (v6 = 0) & apply(v0, v5, v4) = v6)))) & ! [v0: $i] : ! [v1: $i] : ! % 18.40/3.40 [v2: $i] : ! [v3: $i] : ( ~ (surjective(v0, v1, v2) = 0) | ~ (member(v3, v2) % 18.40/3.40 = 0) | ~ $i(v3) | ~ $i(v2) | ~ $i(v1) | ~ $i(v0) | ? [v4: $i] : % 18.40/3.40 (apply(v0, v4, v3) = 0 & member(v4, v1) = 0 & $i(v4))) % 18.40/3.40 % 18.40/3.40 (thII06) % 18.40/3.40 ? [v0: $i] : ? [v1: $i] : ? [v2: $i] : ? [v3: $i] : ? [v4: $i] : ? [v5: % 18.40/3.40 int] : ( ~ (v5 = 0) & inverse_function(v0, v1, v2) = v3 & one_to_one(v0, v1, % 18.40/3.40 v2) = 0 & identity(v4, v2) = v5 & compose_function(v0, v3, v2, v1, v2) = % 18.40/3.40 v4 & maps(v0, v1, v2) = 0 & $i(v4) & $i(v3) & $i(v2) & $i(v1) & $i(v0)) % 18.40/3.40 % 18.40/3.40 (function-axioms) % 18.40/3.41 ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: $i] : ! % 18.40/3.41 [v3: $i] : ! [v4: $i] : ! [v5: $i] : ! [v6: $i] : ! [v7: $i] : (v1 = v0 | % 18.40/3.41 ~ (compose_predicate(v7, v6, v5, v4, v3, v2) = v1) | ~ % 18.40/3.41 (compose_predicate(v7, v6, v5, v4, v3, v2) = v0)) & ! [v0: % 18.40/3.41 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: $i] : ! [v3: $i] % 18.40/3.41 : ! [v4: $i] : ! [v5: $i] : ! [v6: $i] : (v1 = v0 | ~ (isomorphism(v6, v5, % 18.40/3.41 v4, v3, v2) = v1) | ~ (isomorphism(v6, v5, v4, v3, v2) = v0)) & ! [v0: % 18.40/3.41 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: $i] : ! [v3: $i] % 18.40/3.41 : ! [v4: $i] : ! [v5: $i] : ! [v6: $i] : (v1 = v0 | ~ (decreasing(v6, v5, % 18.40/3.41 v4, v3, v2) = v1) | ~ (decreasing(v6, v5, v4, v3, v2) = v0)) & ! [v0: % 18.40/3.41 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: $i] : ! [v3: $i] % 18.40/3.41 : ! [v4: $i] : ! [v5: $i] : ! [v6: $i] : (v1 = v0 | ~ (increasing(v6, v5, % 18.40/3.41 v4, v3, v2) = v1) | ~ (increasing(v6, v5, v4, v3, v2) = v0)) & ! [v0: % 18.40/3.41 $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: $i] : ! [v4: $i] : ! [v5: $i] : % 18.40/3.41 ! [v6: $i] : (v1 = v0 | ~ (compose_function(v6, v5, v4, v3, v2) = v1) | ~ % 18.40/3.41 (compose_function(v6, v5, v4, v3, v2) = v0)) & ! [v0: MultipleValueBool] : % 18.40/3.41 ! [v1: MultipleValueBool] : ! [v2: $i] : ! [v3: $i] : ! [v4: $i] : ! [v5: % 18.40/3.41 $i] : (v1 = v0 | ~ (inverse_predicate(v5, v4, v3, v2) = v1) | ~ % 18.40/3.41 (inverse_predicate(v5, v4, v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! % 18.40/3.41 [v1: MultipleValueBool] : ! [v2: $i] : ! [v3: $i] : ! [v4: $i] : ! [v5: % 18.40/3.41 $i] : (v1 = v0 | ~ (equal_maps(v5, v4, v3, v2) = v1) | ~ (equal_maps(v5, % 18.40/3.41 v4, v3, v2) = v0)) & ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: % 18.40/3.41 $i] : ! [v4: $i] : (v1 = v0 | ~ (inverse_image3(v4, v3, v2) = v1) | ~ % 18.40/3.41 (inverse_image3(v4, v3, v2) = v0)) & ! [v0: $i] : ! [v1: $i] : ! [v2: $i] % 18.40/3.41 : ! [v3: $i] : ! [v4: $i] : (v1 = v0 | ~ (image3(v4, v3, v2) = v1) | ~ % 18.40/3.41 (image3(v4, v3, v2) = v0)) & ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! % 18.40/3.41 [v3: $i] : ! [v4: $i] : (v1 = v0 | ~ (inverse_function(v4, v3, v2) = v1) | % 18.40/3.41 ~ (inverse_function(v4, v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! % 18.40/3.41 [v1: MultipleValueBool] : ! [v2: $i] : ! [v3: $i] : ! [v4: $i] : (v1 = v0 | % 18.40/3.41 ~ (one_to_one(v4, v3, v2) = v1) | ~ (one_to_one(v4, v3, v2) = v0)) & ! % 18.40/3.41 [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: $i] : ! [v3: % 18.40/3.41 $i] : ! [v4: $i] : (v1 = v0 | ~ (surjective(v4, v3, v2) = v1) | ~ % 18.40/3.41 (surjective(v4, v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 18.40/3.41 MultipleValueBool] : ! [v2: $i] : ! [v3: $i] : ! [v4: $i] : (v1 = v0 | ~ % 18.40/3.41 (injective(v4, v3, v2) = v1) | ~ (injective(v4, v3, v2) = v0)) & ! [v0: % 18.40/3.41 MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: $i] : ! [v3: $i] % 18.40/3.41 : ! [v4: $i] : (v1 = v0 | ~ (maps(v4, v3, v2) = v1) | ~ (maps(v4, v3, v2) = % 18.40/3.41 v0)) & ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 18.40/3.41 $i] : ! [v3: $i] : ! [v4: $i] : (v1 = v0 | ~ (apply(v4, v3, v2) = v1) | % 18.40/3.41 ~ (apply(v4, v3, v2) = v0)) & ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! % 18.40/3.41 [v3: $i] : (v1 = v0 | ~ (inverse_image2(v3, v2) = v1) | ~ % 18.40/3.41 (inverse_image2(v3, v2) = v0)) & ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : % 18.40/3.41 ! [v3: $i] : (v1 = v0 | ~ (image2(v3, v2) = v1) | ~ (image2(v3, v2) = v0)) & % 18.40/3.41 ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: $i] : ! % 18.40/3.41 [v3: $i] : (v1 = v0 | ~ (identity(v3, v2) = v1) | ~ (identity(v3, v2) = v0)) % 18.40/3.41 & ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: $i] : (v1 = v0 | ~ % 18.40/3.41 (unordered_pair(v3, v2) = v1) | ~ (unordered_pair(v3, v2) = v0)) & ! [v0: % 18.40/3.41 $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: $i] : (v1 = v0 | ~ % 18.40/3.41 (difference(v3, v2) = v1) | ~ (difference(v3, v2) = v0)) & ! [v0: $i] : ! % 18.40/3.41 [v1: $i] : ! [v2: $i] : ! [v3: $i] : (v1 = v0 | ~ (union(v3, v2) = v1) | ~ % 18.40/3.41 (union(v3, v2) = v0)) & ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: % 18.40/3.41 $i] : (v1 = v0 | ~ (intersection(v3, v2) = v1) | ~ (intersection(v3, v2) = % 18.40/3.41 v0)) & ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: % 18.40/3.41 $i] : ! [v3: $i] : (v1 = v0 | ~ (equal_set(v3, v2) = v1) | ~ % 18.40/3.41 (equal_set(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! [v1: % 18.40/3.41 MultipleValueBool] : ! [v2: $i] : ! [v3: $i] : (v1 = v0 | ~ (subset(v3, % 18.40/3.41 v2) = v1) | ~ (subset(v3, v2) = v0)) & ! [v0: MultipleValueBool] : ! % 18.40/3.41 [v1: MultipleValueBool] : ! [v2: $i] : ! [v3: $i] : (v1 = v0 | ~ % 18.40/3.41 (member(v3, v2) = v1) | ~ (member(v3, v2) = v0)) & ! [v0: $i] : ! [v1: % 18.40/3.41 $i] : ! [v2: $i] : (v1 = v0 | ~ (product(v2) = v1) | ~ (product(v2) = % 18.40/3.41 v0)) & ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : (v1 = v0 | ~ (sum(v2) = % 18.40/3.41 v1) | ~ (sum(v2) = v0)) & ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : (v1 = % 18.40/3.41 v0 | ~ (singleton(v2) = v1) | ~ (singleton(v2) = v0)) & ! [v0: $i] : ! % 18.40/3.41 [v1: $i] : ! [v2: $i] : (v1 = v0 | ~ (power_set(v2) = v1) | ~ % 18.40/3.41 (power_set(v2) = v0)) % 18.40/3.41 % 18.40/3.41 Further assumptions not needed in the proof: % 18.40/3.41 -------------------------------------------- % 18.40/3.41 compose_predicate, decreasing_function, difference, empty_set, equal_maps, % 18.40/3.41 equal_set, image2, image3, increasing_function, injective, intersection, % 18.40/3.41 inverse_image2, inverse_image3, inverse_predicate, isomorphism, maps, power_set, % 18.40/3.41 product, singleton, subset, sum, union, unordered_pair % 18.40/3.41 % 18.40/3.41 Those formulas are unsatisfiable: % 18.40/3.41 --------------------------------- % 18.40/3.41 % 18.40/3.41 Begin of proof % 18.40/3.41 | % 18.40/3.41 | ALPHA: (compose_function) implies: % 18.40/3.41 | (1) ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: $i] : ! [v4: $i] : % 18.40/3.41 | ! [v5: $i] : ! [v6: $i] : ! [v7: $i] : ! [v8: int] : ! [v9: $i] : % 18.40/3.41 | (v8 = 0 | ~ (compose_function(v0, v1, v2, v3, v4) = v7) | ~ % 18.40/3.41 | (apply(v7, v5, v6) = v8) | ~ (member(v9, v3) = 0) | ~ $i(v9) | ~ % 18.40/3.41 | $i(v6) | ~ $i(v5) | ~ $i(v4) | ~ $i(v3) | ~ $i(v2) | ~ $i(v1) | % 18.40/3.41 | ~ $i(v0) | ? [v10: any] : ? [v11: any] : ((apply(v1, v5, v9) = v10 % 18.40/3.41 | & apply(v0, v9, v6) = v11 & ( ~ (v11 = 0) | ~ (v10 = 0))) | % 18.40/3.41 | (member(v6, v4) = v11 & member(v5, v2) = v10 & ( ~ (v11 = 0) | ~ % 18.40/3.41 | (v10 = 0))))) % 18.40/3.41 | (2) ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: $i] : ! [v4: $i] : % 18.40/3.41 | ! [v5: $i] : ! [v6: $i] : ! [v7: $i] : ! [v8: int] : ! [v9: $i] : % 18.40/3.41 | (v8 = 0 | ~ (compose_function(v0, v1, v2, v3, v4) = v7) | ~ % 18.40/3.41 | (apply(v7, v5, v6) = v8) | ~ (apply(v0, v9, v6) = 0) | ~ $i(v9) | % 18.40/3.41 | ~ $i(v6) | ~ $i(v5) | ~ $i(v4) | ~ $i(v3) | ~ $i(v2) | ~ $i(v1) % 18.40/3.41 | | ~ $i(v0) | ? [v10: any] : ? [v11: any] : ((apply(v1, v5, v9) = % 18.40/3.41 | v11 & member(v9, v3) = v10 & ( ~ (v11 = 0) | ~ (v10 = 0))) | % 18.40/3.41 | (member(v6, v4) = v11 & member(v5, v2) = v10 & ( ~ (v11 = 0) | ~ % 18.40/3.41 | (v10 = 0))))) % 18.40/3.41 | % 18.40/3.41 | ALPHA: (identity) implies: % 18.40/3.42 | (3) ! [v0: $i] : ! [v1: $i] : ! [v2: int] : (v2 = 0 | ~ (identity(v0, % 18.40/3.42 | v1) = v2) | ~ $i(v1) | ~ $i(v0) | ? [v3: $i] : ? [v4: int] : % 18.40/3.42 | ( ~ (v4 = 0) & apply(v0, v3, v3) = v4 & member(v3, v1) = 0 & $i(v3))) % 18.40/3.42 | % 18.40/3.42 | ALPHA: (surjective) implies: % 18.40/3.42 | (4) ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ! [v3: $i] : ( ~ % 18.40/3.42 | (surjective(v0, v1, v2) = 0) | ~ (member(v3, v2) = 0) | ~ $i(v3) | % 18.40/3.42 | ~ $i(v2) | ~ $i(v1) | ~ $i(v0) | ? [v4: $i] : (apply(v0, v4, v3) = % 18.40/3.42 | 0 & member(v4, v1) = 0 & $i(v4))) % 18.40/3.42 | % 18.40/3.42 | ALPHA: (one_to_one) implies: % 18.40/3.42 | (5) ! [v0: $i] : ! [v1: $i] : ! [v2: $i] : ( ~ (one_to_one(v0, v1, v2) = % 18.40/3.42 | 0) | ~ $i(v2) | ~ $i(v1) | ~ $i(v0) | (surjective(v0, v1, v2) = % 18.40/3.42 | 0 & injective(v0, v1, v2) = 0)) % 18.40/3.42 | % 18.40/3.42 | ALPHA: (function-axioms) implies: % 18.40/3.42 | (6) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: $i] : % 18.40/3.42 | ! [v3: $i] : (v1 = v0 | ~ (member(v3, v2) = v1) | ~ (member(v3, v2) % 18.40/3.42 | = v0)) % 18.40/3.42 | (7) ! [v0: MultipleValueBool] : ! [v1: MultipleValueBool] : ! [v2: $i] : % 18.40/3.42 | ! [v3: $i] : ! [v4: $i] : (v1 = v0 | ~ (apply(v4, v3, v2) = v1) | ~ % 18.40/3.42 | (apply(v4, v3, v2) = v0)) % 18.40/3.42 | % 18.40/3.42 | DELTA: instantiating (thII06) with fresh symbols all_32_0, all_32_1, all_32_2, % 18.40/3.42 | all_32_3, all_32_4, all_32_5 gives: % 18.40/3.42 | (8) ~ (all_32_0 = 0) & inverse_function(all_32_5, all_32_4, all_32_3) = % 18.40/3.42 | all_32_2 & one_to_one(all_32_5, all_32_4, all_32_3) = 0 & % 18.40/3.42 | identity(all_32_1, all_32_3) = all_32_0 & compose_function(all_32_5, % 18.40/3.42 | all_32_2, all_32_3, all_32_4, all_32_3) = all_32_1 & maps(all_32_5, % 18.40/3.42 | all_32_4, all_32_3) = 0 & $i(all_32_1) & $i(all_32_2) & $i(all_32_3) % 18.40/3.42 | & $i(all_32_4) & $i(all_32_5) % 18.40/3.42 | % 18.40/3.42 | ALPHA: (8) implies: % 18.40/3.42 | (9) ~ (all_32_0 = 0) % 18.40/3.42 | (10) $i(all_32_5) % 18.40/3.42 | (11) $i(all_32_4) % 18.40/3.42 | (12) $i(all_32_3) % 18.40/3.42 | (13) $i(all_32_2) % 18.40/3.42 | (14) $i(all_32_1) % 18.40/3.42 | (15) compose_function(all_32_5, all_32_2, all_32_3, all_32_4, all_32_3) = % 18.40/3.42 | all_32_1 % 18.40/3.42 | (16) identity(all_32_1, all_32_3) = all_32_0 % 18.40/3.42 | (17) one_to_one(all_32_5, all_32_4, all_32_3) = 0 % 18.40/3.42 | (18) inverse_function(all_32_5, all_32_4, all_32_3) = all_32_2 % 18.40/3.42 | % 18.40/3.42 | GROUND_INST: instantiating (3) with all_32_1, all_32_3, all_32_0, simplifying % 18.40/3.42 | with (12), (14), (16) gives: % 18.40/3.42 | (19) all_32_0 = 0 | ? [v0: $i] : ? [v1: int] : ( ~ (v1 = 0) & % 18.40/3.42 | apply(all_32_1, v0, v0) = v1 & member(v0, all_32_3) = 0 & $i(v0)) % 18.40/3.42 | % 18.40/3.42 | GROUND_INST: instantiating (5) with all_32_5, all_32_4, all_32_3, simplifying % 18.40/3.42 | with (10), (11), (12), (17) gives: % 18.40/3.42 | (20) surjective(all_32_5, all_32_4, all_32_3) = 0 & injective(all_32_5, % 18.40/3.42 | all_32_4, all_32_3) = 0 % 18.40/3.42 | % 18.40/3.42 | ALPHA: (20) implies: % 18.40/3.42 | (21) surjective(all_32_5, all_32_4, all_32_3) = 0 % 18.40/3.42 | % 18.40/3.42 | BETA: splitting (19) gives: % 18.40/3.42 | % 18.40/3.42 | Case 1: % 18.40/3.42 | | % 18.40/3.42 | | (22) all_32_0 = 0 % 18.40/3.42 | | % 18.40/3.43 | | REDUCE: (9), (22) imply: % 18.40/3.43 | | (23) $false % 18.40/3.43 | | % 18.40/3.43 | | CLOSE: (23) is inconsistent. % 18.40/3.43 | | % 18.40/3.43 | Case 2: % 18.40/3.43 | | % 18.40/3.43 | | (24) ? [v0: $i] : ? [v1: int] : ( ~ (v1 = 0) & apply(all_32_1, v0, v0) % 18.40/3.43 | | = v1 & member(v0, all_32_3) = 0 & $i(v0)) % 18.40/3.43 | | % 18.40/3.43 | | DELTA: instantiating (24) with fresh symbols all_44_0, all_44_1 gives: % 18.40/3.43 | | (25) ~ (all_44_0 = 0) & apply(all_32_1, all_44_1, all_44_1) = all_44_0 & % 18.40/3.43 | | member(all_44_1, all_32_3) = 0 & $i(all_44_1) % 18.40/3.43 | | % 18.40/3.43 | | ALPHA: (25) implies: % 18.40/3.43 | | (26) ~ (all_44_0 = 0) % 18.40/3.43 | | (27) $i(all_44_1) % 18.40/3.43 | | (28) member(all_44_1, all_32_3) = 0 % 18.40/3.43 | | (29) apply(all_32_1, all_44_1, all_44_1) = all_44_0 % 18.40/3.43 | | % 18.40/3.43 | | GROUND_INST: instantiating (4) with all_32_5, all_32_4, all_32_3, all_44_1, % 18.40/3.43 | | simplifying with (10), (11), (12), (21), (27), (28) gives: % 18.40/3.43 | | (30) ? [v0: $i] : (apply(all_32_5, v0, all_44_1) = 0 & member(v0, % 18.40/3.43 | | all_32_4) = 0 & $i(v0)) % 18.40/3.43 | | % 18.40/3.43 | | DELTA: instantiating (30) with fresh symbol all_51_0 gives: % 18.40/3.43 | | (31) apply(all_32_5, all_51_0, all_44_1) = 0 & member(all_51_0, all_32_4) % 18.40/3.43 | | = 0 & $i(all_51_0) % 18.40/3.43 | | % 18.40/3.43 | | ALPHA: (31) implies: % 18.40/3.43 | | (32) $i(all_51_0) % 18.40/3.43 | | (33) member(all_51_0, all_32_4) = 0 % 18.40/3.43 | | (34) apply(all_32_5, all_51_0, all_44_1) = 0 % 18.40/3.43 | | % 18.40/3.43 | | GROUND_INST: instantiating (1) with all_32_5, all_32_2, all_32_3, all_32_4, % 18.40/3.43 | | all_32_3, all_44_1, all_44_1, all_32_1, all_44_0, all_51_0, % 18.40/3.43 | | simplifying with (10), (11), (12), (13), (15), (27), (29), % 18.40/3.43 | | (32), (33) gives: % 18.40/3.43 | | (35) all_44_0 = 0 | ? [v0: any] : ? [v1: any] : ((apply(all_32_2, % 18.40/3.43 | | all_44_1, all_51_0) = v0 & apply(all_32_5, all_51_0, all_44_1) % 18.40/3.43 | | = v1 & ( ~ (v1 = 0) | ~ (v0 = 0))) | (member(all_44_1, % 18.40/3.43 | | all_32_3) = v1 & member(all_44_1, all_32_3) = v0 & ( ~ (v1 = % 18.40/3.43 | | 0) | ~ (v0 = 0)))) % 18.40/3.43 | | % 18.40/3.44 | | GROUND_INST: instantiating (2) with all_32_5, all_32_2, all_32_3, all_32_4, % 18.40/3.44 | | all_32_3, all_44_1, all_44_1, all_32_1, all_44_0, all_51_0, % 18.40/3.44 | | simplifying with (10), (11), (12), (13), (15), (27), (29), % 18.40/3.44 | | (32), (34) gives: % 18.40/3.44 | | (36) all_44_0 = 0 | ? [v0: any] : ? [v1: any] : ((apply(all_32_2, % 18.40/3.44 | | all_44_1, all_51_0) = v1 & member(all_51_0, all_32_4) = v0 & ( % 18.40/3.44 | | ~ (v1 = 0) | ~ (v0 = 0))) | (member(all_44_1, all_32_3) = v1 % 18.40/3.44 | | & member(all_44_1, all_32_3) = v0 & ( ~ (v1 = 0) | ~ (v0 = % 18.40/3.44 | | 0)))) % 18.40/3.44 | | % 18.40/3.44 | | BETA: splitting (36) gives: % 18.40/3.44 | | % 18.40/3.44 | | Case 1: % 18.40/3.44 | | | % 18.40/3.44 | | | (37) all_44_0 = 0 % 18.40/3.44 | | | % 18.40/3.44 | | | REDUCE: (26), (37) imply: % 18.40/3.44 | | | (38) $false % 18.40/3.44 | | | % 18.40/3.44 | | | CLOSE: (38) is inconsistent. % 18.40/3.44 | | | % 18.40/3.44 | | Case 2: % 18.40/3.44 | | | % 18.40/3.44 | | | (39) ? [v0: any] : ? [v1: any] : ((apply(all_32_2, all_44_1, % 18.40/3.44 | | | all_51_0) = v1 & member(all_51_0, all_32_4) = v0 & ( ~ (v1 = % 18.40/3.44 | | | 0) | ~ (v0 = 0))) | (member(all_44_1, all_32_3) = v1 & % 18.40/3.44 | | | member(all_44_1, all_32_3) = v0 & ( ~ (v1 = 0) | ~ (v0 = % 18.40/3.44 | | | 0)))) % 18.40/3.44 | | | % 18.40/3.44 | | | DELTA: instantiating (39) with fresh symbols all_64_0, all_64_1 gives: % 18.40/3.44 | | | (40) (apply(all_32_2, all_44_1, all_51_0) = all_64_0 & member(all_51_0, % 18.40/3.44 | | | all_32_4) = all_64_1 & ( ~ (all_64_0 = 0) | ~ (all_64_1 = % 18.40/3.44 | | | 0))) | (member(all_44_1, all_32_3) = all_64_0 & % 18.40/3.44 | | | member(all_44_1, all_32_3) = all_64_1 & ( ~ (all_64_0 = 0) | ~ % 18.40/3.44 | | | (all_64_1 = 0))) % 18.40/3.44 | | | % 18.40/3.44 | | | BETA: splitting (35) gives: % 18.40/3.44 | | | % 18.40/3.44 | | | Case 1: % 18.40/3.44 | | | | % 18.40/3.44 | | | | (41) all_44_0 = 0 % 18.40/3.44 | | | | % 18.40/3.44 | | | | REDUCE: (26), (41) imply: % 18.40/3.44 | | | | (42) $false % 18.40/3.44 | | | | % 18.40/3.44 | | | | CLOSE: (42) is inconsistent. % 18.40/3.44 | | | | % 18.40/3.44 | | | Case 2: % 18.40/3.44 | | | | % 18.40/3.44 | | | | (43) ? [v0: any] : ? [v1: any] : ((apply(all_32_2, all_44_1, % 18.40/3.44 | | | | all_51_0) = v0 & apply(all_32_5, all_51_0, all_44_1) = v1 % 18.40/3.44 | | | | & ( ~ (v1 = 0) | ~ (v0 = 0))) | (member(all_44_1, all_32_3) % 18.40/3.44 | | | | = v1 & member(all_44_1, all_32_3) = v0 & ( ~ (v1 = 0) | ~ % 18.40/3.44 | | | | (v0 = 0)))) % 18.40/3.44 | | | | % 18.40/3.44 | | | | DELTA: instantiating (43) with fresh symbols all_68_0, all_68_1 gives: % 18.40/3.44 | | | | (44) (apply(all_32_2, all_44_1, all_51_0) = all_68_1 & % 18.40/3.44 | | | | apply(all_32_5, all_51_0, all_44_1) = all_68_0 & ( ~ (all_68_0 % 18.40/3.44 | | | | = 0) | ~ (all_68_1 = 0))) | (member(all_44_1, all_32_3) = % 18.40/3.44 | | | | all_68_0 & member(all_44_1, all_32_3) = all_68_1 & ( ~ % 18.40/3.44 | | | | (all_68_0 = 0) | ~ (all_68_1 = 0))) % 18.40/3.44 | | | | % 18.40/3.44 | | | | BETA: splitting (44) gives: % 18.40/3.44 | | | | % 18.40/3.44 | | | | Case 1: % 18.40/3.44 | | | | | % 18.40/3.44 | | | | | (45) apply(all_32_2, all_44_1, all_51_0) = all_68_1 & % 18.40/3.44 | | | | | apply(all_32_5, all_51_0, all_44_1) = all_68_0 & ( ~ (all_68_0 % 18.40/3.44 | | | | | = 0) | ~ (all_68_1 = 0)) % 18.40/3.44 | | | | | % 18.40/3.44 | | | | | ALPHA: (45) implies: % 18.40/3.44 | | | | | (46) apply(all_32_5, all_51_0, all_44_1) = all_68_0 % 18.40/3.44 | | | | | (47) apply(all_32_2, all_44_1, all_51_0) = all_68_1 % 18.40/3.44 | | | | | (48) ~ (all_68_0 = 0) | ~ (all_68_1 = 0) % 18.40/3.44 | | | | | % 18.40/3.44 | | | | | BETA: splitting (40) gives: % 18.40/3.44 | | | | | % 18.40/3.44 | | | | | Case 1: % 18.40/3.44 | | | | | | % 18.40/3.44 | | | | | | (49) apply(all_32_2, all_44_1, all_51_0) = all_64_0 & % 18.40/3.44 | | | | | | member(all_51_0, all_32_4) = all_64_1 & ( ~ (all_64_0 = 0) | % 18.40/3.44 | | | | | | ~ (all_64_1 = 0)) % 18.40/3.44 | | | | | | % 18.40/3.44 | | | | | | ALPHA: (49) implies: % 18.40/3.44 | | | | | | (50) member(all_51_0, all_32_4) = all_64_1 % 18.40/3.44 | | | | | | (51) apply(all_32_2, all_44_1, all_51_0) = all_64_0 % 18.40/3.44 | | | | | | (52) ~ (all_64_0 = 0) | ~ (all_64_1 = 0) % 18.40/3.44 | | | | | | % 18.40/3.44 | | | | | | GROUND_INST: instantiating (6) with 0, all_64_1, all_32_4, all_51_0, % 18.40/3.44 | | | | | | simplifying with (33), (50) gives: % 18.40/3.44 | | | | | | (53) all_64_1 = 0 % 18.40/3.44 | | | | | | % 18.88/3.44 | | | | | | GROUND_INST: instantiating (7) with 0, all_68_0, all_44_1, all_51_0, % 18.88/3.44 | | | | | | all_32_5, simplifying with (34), (46) gives: % 18.88/3.44 | | | | | | (54) all_68_0 = 0 % 18.88/3.44 | | | | | | % 18.88/3.44 | | | | | | GROUND_INST: instantiating (7) with all_64_0, all_68_1, all_51_0, % 18.88/3.44 | | | | | | all_44_1, all_32_2, simplifying with (47), (51) gives: % 18.88/3.44 | | | | | | (55) all_68_1 = all_64_0 % 18.88/3.44 | | | | | | % 18.88/3.44 | | | | | | BETA: splitting (52) gives: % 18.88/3.44 | | | | | | % 18.88/3.44 | | | | | | Case 1: % 18.88/3.44 | | | | | | | % 18.88/3.44 | | | | | | | (56) ~ (all_64_0 = 0) % 18.88/3.44 | | | | | | | % 18.88/3.45 | | | | | | | GROUND_INST: instantiating (inverse_function) with all_32_5, % 18.88/3.45 | | | | | | | all_32_4, all_32_3, all_51_0, all_44_1, all_32_2, % 18.88/3.45 | | | | | | | all_64_0, simplifying with (10), (11), (12), (18), % 18.88/3.45 | | | | | | | (27), (32), (51) gives: % 18.88/3.45 | | | | | | | (57) ? [v0: any] : ? [v1: any] : ? [v2: any] : % 18.88/3.45 | | | | | | | (apply(all_32_5, all_51_0, all_44_1) = v2 & % 18.88/3.45 | | | | | | | member(all_51_0, all_32_4) = v0 & member(all_44_1, % 18.88/3.45 | | | | | | | all_32_3) = v1 & ( ~ (v1 = 0) | ~ (v0 = 0) | (( ~ (v2 % 18.88/3.45 | | | | | | | = 0) | all_64_0 = 0) & ( ~ (all_64_0 = 0) | v2 = % 18.88/3.45 | | | | | | | 0)))) % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | DELTA: instantiating (57) with fresh symbols all_92_0, all_92_1, % 18.88/3.45 | | | | | | | all_92_2 gives: % 18.88/3.45 | | | | | | | (58) apply(all_32_5, all_51_0, all_44_1) = all_92_0 & % 18.88/3.45 | | | | | | | member(all_51_0, all_32_4) = all_92_2 & member(all_44_1, % 18.88/3.45 | | | | | | | all_32_3) = all_92_1 & ( ~ (all_92_1 = 0) | ~ (all_92_2 % 18.88/3.45 | | | | | | | = 0) | (( ~ (all_92_0 = 0) | all_64_0 = 0) & ( ~ % 18.88/3.45 | | | | | | | (all_64_0 = 0) | all_92_0 = 0))) % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | ALPHA: (58) implies: % 18.88/3.45 | | | | | | | (59) member(all_44_1, all_32_3) = all_92_1 % 18.88/3.45 | | | | | | | (60) member(all_51_0, all_32_4) = all_92_2 % 18.88/3.45 | | | | | | | (61) apply(all_32_5, all_51_0, all_44_1) = all_92_0 % 18.88/3.45 | | | | | | | (62) ~ (all_92_1 = 0) | ~ (all_92_2 = 0) | (( ~ (all_92_0 = % 18.88/3.45 | | | | | | | 0) | all_64_0 = 0) & ( ~ (all_64_0 = 0) | all_92_0 = % 18.88/3.45 | | | | | | | 0)) % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | GROUND_INST: instantiating (6) with 0, all_92_1, all_32_3, % 18.88/3.45 | | | | | | | all_44_1, simplifying with (28), (59) gives: % 18.88/3.45 | | | | | | | (63) all_92_1 = 0 % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | GROUND_INST: instantiating (6) with 0, all_92_2, all_32_4, % 18.88/3.45 | | | | | | | all_51_0, simplifying with (33), (60) gives: % 18.88/3.45 | | | | | | | (64) all_92_2 = 0 % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | GROUND_INST: instantiating (7) with 0, all_92_0, all_44_1, % 18.88/3.45 | | | | | | | all_51_0, all_32_5, simplifying with (34), (61) % 18.88/3.45 | | | | | | | gives: % 18.88/3.45 | | | | | | | (65) all_92_0 = 0 % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | BETA: splitting (62) gives: % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | Case 1: % 18.88/3.45 | | | | | | | | % 18.88/3.45 | | | | | | | | (66) ~ (all_92_1 = 0) % 18.88/3.45 | | | | | | | | % 18.88/3.45 | | | | | | | | REDUCE: (63), (66) imply: % 18.88/3.45 | | | | | | | | (67) $false % 18.88/3.45 | | | | | | | | % 18.88/3.45 | | | | | | | | CLOSE: (67) is inconsistent. % 18.88/3.45 | | | | | | | | % 18.88/3.45 | | | | | | | Case 2: % 18.88/3.45 | | | | | | | | % 18.88/3.45 | | | | | | | | (68) ~ (all_92_2 = 0) | (( ~ (all_92_0 = 0) | all_64_0 = 0) % 18.88/3.45 | | | | | | | | & ( ~ (all_64_0 = 0) | all_92_0 = 0)) % 18.88/3.45 | | | | | | | | % 18.88/3.45 | | | | | | | | BETA: splitting (68) gives: % 18.88/3.45 | | | | | | | | % 18.88/3.45 | | | | | | | | Case 1: % 18.88/3.45 | | | | | | | | | % 18.88/3.45 | | | | | | | | | (69) ~ (all_92_2 = 0) % 18.88/3.45 | | | | | | | | | % 18.88/3.45 | | | | | | | | | REDUCE: (64), (69) imply: % 18.88/3.45 | | | | | | | | | (70) $false % 18.88/3.45 | | | | | | | | | % 18.88/3.45 | | | | | | | | | CLOSE: (70) is inconsistent. % 18.88/3.45 | | | | | | | | | % 18.88/3.45 | | | | | | | | Case 2: % 18.88/3.45 | | | | | | | | | % 18.88/3.45 | | | | | | | | | (71) ( ~ (all_92_0 = 0) | all_64_0 = 0) & ( ~ (all_64_0 = % 18.88/3.45 | | | | | | | | | 0) | all_92_0 = 0) % 18.88/3.45 | | | | | | | | | % 18.88/3.45 | | | | | | | | | ALPHA: (71) implies: % 18.88/3.45 | | | | | | | | | (72) ~ (all_92_0 = 0) | all_64_0 = 0 % 18.88/3.45 | | | | | | | | | % 18.88/3.45 | | | | | | | | | BETA: splitting (72) gives: % 18.88/3.45 | | | | | | | | | % 18.88/3.45 | | | | | | | | | Case 1: % 18.88/3.45 | | | | | | | | | | % 18.88/3.45 | | | | | | | | | | (73) ~ (all_92_0 = 0) % 18.88/3.45 | | | | | | | | | | % 18.88/3.45 | | | | | | | | | | REDUCE: (65), (73) imply: % 18.88/3.45 | | | | | | | | | | (74) $false % 18.88/3.45 | | | | | | | | | | % 18.88/3.45 | | | | | | | | | | CLOSE: (74) is inconsistent. % 18.88/3.45 | | | | | | | | | | % 18.88/3.45 | | | | | | | | | Case 2: % 18.88/3.45 | | | | | | | | | | % 18.88/3.45 | | | | | | | | | | (75) all_64_0 = 0 % 18.88/3.45 | | | | | | | | | | % 18.88/3.45 | | | | | | | | | | REDUCE: (56), (75) imply: % 18.88/3.45 | | | | | | | | | | (76) $false % 18.88/3.45 | | | | | | | | | | % 18.88/3.45 | | | | | | | | | | CLOSE: (76) is inconsistent. % 18.88/3.45 | | | | | | | | | | % 18.88/3.45 | | | | | | | | | End of split % 18.88/3.45 | | | | | | | | | % 18.88/3.45 | | | | | | | | End of split % 18.88/3.45 | | | | | | | | % 18.88/3.45 | | | | | | | End of split % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | Case 2: % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | (77) all_64_0 = 0 % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | COMBINE_EQS: (55), (77) imply: % 18.88/3.45 | | | | | | | (78) all_68_1 = 0 % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | REF_CLOSE: (48), (54), (78) are inconsistent by sub-proof #1. % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | End of split % 18.88/3.45 | | | | | | % 18.88/3.45 | | | | | Case 2: % 18.88/3.45 | | | | | | % 18.88/3.45 | | | | | | (79) member(all_44_1, all_32_3) = all_64_0 & member(all_44_1, % 18.88/3.45 | | | | | | all_32_3) = all_64_1 & ( ~ (all_64_0 = 0) | ~ (all_64_1 = % 18.88/3.45 | | | | | | 0)) % 18.88/3.45 | | | | | | % 18.88/3.45 | | | | | | ALPHA: (79) implies: % 18.88/3.45 | | | | | | (80) member(all_44_1, all_32_3) = all_64_1 % 18.88/3.45 | | | | | | (81) member(all_44_1, all_32_3) = all_64_0 % 18.88/3.45 | | | | | | (82) ~ (all_64_0 = 0) | ~ (all_64_1 = 0) % 18.88/3.45 | | | | | | % 18.88/3.45 | | | | | | GROUND_INST: instantiating (6) with 0, all_64_0, all_32_3, all_44_1, % 18.88/3.45 | | | | | | simplifying with (28), (81) gives: % 18.88/3.45 | | | | | | (83) all_64_0 = 0 % 18.88/3.45 | | | | | | % 18.88/3.45 | | | | | | GROUND_INST: instantiating (6) with all_64_1, all_64_0, all_32_3, % 18.88/3.45 | | | | | | all_44_1, simplifying with (80), (81) gives: % 18.88/3.45 | | | | | | (84) all_64_0 = all_64_1 % 18.88/3.45 | | | | | | % 18.88/3.45 | | | | | | COMBINE_EQS: (83), (84) imply: % 18.88/3.45 | | | | | | (85) all_64_1 = 0 % 18.88/3.45 | | | | | | % 18.88/3.45 | | | | | | BETA: splitting (82) gives: % 18.88/3.45 | | | | | | % 18.88/3.45 | | | | | | Case 1: % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | (86) ~ (all_64_0 = 0) % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | REDUCE: (83), (86) imply: % 18.88/3.45 | | | | | | | (87) $false % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | CLOSE: (87) is inconsistent. % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | Case 2: % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | (88) ~ (all_64_1 = 0) % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | REDUCE: (85), (88) imply: % 18.88/3.45 | | | | | | | (89) $false % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | | CLOSE: (89) is inconsistent. % 18.88/3.45 | | | | | | | % 18.88/3.45 | | | | | | End of split % 18.88/3.45 | | | | | | % 18.88/3.45 | | | | | End of split % 18.88/3.45 | | | | | % 18.88/3.45 | | | | Case 2: % 18.88/3.45 | | | | | % 18.88/3.45 | | | | | (90) member(all_44_1, all_32_3) = all_68_0 & member(all_44_1, % 18.88/3.45 | | | | | all_32_3) = all_68_1 & ( ~ (all_68_0 = 0) | ~ (all_68_1 = % 18.88/3.45 | | | | | 0)) % 18.88/3.45 | | | | | % 18.88/3.45 | | | | | ALPHA: (90) implies: % 18.88/3.46 | | | | | (91) member(all_44_1, all_32_3) = all_68_1 % 18.88/3.46 | | | | | (92) member(all_44_1, all_32_3) = all_68_0 % 18.88/3.46 | | | | | (93) ~ (all_68_0 = 0) | ~ (all_68_1 = 0) % 18.88/3.46 | | | | | % 18.88/3.46 | | | | | GROUND_INST: instantiating (6) with 0, all_68_0, all_32_3, all_44_1, % 18.88/3.46 | | | | | simplifying with (28), (92) gives: % 18.88/3.46 | | | | | (94) all_68_0 = 0 % 18.88/3.46 | | | | | % 18.88/3.46 | | | | | GROUND_INST: instantiating (6) with all_68_1, all_68_0, all_32_3, % 18.88/3.46 | | | | | all_44_1, simplifying with (91), (92) gives: % 18.88/3.46 | | | | | (95) all_68_0 = all_68_1 % 18.88/3.46 | | | | | % 18.88/3.46 | | | | | COMBINE_EQS: (94), (95) imply: % 18.88/3.46 | | | | | (96) all_68_1 = 0 % 18.88/3.46 | | | | | % 18.88/3.46 | | | | | REF_CLOSE: (93), (94), (96) are inconsistent by sub-proof #1. % 18.88/3.46 | | | | | % 18.88/3.46 | | | | End of split % 18.88/3.46 | | | | % 18.88/3.46 | | | End of split % 18.88/3.46 | | | % 18.88/3.46 | | End of split % 18.88/3.46 | | % 18.88/3.46 | End of split % 18.88/3.46 | % 18.88/3.46 End of proof % 18.88/3.46 % 18.88/3.46 Sub-proof #1 shows that the following formulas are inconsistent: % 18.88/3.46 ---------------------------------------------------------------- % 18.88/3.46 (1) ~ (all_68_0 = 0) | ~ (all_68_1 = 0) % 18.88/3.46 (2) all_68_0 = 0 % 18.88/3.46 (3) all_68_1 = 0 % 18.88/3.46 % 18.88/3.46 Begin of proof % 18.88/3.46 | % 18.88/3.46 | BETA: splitting (1) gives: % 18.88/3.46 | % 18.88/3.46 | Case 1: % 18.88/3.46 | | % 18.88/3.46 | | (4) ~ (all_68_0 = 0) % 18.88/3.46 | | % 18.88/3.46 | | REDUCE: (2), (4) imply: % 18.88/3.46 | | (5) $false % 18.88/3.46 | | % 18.88/3.46 | | CLOSE: (5) is inconsistent. % 18.88/3.46 | | % 18.88/3.46 | Case 2: % 18.88/3.46 | | % 18.88/3.46 | | (6) ~ (all_68_1 = 0) % 18.88/3.46 | | % 18.88/3.46 | | REDUCE: (3), (6) imply: % 18.88/3.46 | | (7) $false % 18.88/3.46 | | % 18.88/3.46 | | CLOSE: (7) is inconsistent. % 18.88/3.46 | | % 18.88/3.46 | End of split % 18.88/3.46 | % 18.88/3.46 End of proof % 18.88/3.46 % SZS output end Proof for theBenchmark % 18.88/3.46 % 18.88/3.46 2828ms %------------------------------------------------------------------------------