↑ Up

Princess---230619.THM-Prf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : Princess---230619
% Problem  : GRA005+1 : TPTP v8.1.2. Bugfixed v3.2.0.
% Transfm  : none
% Format   : tptp
% Command  : princess -inputFormat=tptp +threads -portfolio=casc +printProof -timeoutSec=%d %s

% Computer : n004.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Thu Aug 31 00:04:28 EDT 2023

% Result   : Theorem 9.44s 2.18s
% Output   : Proof 13.37s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.13/0.13  % Problem  : GRA005+1 : TPTP v8.1.2. Bugfixed v3.2.0.
% 0.13/0.14  % Command  : princess -inputFormat=tptp +threads -portfolio=casc +printProof -timeoutSec=%d %s
% 0.14/0.35  % Computer : n004.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 : Sun Aug 27 03:26:22 EDT 2023
% 0.14/0.35  % CPUTime  : 
% 0.21/0.62  ________       _____
% 0.21/0.62  ___  __ \_________(_)________________________________
% 0.21/0.62  __  /_/ /_  ___/_  /__  __ \  ___/  _ \_  ___/_  ___/
% 0.21/0.62  _  ____/_  /   _  / _  / / / /__ /  __/(__  )_(__  )
% 0.21/0.62  /_/     /_/    /_/  /_/ /_/\___/ \___//____/ /____/
% 0.21/0.62  
% 0.21/0.62  A Theorem Prover for First-Order Logic modulo Linear Integer Arithmetic
% 0.21/0.62  (2023-06-19)
% 0.21/0.62  
% 0.21/0.62  (c) Philipp Rümmer, 2009-2023
% 0.21/0.62  Contributors: Peter Backeman, Peter Baumgartner, Angelo Brillout, Zafer Esen,
% 0.21/0.62                Amanda Stjerna.
% 0.21/0.62  Free software under BSD-3-Clause.
% 0.21/0.62  
% 0.21/0.62  For more information, visit http://www.philipp.ruemmer.org/princess.shtml
% 0.21/0.62  
% 0.21/0.62  Loading /export/starexec/sandbox2/benchmark/theBenchmark.p ...
% 0.21/0.64  Running up to 7 provers in parallel.
% 0.21/0.65  Prover 1: Options:  +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1571432423
% 0.21/0.65  Prover 0: Options:  +triggersInConjecture +genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1042961893
% 0.21/0.65  Prover 3: Options:  +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=1922548996
% 0.21/0.65  Prover 2: Options:  +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMinimalAndEmpty -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1065072994
% 0.21/0.65  Prover 5: Options:  +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allMaximal -realRatSaturationRounds=1 -ignoreQuantifiers -constructProofs=never -generateTriggers=complete -randomSeed=1259561288
% 0.21/0.65  Prover 4: Options:  +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=1868514696
% 0.21/0.65  Prover 6: Options:  -triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=none +reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximalOutermost -realRatSaturationRounds=0 -ignoreQuantifiers -constructProofs=never -generateTriggers=all -randomSeed=-1399714365
% 3.27/1.19  Prover 4: Preprocessing ...
% 3.27/1.20  Prover 1: Preprocessing ...
% 3.81/1.27  Prover 3: Preprocessing ...
% 3.81/1.27  Prover 6: Preprocessing ...
% 3.81/1.27  Prover 2: Preprocessing ...
% 3.81/1.27  Prover 0: Preprocessing ...
% 3.81/1.27  Prover 5: Preprocessing ...
% 8.10/1.95  Prover 1: Constructing countermodel ...
% 8.10/1.96  Prover 3: Constructing countermodel ...
% 8.10/1.98  Prover 6: Proving ...
% 8.10/1.98  Prover 5: Proving ...
% 8.10/1.99  Prover 2: Proving ...
% 9.44/2.17  Prover 4: Constructing countermodel ...
% 9.44/2.17  Prover 3: proved (1523ms)
% 9.44/2.18  
% 9.44/2.18  % SZS status Theorem for /export/starexec/sandbox2/benchmark/theBenchmark.p
% 9.44/2.18  
% 9.44/2.18  Prover 6: stopped
% 9.44/2.18  Prover 2: stopped
% 9.78/2.19  Prover 5: stopped
% 9.78/2.19  Prover 0: Proving ...
% 9.78/2.19  Prover 0: stopped
% 9.78/2.22  Prover 7: Options:  +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple +reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-236303470
% 9.78/2.22  Prover 10: Options:  +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=919308125
% 9.78/2.22  Prover 8: Options:  +triggersInConjecture +genTotalityAxioms -tightFunctionScopes -clausifier=none -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-200781089
% 9.78/2.22  Prover 11: Options:  +triggersInConjecture -genTotalityAxioms +tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation -boolFunsAsPreds -triggerStrategy=allUni -realRatSaturationRounds=1 +ignoreQuantifiers -constructProofs=always -generateTriggers=all -randomSeed=-1509710984
% 9.78/2.22  Prover 13: Options:  +triggersInConjecture -genTotalityAxioms -tightFunctionScopes -clausifier=simple -reverseFunctionalityPropagation +boolFunsAsPreds -triggerStrategy=maximal -realRatSaturationRounds=0 +ignoreQuantifiers -constructProofs=always -generateTriggers=complete -randomSeed=1138197443
% 10.23/2.28  Prover 8: Preprocessing ...
% 10.23/2.29  Prover 7: Preprocessing ...
% 10.23/2.29  Prover 10: Preprocessing ...
% 10.23/2.29  Prover 11: Preprocessing ...
% 10.61/2.31  Prover 13: Preprocessing ...
% 11.55/2.48  Prover 10: Warning: ignoring some quantifiers
% 11.87/2.50  Prover 8: Warning: ignoring some quantifiers
% 11.87/2.50  Prover 13: Warning: ignoring some quantifiers
% 11.87/2.51  Prover 8: Constructing countermodel ...
% 11.87/2.51  Prover 10: Constructing countermodel ...
% 11.87/2.51  Prover 7: Warning: ignoring some quantifiers
% 11.87/2.52  Prover 13: Constructing countermodel ...
% 11.87/2.53  Prover 7: Constructing countermodel ...
% 12.35/2.61  Prover 4: Found proof (size 62)
% 12.35/2.61  Prover 4: proved (1957ms)
% 12.35/2.61  Prover 13: stopped
% 12.35/2.61  Prover 8: stopped
% 12.35/2.61  Prover 1: stopped
% 12.35/2.61  Prover 10: stopped
% 12.35/2.62  Prover 7: stopped
% 12.35/2.66  Prover 11: Constructing countermodel ...
% 12.35/2.67  Prover 11: stopped
% 12.35/2.67  
% 12.35/2.67  % SZS status Theorem for /export/starexec/sandbox2/benchmark/theBenchmark.p
% 12.35/2.67  
% 12.35/2.69  % SZS output start Proof for theBenchmark
% 12.35/2.69  Assumptions after simplification:
% 12.35/2.69  ---------------------------------
% 12.35/2.69  
% 12.35/2.69    (edge_ends_are_vertices)
% 13.10/2.72     ! [v0: $i] :  ! [v1: $i] : ( ~ (head_of(v0) = v1) |  ~ $i(v0) |  ? [v2: any]
% 13.10/2.72      :  ? [v3: any] :  ? [v4: $i] :  ? [v5: any] : (vertex(v4) = v5 & vertex(v1)
% 13.10/2.72        = v3 & edge(v0) = v2 & tail_of(v0) = v4 & $i(v4) & ( ~ (v2 = 0) | (v5 = 0
% 13.10/2.72            & v3 = 0)))) &  ! [v0: $i] :  ! [v1: $i] : ( ~ (tail_of(v0) = v1) |  ~
% 13.10/2.72      $i(v0) |  ? [v2: any] :  ? [v3: $i] :  ? [v4: any] :  ? [v5: any] :
% 13.10/2.72      (vertex(v3) = v4 & vertex(v1) = v5 & head_of(v0) = v3 & edge(v0) = v2 &
% 13.10/2.72        $i(v3) & ( ~ (v2 = 0) | (v5 = 0 & v4 = 0)))) &  ! [v0: $i] : ( ~ (edge(v0)
% 13.10/2.72        = 0) |  ~ $i(v0) |  ? [v1: $i] :  ? [v2: $i] : (vertex(v2) = 0 &
% 13.10/2.72        vertex(v1) = 0 & head_of(v0) = v1 & tail_of(v0) = v2 & $i(v2) & $i(v1)))
% 13.10/2.72  
% 13.10/2.72    (no_loops)
% 13.10/2.72     ! [v0: $i] :  ! [v1: $i] : ( ~ (head_of(v0) = v1) |  ~ $i(v0) |  ? [v2: any]
% 13.10/2.72      :  ? [v3: $i] : (edge(v0) = v2 & tail_of(v0) = v3 & $i(v3) & ( ~ (v3 = v1) |
% 13.10/2.72           ~ (v2 = 0)))) &  ! [v0: $i] :  ! [v1: $i] : ( ~ (tail_of(v0) = v1) |  ~
% 13.10/2.72      $i(v0) |  ? [v2: any] :  ? [v3: $i] : (head_of(v0) = v3 & edge(v0) = v2 &
% 13.10/2.72        $i(v3) & ( ~ (v3 = v1) |  ~ (v2 = 0)))) &  ! [v0: $i] : ( ~ (edge(v0) = 0)
% 13.10/2.72      |  ~ $i(v0) |  ? [v1: $i] :  ? [v2: $i] : ( ~ (v2 = v1) & head_of(v0) = v1 &
% 13.10/2.72        tail_of(v0) = v2 & $i(v2) & $i(v1)))
% 13.10/2.72  
% 13.10/2.72    (no_short_cut_edge)
% 13.10/2.73     ? [v0: $i] :  ? [v1: $i] :  ? [v2: $i] :  ? [v3: $i] :  ? [v4: $i] :  ? [v5:
% 13.10/2.73      $i] :  ? [v6: $i] :  ? [v7: $i] : (shortest_path(v0, v1, v4) = 0 &
% 13.10/2.73      precedes(v2, v3, v4) = 0 & head_of(v7) = v6 & head_of(v3) = v6 & edge(v7) =
% 13.10/2.73      0 & tail_of(v7) = v5 & tail_of(v2) = v5 & $i(v7) & $i(v6) & $i(v5) & $i(v4)
% 13.10/2.73      & $i(v3) & $i(v2) & $i(v1) & $i(v0))
% 13.10/2.73  
% 13.10/2.73    (shortest_path_properties)
% 13.10/2.73     ! [v0: $i] :  ! [v1: $i] :  ! [v2: $i] :  ! [v3: $i] :  ! [v4: $i] :  ! [v5:
% 13.10/2.73      $i] :  ! [v6: $i] : ( ~ (shortest_path(v0, v1, v4) = 0) |  ~ (head_of(v3) =
% 13.10/2.73        v6) |  ~ (tail_of(v2) = v5) |  ~ $i(v4) |  ~ $i(v3) |  ~ $i(v2) |  ~
% 13.10/2.73      $i(v1) |  ~ $i(v0) |  ? [v7: any] :  ? [v8: any] : (precedes(v3, v2, v4) =
% 13.10/2.73        v8 & precedes(v2, v3, v4) = v7 & ( ~ (v7 = 0) | ( ~ (v8 = 0) &  ! [v9: $i]
% 13.10/2.73            : ( ~ (head_of(v9) = v6) |  ~ $i(v9) |  ? [v10: $i] : ( ~ (v10 = v5) &
% 13.10/2.73                tail_of(v9) = v10 & $i(v10))) &  ! [v9: $i] : ( ~ (tail_of(v9) =
% 13.10/2.73                v5) |  ~ $i(v9) |  ? [v10: $i] : ( ~ (v10 = v6) & head_of(v9) =
% 13.10/2.73                v10 & $i(v10))))))) &  ! [v0: $i] :  ! [v1: $i] :  ! [v2: $i] :  !
% 13.10/2.73    [v3: $i] :  ! [v4: $i] :  ! [v5: any] : ( ~ (shortest_path(v0, v1, v4) = 0) | 
% 13.10/2.73      ~ (precedes(v3, v2, v4) = v5) |  ~ $i(v4) |  ~ $i(v3) |  ~ $i(v2) |  ~
% 13.10/2.73      $i(v1) |  ~ $i(v0) |  ? [v6: any] :  ? [v7: $i] :  ? [v8: $i] :
% 13.10/2.73      (precedes(v2, v3, v4) = v6 & head_of(v3) = v8 & tail_of(v2) = v7 & $i(v8) &
% 13.10/2.73        $i(v7) & ( ~ (v6 = 0) | ( ~ (v5 = 0) &  ! [v9: $i] : ( ~ (head_of(v9) =
% 13.10/2.73                v8) |  ~ $i(v9) |  ? [v10: $i] : ( ~ (v10 = v7) & tail_of(v9) =
% 13.10/2.73                v10 & $i(v10))) &  ! [v9: $i] : ( ~ (tail_of(v9) = v7) |  ~ $i(v9)
% 13.10/2.73              |  ? [v10: $i] : ( ~ (v10 = v8) & head_of(v9) = v10 & $i(v10)))))))
% 13.10/2.73    &  ! [v0: $i] :  ! [v1: $i] :  ! [v2: $i] :  ! [v3: $i] :  ! [v4: $i] : ( ~
% 13.10/2.73      (shortest_path(v0, v1, v4) = 0) |  ~ (precedes(v2, v3, v4) = 0) |  ~ $i(v4)
% 13.10/2.73      |  ~ $i(v3) |  ~ $i(v2) |  ~ $i(v1) |  ~ $i(v0) |  ? [v5: $i] :  ? [v6: $i]
% 13.10/2.73      :  ? [v7: int] : ( ~ (v7 = 0) & precedes(v3, v2, v4) = v7 & head_of(v3) = v6
% 13.10/2.73        & tail_of(v2) = v5 & $i(v6) & $i(v5) &  ! [v8: $i] : ( ~ (head_of(v8) =
% 13.10/2.73            v6) |  ~ $i(v8) |  ? [v9: $i] : ( ~ (v9 = v5) & tail_of(v8) = v9 &
% 13.10/2.73            $i(v9))) &  ! [v8: $i] : ( ~ (tail_of(v8) = v5) |  ~ $i(v8) |  ? [v9:
% 13.10/2.73            $i] : ( ~ (v9 = v6) & head_of(v8) = v9 & $i(v9)))))
% 13.10/2.73  
% 13.10/2.73    (function-axioms)
% 13.10/2.74     ! [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] :  !
% 13.10/2.74    [v3: $i] :  ! [v4: $i] : (v1 = v0 |  ~ (triangle(v4, v3, v2) = v1) |  ~
% 13.10/2.74      (triangle(v4, v3, v2) = v0)) &  ! [v0: MultipleValueBool] :  ! [v1:
% 13.10/2.74      MultipleValueBool] :  ! [v2: $i] :  ! [v3: $i] :  ! [v4: $i] : (v1 = v0 |  ~
% 13.10/2.74      (shortest_path(v4, v3, v2) = v1) |  ~ (shortest_path(v4, v3, v2) = v0)) &  !
% 13.10/2.74    [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] :  ! [v3:
% 13.10/2.74      $i] :  ! [v4: $i] : (v1 = v0 |  ~ (precedes(v4, v3, v2) = v1) |  ~
% 13.10/2.74      (precedes(v4, v3, v2) = v0)) &  ! [v0: MultipleValueBool] :  ! [v1:
% 13.10/2.74      MultipleValueBool] :  ! [v2: $i] :  ! [v3: $i] :  ! [v4: $i] : (v1 = v0 |  ~
% 13.10/2.74      (path(v4, v3, v2) = v1) |  ~ (path(v4, v3, v2) = v0)) &  ! [v0: $i] :  !
% 13.10/2.74    [v1: $i] :  ! [v2: $i] :  ! [v3: $i] : (v1 = v0 |  ~ (minus(v3, v2) = v1) |  ~
% 13.10/2.74      (minus(v3, v2) = v0)) &  ! [v0: $i] :  ! [v1: $i] :  ! [v2: $i] :  ! [v3:
% 13.10/2.74      $i] : (v1 = v0 |  ~ (number_of_in(v3, v2) = v1) |  ~ (number_of_in(v3, v2) =
% 13.10/2.74        v0)) &  ! [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2:
% 13.10/2.74      $i] :  ! [v3: $i] : (v1 = v0 |  ~ (less_or_equal(v3, v2) = v1) |  ~
% 13.10/2.74      (less_or_equal(v3, v2) = v0)) &  ! [v0: MultipleValueBool] :  ! [v1:
% 13.10/2.74      MultipleValueBool] :  ! [v2: $i] :  ! [v3: $i] : (v1 = v0 |  ~
% 13.10/2.74      (sequential(v3, v2) = v1) |  ~ (sequential(v3, v2) = v0)) &  ! [v0:
% 13.10/2.74      MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] :  ! [v3: $i]
% 13.10/2.74    : (v1 = v0 |  ~ (on_path(v3, v2) = v1) |  ~ (on_path(v3, v2) = v0)) &  ! [v0:
% 13.10/2.74      MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] :  ! [v3: $i]
% 13.10/2.74    : (v1 = v0 |  ~ (in_path(v3, v2) = v1) |  ~ (in_path(v3, v2) = v0)) &  ! [v0:
% 13.10/2.74      $i] :  ! [v1: $i] :  ! [v2: $i] :  ! [v3: $i] : (v1 = v0 |  ~ (path_cons(v3,
% 13.10/2.74          v2) = v1) |  ~ (path_cons(v3, v2) = v0)) &  ! [v0: $i] :  ! [v1: $i] : 
% 13.10/2.74    ! [v2: $i] : (v1 = v0 |  ~ (length_of(v2) = v1) |  ~ (length_of(v2) = v0)) & 
% 13.10/2.74    ! [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i] : (v1 =
% 13.10/2.74      v0 |  ~ (vertex(v2) = v1) |  ~ (vertex(v2) = v0)) &  ! [v0: $i] :  ! [v1:
% 13.10/2.74      $i] :  ! [v2: $i] : (v1 = v0 |  ~ (head_of(v2) = v1) |  ~ (head_of(v2) =
% 13.10/2.74        v0)) &  ! [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2:
% 13.10/2.74      $i] : (v1 = v0 |  ~ (edge(v2) = v1) |  ~ (edge(v2) = v0)) &  ! [v0: $i] :  !
% 13.10/2.74    [v1: $i] :  ! [v2: $i] : (v1 = v0 |  ~ (tail_of(v2) = v1) |  ~ (tail_of(v2) =
% 13.10/2.74        v0))
% 13.10/2.74  
% 13.10/2.74  Further assumptions not needed in the proof:
% 13.10/2.74  --------------------------------------------
% 13.10/2.74  complete_properties, graph_has_them_all, in_path_properties, length_defn,
% 13.10/2.74  on_path_properties, path_defn, path_length_sequential_pairs, path_properties,
% 13.10/2.74  precedes_defn, precedes_properties, sequential_defn,
% 13.10/2.74  sequential_pairs_and_triangles, shortest_path_defn, triangle_defn
% 13.10/2.74  
% 13.10/2.74  Those formulas are unsatisfiable:
% 13.10/2.74  ---------------------------------
% 13.10/2.74  
% 13.10/2.74  Begin of proof
% 13.10/2.74  | 
% 13.10/2.74  | ALPHA: (no_loops) implies:
% 13.37/2.74  |   (1)   ! [v0: $i] : ( ~ (edge(v0) = 0) |  ~ $i(v0) |  ? [v1: $i] :  ? [v2:
% 13.37/2.74  |            $i] : ( ~ (v2 = v1) & head_of(v0) = v1 & tail_of(v0) = v2 & $i(v2)
% 13.37/2.74  |            & $i(v1)))
% 13.37/2.74  |   (2)   ! [v0: $i] :  ! [v1: $i] : ( ~ (tail_of(v0) = v1) |  ~ $i(v0) |  ?
% 13.37/2.74  |          [v2: any] :  ? [v3: $i] : (head_of(v0) = v3 & edge(v0) = v2 & $i(v3)
% 13.37/2.74  |            & ( ~ (v3 = v1) |  ~ (v2 = 0))))
% 13.37/2.75  |   (3)   ! [v0: $i] :  ! [v1: $i] : ( ~ (head_of(v0) = v1) |  ~ $i(v0) |  ?
% 13.37/2.75  |          [v2: any] :  ? [v3: $i] : (edge(v0) = v2 & tail_of(v0) = v3 & $i(v3)
% 13.37/2.75  |            & ( ~ (v3 = v1) |  ~ (v2 = 0))))
% 13.37/2.75  | 
% 13.37/2.75  | ALPHA: (edge_ends_are_vertices) implies:
% 13.37/2.75  |   (4)   ! [v0: $i] : ( ~ (edge(v0) = 0) |  ~ $i(v0) |  ? [v1: $i] :  ? [v2:
% 13.37/2.75  |            $i] : (vertex(v2) = 0 & vertex(v1) = 0 & head_of(v0) = v1 &
% 13.37/2.75  |            tail_of(v0) = v2 & $i(v2) & $i(v1)))
% 13.37/2.75  |   (5)   ! [v0: $i] :  ! [v1: $i] : ( ~ (tail_of(v0) = v1) |  ~ $i(v0) |  ?
% 13.37/2.75  |          [v2: any] :  ? [v3: $i] :  ? [v4: any] :  ? [v5: any] : (vertex(v3) =
% 13.37/2.75  |            v4 & vertex(v1) = v5 & head_of(v0) = v3 & edge(v0) = v2 & $i(v3) &
% 13.37/2.75  |            ( ~ (v2 = 0) | (v5 = 0 & v4 = 0))))
% 13.37/2.75  |   (6)   ! [v0: $i] :  ! [v1: $i] : ( ~ (head_of(v0) = v1) |  ~ $i(v0) |  ?
% 13.37/2.75  |          [v2: any] :  ? [v3: any] :  ? [v4: $i] :  ? [v5: any] : (vertex(v4) =
% 13.37/2.75  |            v5 & vertex(v1) = v3 & edge(v0) = v2 & tail_of(v0) = v4 & $i(v4) &
% 13.37/2.75  |            ( ~ (v2 = 0) | (v5 = 0 & v3 = 0))))
% 13.37/2.75  | 
% 13.37/2.75  | ALPHA: (shortest_path_properties) implies:
% 13.37/2.75  |   (7)   ! [v0: $i] :  ! [v1: $i] :  ! [v2: $i] :  ! [v3: $i] :  ! [v4: $i] : 
% 13.37/2.75  |        ! [v5: $i] :  ! [v6: $i] : ( ~ (shortest_path(v0, v1, v4) = 0) |  ~
% 13.37/2.75  |          (head_of(v3) = v6) |  ~ (tail_of(v2) = v5) |  ~ $i(v4) |  ~ $i(v3) | 
% 13.37/2.75  |          ~ $i(v2) |  ~ $i(v1) |  ~ $i(v0) |  ? [v7: any] :  ? [v8: any] :
% 13.37/2.75  |          (precedes(v3, v2, v4) = v8 & precedes(v2, v3, v4) = v7 & ( ~ (v7 = 0)
% 13.37/2.75  |              | ( ~ (v8 = 0) &  ! [v9: $i] : ( ~ (head_of(v9) = v6) |  ~ $i(v9)
% 13.37/2.75  |                  |  ? [v10: $i] : ( ~ (v10 = v5) & tail_of(v9) = v10 &
% 13.37/2.75  |                    $i(v10))) &  ! [v9: $i] : ( ~ (tail_of(v9) = v5) |  ~
% 13.37/2.75  |                  $i(v9) |  ? [v10: $i] : ( ~ (v10 = v6) & head_of(v9) = v10 &
% 13.37/2.75  |                    $i(v10)))))))
% 13.37/2.75  | 
% 13.37/2.75  | ALPHA: (function-axioms) implies:
% 13.37/2.75  |   (8)   ! [v0: $i] :  ! [v1: $i] :  ! [v2: $i] : (v1 = v0 |  ~ (tail_of(v2) =
% 13.37/2.75  |            v1) |  ~ (tail_of(v2) = v0))
% 13.37/2.75  |   (9)   ! [v0: $i] :  ! [v1: $i] :  ! [v2: $i] : (v1 = v0 |  ~ (head_of(v2) =
% 13.37/2.75  |            v1) |  ~ (head_of(v2) = v0))
% 13.37/2.75  |   (10)   ! [v0: MultipleValueBool] :  ! [v1: MultipleValueBool] :  ! [v2: $i]
% 13.37/2.75  |         :  ! [v3: $i] :  ! [v4: $i] : (v1 = v0 |  ~ (precedes(v4, v3, v2) =
% 13.37/2.75  |             v1) |  ~ (precedes(v4, v3, v2) = v0))
% 13.37/2.75  | 
% 13.37/2.75  | DELTA: instantiating (no_short_cut_edge) with fresh symbols all_20_0,
% 13.37/2.75  |        all_20_1, all_20_2, all_20_3, all_20_4, all_20_5, all_20_6, all_20_7
% 13.37/2.75  |        gives:
% 13.37/2.76  |   (11)  shortest_path(all_20_7, all_20_6, all_20_3) = 0 & precedes(all_20_5,
% 13.37/2.76  |           all_20_4, all_20_3) = 0 & head_of(all_20_0) = all_20_1 &
% 13.37/2.76  |         head_of(all_20_4) = all_20_1 & edge(all_20_0) = 0 & tail_of(all_20_0)
% 13.37/2.76  |         = all_20_2 & tail_of(all_20_5) = all_20_2 & $i(all_20_0) &
% 13.37/2.76  |         $i(all_20_1) & $i(all_20_2) & $i(all_20_3) & $i(all_20_4) &
% 13.37/2.76  |         $i(all_20_5) & $i(all_20_6) & $i(all_20_7)
% 13.37/2.76  | 
% 13.37/2.76  | ALPHA: (11) implies:
% 13.37/2.76  |   (12)  $i(all_20_7)
% 13.37/2.76  |   (13)  $i(all_20_6)
% 13.37/2.76  |   (14)  $i(all_20_5)
% 13.37/2.76  |   (15)  $i(all_20_4)
% 13.37/2.76  |   (16)  $i(all_20_3)
% 13.37/2.76  |   (17)  $i(all_20_0)
% 13.37/2.76  |   (18)  tail_of(all_20_5) = all_20_2
% 13.37/2.76  |   (19)  tail_of(all_20_0) = all_20_2
% 13.37/2.76  |   (20)  edge(all_20_0) = 0
% 13.37/2.76  |   (21)  head_of(all_20_4) = all_20_1
% 13.37/2.76  |   (22)  head_of(all_20_0) = all_20_1
% 13.37/2.76  |   (23)  precedes(all_20_5, all_20_4, all_20_3) = 0
% 13.37/2.76  |   (24)  shortest_path(all_20_7, all_20_6, all_20_3) = 0
% 13.37/2.76  | 
% 13.37/2.76  | GROUND_INST: instantiating (5) with all_20_0, all_20_2, simplifying with (17),
% 13.37/2.76  |              (19) gives:
% 13.37/2.76  |   (25)   ? [v0: any] :  ? [v1: $i] :  ? [v2: any] :  ? [v3: any] : (vertex(v1)
% 13.37/2.76  |           = v2 & vertex(all_20_2) = v3 & head_of(all_20_0) = v1 &
% 13.37/2.76  |           edge(all_20_0) = v0 & $i(v1) & ( ~ (v0 = 0) | (v3 = 0 & v2 = 0)))
% 13.37/2.76  | 
% 13.37/2.76  | GROUND_INST: instantiating (2) with all_20_0, all_20_2, simplifying with (17),
% 13.37/2.76  |              (19) gives:
% 13.37/2.76  |   (26)   ? [v0: any] :  ? [v1: $i] : (head_of(all_20_0) = v1 & edge(all_20_0)
% 13.37/2.76  |           = v0 & $i(v1) & ( ~ (v1 = all_20_2) |  ~ (v0 = 0)))
% 13.37/2.76  | 
% 13.37/2.76  | GROUND_INST: instantiating (1) with all_20_0, simplifying with (17), (20)
% 13.37/2.76  |              gives:
% 13.37/2.76  |   (27)   ? [v0: $i] :  ? [v1: $i] : ( ~ (v1 = v0) & head_of(all_20_0) = v0 &
% 13.37/2.76  |           tail_of(all_20_0) = v1 & $i(v1) & $i(v0))
% 13.37/2.76  | 
% 13.37/2.76  | GROUND_INST: instantiating (4) with all_20_0, simplifying with (17), (20)
% 13.37/2.76  |              gives:
% 13.37/2.76  |   (28)   ? [v0: $i] :  ? [v1: $i] : (vertex(v1) = 0 & vertex(v0) = 0 &
% 13.37/2.76  |           head_of(all_20_0) = v0 & tail_of(all_20_0) = v1 & $i(v1) & $i(v0))
% 13.37/2.76  | 
% 13.37/2.76  | GROUND_INST: instantiating (6) with all_20_0, all_20_1, simplifying with (17),
% 13.37/2.76  |              (22) gives:
% 13.37/2.76  |   (29)   ? [v0: any] :  ? [v1: any] :  ? [v2: $i] :  ? [v3: any] : (vertex(v2)
% 13.37/2.76  |           = v3 & vertex(all_20_1) = v1 & edge(all_20_0) = v0 &
% 13.37/2.77  |           tail_of(all_20_0) = v2 & $i(v2) & ( ~ (v0 = 0) | (v3 = 0 & v1 = 0)))
% 13.37/2.77  | 
% 13.37/2.77  | GROUND_INST: instantiating (3) with all_20_0, all_20_1, simplifying with (17),
% 13.37/2.77  |              (22) gives:
% 13.37/2.77  |   (30)   ? [v0: any] :  ? [v1: $i] : (edge(all_20_0) = v0 & tail_of(all_20_0)
% 13.37/2.77  |           = v1 & $i(v1) & ( ~ (v1 = all_20_1) |  ~ (v0 = 0)))
% 13.37/2.77  | 
% 13.37/2.77  | GROUND_INST: instantiating (7) with all_20_7, all_20_6, all_20_5, all_20_4,
% 13.37/2.77  |              all_20_3, all_20_2, all_20_1, simplifying with (12), (13), (14),
% 13.37/2.77  |              (15), (16), (18), (21), (24) gives:
% 13.37/2.77  |   (31)   ? [v0: any] :  ? [v1: any] : (precedes(all_20_4, all_20_5, all_20_3)
% 13.37/2.77  |           = v1 & precedes(all_20_5, all_20_4, all_20_3) = v0 & ( ~ (v0 = 0) |
% 13.37/2.77  |             ( ~ (v1 = 0) &  ! [v2: $i] : ( ~ (head_of(v2) = all_20_1) |  ~
% 13.37/2.77  |                 $i(v2) |  ? [v3: any] : ( ~ (v3 = all_20_2) & tail_of(v2) = v3
% 13.37/2.77  |                   & $i(v3))) &  ! [v2: $i] : ( ~ (tail_of(v2) = all_20_2) |  ~
% 13.37/2.77  |                 $i(v2) |  ? [v3: any] : ( ~ (v3 = all_20_1) & head_of(v2) = v3
% 13.37/2.77  |                   & $i(v3))))))
% 13.37/2.77  | 
% 13.37/2.77  | DELTA: instantiating (30) with fresh symbols all_27_0, all_27_1 gives:
% 13.37/2.77  |   (32)  edge(all_20_0) = all_27_1 & tail_of(all_20_0) = all_27_0 &
% 13.37/2.77  |         $i(all_27_0) & ( ~ (all_27_0 = all_20_1) |  ~ (all_27_1 = 0))
% 13.37/2.77  | 
% 13.37/2.77  | ALPHA: (32) implies:
% 13.37/2.77  |   (33)  tail_of(all_20_0) = all_27_0
% 13.37/2.77  | 
% 13.37/2.77  | DELTA: instantiating (27) with fresh symbols all_31_0, all_31_1 gives:
% 13.37/2.77  |   (34)   ~ (all_31_0 = all_31_1) & head_of(all_20_0) = all_31_1 &
% 13.37/2.77  |         tail_of(all_20_0) = all_31_0 & $i(all_31_0) & $i(all_31_1)
% 13.37/2.77  | 
% 13.37/2.77  | ALPHA: (34) implies:
% 13.37/2.77  |   (35)  tail_of(all_20_0) = all_31_0
% 13.37/2.77  |   (36)  head_of(all_20_0) = all_31_1
% 13.37/2.77  | 
% 13.37/2.77  | DELTA: instantiating (26) with fresh symbols all_33_0, all_33_1 gives:
% 13.37/2.77  |   (37)  head_of(all_20_0) = all_33_0 & edge(all_20_0) = all_33_1 &
% 13.37/2.77  |         $i(all_33_0) & ( ~ (all_33_0 = all_20_2) |  ~ (all_33_1 = 0))
% 13.37/2.77  | 
% 13.37/2.77  | ALPHA: (37) implies:
% 13.37/2.77  |   (38)  head_of(all_20_0) = all_33_0
% 13.37/2.77  | 
% 13.37/2.77  | DELTA: instantiating (28) with fresh symbols all_39_0, all_39_1 gives:
% 13.37/2.77  |   (39)  vertex(all_39_0) = 0 & vertex(all_39_1) = 0 & head_of(all_20_0) =
% 13.37/2.77  |         all_39_1 & tail_of(all_20_0) = all_39_0 & $i(all_39_0) & $i(all_39_1)
% 13.37/2.77  | 
% 13.37/2.77  | ALPHA: (39) implies:
% 13.37/2.77  |   (40)  tail_of(all_20_0) = all_39_0
% 13.37/2.77  |   (41)  head_of(all_20_0) = all_39_1
% 13.37/2.77  | 
% 13.37/2.77  | DELTA: instantiating (29) with fresh symbols all_45_0, all_45_1, all_45_2,
% 13.37/2.77  |        all_45_3 gives:
% 13.37/2.77  |   (42)  vertex(all_45_1) = all_45_0 & vertex(all_20_1) = all_45_2 &
% 13.37/2.77  |         edge(all_20_0) = all_45_3 & tail_of(all_20_0) = all_45_1 &
% 13.37/2.77  |         $i(all_45_1) & ( ~ (all_45_3 = 0) | (all_45_0 = 0 & all_45_2 = 0))
% 13.37/2.77  | 
% 13.37/2.77  | ALPHA: (42) implies:
% 13.37/2.77  |   (43)  tail_of(all_20_0) = all_45_1
% 13.37/2.77  | 
% 13.37/2.77  | DELTA: instantiating (25) with fresh symbols all_47_0, all_47_1, all_47_2,
% 13.37/2.77  |        all_47_3 gives:
% 13.37/2.77  |   (44)  vertex(all_47_2) = all_47_1 & vertex(all_20_2) = all_47_0 &
% 13.37/2.77  |         head_of(all_20_0) = all_47_2 & edge(all_20_0) = all_47_3 &
% 13.37/2.77  |         $i(all_47_2) & ( ~ (all_47_3 = 0) | (all_47_0 = 0 & all_47_1 = 0))
% 13.37/2.77  | 
% 13.37/2.77  | ALPHA: (44) implies:
% 13.37/2.77  |   (45)  head_of(all_20_0) = all_47_2
% 13.37/2.78  | 
% 13.37/2.78  | DELTA: instantiating (31) with fresh symbols all_49_0, all_49_1 gives:
% 13.37/2.78  |   (46)  precedes(all_20_4, all_20_5, all_20_3) = all_49_0 & precedes(all_20_5,
% 13.37/2.78  |           all_20_4, all_20_3) = all_49_1 & ( ~ (all_49_1 = 0) | ( ~ (all_49_0
% 13.37/2.78  |               = 0) &  ! [v0: $i] : ( ~ (head_of(v0) = all_20_1) |  ~ $i(v0) | 
% 13.37/2.78  |               ? [v1: any] : ( ~ (v1 = all_20_2) & tail_of(v0) = v1 & $i(v1)))
% 13.37/2.78  |             &  ! [v0: $i] : ( ~ (tail_of(v0) = all_20_2) |  ~ $i(v0) |  ? [v1:
% 13.37/2.78  |                 any] : ( ~ (v1 = all_20_1) & head_of(v0) = v1 & $i(v1)))))
% 13.37/2.78  | 
% 13.37/2.78  | ALPHA: (46) implies:
% 13.37/2.78  |   (47)  precedes(all_20_5, all_20_4, all_20_3) = all_49_1
% 13.37/2.78  |   (48)   ~ (all_49_1 = 0) | ( ~ (all_49_0 = 0) &  ! [v0: $i] : ( ~
% 13.37/2.78  |             (head_of(v0) = all_20_1) |  ~ $i(v0) |  ? [v1: any] : ( ~ (v1 =
% 13.37/2.78  |                 all_20_2) & tail_of(v0) = v1 & $i(v1))) &  ! [v0: $i] : ( ~
% 13.37/2.78  |             (tail_of(v0) = all_20_2) |  ~ $i(v0) |  ? [v1: any] : ( ~ (v1 =
% 13.37/2.78  |                 all_20_1) & head_of(v0) = v1 & $i(v1))))
% 13.37/2.78  | 
% 13.37/2.78  | GROUND_INST: instantiating (8) with all_31_0, all_39_0, all_20_0, simplifying
% 13.37/2.78  |              with (35), (40) gives:
% 13.37/2.78  |   (49)  all_39_0 = all_31_0
% 13.37/2.78  | 
% 13.37/2.78  | GROUND_INST: instantiating (8) with all_27_0, all_39_0, all_20_0, simplifying
% 13.37/2.78  |              with (33), (40) gives:
% 13.37/2.78  |   (50)  all_39_0 = all_27_0
% 13.37/2.78  | 
% 13.37/2.78  | GROUND_INST: instantiating (8) with all_20_2, all_45_1, all_20_0, simplifying
% 13.37/2.78  |              with (19), (43) gives:
% 13.37/2.78  |   (51)  all_45_1 = all_20_2
% 13.37/2.78  | 
% 13.37/2.78  | GROUND_INST: instantiating (8) with all_39_0, all_45_1, all_20_0, simplifying
% 13.37/2.78  |              with (40), (43) gives:
% 13.37/2.78  |   (52)  all_45_1 = all_39_0
% 13.37/2.78  | 
% 13.37/2.78  | GROUND_INST: instantiating (9) with all_31_1, all_39_1, all_20_0, simplifying
% 13.37/2.78  |              with (36), (41) gives:
% 13.37/2.78  |   (53)  all_39_1 = all_31_1
% 13.37/2.78  | 
% 13.37/2.78  | GROUND_INST: instantiating (9) with all_20_1, all_47_2, all_20_0, simplifying
% 13.37/2.78  |              with (22), (45) gives:
% 13.37/2.78  |   (54)  all_47_2 = all_20_1
% 13.37/2.78  | 
% 13.37/2.78  | GROUND_INST: instantiating (9) with all_39_1, all_47_2, all_20_0, simplifying
% 13.37/2.78  |              with (41), (45) gives:
% 13.37/2.78  |   (55)  all_47_2 = all_39_1
% 13.37/2.78  | 
% 13.37/2.78  | GROUND_INST: instantiating (9) with all_33_0, all_47_2, all_20_0, simplifying
% 13.37/2.78  |              with (38), (45) gives:
% 13.37/2.78  |   (56)  all_47_2 = all_33_0
% 13.37/2.78  | 
% 13.37/2.78  | GROUND_INST: instantiating (10) with 0, all_49_1, all_20_3, all_20_4,
% 13.37/2.78  |              all_20_5, simplifying with (23), (47) gives:
% 13.37/2.78  |   (57)  all_49_1 = 0
% 13.37/2.78  | 
% 13.37/2.78  | COMBINE_EQS: (55), (56) imply:
% 13.37/2.78  |   (58)  all_39_1 = all_33_0
% 13.37/2.78  | 
% 13.37/2.78  | SIMP: (58) implies:
% 13.37/2.78  |   (59)  all_39_1 = all_33_0
% 13.37/2.78  | 
% 13.37/2.78  | COMBINE_EQS: (54), (56) imply:
% 13.37/2.78  |   (60)  all_33_0 = all_20_1
% 13.37/2.78  | 
% 13.37/2.78  | COMBINE_EQS: (51), (52) imply:
% 13.37/2.78  |   (61)  all_39_0 = all_20_2
% 13.37/2.78  | 
% 13.37/2.78  | SIMP: (61) implies:
% 13.37/2.78  |   (62)  all_39_0 = all_20_2
% 13.37/2.78  | 
% 13.37/2.78  | COMBINE_EQS: (49), (62) imply:
% 13.37/2.78  |   (63)  all_31_0 = all_20_2
% 13.37/2.78  | 
% 13.37/2.78  | COMBINE_EQS: (49), (50) imply:
% 13.37/2.78  |   (64)  all_31_0 = all_27_0
% 13.37/2.78  | 
% 13.37/2.78  | COMBINE_EQS: (53), (59) imply:
% 13.37/2.78  |   (65)  all_33_0 = all_31_1
% 13.37/2.78  | 
% 13.37/2.78  | SIMP: (65) implies:
% 13.37/2.78  |   (66)  all_33_0 = all_31_1
% 13.37/2.78  | 
% 13.37/2.78  | COMBINE_EQS: (60), (66) imply:
% 13.37/2.78  |   (67)  all_31_1 = all_20_1
% 13.37/2.78  | 
% 13.37/2.78  | SIMP: (67) implies:
% 13.37/2.78  |   (68)  all_31_1 = all_20_1
% 13.37/2.78  | 
% 13.37/2.78  | COMBINE_EQS: (63), (64) imply:
% 13.37/2.78  |   (69)  all_27_0 = all_20_2
% 13.37/2.78  | 
% 13.37/2.79  | SIMP: (69) implies:
% 13.37/2.79  |   (70)  all_27_0 = all_20_2
% 13.37/2.79  | 
% 13.37/2.79  | BETA: splitting (48) gives:
% 13.37/2.79  | 
% 13.37/2.79  | Case 1:
% 13.37/2.79  | | 
% 13.37/2.79  | |   (71)   ~ (all_49_1 = 0)
% 13.37/2.79  | | 
% 13.37/2.79  | | REDUCE: (57), (71) imply:
% 13.37/2.79  | |   (72)  $false
% 13.37/2.79  | | 
% 13.37/2.79  | | CLOSE: (72) is inconsistent.
% 13.37/2.79  | | 
% 13.37/2.79  | Case 2:
% 13.37/2.79  | | 
% 13.37/2.79  | |   (73)   ~ (all_49_0 = 0) &  ! [v0: $i] : ( ~ (head_of(v0) = all_20_1) |  ~
% 13.37/2.79  | |           $i(v0) |  ? [v1: any] : ( ~ (v1 = all_20_2) & tail_of(v0) = v1 &
% 13.37/2.79  | |             $i(v1))) &  ! [v0: $i] : ( ~ (tail_of(v0) = all_20_2) |  ~
% 13.37/2.79  | |           $i(v0) |  ? [v1: any] : ( ~ (v1 = all_20_1) & head_of(v0) = v1 &
% 13.37/2.79  | |             $i(v1)))
% 13.37/2.79  | | 
% 13.37/2.79  | | ALPHA: (73) implies:
% 13.37/2.79  | |   (74)   ! [v0: $i] : ( ~ (head_of(v0) = all_20_1) |  ~ $i(v0) |  ? [v1:
% 13.37/2.79  | |             any] : ( ~ (v1 = all_20_2) & tail_of(v0) = v1 & $i(v1)))
% 13.37/2.79  | | 
% 13.37/2.79  | | GROUND_INST: instantiating (74) with all_20_0, simplifying with (17), (22)
% 13.37/2.79  | |              gives:
% 13.37/2.79  | |   (75)   ? [v0: any] : ( ~ (v0 = all_20_2) & tail_of(all_20_0) = v0 &
% 13.37/2.79  | |           $i(v0))
% 13.37/2.79  | | 
% 13.37/2.79  | | DELTA: instantiating (75) with fresh symbol all_84_0 gives:
% 13.37/2.79  | |   (76)   ~ (all_84_0 = all_20_2) & tail_of(all_20_0) = all_84_0 &
% 13.37/2.79  | |         $i(all_84_0)
% 13.37/2.79  | | 
% 13.37/2.79  | | ALPHA: (76) implies:
% 13.37/2.79  | |   (77)   ~ (all_84_0 = all_20_2)
% 13.37/2.79  | |   (78)  tail_of(all_20_0) = all_84_0
% 13.37/2.79  | | 
% 13.37/2.79  | | GROUND_INST: instantiating (8) with all_20_2, all_84_0, all_20_0,
% 13.37/2.79  | |              simplifying with (19), (78) gives:
% 13.37/2.79  | |   (79)  all_84_0 = all_20_2
% 13.37/2.79  | | 
% 13.37/2.79  | | REDUCE: (77), (79) imply:
% 13.37/2.79  | |   (80)  $false
% 13.37/2.79  | | 
% 13.37/2.79  | | CLOSE: (80) is inconsistent.
% 13.37/2.79  | | 
% 13.37/2.79  | End of split
% 13.37/2.79  | 
% 13.37/2.79  End of proof
% 13.37/2.79  % SZS output end Proof for theBenchmark
% 13.37/2.79  
% 13.37/2.79  2167ms
%------------------------------------------------------------------------------