TSTP Solution File: SWC384+1 by Princess---230619

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Princess---230619
% Problem  : SWC384+1 : TPTP v8.1.2. Released v2.4.0.
% Transfm  : none
% Format   : tptp
% Command  : princess -inputFormat=tptp +threads -portfolio=casc +printProof -timeoutSec=%d %s

% Computer : n025.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 20:51:09 EDT 2023

% Result   : Theorem 44.06s 6.69s
% Output   : Proof 109.54s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.11  % Problem  : SWC384+1 : TPTP v8.1.2. Released v2.4.0.
% 0.00/0.12  % Command  : princess -inputFormat=tptp +threads -portfolio=casc +printProof -timeoutSec=%d %s
% 0.12/0.33  % Computer : n025.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 : Mon Aug 28 18:04:39 EDT 2023
% 0.12/0.33  % CPUTime  : 
% 0.19/0.66  ________       _____
% 0.19/0.66  ___  __ \_________(_)________________________________
% 0.19/0.66  __  /_/ /_  ___/_  /__  __ \  ___/  _ \_  ___/_  ___/
% 0.19/0.66  _  ____/_  /   _  / _  / / / /__ /  __/(__  )_(__  )
% 0.19/0.66  /_/     /_/    /_/  /_/ /_/\___/ \___//____/ /____/
% 0.19/0.66  
% 0.19/0.66  A Theorem Prover for First-Order Logic modulo Linear Integer Arithmetic
% 0.19/0.66  (2023-06-19)
% 0.19/0.66  
% 0.19/0.66  (c) Philipp Rümmer, 2009-2023
% 0.19/0.66  Contributors: Peter Backeman, Peter Baumgartner, Angelo Brillout, Zafer Esen,
% 0.19/0.66                Amanda Stjerna.
% 0.19/0.66  Free software under BSD-3-Clause.
% 0.19/0.66  
% 0.19/0.66  For more information, visit http://www.philipp.ruemmer.org/princess.shtml
% 0.19/0.66  
% 0.19/0.66  Loading /export/starexec/sandbox/benchmark/theBenchmark.p ...
% 0.19/0.67  Running up to 7 provers in parallel.
% 0.19/0.68  Prover 1: Options:  +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1571432423
% 0.19/0.68  Prover 0: Options:  +triggersInConjecture +genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1042961893
% 0.19/0.68  Prover 2: Options:  +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMinimalAndEmpty -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1065072994
% 0.19/0.69  Prover 3: Options:  +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1922548996
% 0.19/0.69  Prover 4: Options:  +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=1868514696
% 0.19/0.69  Prover 5: Options:  +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMaximal -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=complete -randomSeed=1259561288
% 0.19/0.69  Prover 6: Options:  -triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximalOutermost -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1399714365
% 6.05/1.66  Prover 4: Preprocessing ...
% 6.58/1.69  Prover 1: Preprocessing ...
% 6.58/1.72  Prover 5: Preprocessing ...
% 6.58/1.72  Prover 0: Preprocessing ...
% 6.58/1.72  Prover 3: Preprocessing ...
% 6.58/1.72  Prover 2: Preprocessing ...
% 6.58/1.72  Prover 6: Preprocessing ...
% 16.80/3.07  Prover 2: Proving ...
% 16.80/3.09  Prover 5: Constructing countermodel ...
% 16.80/3.14  Prover 1: Constructing countermodel ...
% 17.42/3.16  Prover 6: Proving ...
% 18.09/3.24  Prover 3: Constructing countermodel ...
% 23.61/4.05  Prover 4: Constructing countermodel ...
% 24.38/4.15  Prover 0: Proving ...
% 44.06/6.68  Prover 3: proved (6005ms)
% 44.06/6.69  
% 44.06/6.69  % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p
% 44.06/6.69  
% 44.06/6.69  Prover 2: stopped
% 44.40/6.69  Prover 0: stopped
% 44.40/6.70  Prover 7: Options:  +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-236303470
% 44.40/6.70  Prover 5: stopped
% 44.40/6.71  Prover 8: Options:  +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-200781089
% 44.40/6.71  Prover 10: Options:  +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=919308125
% 44.40/6.71  Prover 11: Options:  +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1509710984
% 44.40/6.74  Prover 6: stopped
% 44.88/6.75  Prover 13: Options:  +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=complete -randomSeed=1138197443
% 45.71/6.92  Prover 11: Preprocessing ...
% 45.71/6.93  Prover 7: Preprocessing ...
% 45.71/6.94  Prover 13: Preprocessing ...
% 45.71/6.94  Prover 8: Preprocessing ...
% 45.71/6.97  Prover 10: Preprocessing ...
% 47.68/7.13  Prover 7: Constructing countermodel ...
% 47.68/7.14  Prover 10: Constructing countermodel ...
% 48.69/7.27  Prover 13: Constructing countermodel ...
% 48.89/7.28  Prover 8: Warning: ignoring some quantifiers
% 48.89/7.29  Prover 8: Constructing countermodel ...
% 53.65/7.95  Prover 11: Constructing countermodel ...
% 81.05/11.43  Prover 13: stopped
% 81.05/11.44  Prover 16: Options:  +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=completeFrugal -randomSeed=-2043353683
% 81.21/11.50  Prover 16: Preprocessing ...
% 82.09/11.60  Prover 16: Constructing countermodel ...
% 108.96/15.09  Prover 1: Found proof (size 176)
% 108.96/15.09  Prover 1: proved (14410ms)
% 108.96/15.09  Prover 8: stopped
% 108.96/15.09  Prover 11: stopped
% 108.96/15.09  Prover 7: stopped
% 108.96/15.09  Prover 16: stopped
% 108.96/15.09  Prover 4: stopped
% 108.96/15.09  Prover 10: stopped
% 108.96/15.09  
% 108.96/15.09  % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p
% 108.96/15.09  
% 109.23/15.11  % SZS output start Proof for theBenchmark
% 109.23/15.11  Assumptions after simplification:
% 109.23/15.11  ---------------------------------
% 109.23/15.11  
% 109.23/15.11    (ax15)
% 109.23/15.14     ! [v0: $i] : ( ~ (ssList(v0) = 0) |  ~ $i(v0) |  ! [v1: $i] :  ! [v2: any] :
% 109.23/15.14      ( ~ (neq(v0, v1) = v2) |  ~ $i(v1) |  ? [v3: int] : ( ~ (v3 = 0) &
% 109.23/15.14          ssList(v1) = v3) | (( ~ (v2 = 0) |  ~ (v1 = v0)) & (v2 = 0 | v1 = v0))))
% 109.23/15.14  
% 109.23/15.14    (ax17)
% 109.23/15.14    ssList(nil) = 0 & $i(nil)
% 109.23/15.14  
% 109.23/15.14    (ax20)
% 109.23/15.15    $i(nil) &  ! [v0: $i] : (v0 = nil |  ~ (ssList(v0) = 0) |  ~ $i(v0) |  ? [v1:
% 109.23/15.15        $i] : (ssList(v1) = 0 & $i(v1) &  ? [v2: $i] : (cons(v2, v1) = v0 &
% 109.23/15.15          ssItem(v2) = 0 & $i(v2))))
% 109.23/15.15  
% 109.23/15.15    (ax23)
% 109.23/15.15     ! [v0: $i] : ( ~ (ssList(v0) = 0) |  ~ $i(v0) |  ! [v1: $i] :  ! [v2: $i] : (
% 109.23/15.15        ~ (cons(v1, v0) = v2) |  ~ $i(v1) |  ? [v3: any] :  ? [v4: $i] : (hd(v2) =
% 109.23/15.15          v4 & ssItem(v1) = v3 & $i(v4) & ( ~ (v3 = 0) | v4 = v1))))
% 109.23/15.15  
% 109.23/15.15    (ax25)
% 109.23/15.15     ! [v0: $i] : ( ~ (ssList(v0) = 0) |  ~ $i(v0) |  ! [v1: $i] :  ! [v2: $i] : (
% 109.23/15.15        ~ (cons(v1, v0) = v2) |  ~ $i(v1) |  ? [v3: any] :  ? [v4: $i] : (tl(v2) =
% 109.23/15.15          v4 & ssItem(v1) = v3 & $i(v4) & ( ~ (v3 = 0) | v4 = v0))))
% 109.23/15.15  
% 109.23/15.15    (ax4)
% 109.23/15.15    $i(nil) &  ! [v0: $i] :  ! [v1: any] : ( ~ (singletonP(v0) = v1) |  ~ $i(v0) |
% 109.23/15.15       ? [v2: int] : ( ~ (v2 = 0) & ssList(v0) = v2) | (( ~ (v1 = 0) |  ? [v2: $i]
% 109.23/15.15          : (cons(v2, nil) = v0 & ssItem(v2) = 0 & $i(v2))) & (v1 = 0 |  ! [v2:
% 109.23/15.15            $i] : ( ~ (cons(v2, nil) = v0) |  ~ $i(v2) |  ? [v3: int] : ( ~ (v3 =
% 109.23/15.15                0) & ssItem(v2) = v3)))))
% 109.23/15.15  
% 109.23/15.15    (ax59)
% 109.23/15.16    $i(nil) &  ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) | 
% 109.23/15.16      ? [v2: any] :  ? [v3: any] : (cyclefreeP(v1) = v3 & ssItem(v0) = v2 & ( ~
% 109.23/15.16          (v2 = 0) | v3 = 0)))
% 109.23/15.16  
% 109.23/15.16    (ax61)
% 109.23/15.16    $i(nil) &  ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) | 
% 109.23/15.16      ? [v2: any] :  ? [v3: any] : (totalorderP(v1) = v3 & ssItem(v0) = v2 & ( ~
% 109.23/15.16          (v2 = 0) | v3 = 0)))
% 109.23/15.16  
% 109.23/15.16    (ax63)
% 109.23/15.16    $i(nil) &  ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) | 
% 109.23/15.16      ? [v2: any] :  ? [v3: any] : (strictorderP(v1) = v3 & ssItem(v0) = v2 & ( ~
% 109.23/15.16          (v2 = 0) | v3 = 0)))
% 109.23/15.16  
% 109.23/15.16    (ax65)
% 109.23/15.16    $i(nil) &  ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) | 
% 109.23/15.16      ? [v2: any] :  ? [v3: any] : (totalorderedP(v1) = v3 & ssItem(v0) = v2 & ( ~
% 109.23/15.16          (v2 = 0) | v3 = 0)))
% 109.23/15.16  
% 109.23/15.16    (ax68)
% 109.23/15.16    $i(nil) &  ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) | 
% 109.23/15.16      ? [v2: any] :  ? [v3: any] : (strictorderedP(v1) = v3 & ssItem(v0) = v2 & (
% 109.23/15.16          ~ (v2 = 0) | v3 = 0)))
% 109.23/15.16  
% 109.23/15.16    (ax7)
% 109.23/15.16     ! [v0: $i] : ( ~ (ssList(v0) = 0) |  ~ $i(v0) |  ! [v1: $i] :  ! [v2: any] :
% 109.23/15.16      ( ~ (segmentP(v0, v1) = v2) |  ~ $i(v1) |  ? [v3: int] : ( ~ (v3 = 0) &
% 109.23/15.16          ssList(v1) = v3) | (( ~ (v2 = 0) |  ? [v3: $i] :  ? [v4: $i] :
% 109.23/15.16            (ssList(v3) = 0 & app(v3, v1) = v4 & $i(v4) & $i(v3) &  ? [v5: $i] :
% 109.23/15.16              (ssList(v5) = 0 & app(v4, v5) = v0 & $i(v5)))) & (v2 = 0 |  ! [v3:
% 109.23/15.16              $i] :  ! [v4: $i] : ( ~ (app(v3, v1) = v4) |  ~ $i(v3) |  ? [v5:
% 109.23/15.16                int] : ( ~ (v5 = 0) & ssList(v3) = v5) |  ! [v5: $i] : ( ~
% 109.23/15.16                (app(v4, v5) = v0) |  ~ $i(v5) |  ? [v6: int] : ( ~ (v6 = 0) &
% 109.23/15.16                  ssList(v5) = v6)))))))
% 109.23/15.16  
% 109.23/15.16    (ax71)
% 109.23/15.17    $i(nil) &  ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) | 
% 109.23/15.17      ? [v2: any] :  ? [v3: any] : (duplicatefreeP(v1) = v3 & ssItem(v0) = v2 & (
% 109.23/15.17          ~ (v2 = 0) | v3 = 0)))
% 109.23/15.17  
% 109.23/15.17    (ax73)
% 109.23/15.17    $i(nil) &  ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) | 
% 109.23/15.17      ? [v2: any] :  ? [v3: any] : (equalelemsP(v1) = v3 & ssItem(v0) = v2 & ( ~
% 109.23/15.17          (v2 = 0) | v3 = 0)))
% 109.23/15.17  
% 109.23/15.17    (co1)
% 109.23/15.17    $i(nil) &  ? [v0: $i] :  ? [v1: any] : (singletonP(v0) = v1 & ssList(v0) = 0 &
% 109.23/15.17      $i(v0) &  ? [v2: $i] :  ? [v3: any] : (segmentP(v2, v0) = v3 & ssList(v2) =
% 109.23/15.17        0 & neq(v2, nil) = 0 & $i(v2) & ( ~ (v3 = 0) |  ~ (v1 = 0)) & ( ? [v4: $i]
% 109.23/15.17          :  ? [v5: $i] : (cons(v4, nil) = v5 & ssItem(v4) = 0 & $i(v5) & $i(v4) &
% 109.23/15.17             ? [v6: $i] :  ? [v7: $i] : (ssList(v6) = 0 & app(v6, v0) = v7 &
% 109.23/15.17              $i(v7) & $i(v6) &  ? [v8: $i] : (v5 = v0 & ssList(v8) = 0 & app(v7,
% 109.23/15.17                  v8) = v2 & $i(v8) &  ! [v9: $i] : ( ~ (memberP(v8, v9) = 0) |  ~
% 109.23/15.17                  $i(v9) |  ? [v10: any] :  ? [v11: any] : (lt(v9, v4) = v11 &
% 109.23/15.17                    ssItem(v9) = v10 & ( ~ (v11 = 0) |  ~ (v10 = 0)))) &  ! [v9:
% 109.23/15.17                  $i] : ( ~ (memberP(v6, v9) = 0) |  ~ $i(v9) |  ? [v10: any] :  ?
% 109.23/15.17                  [v11: any] : (lt(v4, v9) = v11 & ssItem(v9) = v10 & ( ~ (v11 =
% 109.23/15.17                        0) |  ~ (v10 = 0))))))) | (v2 = nil & v0 = nil))))
% 109.23/15.17  
% 109.23/15.17    (function-axioms)
% 109.23/15.18     ! [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] :  !
% 109.23/15.18    [v3: $i] : (v1 = v0 |  ~ (gt(v3, v2) = v1) |  ~ (gt(v3, v2) = v0)) &  ! [v0:
% 109.23/15.18      MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] :  ! [v3: $i]
% 109.23/15.18    : (v1 = v0 |  ~ (geq(v3, v2) = v1) |  ~ (geq(v3, v2) = v0)) &  ! [v0:
% 109.23/15.18      MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] :  ! [v3: $i]
% 109.23/15.18    : (v1 = v0 |  ~ (lt(v3, v2) = v1) |  ~ (lt(v3, v2) = v0)) &  ! [v0:
% 109.23/15.18      MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] :  ! [v3: $i]
% 109.23/15.18    : (v1 = v0 |  ~ (leq(v3, v2) = v1) |  ~ (leq(v3, v2) = v0)) &  ! [v0:
% 109.23/15.18      MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] :  ! [v3: $i]
% 109.23/15.18    : (v1 = v0 |  ~ (segmentP(v3, v2) = v1) |  ~ (segmentP(v3, v2) = v0)) &  !
% 109.23/15.18    [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] :  ! [v3:
% 109.23/15.18      $i] : (v1 = v0 |  ~ (rearsegP(v3, v2) = v1) |  ~ (rearsegP(v3, v2) = v0)) & 
% 109.23/15.18    ! [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] :  ! [v3:
% 109.23/15.18      $i] : (v1 = v0 |  ~ (frontsegP(v3, v2) = v1) |  ~ (frontsegP(v3, v2) = v0))
% 109.23/15.18    &  ! [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] :  !
% 109.23/15.18    [v3: $i] : (v1 = v0 |  ~ (memberP(v3, v2) = v1) |  ~ (memberP(v3, v2) = v0)) &
% 109.23/15.18     ! [v0: $i] :  ! [v1: $i] :  ! [v2: $i] :  ! [v3: $i] : (v1 = v0 |  ~
% 109.23/15.18      (cons(v3, v2) = v1) |  ~ (cons(v3, v2) = v0)) &  ! [v0: $i] :  ! [v1: $i] : 
% 109.23/15.18    ! [v2: $i] :  ! [v3: $i] : (v1 = v0 |  ~ (app(v3, v2) = v1) |  ~ (app(v3, v2)
% 109.23/15.18        = v0)) &  ! [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2:
% 109.23/15.18      $i] :  ! [v3: $i] : (v1 = v0 |  ~ (neq(v3, v2) = v1) |  ~ (neq(v3, v2) =
% 109.23/15.18        v0)) &  ! [v0: $i] :  ! [v1: $i] :  ! [v2: $i] : (v1 = v0 |  ~ (tl(v2) =
% 109.23/15.18        v1) |  ~ (tl(v2) = v0)) &  ! [v0: $i] :  ! [v1: $i] :  ! [v2: $i] : (v1 =
% 109.23/15.18      v0 |  ~ (hd(v2) = v1) |  ~ (hd(v2) = v0)) &  ! [v0: MultipleValueBool] :  !
% 109.23/15.18    [v1: MultipleValueBool] :  ! [v2: $i] : (v1 = v0 |  ~ (equalelemsP(v2) = v1) |
% 109.23/15.18       ~ (equalelemsP(v2) = v0)) &  ! [v0: MultipleValueBool] :  ! [v1:
% 109.23/15.18      MultipleValueBool] :  ! [v2: $i] : (v1 = v0 |  ~ (duplicatefreeP(v2) = v1) |
% 109.23/15.18       ~ (duplicatefreeP(v2) = v0)) &  ! [v0: MultipleValueBool] :  ! [v1:
% 109.23/15.18      MultipleValueBool] :  ! [v2: $i] : (v1 = v0 |  ~ (strictorderedP(v2) = v1) |
% 109.23/15.18       ~ (strictorderedP(v2) = v0)) &  ! [v0: MultipleValueBool] :  ! [v1:
% 109.23/15.18      MultipleValueBool] :  ! [v2: $i] : (v1 = v0 |  ~ (totalorderedP(v2) = v1) | 
% 109.23/15.18      ~ (totalorderedP(v2) = v0)) &  ! [v0: MultipleValueBool] :  ! [v1:
% 109.23/15.18      MultipleValueBool] :  ! [v2: $i] : (v1 = v0 |  ~ (strictorderP(v2) = v1) | 
% 109.23/15.18      ~ (strictorderP(v2) = v0)) &  ! [v0: MultipleValueBool] :  ! [v1:
% 109.23/15.18      MultipleValueBool] :  ! [v2: $i] : (v1 = v0 |  ~ (totalorderP(v2) = v1) |  ~
% 109.23/15.18      (totalorderP(v2) = v0)) &  ! [v0: MultipleValueBool] :  ! [v1:
% 109.23/15.18      MultipleValueBool] :  ! [v2: $i] : (v1 = v0 |  ~ (cyclefreeP(v2) = v1) |  ~
% 109.23/15.18      (cyclefreeP(v2) = v0)) &  ! [v0: MultipleValueBool] :  ! [v1:
% 109.23/15.18      MultipleValueBool] :  ! [v2: $i] : (v1 = v0 |  ~ (singletonP(v2) = v1) |  ~
% 109.23/15.18      (singletonP(v2) = v0)) &  ! [v0: MultipleValueBool] :  ! [v1:
% 109.23/15.18      MultipleValueBool] :  ! [v2: $i] : (v1 = v0 |  ~ (ssList(v2) = v1) |  ~
% 109.23/15.18      (ssList(v2) = v0)) &  ! [v0: MultipleValueBool] :  ! [v1: MultipleValueBool]
% 109.23/15.18    :  ! [v2: $i] : (v1 = v0 |  ~ (ssItem(v2) = v1) |  ~ (ssItem(v2) = v0))
% 109.23/15.18  
% 109.23/15.18  Further assumptions not needed in the proof:
% 109.23/15.18  --------------------------------------------
% 109.23/15.18  ax1, ax10, ax11, ax12, ax13, ax14, ax16, ax18, ax19, ax2, ax21, ax22, ax24,
% 109.23/15.18  ax26, ax27, ax28, ax29, ax3, ax30, ax31, ax32, ax33, ax34, ax35, ax36, ax37,
% 109.23/15.18  ax38, ax39, ax40, ax41, ax42, ax43, ax44, ax45, ax46, ax47, ax48, ax49, ax5,
% 109.23/15.18  ax50, ax51, ax52, ax53, ax54, ax55, ax56, ax57, ax58, ax6, ax60, ax62, ax64,
% 109.23/15.18  ax66, ax67, ax69, ax70, ax72, ax74, ax75, ax76, ax77, ax78, ax79, ax8, ax80,
% 109.23/15.18  ax81, ax82, ax83, ax84, ax85, ax86, ax87, ax88, ax89, ax9, ax90, ax91, ax92,
% 109.23/15.18  ax93, ax94, ax95
% 109.23/15.18  
% 109.23/15.18  Those formulas are unsatisfiable:
% 109.23/15.18  ---------------------------------
% 109.23/15.18  
% 109.23/15.18  Begin of proof
% 109.23/15.18  | 
% 109.23/15.18  | ALPHA: (ax4) implies:
% 109.23/15.18  |   (1)   ! [v0: $i] :  ! [v1: any] : ( ~ (singletonP(v0) = v1) |  ~ $i(v0) |  ?
% 109.23/15.18  |          [v2: int] : ( ~ (v2 = 0) & ssList(v0) = v2) | (( ~ (v1 = 0) |  ? [v2:
% 109.23/15.18  |                $i] : (cons(v2, nil) = v0 & ssItem(v2) = 0 & $i(v2))) & (v1 = 0
% 109.23/15.18  |              |  ! [v2: $i] : ( ~ (cons(v2, nil) = v0) |  ~ $i(v2) |  ? [v3:
% 109.23/15.18  |                  int] : ( ~ (v3 = 0) & ssItem(v2) = v3)))))
% 109.23/15.18  | 
% 109.23/15.18  | ALPHA: (ax17) implies:
% 109.23/15.18  |   (2)  ssList(nil) = 0
% 109.23/15.18  | 
% 109.23/15.18  | ALPHA: (ax20) implies:
% 109.23/15.19  |   (3)   ! [v0: $i] : (v0 = nil |  ~ (ssList(v0) = 0) |  ~ $i(v0) |  ? [v1: $i]
% 109.23/15.19  |          : (ssList(v1) = 0 & $i(v1) &  ? [v2: $i] : (cons(v2, v1) = v0 &
% 109.23/15.19  |              ssItem(v2) = 0 & $i(v2))))
% 109.23/15.19  | 
% 109.23/15.19  | ALPHA: (ax59) implies:
% 109.23/15.19  |   (4)   ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) |  ?
% 109.23/15.19  |          [v2: any] :  ? [v3: any] : (cyclefreeP(v1) = v3 & ssItem(v0) = v2 & (
% 109.23/15.19  |              ~ (v2 = 0) | v3 = 0)))
% 109.23/15.19  | 
% 109.23/15.19  | ALPHA: (ax61) implies:
% 109.23/15.19  |   (5)   ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) |  ?
% 109.23/15.19  |          [v2: any] :  ? [v3: any] : (totalorderP(v1) = v3 & ssItem(v0) = v2 &
% 109.23/15.19  |            ( ~ (v2 = 0) | v3 = 0)))
% 109.23/15.19  | 
% 109.23/15.19  | ALPHA: (ax63) implies:
% 109.23/15.19  |   (6)   ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) |  ?
% 109.23/15.19  |          [v2: any] :  ? [v3: any] : (strictorderP(v1) = v3 & ssItem(v0) = v2 &
% 109.23/15.19  |            ( ~ (v2 = 0) | v3 = 0)))
% 109.23/15.19  | 
% 109.23/15.19  | ALPHA: (ax65) implies:
% 109.23/15.19  |   (7)   ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) |  ?
% 109.23/15.19  |          [v2: any] :  ? [v3: any] : (totalorderedP(v1) = v3 & ssItem(v0) = v2
% 109.23/15.19  |            & ( ~ (v2 = 0) | v3 = 0)))
% 109.23/15.19  | 
% 109.23/15.19  | ALPHA: (ax68) implies:
% 109.23/15.19  |   (8)   ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) |  ?
% 109.23/15.19  |          [v2: any] :  ? [v3: any] : (strictorderedP(v1) = v3 & ssItem(v0) = v2
% 109.23/15.19  |            & ( ~ (v2 = 0) | v3 = 0)))
% 109.23/15.19  | 
% 109.23/15.19  | ALPHA: (ax71) implies:
% 109.23/15.19  |   (9)   ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) |  ?
% 109.23/15.19  |          [v2: any] :  ? [v3: any] : (duplicatefreeP(v1) = v3 & ssItem(v0) = v2
% 109.23/15.19  |            & ( ~ (v2 = 0) | v3 = 0)))
% 109.23/15.19  | 
% 109.23/15.19  | ALPHA: (ax73) implies:
% 109.23/15.19  |   (10)   ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) |  ?
% 109.23/15.19  |           [v2: any] :  ? [v3: any] : (equalelemsP(v1) = v3 & ssItem(v0) = v2 &
% 109.23/15.19  |             ( ~ (v2 = 0) | v3 = 0)))
% 109.23/15.19  | 
% 109.23/15.19  | ALPHA: (co1) implies:
% 109.23/15.19  |   (11)  $i(nil)
% 109.23/15.20  |   (12)   ? [v0: $i] :  ? [v1: any] : (singletonP(v0) = v1 & ssList(v0) = 0 &
% 109.23/15.20  |           $i(v0) &  ? [v2: $i] :  ? [v3: any] : (segmentP(v2, v0) = v3 &
% 109.23/15.20  |             ssList(v2) = 0 & neq(v2, nil) = 0 & $i(v2) & ( ~ (v3 = 0) |  ~ (v1
% 109.23/15.20  |                 = 0)) & ( ? [v4: $i] :  ? [v5: $i] : (cons(v4, nil) = v5 &
% 109.23/15.20  |                 ssItem(v4) = 0 & $i(v5) & $i(v4) &  ? [v6: $i] :  ? [v7: $i] :
% 109.23/15.20  |                 (ssList(v6) = 0 & app(v6, v0) = v7 & $i(v7) & $i(v6) &  ? [v8:
% 109.23/15.20  |                     $i] : (v5 = v0 & ssList(v8) = 0 & app(v7, v8) = v2 &
% 109.23/15.20  |                     $i(v8) &  ! [v9: $i] : ( ~ (memberP(v8, v9) = 0) |  ~
% 109.23/15.20  |                       $i(v9) |  ? [v10: any] :  ? [v11: any] : (lt(v9, v4) =
% 109.23/15.20  |                         v11 & ssItem(v9) = v10 & ( ~ (v11 = 0) |  ~ (v10 =
% 109.23/15.20  |                             0)))) &  ! [v9: $i] : ( ~ (memberP(v6, v9) = 0) | 
% 109.23/15.20  |                       ~ $i(v9) |  ? [v10: any] :  ? [v11: any] : (lt(v4, v9) =
% 109.23/15.20  |                         v11 & ssItem(v9) = v10 & ( ~ (v11 = 0) |  ~ (v10 =
% 109.23/15.20  |                             0))))))) | (v2 = nil & v0 = nil))))
% 109.23/15.20  | 
% 109.23/15.20  | ALPHA: (function-axioms) implies:
% 109.23/15.20  |   (13)   ! [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i]
% 109.23/15.20  |         : (v1 = v0 |  ~ (ssItem(v2) = v1) |  ~ (ssItem(v2) = v0))
% 109.23/15.20  |   (14)   ! [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i]
% 109.23/15.20  |         : (v1 = v0 |  ~ (ssList(v2) = v1) |  ~ (ssList(v2) = v0))
% 109.23/15.20  | 
% 109.23/15.20  | DELTA: instantiating (12) with fresh symbols all_93_0, all_93_1 gives:
% 109.23/15.20  |   (15)  singletonP(all_93_1) = all_93_0 & ssList(all_93_1) = 0 & $i(all_93_1)
% 109.23/15.20  |         &  ? [v0: $i] :  ? [v1: any] : (segmentP(v0, all_93_1) = v1 &
% 109.23/15.20  |           ssList(v0) = 0 & neq(v0, nil) = 0 & $i(v0) & ( ~ (v1 = 0) |  ~
% 109.23/15.20  |             (all_93_0 = 0)) & ( ? [v2: $i] :  ? [v3: $i] : (cons(v2, nil) = v3
% 109.23/15.20  |               & ssItem(v2) = 0 & $i(v3) & $i(v2) &  ? [v4: $i] :  ? [v5: $i] :
% 109.23/15.20  |               (ssList(v4) = 0 & app(v4, all_93_1) = v5 & $i(v5) & $i(v4) &  ?
% 109.23/15.20  |                 [v6: $i] : (v3 = all_93_1 & ssList(v6) = 0 & app(v5, v6) = v0
% 109.23/15.20  |                   & $i(v6) &  ! [v7: $i] : ( ~ (memberP(v6, v7) = 0) |  ~
% 109.23/15.20  |                     $i(v7) |  ? [v8: any] :  ? [v9: any] : (lt(v7, v2) = v9 &
% 109.23/15.20  |                       ssItem(v7) = v8 & ( ~ (v9 = 0) |  ~ (v8 = 0)))) &  !
% 109.23/15.20  |                   [v7: $i] : ( ~ (memberP(v4, v7) = 0) |  ~ $i(v7) |  ? [v8:
% 109.23/15.20  |                       any] :  ? [v9: any] : (lt(v2, v7) = v9 & ssItem(v7) = v8
% 109.23/15.20  |                       & ( ~ (v9 = 0) |  ~ (v8 = 0))))))) | (v0 = nil &
% 109.23/15.20  |               all_93_1 = nil)))
% 109.23/15.20  | 
% 109.23/15.20  | ALPHA: (15) implies:
% 109.23/15.20  |   (16)  $i(all_93_1)
% 109.23/15.20  |   (17)  ssList(all_93_1) = 0
% 109.23/15.20  |   (18)  singletonP(all_93_1) = all_93_0
% 109.23/15.21  |   (19)   ? [v0: $i] :  ? [v1: any] : (segmentP(v0, all_93_1) = v1 & ssList(v0)
% 109.23/15.21  |           = 0 & neq(v0, nil) = 0 & $i(v0) & ( ~ (v1 = 0) |  ~ (all_93_0 = 0))
% 109.23/15.21  |           & ( ? [v2: $i] :  ? [v3: $i] : (cons(v2, nil) = v3 & ssItem(v2) = 0
% 109.23/15.21  |               & $i(v3) & $i(v2) &  ? [v4: $i] :  ? [v5: $i] : (ssList(v4) = 0
% 109.23/15.21  |                 & app(v4, all_93_1) = v5 & $i(v5) & $i(v4) &  ? [v6: $i] : (v3
% 109.23/15.21  |                   = all_93_1 & ssList(v6) = 0 & app(v5, v6) = v0 & $i(v6) &  !
% 109.23/15.21  |                   [v7: $i] : ( ~ (memberP(v6, v7) = 0) |  ~ $i(v7) |  ? [v8:
% 109.23/15.21  |                       any] :  ? [v9: any] : (lt(v7, v2) = v9 & ssItem(v7) = v8
% 109.23/15.21  |                       & ( ~ (v9 = 0) |  ~ (v8 = 0)))) &  ! [v7: $i] : ( ~
% 109.23/15.21  |                     (memberP(v4, v7) = 0) |  ~ $i(v7) |  ? [v8: any] :  ? [v9:
% 109.23/15.21  |                       any] : (lt(v2, v7) = v9 & ssItem(v7) = v8 & ( ~ (v9 = 0)
% 109.23/15.21  |                         |  ~ (v8 = 0))))))) | (v0 = nil & all_93_1 = nil)))
% 109.23/15.21  | 
% 109.23/15.21  | DELTA: instantiating (19) with fresh symbols all_97_0, all_97_1 gives:
% 109.23/15.21  |   (20)  segmentP(all_97_1, all_93_1) = all_97_0 & ssList(all_97_1) = 0 &
% 109.23/15.21  |         neq(all_97_1, nil) = 0 & $i(all_97_1) & ( ~ (all_97_0 = 0) |  ~
% 109.23/15.21  |           (all_93_0 = 0)) & ( ? [v0: $i] :  ? [v1: $i] : (cons(v0, nil) = v1 &
% 109.23/15.21  |             ssItem(v0) = 0 & $i(v1) & $i(v0) &  ? [v2: $i] :  ? [v3: $i] :
% 109.23/15.21  |             (ssList(v2) = 0 & app(v2, all_93_1) = v3 & $i(v3) & $i(v2) &  ?
% 109.23/15.21  |               [v4: $i] : (v1 = all_93_1 & ssList(v4) = 0 & app(v3, v4) =
% 109.23/15.21  |                 all_97_1 & $i(v4) &  ! [v5: $i] : ( ~ (memberP(v4, v5) = 0) | 
% 109.23/15.21  |                   ~ $i(v5) |  ? [v6: any] :  ? [v7: any] : (lt(v5, v0) = v7 &
% 109.23/15.21  |                     ssItem(v5) = v6 & ( ~ (v7 = 0) |  ~ (v6 = 0)))) &  ! [v5:
% 109.23/15.21  |                   $i] : ( ~ (memberP(v2, v5) = 0) |  ~ $i(v5) |  ? [v6: any] :
% 109.23/15.21  |                    ? [v7: any] : (lt(v0, v5) = v7 & ssItem(v5) = v6 & ( ~ (v7
% 109.23/15.21  |                         = 0) |  ~ (v6 = 0))))))) | (all_97_1 = nil & all_93_1
% 109.23/15.21  |             = nil))
% 109.23/15.21  | 
% 109.23/15.21  | ALPHA: (20) implies:
% 109.23/15.21  |   (21)  $i(all_97_1)
% 109.23/15.21  |   (22)  neq(all_97_1, nil) = 0
% 109.23/15.21  |   (23)  ssList(all_97_1) = 0
% 109.23/15.21  |   (24)  segmentP(all_97_1, all_93_1) = all_97_0
% 109.23/15.21  |   (25)   ? [v0: $i] :  ? [v1: $i] : (cons(v0, nil) = v1 & ssItem(v0) = 0 &
% 109.23/15.21  |           $i(v1) & $i(v0) &  ? [v2: $i] :  ? [v3: $i] : (ssList(v2) = 0 &
% 109.23/15.21  |             app(v2, all_93_1) = v3 & $i(v3) & $i(v2) &  ? [v4: $i] : (v1 =
% 109.23/15.21  |               all_93_1 & ssList(v4) = 0 & app(v3, v4) = all_97_1 & $i(v4) &  !
% 109.23/15.21  |               [v5: $i] : ( ~ (memberP(v4, v5) = 0) |  ~ $i(v5) |  ? [v6: any]
% 109.23/15.21  |                 :  ? [v7: any] : (lt(v5, v0) = v7 & ssItem(v5) = v6 & ( ~ (v7
% 109.23/15.21  |                       = 0) |  ~ (v6 = 0)))) &  ! [v5: $i] : ( ~ (memberP(v2,
% 109.23/15.21  |                     v5) = 0) |  ~ $i(v5) |  ? [v6: any] :  ? [v7: any] :
% 109.23/15.21  |                 (lt(v0, v5) = v7 & ssItem(v5) = v6 & ( ~ (v7 = 0) |  ~ (v6 =
% 109.23/15.21  |                       0))))))) | (all_97_1 = nil & all_93_1 = nil)
% 109.23/15.21  |   (26)   ~ (all_97_0 = 0) |  ~ (all_93_0 = 0)
% 109.23/15.21  | 
% 109.23/15.21  | GROUND_INST: instantiating (ax25) with nil, simplifying with (2), (11) gives:
% 109.23/15.22  |   (27)   ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) |  ?
% 109.23/15.22  |           [v2: any] :  ? [v3: $i] : (tl(v1) = v3 & ssItem(v0) = v2 & $i(v3) &
% 109.23/15.22  |             ( ~ (v2 = 0) | v3 = nil)))
% 109.23/15.22  | 
% 109.23/15.22  | GROUND_INST: instantiating (ax23) with nil, simplifying with (2), (11) gives:
% 109.23/15.22  |   (28)   ! [v0: $i] :  ! [v1: $i] : ( ~ (cons(v0, nil) = v1) |  ~ $i(v0) |  ?
% 109.23/15.22  |           [v2: any] :  ? [v3: $i] : (hd(v1) = v3 & ssItem(v0) = v2 & $i(v3) &
% 109.23/15.22  |             ( ~ (v2 = 0) | v3 = v0)))
% 109.23/15.22  | 
% 109.23/15.22  | GROUND_INST: instantiating (3) with all_97_1, simplifying with (21), (23)
% 109.23/15.22  |              gives:
% 109.23/15.22  |   (29)  all_97_1 = nil |  ? [v0: $i] : (ssList(v0) = 0 & $i(v0) &  ? [v1: $i]
% 109.23/15.22  |           : (cons(v1, v0) = all_97_1 & ssItem(v1) = 0 & $i(v1)))
% 109.23/15.22  | 
% 109.23/15.22  | GROUND_INST: instantiating (ax7) with all_97_1, simplifying with (21), (23)
% 109.23/15.22  |              gives:
% 109.23/15.22  |   (30)   ! [v0: $i] :  ! [v1: any] : ( ~ (segmentP(all_97_1, v0) = v1) |  ~
% 109.23/15.22  |           $i(v0) |  ? [v2: int] : ( ~ (v2 = 0) & ssList(v0) = v2) | (( ~ (v1 =
% 109.23/15.22  |                 0) |  ? [v2: $i] :  ? [v3: $i] : (ssList(v2) = 0 & app(v2, v0)
% 109.23/15.22  |                 = v3 & $i(v3) & $i(v2) &  ? [v4: $i] : (ssList(v4) = 0 &
% 109.23/15.22  |                   app(v3, v4) = all_97_1 & $i(v4)))) & (v1 = 0 |  ! [v2: $i] :
% 109.23/15.22  |                ! [v3: $i] : ( ~ (app(v2, v0) = v3) |  ~ $i(v2) |  ? [v4: int]
% 109.23/15.22  |                 : ( ~ (v4 = 0) & ssList(v2) = v4) |  ! [v4: $i] : ( ~ (app(v3,
% 109.23/15.22  |                       v4) = all_97_1) |  ~ $i(v4) |  ? [v5: int] : ( ~ (v5 =
% 109.23/15.22  |                       0) & ssList(v4) = v5))))))
% 109.23/15.22  | 
% 109.23/15.22  | GROUND_INST: instantiating (ax15) with all_97_1, simplifying with (21), (23)
% 109.23/15.22  |              gives:
% 109.23/15.22  |   (31)   ! [v0: $i] :  ! [v1: any] : ( ~ (neq(all_97_1, v0) = v1) |  ~ $i(v0)
% 109.23/15.22  |           |  ? [v2: int] : ( ~ (v2 = 0) & ssList(v0) = v2) | (( ~ (v1 = 0) | 
% 109.23/15.22  |               ~ (v0 = all_97_1)) & (v1 = 0 | v0 = all_97_1)))
% 109.23/15.22  | 
% 109.23/15.22  | GROUND_INST: instantiating (1) with all_93_1, all_93_0, simplifying with (16),
% 109.23/15.22  |              (18) gives:
% 109.23/15.22  |   (32)   ? [v0: int] : ( ~ (v0 = 0) & ssList(all_93_1) = v0) | (( ~ (all_93_0
% 109.23/15.22  |               = 0) |  ? [v0: $i] : (cons(v0, nil) = all_93_1 & ssItem(v0) = 0
% 109.23/15.22  |               & $i(v0))) & (all_93_0 = 0 |  ! [v0: $i] : ( ~ (cons(v0, nil) =
% 109.23/15.22  |                 all_93_1) |  ~ $i(v0) |  ? [v1: int] : ( ~ (v1 = 0) &
% 109.23/15.22  |                 ssItem(v0) = v1))))
% 109.23/15.22  | 
% 109.23/15.22  | GROUND_INST: instantiating (31) with nil, 0, simplifying with (11) gives:
% 109.23/15.22  |   (33)   ~ (all_97_1 = nil) |  ~ (neq(nil, nil) = 0) |  ? [v0: int] : ( ~ (v0
% 109.23/15.22  |             = 0) & ssList(nil) = v0)
% 109.23/15.22  | 
% 109.23/15.22  | GROUND_INST: instantiating (30) with all_93_1, all_97_0, simplifying with
% 109.23/15.22  |              (16), (24) gives:
% 109.23/15.23  |   (34)   ? [v0: int] : ( ~ (v0 = 0) & ssList(all_93_1) = v0) | (( ~ (all_97_0
% 109.23/15.23  |               = 0) |  ? [v0: $i] :  ? [v1: $i] : (ssList(v0) = 0 & app(v0,
% 109.23/15.23  |                 all_93_1) = v1 & $i(v1) & $i(v0) &  ? [v2: $i] : (ssList(v2) =
% 109.23/15.23  |                 0 & app(v1, v2) = all_97_1 & $i(v2)))) & (all_97_0 = 0 |  !
% 109.23/15.23  |             [v0: $i] :  ! [v1: $i] : ( ~ (app(v0, all_93_1) = v1) |  ~ $i(v0)
% 109.23/15.23  |               |  ? [v2: int] : ( ~ (v2 = 0) & ssList(v0) = v2) |  ! [v2: $i] :
% 109.23/15.23  |               ( ~ (app(v1, v2) = all_97_1) |  ~ $i(v2) |  ? [v3: int] : ( ~
% 109.23/15.23  |                   (v3 = 0) & ssList(v2) = v3)))))
% 109.23/15.23  | 
% 109.23/15.23  | BETA: splitting (25) gives:
% 109.23/15.23  | 
% 109.23/15.23  | Case 1:
% 109.23/15.23  | | 
% 109.23/15.23  | |   (35)   ? [v0: $i] :  ? [v1: $i] : (cons(v0, nil) = v1 & ssItem(v0) = 0 &
% 109.23/15.23  | |           $i(v1) & $i(v0) &  ? [v2: $i] :  ? [v3: $i] : (ssList(v2) = 0 &
% 109.23/15.23  | |             app(v2, all_93_1) = v3 & $i(v3) & $i(v2) &  ? [v4: $i] : (v1 =
% 109.23/15.23  | |               all_93_1 & ssList(v4) = 0 & app(v3, v4) = all_97_1 & $i(v4) & 
% 109.23/15.23  | |               ! [v5: $i] : ( ~ (memberP(v4, v5) = 0) |  ~ $i(v5) |  ? [v6:
% 109.23/15.23  | |                   any] :  ? [v7: any] : (lt(v5, v0) = v7 & ssItem(v5) = v6 &
% 109.23/15.23  | |                   ( ~ (v7 = 0) |  ~ (v6 = 0)))) &  ! [v5: $i] : ( ~
% 109.23/15.23  | |                 (memberP(v2, v5) = 0) |  ~ $i(v5) |  ? [v6: any] :  ? [v7:
% 109.23/15.23  | |                   any] : (lt(v0, v5) = v7 & ssItem(v5) = v6 & ( ~ (v7 = 0) |
% 109.23/15.23  | |                      ~ (v6 = 0)))))))
% 109.23/15.23  | | 
% 109.23/15.23  | | DELTA: instantiating (35) with fresh symbols all_298_0, all_298_1 gives:
% 109.23/15.23  | |   (36)  cons(all_298_1, nil) = all_298_0 & ssItem(all_298_1) = 0 &
% 109.23/15.23  | |         $i(all_298_0) & $i(all_298_1) &  ? [v0: $i] :  ? [v1: $i] :
% 109.23/15.23  | |         (ssList(v0) = 0 & app(v0, all_93_1) = v1 & $i(v1) & $i(v0) &  ? [v2:
% 109.23/15.23  | |             $i] : (all_298_0 = all_93_1 & ssList(v2) = 0 & app(v1, v2) =
% 109.23/15.23  | |             all_97_1 & $i(v2) &  ! [v3: $i] : ( ~ (memberP(v2, v3) = 0) |  ~
% 109.23/15.23  | |               $i(v3) |  ? [v4: any] :  ? [v5: any] : (lt(v3, all_298_1) = v5
% 109.23/15.23  | |                 & ssItem(v3) = v4 & ( ~ (v5 = 0) |  ~ (v4 = 0)))) &  ! [v3:
% 109.23/15.23  | |               $i] : ( ~ (memberP(v0, v3) = 0) |  ~ $i(v3) |  ? [v4: any] : 
% 109.23/15.23  | |               ? [v5: any] : (lt(all_298_1, v3) = v5 & ssItem(v3) = v4 & ( ~
% 109.23/15.23  | |                   (v5 = 0) |  ~ (v4 = 0))))))
% 109.23/15.23  | | 
% 109.23/15.23  | | ALPHA: (36) implies:
% 109.23/15.23  | |   (37)  $i(all_298_1)
% 109.23/15.23  | |   (38)  ssItem(all_298_1) = 0
% 109.23/15.23  | |   (39)  cons(all_298_1, nil) = all_298_0
% 109.23/15.23  | |   (40)   ? [v0: $i] :  ? [v1: $i] : (ssList(v0) = 0 & app(v0, all_93_1) = v1
% 109.23/15.23  | |           & $i(v1) & $i(v0) &  ? [v2: $i] : (all_298_0 = all_93_1 &
% 109.23/15.23  | |             ssList(v2) = 0 & app(v1, v2) = all_97_1 & $i(v2) &  ! [v3: $i] :
% 109.23/15.23  | |             ( ~ (memberP(v2, v3) = 0) |  ~ $i(v3) |  ? [v4: any] :  ? [v5:
% 109.23/15.23  | |                 any] : (lt(v3, all_298_1) = v5 & ssItem(v3) = v4 & ( ~ (v5 =
% 109.23/15.23  | |                     0) |  ~ (v4 = 0)))) &  ! [v3: $i] : ( ~ (memberP(v0, v3)
% 109.23/15.23  | |                 = 0) |  ~ $i(v3) |  ? [v4: any] :  ? [v5: any] :
% 109.23/15.23  | |               (lt(all_298_1, v3) = v5 & ssItem(v3) = v4 & ( ~ (v5 = 0) |  ~
% 109.23/15.23  | |                   (v4 = 0))))))
% 109.23/15.23  | | 
% 109.23/15.23  | | DELTA: instantiating (40) with fresh symbols all_300_0, all_300_1 gives:
% 109.23/15.24  | |   (41)  ssList(all_300_1) = 0 & app(all_300_1, all_93_1) = all_300_0 &
% 109.23/15.24  | |         $i(all_300_0) & $i(all_300_1) &  ? [v0: $i] : (all_298_0 = all_93_1
% 109.23/15.24  | |           & ssList(v0) = 0 & app(all_300_0, v0) = all_97_1 & $i(v0) &  !
% 109.23/15.24  | |           [v1: $i] : ( ~ (memberP(v0, v1) = 0) |  ~ $i(v1) |  ? [v2: any] : 
% 109.23/15.24  | |             ? [v3: any] : (lt(v1, all_298_1) = v3 & ssItem(v1) = v2 & ( ~
% 109.23/15.24  | |                 (v3 = 0) |  ~ (v2 = 0)))) &  ! [v1: $i] : ( ~
% 109.23/15.24  | |             (memberP(all_300_1, v1) = 0) |  ~ $i(v1) |  ? [v2: any] :  ?
% 109.23/15.24  | |             [v3: any] : (lt(all_298_1, v1) = v3 & ssItem(v1) = v2 & ( ~ (v3
% 109.23/15.24  | |                   = 0) |  ~ (v2 = 0)))))
% 109.23/15.24  | | 
% 109.23/15.24  | | ALPHA: (41) implies:
% 109.23/15.24  | |   (42)  $i(all_300_1)
% 109.23/15.24  | |   (43)  app(all_300_1, all_93_1) = all_300_0
% 109.23/15.24  | |   (44)  ssList(all_300_1) = 0
% 109.23/15.24  | |   (45)   ? [v0: $i] : (all_298_0 = all_93_1 & ssList(v0) = 0 &
% 109.23/15.24  | |           app(all_300_0, v0) = all_97_1 & $i(v0) &  ! [v1: $i] : ( ~
% 109.23/15.24  | |             (memberP(v0, v1) = 0) |  ~ $i(v1) |  ? [v2: any] :  ? [v3: any]
% 109.23/15.24  | |             : (lt(v1, all_298_1) = v3 & ssItem(v1) = v2 & ( ~ (v3 = 0) |  ~
% 109.23/15.24  | |                 (v2 = 0)))) &  ! [v1: $i] : ( ~ (memberP(all_300_1, v1) = 0)
% 109.23/15.24  | |             |  ~ $i(v1) |  ? [v2: any] :  ? [v3: any] : (lt(all_298_1, v1) =
% 109.23/15.24  | |               v3 & ssItem(v1) = v2 & ( ~ (v3 = 0) |  ~ (v2 = 0)))))
% 109.23/15.24  | | 
% 109.23/15.24  | | DELTA: instantiating (45) with fresh symbol all_302_0 gives:
% 109.23/15.24  | |   (46)  all_298_0 = all_93_1 & ssList(all_302_0) = 0 & app(all_300_0,
% 109.23/15.24  | |           all_302_0) = all_97_1 & $i(all_302_0) &  ! [v0: $i] : ( ~
% 109.23/15.24  | |           (memberP(all_302_0, v0) = 0) |  ~ $i(v0) |  ? [v1: any] :  ? [v2:
% 109.23/15.24  | |             any] : (lt(v0, all_298_1) = v2 & ssItem(v0) = v1 & ( ~ (v2 = 0)
% 109.23/15.24  | |               |  ~ (v1 = 0)))) &  ! [v0: $i] : ( ~ (memberP(all_300_1, v0) =
% 109.23/15.24  | |             0) |  ~ $i(v0) |  ? [v1: any] :  ? [v2: any] : (lt(all_298_1,
% 109.23/15.24  | |               v0) = v2 & ssItem(v0) = v1 & ( ~ (v2 = 0) |  ~ (v1 = 0))))
% 109.23/15.24  | | 
% 109.23/15.24  | | ALPHA: (46) implies:
% 109.23/15.24  | |   (47)  all_298_0 = all_93_1
% 109.23/15.24  | |   (48)  $i(all_302_0)
% 109.23/15.24  | |   (49)  app(all_300_0, all_302_0) = all_97_1
% 109.23/15.24  | |   (50)  ssList(all_302_0) = 0
% 109.23/15.24  | | 
% 109.23/15.24  | | REDUCE: (39), (47) imply:
% 109.23/15.24  | |   (51)  cons(all_298_1, nil) = all_93_1
% 109.23/15.24  | | 
% 109.23/15.24  | | BETA: splitting (26) gives:
% 109.23/15.24  | | 
% 109.23/15.24  | | Case 1:
% 109.23/15.24  | | | 
% 109.23/15.24  | | |   (52)   ~ (all_97_0 = 0)
% 109.23/15.24  | | | 
% 109.23/15.24  | | | BETA: splitting (34) gives:
% 109.23/15.24  | | | 
% 109.23/15.24  | | | Case 1:
% 109.23/15.24  | | | | 
% 109.23/15.24  | | | |   (53)   ? [v0: int] : ( ~ (v0 = 0) & ssList(all_93_1) = v0)
% 109.23/15.24  | | | | 
% 109.23/15.24  | | | | DELTA: instantiating (53) with fresh symbol all_314_0 gives:
% 109.23/15.24  | | | |   (54)   ~ (all_314_0 = 0) & ssList(all_93_1) = all_314_0
% 109.54/15.24  | | | | 
% 109.54/15.25  | | | | REF_CLOSE: (14), (17), (54) are inconsistent by sub-proof #2.
% 109.54/15.25  | | | | 
% 109.54/15.25  | | | Case 2:
% 109.54/15.25  | | | | 
% 109.54/15.25  | | | |   (55)  ( ~ (all_97_0 = 0) |  ? [v0: $i] :  ? [v1: $i] : (ssList(v0) = 0
% 109.54/15.25  | | | |             & app(v0, all_93_1) = v1 & $i(v1) & $i(v0) &  ? [v2: $i] :
% 109.54/15.25  | | | |             (ssList(v2) = 0 & app(v1, v2) = all_97_1 & $i(v2)))) &
% 109.54/15.25  | | | |         (all_97_0 = 0 |  ! [v0: $i] :  ! [v1: $i] : ( ~ (app(v0,
% 109.54/15.25  | | | |                 all_93_1) = v1) |  ~ $i(v0) |  ? [v2: int] : ( ~ (v2 =
% 109.54/15.25  | | | |                 0) & ssList(v0) = v2) |  ! [v2: $i] : ( ~ (app(v1, v2) =
% 109.54/15.25  | | | |                 all_97_1) |  ~ $i(v2) |  ? [v3: int] : ( ~ (v3 = 0) &
% 109.54/15.25  | | | |                 ssList(v2) = v3))))
% 109.54/15.25  | | | | 
% 109.54/15.25  | | | | ALPHA: (55) implies:
% 109.54/15.25  | | | |   (56)  all_97_0 = 0 |  ! [v0: $i] :  ! [v1: $i] : ( ~ (app(v0,
% 109.54/15.25  | | | |               all_93_1) = v1) |  ~ $i(v0) |  ? [v2: int] : ( ~ (v2 = 0)
% 109.54/15.25  | | | |             & ssList(v0) = v2) |  ! [v2: $i] : ( ~ (app(v1, v2) =
% 109.54/15.25  | | | |               all_97_1) |  ~ $i(v2) |  ? [v3: int] : ( ~ (v3 = 0) &
% 109.54/15.25  | | | |               ssList(v2) = v3)))
% 109.54/15.25  | | | | 
% 109.54/15.25  | | | | BETA: splitting (56) gives:
% 109.54/15.25  | | | | 
% 109.54/15.25  | | | | Case 1:
% 109.54/15.25  | | | | | 
% 109.54/15.25  | | | | |   (57)  all_97_0 = 0
% 109.54/15.25  | | | | | 
% 109.54/15.25  | | | | | REDUCE: (52), (57) imply:
% 109.54/15.25  | | | | |   (58)  $false
% 109.54/15.25  | | | | | 
% 109.54/15.25  | | | | | CLOSE: (58) is inconsistent.
% 109.54/15.25  | | | | | 
% 109.54/15.25  | | | | Case 2:
% 109.54/15.25  | | | | | 
% 109.54/15.25  | | | | |   (59)   ! [v0: $i] :  ! [v1: $i] : ( ~ (app(v0, all_93_1) = v1) |  ~
% 109.54/15.25  | | | | |           $i(v0) |  ? [v2: int] : ( ~ (v2 = 0) & ssList(v0) = v2) |  !
% 109.54/15.25  | | | | |           [v2: $i] : ( ~ (app(v1, v2) = all_97_1) |  ~ $i(v2) |  ?
% 109.54/15.25  | | | | |             [v3: int] : ( ~ (v3 = 0) & ssList(v2) = v3)))
% 109.54/15.25  | | | | | 
% 109.54/15.25  | | | | | GROUND_INST: instantiating (59) with all_300_1, all_300_0, simplifying
% 109.54/15.25  | | | | |              with (42), (43) gives:
% 109.54/15.25  | | | | |   (60)   ? [v0: int] : ( ~ (v0 = 0) & ssList(all_300_1) = v0) |  !
% 109.54/15.25  | | | | |         [v0: $i] : ( ~ (app(all_300_0, v0) = all_97_1) |  ~ $i(v0) | 
% 109.54/15.25  | | | | |           ? [v1: int] : ( ~ (v1 = 0) & ssList(v0) = v1))
% 109.54/15.25  | | | | | 
% 109.54/15.25  | | | | | BETA: splitting (60) gives:
% 109.54/15.25  | | | | | 
% 109.54/15.25  | | | | | Case 1:
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | |   (61)   ? [v0: int] : ( ~ (v0 = 0) & ssList(all_300_1) = v0)
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | | DELTA: instantiating (61) with fresh symbol all_1019_0 gives:
% 109.54/15.25  | | | | | |   (62)   ~ (all_1019_0 = 0) & ssList(all_300_1) = all_1019_0
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | | ALPHA: (62) implies:
% 109.54/15.25  | | | | | |   (63)   ~ (all_1019_0 = 0)
% 109.54/15.25  | | | | | |   (64)  ssList(all_300_1) = all_1019_0
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | | GROUND_INST: instantiating (14) with 0, all_1019_0, all_300_1,
% 109.54/15.25  | | | | | |              simplifying with (44), (64) gives:
% 109.54/15.25  | | | | | |   (65)  all_1019_0 = 0
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | | REDUCE: (63), (65) imply:
% 109.54/15.25  | | | | | |   (66)  $false
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | | CLOSE: (66) is inconsistent.
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | Case 2:
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | |   (67)   ! [v0: $i] : ( ~ (app(all_300_0, v0) = all_97_1) |  ~
% 109.54/15.25  | | | | | |           $i(v0) |  ? [v1: int] : ( ~ (v1 = 0) & ssList(v0) = v1))
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | | GROUND_INST: instantiating (67) with all_302_0, simplifying with
% 109.54/15.25  | | | | | |              (48), (49) gives:
% 109.54/15.25  | | | | | |   (68)   ? [v0: int] : ( ~ (v0 = 0) & ssList(all_302_0) = v0)
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | | DELTA: instantiating (68) with fresh symbol all_1016_0 gives:
% 109.54/15.25  | | | | | |   (69)   ~ (all_1016_0 = 0) & ssList(all_302_0) = all_1016_0
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | | ALPHA: (69) implies:
% 109.54/15.25  | | | | | |   (70)   ~ (all_1016_0 = 0)
% 109.54/15.25  | | | | | |   (71)  ssList(all_302_0) = all_1016_0
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | | GROUND_INST: instantiating (14) with 0, all_1016_0, all_302_0,
% 109.54/15.25  | | | | | |              simplifying with (50), (71) gives:
% 109.54/15.25  | | | | | |   (72)  all_1016_0 = 0
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | | REDUCE: (70), (72) imply:
% 109.54/15.25  | | | | | |   (73)  $false
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | | CLOSE: (73) is inconsistent.
% 109.54/15.25  | | | | | | 
% 109.54/15.25  | | | | | End of split
% 109.54/15.25  | | | | | 
% 109.54/15.25  | | | | End of split
% 109.54/15.25  | | | | 
% 109.54/15.26  | | | End of split
% 109.54/15.26  | | | 
% 109.54/15.26  | | Case 2:
% 109.54/15.26  | | | 
% 109.54/15.26  | | |   (74)   ~ (all_93_0 = 0)
% 109.54/15.26  | | | 
% 109.54/15.26  | | | BETA: splitting (32) gives:
% 109.54/15.26  | | | 
% 109.54/15.26  | | | Case 1:
% 109.54/15.26  | | | | 
% 109.54/15.26  | | | |   (75)   ? [v0: int] : ( ~ (v0 = 0) & ssList(all_93_1) = v0)
% 109.54/15.26  | | | | 
% 109.54/15.26  | | | | DELTA: instantiating (75) with fresh symbol all_314_0 gives:
% 109.54/15.26  | | | |   (76)   ~ (all_314_0 = 0) & ssList(all_93_1) = all_314_0
% 109.54/15.26  | | | | 
% 109.54/15.26  | | | | REF_CLOSE: (14), (17), (76) are inconsistent by sub-proof #2.
% 109.54/15.26  | | | | 
% 109.54/15.26  | | | Case 2:
% 109.54/15.26  | | | | 
% 109.54/15.26  | | | |   (77)  ( ~ (all_93_0 = 0) |  ? [v0: $i] : (cons(v0, nil) = all_93_1 &
% 109.54/15.26  | | | |             ssItem(v0) = 0 & $i(v0))) & (all_93_0 = 0 |  ! [v0: $i] : (
% 109.54/15.26  | | | |             ~ (cons(v0, nil) = all_93_1) |  ~ $i(v0) |  ? [v1: int] : (
% 109.54/15.26  | | | |               ~ (v1 = 0) & ssItem(v0) = v1)))
% 109.54/15.26  | | | | 
% 109.54/15.26  | | | | ALPHA: (77) implies:
% 109.54/15.26  | | | |   (78)  all_93_0 = 0 |  ! [v0: $i] : ( ~ (cons(v0, nil) = all_93_1) |  ~
% 109.54/15.26  | | | |           $i(v0) |  ? [v1: int] : ( ~ (v1 = 0) & ssItem(v0) = v1))
% 109.54/15.26  | | | | 
% 109.54/15.26  | | | | BETA: splitting (78) gives:
% 109.54/15.26  | | | | 
% 109.54/15.26  | | | | Case 1:
% 109.54/15.26  | | | | | 
% 109.54/15.26  | | | | |   (79)  all_93_0 = 0
% 109.54/15.26  | | | | | 
% 109.54/15.26  | | | | | REDUCE: (74), (79) imply:
% 109.54/15.26  | | | | |   (80)  $false
% 109.54/15.26  | | | | | 
% 109.54/15.26  | | | | | CLOSE: (80) is inconsistent.
% 109.54/15.26  | | | | | 
% 109.54/15.26  | | | | Case 2:
% 109.54/15.26  | | | | | 
% 109.54/15.26  | | | | |   (81)   ! [v0: $i] : ( ~ (cons(v0, nil) = all_93_1) |  ~ $i(v0) |  ?
% 109.54/15.26  | | | | |           [v1: int] : ( ~ (v1 = 0) & ssItem(v0) = v1))
% 109.54/15.26  | | | | | 
% 109.54/15.26  | | | | | BETA: splitting (29) gives:
% 109.54/15.26  | | | | | 
% 109.54/15.26  | | | | | Case 1:
% 109.54/15.26  | | | | | | 
% 109.54/15.26  | | | | | |   (82)  all_97_1 = nil
% 109.54/15.26  | | | | | | 
% 109.54/15.26  | | | | | | REDUCE: (22), (82) imply:
% 109.54/15.26  | | | | | |   (83)  neq(nil, nil) = 0
% 109.54/15.26  | | | | | | 
% 109.54/15.26  | | | | | | REF_CLOSE: (2), (14), (33), (82), (83) are inconsistent by sub-proof
% 109.54/15.26  | | | | | |            #1.
% 109.54/15.26  | | | | | | 
% 109.54/15.26  | | | | | Case 2:
% 109.54/15.26  | | | | | | 
% 109.54/15.26  | | | | | | 
% 109.54/15.26  | | | | | | GROUND_INST: instantiating (81) with all_298_1, simplifying with
% 109.54/15.26  | | | | | |              (37), (51) gives:
% 109.54/15.26  | | | | | |   (84)   ? [v0: int] : ( ~ (v0 = 0) & ssItem(all_298_1) = v0)
% 109.54/15.26  | | | | | | 
% 109.54/15.26  | | | | | | GROUND_INST: instantiating (27) with all_298_1, all_93_1,
% 109.54/15.26  | | | | | |              simplifying with (37), (51) gives:
% 109.54/15.26  | | | | | |   (85)   ? [v0: any] :  ? [v1: $i] : (tl(all_93_1) = v1 &
% 109.54/15.26  | | | | | |           ssItem(all_298_1) = v0 & $i(v1) & ( ~ (v0 = 0) | v1 =
% 109.54/15.26  | | | | | |             nil))
% 109.54/15.26  | | | | | | 
% 109.54/15.26  | | | | | | GROUND_INST: instantiating (28) with all_298_1, all_93_1,
% 109.54/15.26  | | | | | |              simplifying with (37), (51) gives:
% 109.54/15.26  | | | | | |   (86)   ? [v0: any] :  ? [v1: $i] : (hd(all_93_1) = v1 &
% 109.54/15.26  | | | | | |           ssItem(all_298_1) = v0 & $i(v1) & ( ~ (v0 = 0) | v1 =
% 109.54/15.26  | | | | | |             all_298_1))
% 109.54/15.26  | | | | | | 
% 109.54/15.26  | | | | | | GROUND_INST: instantiating (10) with all_298_1, all_93_1,
% 109.54/15.26  | | | | | |              simplifying with (37), (51) gives:
% 109.54/15.26  | | | | | |   (87)   ? [v0: any] :  ? [v1: any] : (equalelemsP(all_93_1) = v1 &
% 109.54/15.26  | | | | | |           ssItem(all_298_1) = v0 & ( ~ (v0 = 0) | v1 = 0))
% 109.54/15.26  | | | | | | 
% 109.54/15.26  | | | | | | GROUND_INST: instantiating (9) with all_298_1, all_93_1, simplifying
% 109.54/15.26  | | | | | |              with (37), (51) gives:
% 109.54/15.26  | | | | | |   (88)   ? [v0: any] :  ? [v1: any] : (duplicatefreeP(all_93_1) = v1
% 109.54/15.26  | | | | | |           & ssItem(all_298_1) = v0 & ( ~ (v0 = 0) | v1 = 0))
% 109.54/15.26  | | | | | | 
% 109.54/15.26  | | | | | | GROUND_INST: instantiating (8) with all_298_1, all_93_1, simplifying
% 109.54/15.26  | | | | | |              with (37), (51) gives:
% 109.54/15.26  | | | | | |   (89)   ? [v0: any] :  ? [v1: any] : (strictorderedP(all_93_1) = v1
% 109.54/15.26  | | | | | |           & ssItem(all_298_1) = v0 & ( ~ (v0 = 0) | v1 = 0))
% 109.54/15.26  | | | | | | 
% 109.54/15.26  | | | | | | GROUND_INST: instantiating (7) with all_298_1, all_93_1, simplifying
% 109.54/15.26  | | | | | |              with (37), (51) gives:
% 109.54/15.26  | | | | | |   (90)   ? [v0: any] :  ? [v1: any] : (totalorderedP(all_93_1) = v1
% 109.54/15.26  | | | | | |           & ssItem(all_298_1) = v0 & ( ~ (v0 = 0) | v1 = 0))
% 109.54/15.26  | | | | | | 
% 109.54/15.26  | | | | | | GROUND_INST: instantiating (6) with all_298_1, all_93_1, simplifying
% 109.54/15.26  | | | | | |              with (37), (51) gives:
% 109.54/15.26  | | | | | |   (91)   ? [v0: any] :  ? [v1: any] : (strictorderP(all_93_1) = v1 &
% 109.54/15.26  | | | | | |           ssItem(all_298_1) = v0 & ( ~ (v0 = 0) | v1 = 0))
% 109.54/15.26  | | | | | | 
% 109.54/15.26  | | | | | | GROUND_INST: instantiating (5) with all_298_1, all_93_1, simplifying
% 109.54/15.26  | | | | | |              with (37), (51) gives:
% 109.54/15.27  | | | | | |   (92)   ? [v0: any] :  ? [v1: any] : (totalorderP(all_93_1) = v1 &
% 109.54/15.27  | | | | | |           ssItem(all_298_1) = v0 & ( ~ (v0 = 0) | v1 = 0))
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | GROUND_INST: instantiating (4) with all_298_1, all_93_1, simplifying
% 109.54/15.27  | | | | | |              with (37), (51) gives:
% 109.54/15.27  | | | | | |   (93)   ? [v0: any] :  ? [v1: any] : (cyclefreeP(all_93_1) = v1 &
% 109.54/15.27  | | | | | |           ssItem(all_298_1) = v0 & ( ~ (v0 = 0) | v1 = 0))
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | DELTA: instantiating (84) with fresh symbol all_1119_0 gives:
% 109.54/15.27  | | | | | |   (94)   ~ (all_1119_0 = 0) & ssItem(all_298_1) = all_1119_0
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | ALPHA: (94) implies:
% 109.54/15.27  | | | | | |   (95)   ~ (all_1119_0 = 0)
% 109.54/15.27  | | | | | |   (96)  ssItem(all_298_1) = all_1119_0
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | DELTA: instantiating (93) with fresh symbols all_1121_0, all_1121_1
% 109.54/15.27  | | | | | |        gives:
% 109.54/15.27  | | | | | |   (97)  cyclefreeP(all_93_1) = all_1121_0 & ssItem(all_298_1) =
% 109.54/15.27  | | | | | |         all_1121_1 & ( ~ (all_1121_1 = 0) | all_1121_0 = 0)
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | ALPHA: (97) implies:
% 109.54/15.27  | | | | | |   (98)  ssItem(all_298_1) = all_1121_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | DELTA: instantiating (91) with fresh symbols all_1123_0, all_1123_1
% 109.54/15.27  | | | | | |        gives:
% 109.54/15.27  | | | | | |   (99)  strictorderP(all_93_1) = all_1123_0 & ssItem(all_298_1) =
% 109.54/15.27  | | | | | |         all_1123_1 & ( ~ (all_1123_1 = 0) | all_1123_0 = 0)
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | ALPHA: (99) implies:
% 109.54/15.27  | | | | | |   (100)  ssItem(all_298_1) = all_1123_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | DELTA: instantiating (90) with fresh symbols all_1125_0, all_1125_1
% 109.54/15.27  | | | | | |        gives:
% 109.54/15.27  | | | | | |   (101)  totalorderedP(all_93_1) = all_1125_0 & ssItem(all_298_1) =
% 109.54/15.27  | | | | | |          all_1125_1 & ( ~ (all_1125_1 = 0) | all_1125_0 = 0)
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | ALPHA: (101) implies:
% 109.54/15.27  | | | | | |   (102)  ssItem(all_298_1) = all_1125_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | DELTA: instantiating (92) with fresh symbols all_1127_0, all_1127_1
% 109.54/15.27  | | | | | |        gives:
% 109.54/15.27  | | | | | |   (103)  totalorderP(all_93_1) = all_1127_0 & ssItem(all_298_1) =
% 109.54/15.27  | | | | | |          all_1127_1 & ( ~ (all_1127_1 = 0) | all_1127_0 = 0)
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | ALPHA: (103) implies:
% 109.54/15.27  | | | | | |   (104)  ssItem(all_298_1) = all_1127_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | DELTA: instantiating (89) with fresh symbols all_1129_0, all_1129_1
% 109.54/15.27  | | | | | |        gives:
% 109.54/15.27  | | | | | |   (105)  strictorderedP(all_93_1) = all_1129_0 & ssItem(all_298_1) =
% 109.54/15.27  | | | | | |          all_1129_1 & ( ~ (all_1129_1 = 0) | all_1129_0 = 0)
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | ALPHA: (105) implies:
% 109.54/15.27  | | | | | |   (106)  ssItem(all_298_1) = all_1129_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | DELTA: instantiating (87) with fresh symbols all_1131_0, all_1131_1
% 109.54/15.27  | | | | | |        gives:
% 109.54/15.27  | | | | | |   (107)  equalelemsP(all_93_1) = all_1131_0 & ssItem(all_298_1) =
% 109.54/15.27  | | | | | |          all_1131_1 & ( ~ (all_1131_1 = 0) | all_1131_0 = 0)
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | ALPHA: (107) implies:
% 109.54/15.27  | | | | | |   (108)  ssItem(all_298_1) = all_1131_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | DELTA: instantiating (88) with fresh symbols all_1133_0, all_1133_1
% 109.54/15.27  | | | | | |        gives:
% 109.54/15.27  | | | | | |   (109)  duplicatefreeP(all_93_1) = all_1133_0 & ssItem(all_298_1) =
% 109.54/15.27  | | | | | |          all_1133_1 & ( ~ (all_1133_1 = 0) | all_1133_0 = 0)
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | ALPHA: (109) implies:
% 109.54/15.27  | | | | | |   (110)  ssItem(all_298_1) = all_1133_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | DELTA: instantiating (86) with fresh symbols all_1135_0, all_1135_1
% 109.54/15.27  | | | | | |        gives:
% 109.54/15.27  | | | | | |   (111)  hd(all_93_1) = all_1135_0 & ssItem(all_298_1) = all_1135_1
% 109.54/15.27  | | | | | |          & $i(all_1135_0) & ( ~ (all_1135_1 = 0) | all_1135_0 =
% 109.54/15.27  | | | | | |            all_298_1)
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | ALPHA: (111) implies:
% 109.54/15.27  | | | | | |   (112)  ssItem(all_298_1) = all_1135_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | DELTA: instantiating (85) with fresh symbols all_1137_0, all_1137_1
% 109.54/15.27  | | | | | |        gives:
% 109.54/15.27  | | | | | |   (113)  tl(all_93_1) = all_1137_0 & ssItem(all_298_1) = all_1137_1
% 109.54/15.27  | | | | | |          & $i(all_1137_0) & ( ~ (all_1137_1 = 0) | all_1137_0 = nil)
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | ALPHA: (113) implies:
% 109.54/15.27  | | | | | |   (114)  ssItem(all_298_1) = all_1137_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | GROUND_INST: instantiating (13) with 0, all_1125_1, all_298_1,
% 109.54/15.27  | | | | | |              simplifying with (38), (102) gives:
% 109.54/15.27  | | | | | |   (115)  all_1125_1 = 0
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | GROUND_INST: instantiating (13) with all_1125_1, all_1129_1,
% 109.54/15.27  | | | | | |              all_298_1, simplifying with (102), (106) gives:
% 109.54/15.27  | | | | | |   (116)  all_1129_1 = all_1125_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | GROUND_INST: instantiating (13) with all_1121_1, all_1129_1,
% 109.54/15.27  | | | | | |              all_298_1, simplifying with (98), (106) gives:
% 109.54/15.27  | | | | | |   (117)  all_1129_1 = all_1121_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | GROUND_INST: instantiating (13) with all_1131_1, all_1133_1,
% 109.54/15.27  | | | | | |              all_298_1, simplifying with (108), (110) gives:
% 109.54/15.27  | | | | | |   (118)  all_1133_1 = all_1131_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | GROUND_INST: instantiating (13) with all_1127_1, all_1133_1,
% 109.54/15.27  | | | | | |              all_298_1, simplifying with (104), (110) gives:
% 109.54/15.27  | | | | | |   (119)  all_1133_1 = all_1127_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | GROUND_INST: instantiating (13) with all_1129_1, all_1135_1,
% 109.54/15.27  | | | | | |              all_298_1, simplifying with (106), (112) gives:
% 109.54/15.27  | | | | | |   (120)  all_1135_1 = all_1129_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | GROUND_INST: instantiating (13) with all_1127_1, all_1135_1,
% 109.54/15.27  | | | | | |              all_298_1, simplifying with (104), (112) gives:
% 109.54/15.27  | | | | | |   (121)  all_1135_1 = all_1127_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | GROUND_INST: instantiating (13) with all_1123_1, all_1135_1,
% 109.54/15.27  | | | | | |              all_298_1, simplifying with (100), (112) gives:
% 109.54/15.27  | | | | | |   (122)  all_1135_1 = all_1123_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | GROUND_INST: instantiating (13) with all_1133_1, all_1137_1,
% 109.54/15.27  | | | | | |              all_298_1, simplifying with (110), (114) gives:
% 109.54/15.27  | | | | | |   (123)  all_1137_1 = all_1133_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | GROUND_INST: instantiating (13) with all_1119_0, all_1137_1,
% 109.54/15.27  | | | | | |              all_298_1, simplifying with (96), (114) gives:
% 109.54/15.27  | | | | | |   (124)  all_1137_1 = all_1119_0
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | COMBINE_EQS: (123), (124) imply:
% 109.54/15.27  | | | | | |   (125)  all_1133_1 = all_1119_0
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | SIMP: (125) implies:
% 109.54/15.27  | | | | | |   (126)  all_1133_1 = all_1119_0
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | COMBINE_EQS: (120), (122) imply:
% 109.54/15.27  | | | | | |   (127)  all_1129_1 = all_1123_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | SIMP: (127) implies:
% 109.54/15.27  | | | | | |   (128)  all_1129_1 = all_1123_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | COMBINE_EQS: (121), (122) imply:
% 109.54/15.27  | | | | | |   (129)  all_1127_1 = all_1123_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | SIMP: (129) implies:
% 109.54/15.27  | | | | | |   (130)  all_1127_1 = all_1123_1
% 109.54/15.27  | | | | | | 
% 109.54/15.27  | | | | | | COMBINE_EQS: (118), (126) imply:
% 109.54/15.27  | | | | | |   (131)  all_1131_1 = all_1119_0
% 109.54/15.27  | | | | | | 
% 109.54/15.28  | | | | | | COMBINE_EQS: (118), (119) imply:
% 109.54/15.28  | | | | | |   (132)  all_1131_1 = all_1127_1
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | COMBINE_EQS: (131), (132) imply:
% 109.54/15.28  | | | | | |   (133)  all_1127_1 = all_1119_0
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | SIMP: (133) implies:
% 109.54/15.28  | | | | | |   (134)  all_1127_1 = all_1119_0
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | COMBINE_EQS: (116), (117) imply:
% 109.54/15.28  | | | | | |   (135)  all_1125_1 = all_1121_1
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | SIMP: (135) implies:
% 109.54/15.28  | | | | | |   (136)  all_1125_1 = all_1121_1
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | COMBINE_EQS: (117), (128) imply:
% 109.54/15.28  | | | | | |   (137)  all_1123_1 = all_1121_1
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | SIMP: (137) implies:
% 109.54/15.28  | | | | | |   (138)  all_1123_1 = all_1121_1
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | COMBINE_EQS: (130), (134) imply:
% 109.54/15.28  | | | | | |   (139)  all_1123_1 = all_1119_0
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | SIMP: (139) implies:
% 109.54/15.28  | | | | | |   (140)  all_1123_1 = all_1119_0
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | COMBINE_EQS: (115), (136) imply:
% 109.54/15.28  | | | | | |   (141)  all_1121_1 = 0
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | SIMP: (141) implies:
% 109.54/15.28  | | | | | |   (142)  all_1121_1 = 0
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | COMBINE_EQS: (138), (140) imply:
% 109.54/15.28  | | | | | |   (143)  all_1121_1 = all_1119_0
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | SIMP: (143) implies:
% 109.54/15.28  | | | | | |   (144)  all_1121_1 = all_1119_0
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | COMBINE_EQS: (142), (144) imply:
% 109.54/15.28  | | | | | |   (145)  all_1119_0 = 0
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | REDUCE: (95), (145) imply:
% 109.54/15.28  | | | | | |   (146)  $false
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | | CLOSE: (146) is inconsistent.
% 109.54/15.28  | | | | | | 
% 109.54/15.28  | | | | | End of split
% 109.54/15.28  | | | | | 
% 109.54/15.28  | | | | End of split
% 109.54/15.28  | | | | 
% 109.54/15.28  | | | End of split
% 109.54/15.28  | | | 
% 109.54/15.28  | | End of split
% 109.54/15.28  | | 
% 109.54/15.28  | Case 2:
% 109.54/15.28  | | 
% 109.54/15.28  | |   (147)  all_97_1 = nil & all_93_1 = nil
% 109.54/15.28  | | 
% 109.54/15.28  | | ALPHA: (147) implies:
% 109.54/15.28  | |   (148)  all_93_1 = nil
% 109.54/15.28  | |   (149)  all_97_1 = nil
% 109.54/15.28  | | 
% 109.54/15.28  | | REDUCE: (22), (149) imply:
% 109.54/15.28  | |   (150)  neq(nil, nil) = 0
% 109.54/15.28  | | 
% 109.54/15.28  | | REF_CLOSE: (2), (14), (33), (149), (150) are inconsistent by sub-proof #1.
% 109.54/15.28  | | 
% 109.54/15.28  | End of split
% 109.54/15.28  | 
% 109.54/15.28  End of proof
% 109.54/15.28  
% 109.54/15.28  Sub-proof #1 shows that the following formulas are inconsistent:
% 109.54/15.28  ----------------------------------------------------------------
% 109.54/15.28    (1)  neq(nil, nil) = 0
% 109.54/15.28    (2)   ! [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] :
% 109.54/15.28         (v1 = v0 |  ~ (ssList(v2) = v1) |  ~ (ssList(v2) = v0))
% 109.54/15.28    (3)   ~ (all_97_1 = nil) |  ~ (neq(nil, nil) = 0) |  ? [v0: int] : ( ~ (v0 =
% 109.54/15.28             0) & ssList(nil) = v0)
% 109.54/15.28    (4)  all_97_1 = nil
% 109.54/15.28    (5)  ssList(nil) = 0
% 109.54/15.28  
% 109.54/15.28  Begin of proof
% 109.54/15.28  | 
% 109.54/15.28  | BETA: splitting (3) gives:
% 109.54/15.28  | 
% 109.54/15.28  | Case 1:
% 109.54/15.28  | | 
% 109.54/15.28  | |   (6)   ~ (neq(nil, nil) = 0)
% 109.54/15.28  | | 
% 109.54/15.28  | | PRED_UNIFY: (1), (6) imply:
% 109.54/15.28  | |   (7)  $false
% 109.54/15.28  | | 
% 109.54/15.28  | | CLOSE: (7) is inconsistent.
% 109.54/15.28  | | 
% 109.54/15.28  | Case 2:
% 109.54/15.28  | | 
% 109.54/15.28  | |   (8)   ~ (all_97_1 = nil) |  ? [v0: int] : ( ~ (v0 = 0) & ssList(nil) = v0)
% 109.54/15.28  | | 
% 109.54/15.28  | | BETA: splitting (8) gives:
% 109.54/15.28  | | 
% 109.54/15.28  | | Case 1:
% 109.54/15.28  | | | 
% 109.54/15.28  | | |   (9)   ~ (all_97_1 = nil)
% 109.54/15.28  | | | 
% 109.54/15.28  | | | REDUCE: (4), (9) imply:
% 109.54/15.28  | | |   (10)  $false
% 109.54/15.28  | | | 
% 109.54/15.28  | | | CLOSE: (10) is inconsistent.
% 109.54/15.28  | | | 
% 109.54/15.28  | | Case 2:
% 109.54/15.28  | | | 
% 109.54/15.28  | | |   (11)   ? [v0: int] : ( ~ (v0 = 0) & ssList(nil) = v0)
% 109.54/15.28  | | | 
% 109.54/15.28  | | | DELTA: instantiating (11) with fresh symbol all_286_0 gives:
% 109.54/15.28  | | |   (12)   ~ (all_286_0 = 0) & ssList(nil) = all_286_0
% 109.54/15.28  | | | 
% 109.54/15.28  | | | ALPHA: (12) implies:
% 109.54/15.28  | | |   (13)   ~ (all_286_0 = 0)
% 109.54/15.28  | | |   (14)  ssList(nil) = all_286_0
% 109.54/15.28  | | | 
% 109.54/15.28  | | | DELTA: instantiating (11) with fresh symbol all_288_0 gives:
% 109.54/15.28  | | |   (15)   ~ (all_288_0 = 0) & ssList(nil) = all_288_0
% 109.54/15.28  | | | 
% 109.54/15.28  | | | ALPHA: (15) implies:
% 109.54/15.28  | | |   (16)  ssList(nil) = all_288_0
% 109.54/15.28  | | | 
% 109.54/15.28  | | | GROUND_INST: instantiating (2) with 0, all_288_0, nil, simplifying with
% 109.54/15.28  | | |              (5), (16) gives:
% 109.54/15.28  | | |   (17)  all_288_0 = 0
% 109.54/15.28  | | | 
% 109.54/15.28  | | | GROUND_INST: instantiating (2) with all_286_0, all_288_0, nil, simplifying
% 109.54/15.28  | | |              with (14), (16) gives:
% 109.54/15.28  | | |   (18)  all_288_0 = all_286_0
% 109.54/15.28  | | | 
% 109.54/15.28  | | | COMBINE_EQS: (17), (18) imply:
% 109.54/15.28  | | |   (19)  all_286_0 = 0
% 109.54/15.28  | | | 
% 109.54/15.28  | | | REDUCE: (13), (19) imply:
% 109.54/15.28  | | |   (20)  $false
% 109.54/15.28  | | | 
% 109.54/15.28  | | | CLOSE: (20) is inconsistent.
% 109.54/15.28  | | | 
% 109.54/15.28  | | End of split
% 109.54/15.28  | | 
% 109.54/15.28  | End of split
% 109.54/15.28  | 
% 109.54/15.28  End of proof
% 109.54/15.28  
% 109.54/15.28  Sub-proof #2 shows that the following formulas are inconsistent:
% 109.54/15.28  ----------------------------------------------------------------
% 109.54/15.28    (1)   ~ (all_314_0 = 0) & ssList(all_93_1) = all_314_0
% 109.54/15.28    (2)   ! [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] :
% 109.54/15.28         (v1 = v0 |  ~ (ssList(v2) = v1) |  ~ (ssList(v2) = v0))
% 109.54/15.28    (3)  ssList(all_93_1) = 0
% 109.54/15.28  
% 109.54/15.28  Begin of proof
% 109.54/15.28  | 
% 109.54/15.28  | ALPHA: (1) implies:
% 109.54/15.28  |   (4)   ~ (all_314_0 = 0)
% 109.54/15.28  |   (5)  ssList(all_93_1) = all_314_0
% 109.54/15.28  | 
% 109.54/15.28  | GROUND_INST: instantiating (2) with 0, all_314_0, all_93_1, simplifying with
% 109.54/15.28  |              (3), (5) gives:
% 109.54/15.29  |   (6)  all_314_0 = 0
% 109.54/15.29  | 
% 109.54/15.29  | REDUCE: (4), (6) imply:
% 109.54/15.29  |   (7)  $false
% 109.54/15.29  | 
% 109.54/15.29  | CLOSE: (7) is inconsistent.
% 109.54/15.29  | 
% 109.54/15.29  End of proof
% 109.54/15.29  % SZS output end Proof for theBenchmark
% 109.54/15.29  
% 109.54/15.29  14628ms
%------------------------------------------------------------------------------