TSTP Solution File: DAT051_1 by Princess---230619
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : Princess---230619
% Problem : DAT051_1 : TPTP v8.1.2. Released v5.0.0.
% Transfm : none
% Format : tptp
% Command : princess -inputFormat=tptp +threads -portfolio=casc +printProof -timeoutSec=%d %s
% Computer : n018.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 : Wed Aug 30 22:19:01 EDT 2023
% Result : Theorem 7.85s 1.79s
% Output : Proof 10.70s
% Verified :
% SZS Type : -
% Comments :
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12 % Problem : DAT051_1 : TPTP v8.1.2. Released v5.0.0.
% 0.00/0.13 % Command : princess -inputFormat=tptp +threads -portfolio=casc +printProof -timeoutSec=%d %s
% 0.12/0.34 % Computer : n018.cluster.edu
% 0.12/0.34 % Model : x86_64 x86_64
% 0.12/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.34 % Memory : 8042.1875MB
% 0.12/0.34 % OS : Linux 3.10.0-693.el7.x86_64
% 0.12/0.34 % CPULimit : 300
% 0.12/0.34 % WCLimit : 300
% 0.12/0.34 % DateTime : Thu Aug 24 14:50:27 EDT 2023
% 0.12/0.34 % CPUTime :
% 0.20/0.61 ________ _____
% 0.20/0.61 ___ __ \_________(_)________________________________
% 0.20/0.61 __ /_/ /_ ___/_ /__ __ \ ___/ _ \_ ___/_ ___/
% 0.20/0.61 _ ____/_ / _ / _ / / / /__ / __/(__ )_(__ )
% 0.20/0.61 /_/ /_/ /_/ /_/ /_/\___/ \___//____/ /____/
% 0.20/0.61
% 0.20/0.61 A Theorem Prover for First-Order Logic modulo Linear Integer Arithmetic
% 0.20/0.61 (2023-06-19)
% 0.20/0.61
% 0.20/0.61 (c) Philipp Rümmer, 2009-2023
% 0.20/0.61 Contributors: Peter Backeman, Peter Baumgartner, Angelo Brillout, Zafer Esen,
% 0.20/0.61 Amanda Stjerna.
% 0.20/0.61 Free software under BSD-3-Clause.
% 0.20/0.61
% 0.20/0.61 For more information, visit http://www.philipp.ruemmer.org/princess.shtml
% 0.20/0.61
% 0.20/0.61 Loading /export/starexec/sandbox/benchmark/theBenchmark.p ...
% 0.20/0.63 Running up to 7 provers in parallel.
% 0.20/0.64 Prover 0: Options: +triggersInConjecture +genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1042961893
% 0.20/0.64 Prover 1: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1571432423
% 0.20/0.64 Prover 2: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMinimalAndEmpty -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1065072994
% 0.20/0.64 Prover 3: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1922548996
% 0.20/0.64 Prover 4: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=1868514696
% 0.20/0.64 Prover 5: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMaximal -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=complete -randomSeed=1259561288
% 0.20/0.64 Prover 6: Options: -triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximalOutermost -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1399714365
% 3.06/1.15 Prover 4: Preprocessing ...
% 3.06/1.15 Prover 3: Preprocessing ...
% 3.06/1.15 Prover 2: Preprocessing ...
% 3.06/1.15 Prover 6: Preprocessing ...
% 3.06/1.15 Prover 5: Preprocessing ...
% 3.06/1.15 Prover 0: Preprocessing ...
% 3.06/1.15 Prover 1: Preprocessing ...
% 4.74/1.41 Prover 6: Constructing countermodel ...
% 4.74/1.41 Prover 3: Constructing countermodel ...
% 4.74/1.42 Prover 1: Constructing countermodel ...
% 4.74/1.48 Prover 2: Proving ...
% 5.01/1.50 Prover 0: Proving ...
% 5.01/1.51 Prover 5: Proving ...
% 5.01/1.53 Prover 4: Constructing countermodel ...
% 7.59/1.78 Prover 6: proved (1142ms)
% 7.59/1.78
% 7.85/1.79 % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p
% 7.85/1.79
% 7.85/1.79 Prover 3: proved (1151ms)
% 7.85/1.79
% 7.85/1.79 % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p
% 7.85/1.79
% 7.85/1.79 Prover 0: stopped
% 7.85/1.79 Prover 5: stopped
% 7.85/1.79 Prover 7: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-236303470
% 7.85/1.79 Prover 2: stopped
% 7.85/1.80 Prover 8: Options: +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-200781089
% 7.85/1.80 Prover 10: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=919308125
% 7.85/1.80 Prover 11: Options: +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1509710984
% 7.85/1.82 Prover 13: Options: +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=complete -randomSeed=1138197443
% 8.18/1.84 Prover 8: Preprocessing ...
% 8.27/1.85 Prover 7: Preprocessing ...
% 8.27/1.86 Prover 10: Preprocessing ...
% 8.27/1.86 Prover 13: Preprocessing ...
% 8.27/1.88 Prover 11: Preprocessing ...
% 8.27/1.90 Prover 7: Constructing countermodel ...
% 8.78/1.94 Prover 8: Warning: ignoring some quantifiers
% 8.78/1.95 Prover 8: Constructing countermodel ...
% 8.78/1.95 Prover 10: Constructing countermodel ...
% 9.12/1.96 Prover 13: Warning: ignoring some quantifiers
% 9.12/1.97 Prover 13: Constructing countermodel ...
% 9.12/2.03 Prover 11: Constructing countermodel ...
% 9.12/2.15 Prover 10: Found proof (size 64)
% 9.12/2.15 Prover 10: proved (348ms)
% 9.12/2.15 Prover 11: stopped
% 9.12/2.15 Prover 7: stopped
% 9.12/2.15 Prover 13: stopped
% 9.12/2.15 Prover 8: stopped
% 9.12/2.15 Prover 1: stopped
% 9.12/2.15 Prover 4: stopped
% 9.12/2.15
% 9.12/2.15 % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p
% 9.12/2.15
% 9.87/2.17 % SZS output start Proof for theBenchmark
% 9.87/2.17 Assumptions after simplification:
% 9.87/2.17 ---------------------------------
% 9.87/2.17
% 9.87/2.17 (ax11)
% 9.87/2.19 ! [v0: record] : ! [v1: record] : ( ~ (split2(v0) = v1) | ~ record(v0) | ~
% 9.87/2.19 isrecord(v0) | isrecord(v1) | ? [v2: record] : (next(v0) = v2 & record(v2)
% 9.87/2.19 & ~ isrecord(v2)))
% 9.87/2.19
% 9.87/2.19 (ax12)
% 9.87/2.19 ! [v0: record] : ! [v1: record] : ( ~ (split2(v0) = v1) | ~ record(v0) | ~
% 9.87/2.19 isrecord(v0) | ? [v2: record] : ? [v3: int] : ? [v4: int] : (next(v0) =
% 9.87/2.19 v2 & record(v2) & ( ~ isrecord(v2) | (v4 = v3 & data(v2) = v3 & data(v1) =
% 9.87/2.19 v3))))
% 9.87/2.19
% 9.87/2.19 (ax13)
% 9.87/2.19 ! [v0: record] : ! [v1: record] : ( ~ (split2(v0) = v1) | ~ record(v0) | ~
% 9.87/2.19 isrecord(v0) | ? [v2: record] : ? [v3: record] : ? [v4: record] : ? [v5:
% 9.87/2.19 record] : (next(v0) = v2 & record(v2) & ( ~ isrecord(v2) | (v5 = v3 &
% 9.87/2.19 split2(v4) = v3 & next(v2) = v4 & next(v1) = v3 & record(v4) &
% 9.87/2.19 record(v3)))))
% 9.87/2.19
% 9.87/2.19 (ax3)
% 9.87/2.19 ! [v0: record] : ! [v1: int] : ( ~ (length(v0) = v1) | ~ record(v0) | ~
% 9.87/2.19 isrecord(v0) | ? [v2: record] : (next(v0) = v2 & length(v2) = $sum(v1, -1)
% 9.87/2.19 & record(v2)))
% 9.87/2.19
% 9.87/2.19 (co1)
% 9.87/2.19 ? [v0: record] : ? [v1: record] : ? [v2: record] : ? [v3: record] : ?
% 9.87/2.19 [v4: int] : ? [v5: int] : ? [v6: record] : ? [v7: int] : ? [v8: int] : ( ~
% 9.87/2.19 ($difference(v8, $product(2, v7)) = 1) & ~ (v8 = $product(2, v7)) &
% 9.87/2.19 split2(v1) = v3 & split2(v0) = v6 & next(v2) = v1 & next(v0) = v2 &
% 10.70/2.19 length(v6) = v7 & length(v3) = v4 & length(v1) = v5 & length(v0) = v8 &
% 10.70/2.19 record(v6) & record(v3) & record(v2) & record(v1) & record(v0) &
% 10.70/2.19 isrecord(v2) & isrecord(v0) & ($difference(v5, $product(2, v4)) = 1 | v5 =
% 10.70/2.19 $product(2, v4)))
% 10.70/2.19
% 10.70/2.19 (function-axioms)
% 10.70/2.20 ! [v0: record] : ! [v1: record] : ! [v2: record] : (v1 = v0 | ~
% 10.70/2.20 (split2(v2) = v1) | ~ (split2(v2) = v0)) & ! [v0: int] : ! [v1: int] : !
% 10.70/2.20 [v2: record] : (v1 = v0 | ~ (data(v2) = v1) | ~ (data(v2) = v0)) & ! [v0:
% 10.70/2.20 record] : ! [v1: record] : ! [v2: record] : (v1 = v0 | ~ (split1(v2) =
% 10.70/2.20 v1) | ~ (split1(v2) = v0)) & ! [v0: record] : ! [v1: record] : ! [v2:
% 10.70/2.20 record] : (v1 = v0 | ~ (next(v2) = v1) | ~ (next(v2) = v0)) & ! [v0: int]
% 10.70/2.20 : ! [v1: int] : ! [v2: record] : (v1 = v0 | ~ (length(v2) = v1) | ~
% 10.70/2.20 (length(v2) = v0))
% 10.70/2.20
% 10.70/2.20 Further assumptions not needed in the proof:
% 10.70/2.20 --------------------------------------------
% 10.70/2.20 ax1, ax10, ax2, ax4, ax5, ax6, ax7, ax8, ax9
% 10.70/2.20
% 10.70/2.20 Those formulas are unsatisfiable:
% 10.70/2.20 ---------------------------------
% 10.70/2.20
% 10.70/2.20 Begin of proof
% 10.70/2.20 |
% 10.70/2.20 | ALPHA: (function-axioms) implies:
% 10.70/2.20 | (1) ! [v0: int] : ! [v1: int] : ! [v2: record] : (v1 = v0 | ~
% 10.70/2.20 | (length(v2) = v1) | ~ (length(v2) = v0))
% 10.70/2.20 | (2) ! [v0: record] : ! [v1: record] : ! [v2: record] : (v1 = v0 | ~
% 10.70/2.20 | (next(v2) = v1) | ~ (next(v2) = v0))
% 10.70/2.20 | (3) ! [v0: record] : ! [v1: record] : ! [v2: record] : (v1 = v0 | ~
% 10.70/2.20 | (split2(v2) = v1) | ~ (split2(v2) = v0))
% 10.70/2.20 |
% 10.70/2.20 | DELTA: instantiating (co1) with fresh symbols all_18_0, all_18_1, all_18_2,
% 10.70/2.20 | all_18_3, all_18_4, all_18_5, all_18_6, all_18_7, all_18_8 gives:
% 10.70/2.21 | (4) ~ ($difference(all_18_0, $product(2, all_18_1)) = 1) & ~ (all_18_0 =
% 10.70/2.21 | $product(2, all_18_1)) & split2(all_18_7) = all_18_5 &
% 10.70/2.21 | split2(all_18_8) = all_18_2 & next(all_18_6) = all_18_7 &
% 10.70/2.21 | next(all_18_8) = all_18_6 & length(all_18_2) = all_18_1 &
% 10.70/2.21 | length(all_18_5) = all_18_4 & length(all_18_7) = all_18_3 &
% 10.70/2.21 | length(all_18_8) = all_18_0 & record(all_18_2) & record(all_18_5) &
% 10.70/2.21 | record(all_18_6) & record(all_18_7) & record(all_18_8) &
% 10.70/2.21 | isrecord(all_18_6) & isrecord(all_18_8) & ($difference(all_18_3,
% 10.70/2.21 | $product(2, all_18_4)) = 1 | all_18_3 = $product(2, all_18_4))
% 10.70/2.21 |
% 10.70/2.21 | ALPHA: (4) implies:
% 10.70/2.21 | (5) ~ (all_18_0 = $product(2, all_18_1))
% 10.70/2.21 | (6) ~ ($difference(all_18_0, $product(2, all_18_1)) = 1)
% 10.70/2.21 | (7) isrecord(all_18_8)
% 10.70/2.21 | (8) isrecord(all_18_6)
% 10.70/2.21 | (9) record(all_18_8)
% 10.70/2.21 | (10) record(all_18_2)
% 10.70/2.21 | (11) length(all_18_8) = all_18_0
% 10.70/2.21 | (12) length(all_18_7) = all_18_3
% 10.70/2.21 | (13) length(all_18_5) = all_18_4
% 10.70/2.21 | (14) length(all_18_2) = all_18_1
% 10.70/2.21 | (15) next(all_18_8) = all_18_6
% 10.70/2.21 | (16) next(all_18_6) = all_18_7
% 10.70/2.21 | (17) split2(all_18_8) = all_18_2
% 10.70/2.21 | (18) split2(all_18_7) = all_18_5
% 10.70/2.21 | (19) $difference(all_18_3, $product(2, all_18_4)) = 1 | all_18_3 =
% 10.70/2.21 | $product(2, all_18_4)
% 10.70/2.21 |
% 10.70/2.21 | GROUND_INST: instantiating (ax3) with all_18_8, all_18_0, simplifying with
% 10.70/2.21 | (7), (9), (11) gives:
% 10.70/2.21 | (20) ? [v0: record] : (next(all_18_8) = v0 & length(v0) = $sum(all_18_0,
% 10.70/2.21 | -1) & record(v0))
% 10.70/2.21 |
% 10.70/2.21 | GROUND_INST: instantiating (ax11) with all_18_8, all_18_2, simplifying with
% 10.70/2.21 | (7), (9), (17) gives:
% 10.70/2.21 | (21) isrecord(all_18_2) | ? [v0: record] : (next(all_18_8) = v0 &
% 10.70/2.21 | record(v0) & ~ isrecord(v0))
% 10.70/2.21 |
% 10.70/2.21 | GROUND_INST: instantiating (ax13) with all_18_8, all_18_2, simplifying with
% 10.70/2.21 | (7), (9), (17) gives:
% 10.70/2.21 | (22) ? [v0: record] : ? [v1: record] : ? [v2: record] : ? [v3: record]
% 10.70/2.21 | : (next(all_18_8) = v0 & record(v0) & ( ~ isrecord(v0) | (v3 = v1 &
% 10.70/2.21 | split2(v2) = v1 & next(v0) = v2 & next(all_18_2) = v1 &
% 10.70/2.21 | record(v2) & record(v1))))
% 10.70/2.21 |
% 10.70/2.21 | GROUND_INST: instantiating (ax12) with all_18_8, all_18_2, simplifying with
% 10.70/2.21 | (7), (9), (17) gives:
% 10.70/2.22 | (23) ? [v0: record] : ? [v1: int] : ? [v2: int] : (next(all_18_8) = v0 &
% 10.70/2.22 | record(v0) & ( ~ isrecord(v0) | (v2 = v1 & data(v0) = v1 &
% 10.70/2.22 | data(all_18_2) = v1)))
% 10.70/2.22 |
% 10.70/2.22 | DELTA: instantiating (20) with fresh symbol all_27_0 gives:
% 10.70/2.22 | (24) next(all_18_8) = all_27_0 & length(all_27_0) = $sum(all_18_0, -1) &
% 10.70/2.22 | record(all_27_0)
% 10.70/2.22 |
% 10.70/2.22 | ALPHA: (24) implies:
% 10.70/2.22 | (25) record(all_27_0)
% 10.70/2.22 | (26) length(all_27_0) = $sum(all_18_0, -1)
% 10.70/2.22 | (27) next(all_18_8) = all_27_0
% 10.70/2.22 |
% 10.70/2.22 | DELTA: instantiating (23) with fresh symbols all_29_0, all_29_1, all_29_2
% 10.70/2.22 | gives:
% 10.70/2.22 | (28) next(all_18_8) = all_29_2 & record(all_29_2) & ( ~ isrecord(all_29_2)
% 10.70/2.22 | | (all_29_0 = all_29_1 & data(all_29_2) = all_29_1 & data(all_18_2)
% 10.70/2.22 | = all_29_1))
% 10.70/2.22 |
% 10.70/2.22 | ALPHA: (28) implies:
% 10.70/2.22 | (29) next(all_18_8) = all_29_2
% 10.70/2.22 |
% 10.70/2.22 | DELTA: instantiating (22) with fresh symbols all_31_0, all_31_1, all_31_2,
% 10.70/2.22 | all_31_3 gives:
% 10.70/2.22 | (30) next(all_18_8) = all_31_3 & record(all_31_3) & ( ~ isrecord(all_31_3)
% 10.70/2.22 | | (all_31_0 = all_31_2 & split2(all_31_1) = all_31_2 &
% 10.70/2.22 | next(all_31_3) = all_31_1 & next(all_18_2) = all_31_2 &
% 10.70/2.22 | record(all_31_1) & record(all_31_2)))
% 10.70/2.22 |
% 10.70/2.22 | ALPHA: (30) implies:
% 10.70/2.22 | (31) next(all_18_8) = all_31_3
% 10.70/2.22 | (32) ~ isrecord(all_31_3) | (all_31_0 = all_31_2 & split2(all_31_1) =
% 10.70/2.22 | all_31_2 & next(all_31_3) = all_31_1 & next(all_18_2) = all_31_2 &
% 10.70/2.22 | record(all_31_1) & record(all_31_2))
% 10.70/2.22 |
% 10.70/2.22 | GROUND_INST: instantiating (2) with all_18_6, all_29_2, all_18_8, simplifying
% 10.70/2.22 | with (15), (29) gives:
% 10.70/2.22 | (33) all_29_2 = all_18_6
% 10.70/2.22 |
% 10.70/2.22 | GROUND_INST: instantiating (2) with all_29_2, all_31_3, all_18_8, simplifying
% 10.70/2.22 | with (29), (31) gives:
% 10.70/2.22 | (34) all_31_3 = all_29_2
% 10.70/2.22 |
% 10.70/2.22 | GROUND_INST: instantiating (2) with all_27_0, all_31_3, all_18_8, simplifying
% 10.70/2.22 | with (27), (31) gives:
% 10.70/2.22 | (35) all_31_3 = all_27_0
% 10.70/2.22 |
% 10.70/2.22 | COMBINE_EQS: (34), (35) imply:
% 10.70/2.22 | (36) all_29_2 = all_27_0
% 10.70/2.22 |
% 10.70/2.22 | SIMP: (36) implies:
% 10.70/2.22 | (37) all_29_2 = all_27_0
% 10.70/2.22 |
% 10.70/2.22 | COMBINE_EQS: (33), (37) imply:
% 10.70/2.22 | (38) all_27_0 = all_18_6
% 10.70/2.22 |
% 10.70/2.22 | SIMP: (38) implies:
% 10.70/2.22 | (39) all_27_0 = all_18_6
% 10.70/2.22 |
% 10.70/2.22 | COMBINE_EQS: (35), (39) imply:
% 10.70/2.22 | (40) all_31_3 = all_18_6
% 10.70/2.22 |
% 10.70/2.22 | REDUCE: (26), (39) imply:
% 10.70/2.22 | (41) length(all_18_6) = $sum(all_18_0, -1)
% 10.70/2.22 |
% 10.70/2.22 | REDUCE: (25), (39) imply:
% 10.70/2.22 | (42) record(all_18_6)
% 10.70/2.22 |
% 10.70/2.22 | BETA: splitting (21) gives:
% 10.70/2.22 |
% 10.70/2.22 | Case 1:
% 10.70/2.22 | |
% 10.70/2.22 | | (43) isrecord(all_18_2)
% 10.70/2.22 | |
% 10.70/2.22 | | BETA: splitting (32) gives:
% 10.70/2.22 | |
% 10.70/2.22 | | Case 1:
% 10.70/2.22 | | |
% 10.70/2.22 | | | (44) ~ isrecord(all_31_3)
% 10.70/2.22 | | |
% 10.70/2.22 | | | REDUCE: (40), (44) imply:
% 10.70/2.22 | | | (45) ~ isrecord(all_18_6)
% 10.70/2.22 | | |
% 10.70/2.22 | | | PRED_UNIFY: (8), (45) imply:
% 10.70/2.22 | | | (46) $false
% 10.70/2.23 | | |
% 10.70/2.23 | | | CLOSE: (46) is inconsistent.
% 10.70/2.23 | | |
% 10.70/2.23 | | Case 2:
% 10.70/2.23 | | |
% 10.70/2.23 | | | (47) isrecord(all_31_3)
% 10.70/2.23 | | | (48) all_31_0 = all_31_2 & split2(all_31_1) = all_31_2 & next(all_31_3)
% 10.70/2.23 | | | = all_31_1 & next(all_18_2) = all_31_2 & record(all_31_1) &
% 10.70/2.23 | | | record(all_31_2)
% 10.70/2.23 | | |
% 10.70/2.23 | | | ALPHA: (48) implies:
% 10.70/2.23 | | | (49) next(all_18_2) = all_31_2
% 10.70/2.23 | | | (50) next(all_31_3) = all_31_1
% 10.70/2.23 | | | (51) split2(all_31_1) = all_31_2
% 10.70/2.23 | | |
% 10.70/2.23 | | | REDUCE: (40), (50) imply:
% 10.70/2.23 | | | (52) next(all_18_6) = all_31_1
% 10.70/2.23 | | |
% 10.70/2.23 | | | GROUND_INST: instantiating (2) with all_18_7, all_31_1, all_18_6,
% 10.70/2.23 | | | simplifying with (16), (52) gives:
% 10.70/2.23 | | | (53) all_31_1 = all_18_7
% 10.70/2.23 | | |
% 10.70/2.23 | | | REDUCE: (51), (53) imply:
% 10.70/2.23 | | | (54) split2(all_18_7) = all_31_2
% 10.70/2.23 | | |
% 10.70/2.23 | | | GROUND_INST: instantiating (3) with all_18_5, all_31_2, all_18_7,
% 10.70/2.23 | | | simplifying with (18), (54) gives:
% 10.70/2.23 | | | (55) all_31_2 = all_18_5
% 10.70/2.23 | | |
% 10.70/2.23 | | | REDUCE: (49), (55) imply:
% 10.70/2.23 | | | (56) next(all_18_2) = all_18_5
% 10.70/2.23 | | |
% 10.70/2.23 | | | GROUND_INST: instantiating (ax3) with all_18_2, all_18_1, simplifying with
% 10.70/2.23 | | | (10), (14), (43) gives:
% 10.70/2.23 | | | (57) ? [v0: record] : (next(all_18_2) = v0 & length(v0) =
% 10.70/2.23 | | | $sum(all_18_1, -1) & record(v0))
% 10.70/2.23 | | |
% 10.70/2.23 | | | GROUND_INST: instantiating (ax3) with all_18_6, $sum(all_18_0, -1),
% 10.70/2.23 | | | simplifying with (8), (41), (42) gives:
% 10.70/2.23 | | | (58) ? [v0: record] : (next(all_18_6) = v0 & length(v0) =
% 10.70/2.23 | | | $sum(all_18_0, -2) & record(v0))
% 10.70/2.23 | | |
% 10.70/2.23 | | | DELTA: instantiating (57) with fresh symbol all_64_0 gives:
% 10.70/2.23 | | | (59) next(all_18_2) = all_64_0 & length(all_64_0) = $sum(all_18_1, -1)
% 10.70/2.23 | | | & record(all_64_0)
% 10.70/2.23 | | |
% 10.70/2.23 | | | ALPHA: (59) implies:
% 10.70/2.23 | | | (60) length(all_64_0) = $sum(all_18_1, -1)
% 10.70/2.23 | | | (61) next(all_18_2) = all_64_0
% 10.70/2.23 | | |
% 10.70/2.23 | | | DELTA: instantiating (58) with fresh symbol all_66_0 gives:
% 10.70/2.23 | | | (62) next(all_18_6) = all_66_0 & length(all_66_0) = $sum(all_18_0, -2)
% 10.70/2.23 | | | & record(all_66_0)
% 10.70/2.23 | | |
% 10.70/2.23 | | | ALPHA: (62) implies:
% 10.70/2.23 | | | (63) length(all_66_0) = $sum(all_18_0, -2)
% 10.70/2.23 | | | (64) next(all_18_6) = all_66_0
% 10.70/2.23 | | |
% 10.70/2.23 | | | GROUND_INST: instantiating (2) with all_18_7, all_66_0, all_18_6,
% 10.70/2.23 | | | simplifying with (16), (64) gives:
% 10.70/2.23 | | | (65) all_66_0 = all_18_7
% 10.70/2.23 | | |
% 10.70/2.23 | | | GROUND_INST: instantiating (2) with all_18_5, all_64_0, all_18_2,
% 10.70/2.23 | | | simplifying with (56), (61) gives:
% 10.70/2.23 | | | (66) all_64_0 = all_18_5
% 10.70/2.23 | | |
% 10.70/2.23 | | | REDUCE: (63), (65) imply:
% 10.70/2.23 | | | (67) length(all_18_7) = $sum(all_18_0, -2)
% 10.70/2.23 | | |
% 10.70/2.23 | | | REDUCE: (60), (66) imply:
% 10.70/2.23 | | | (68) length(all_18_5) = $sum(all_18_1, -1)
% 10.70/2.23 | | |
% 10.70/2.23 | | | GROUND_INST: instantiating (1) with all_18_3, $sum(all_18_0, -2),
% 10.70/2.23 | | | all_18_7, simplifying with (12), (67) gives:
% 10.70/2.23 | | | (69) $difference(all_18_0, all_18_3) = 2
% 10.70/2.23 | | |
% 10.70/2.23 | | | GROUND_INST: instantiating (1) with all_18_4, $sum(all_18_1, -1),
% 10.70/2.23 | | | all_18_5, simplifying with (13), (68) gives:
% 10.70/2.23 | | | (70) $difference(all_18_1, all_18_4) = 1
% 10.70/2.23 | | |
% 10.70/2.23 | | | REDUCE: (6), (69), (70) imply:
% 10.70/2.23 | | | (71) ~ ($difference(all_18_3, $product(2, all_18_4)) = 1)
% 10.70/2.23 | | |
% 10.70/2.23 | | | REDUCE: (5), (69), (70) imply:
% 10.70/2.24 | | | (72) ~ (all_18_3 = $product(2, all_18_4))
% 10.70/2.24 | | |
% 10.70/2.24 | | | BETA: splitting (19) gives:
% 10.70/2.24 | | |
% 10.70/2.24 | | | Case 1:
% 10.70/2.24 | | | |
% 10.70/2.24 | | | | (73) all_18_3 = $product(2, all_18_4)
% 10.70/2.24 | | | |
% 10.70/2.24 | | | | REDUCE: (72), (73) imply:
% 10.70/2.24 | | | | (74) $false
% 10.70/2.24 | | | |
% 10.70/2.24 | | | | CLOSE: (74) is inconsistent.
% 10.70/2.24 | | | |
% 10.70/2.24 | | | Case 2:
% 10.70/2.24 | | | |
% 10.70/2.24 | | | | (75) $difference(all_18_3, $product(2, all_18_4)) = 1
% 10.70/2.24 | | | |
% 10.70/2.24 | | | | REDUCE: (71), (75) imply:
% 10.70/2.24 | | | | (76) $false
% 10.70/2.24 | | | |
% 10.70/2.24 | | | | CLOSE: (76) is inconsistent.
% 10.70/2.24 | | | |
% 10.70/2.24 | | | End of split
% 10.70/2.24 | | |
% 10.70/2.24 | | End of split
% 10.70/2.24 | |
% 10.70/2.24 | Case 2:
% 10.70/2.24 | |
% 10.70/2.24 | | (77) ? [v0: record] : (next(all_18_8) = v0 & record(v0) & ~
% 10.70/2.24 | | isrecord(v0))
% 10.70/2.24 | |
% 10.70/2.24 | | DELTA: instantiating (77) with fresh symbol all_41_0 gives:
% 10.70/2.24 | | (78) next(all_18_8) = all_41_0 & record(all_41_0) & ~ isrecord(all_41_0)
% 10.70/2.24 | |
% 10.70/2.24 | | ALPHA: (78) implies:
% 10.70/2.24 | | (79) ~ isrecord(all_41_0)
% 10.70/2.24 | | (80) next(all_18_8) = all_41_0
% 10.70/2.24 | |
% 10.70/2.24 | | GROUND_INST: instantiating (2) with all_18_6, all_41_0, all_18_8,
% 10.70/2.24 | | simplifying with (15), (80) gives:
% 10.70/2.24 | | (81) all_41_0 = all_18_6
% 10.70/2.24 | |
% 10.70/2.24 | | REDUCE: (79), (81) imply:
% 10.70/2.24 | | (82) ~ isrecord(all_18_6)
% 10.70/2.24 | |
% 10.70/2.24 | | PRED_UNIFY: (8), (82) imply:
% 10.70/2.24 | | (83) $false
% 10.70/2.24 | |
% 10.70/2.24 | | CLOSE: (83) is inconsistent.
% 10.70/2.24 | |
% 10.70/2.24 | End of split
% 10.70/2.24 |
% 10.70/2.24 End of proof
% 10.70/2.24 % SZS output end Proof for theBenchmark
% 10.70/2.24
% 10.70/2.24 1624ms
%------------------------------------------------------------------------------