TSTP Solution File: SWC096+1 by iProver---3.9

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : iProver---3.9
% Problem  : SWC096+1 : TPTP v8.1.2. Released v2.4.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : run_iprover %s %d THM

% Computer : n004.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Fri May  3 03:11:12 EDT 2024

% Result   : Theorem 0.45s 1.14s
% Output   : CNFRefutation 0.45s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   16
%            Number of leaves      :    8
% Syntax   : Number of formulae    :   53 (  11 unt;   0 def)
%            Number of atoms       :  290 ( 107 equ)
%            Maximal formula atoms :   18 (   5 avg)
%            Number of connectives :  357 ( 120   ~; 107   |; 112   &)
%                                         (   0 <=>;  18  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   18 (   7 avg)
%            Maximal term depth    :    4 (   1 avg)
%            Number of predicates  :    6 (   4 usr;   1 prp; 0-4 aty)
%            Number of functors    :    9 (   9 usr;   5 con; 0-2 aty)
%            Number of variables   :  165 (  20 sgn  79   !;  42   ?)

% Comments : 
%------------------------------------------------------------------------------
fof(f96,conjecture,
    ! [X0] :
      ( ssList(X0)
     => ! [X1] :
          ( ssList(X1)
         => ! [X2] :
              ( ssList(X2)
             => ! [X3] :
                  ( ( ( neq(X3,nil)
                      | ~ neq(X1,nil) )
                    & ( ! [X6] :
                          ( ssItem(X6)
                         => ! [X7] :
                              ( app(X7,cons(X6,nil)) != X3
                              | cons(X6,nil) != X2
                              | ~ ssList(X7) ) )
                      | ? [X4] :
                          ( ? [X5] :
                              ( app(X5,cons(X4,nil)) = X1
                              & cons(X4,nil) = X0
                              & ssList(X5) )
                          & ssItem(X4) )
                      | ~ neq(X1,nil) ) )
                  | X0 != X2
                  | X1 != X3
                  | ~ ssList(X3) ) ) ) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p',co1) ).

fof(f97,negated_conjecture,
    ~ ! [X0] :
        ( ssList(X0)
       => ! [X1] :
            ( ssList(X1)
           => ! [X2] :
                ( ssList(X2)
               => ! [X3] :
                    ( ( ( neq(X3,nil)
                        | ~ neq(X1,nil) )
                      & ( ! [X6] :
                            ( ssItem(X6)
                           => ! [X7] :
                                ( app(X7,cons(X6,nil)) != X3
                                | cons(X6,nil) != X2
                                | ~ ssList(X7) ) )
                        | ? [X4] :
                            ( ? [X5] :
                                ( app(X5,cons(X4,nil)) = X1
                                & cons(X4,nil) = X0
                                & ssList(X5) )
                            & ssItem(X4) )
                        | ~ neq(X1,nil) ) )
                    | X0 != X2
                    | X1 != X3
                    | ~ ssList(X3) ) ) ) ),
    inference(negated_conjecture,[],[f96]) ).

fof(f98,plain,
    ~ ! [X0] :
        ( ssList(X0)
       => ! [X1] :
            ( ssList(X1)
           => ! [X2] :
                ( ssList(X2)
               => ! [X3] :
                    ( ( ( neq(X3,nil)
                        | ~ neq(X1,nil) )
                      & ( ! [X4] :
                            ( ssItem(X4)
                           => ! [X5] :
                                ( app(X5,cons(X4,nil)) != X3
                                | cons(X4,nil) != X2
                                | ~ ssList(X5) ) )
                        | ? [X6] :
                            ( ? [X7] :
                                ( app(X7,cons(X6,nil)) = X1
                                & cons(X6,nil) = X0
                                & ssList(X7) )
                            & ssItem(X6) )
                        | ~ neq(X1,nil) ) )
                    | X0 != X2
                    | X1 != X3
                    | ~ ssList(X3) ) ) ) ),
    inference(rectify,[],[f97]) ).

fof(f222,plain,
    ? [X0] :
      ( ? [X1] :
          ( ? [X2] :
              ( ? [X3] :
                  ( ( ( ~ neq(X3,nil)
                      & neq(X1,nil) )
                    | ( ? [X4] :
                          ( ? [X5] :
                              ( app(X5,cons(X4,nil)) = X3
                              & cons(X4,nil) = X2
                              & ssList(X5) )
                          & ssItem(X4) )
                      & ! [X6] :
                          ( ! [X7] :
                              ( app(X7,cons(X6,nil)) != X1
                              | cons(X6,nil) != X0
                              | ~ ssList(X7) )
                          | ~ ssItem(X6) )
                      & neq(X1,nil) ) )
                  & X0 = X2
                  & X1 = X3
                  & ssList(X3) )
              & ssList(X2) )
          & ssList(X1) )
      & ssList(X0) ),
    inference(ennf_transformation,[],[f98]) ).

fof(f232,plain,
    ! [X3,X2,X1,X0] :
      ( ( ? [X4] :
            ( ? [X5] :
                ( app(X5,cons(X4,nil)) = X3
                & cons(X4,nil) = X2
                & ssList(X5) )
            & ssItem(X4) )
        & ! [X6] :
            ( ! [X7] :
                ( app(X7,cons(X6,nil)) != X1
                | cons(X6,nil) != X0
                | ~ ssList(X7) )
            | ~ ssItem(X6) )
        & neq(X1,nil) )
      | ~ sP6(X3,X2,X1,X0) ),
    introduced(predicate_definition_introduction,[new_symbols(naming,[sP6])]) ).

fof(f233,plain,
    ? [X0] :
      ( ? [X1] :
          ( ? [X2] :
              ( ? [X3] :
                  ( ( ( ~ neq(X3,nil)
                      & neq(X1,nil) )
                    | sP6(X3,X2,X1,X0) )
                  & X0 = X2
                  & X1 = X3
                  & ssList(X3) )
              & ssList(X2) )
          & ssList(X1) )
      & ssList(X0) ),
    inference(definition_folding,[],[f222,f232]) ).

fof(f345,plain,
    ! [X3,X2,X1,X0] :
      ( ( ? [X4] :
            ( ? [X5] :
                ( app(X5,cons(X4,nil)) = X3
                & cons(X4,nil) = X2
                & ssList(X5) )
            & ssItem(X4) )
        & ! [X6] :
            ( ! [X7] :
                ( app(X7,cons(X6,nil)) != X1
                | cons(X6,nil) != X0
                | ~ ssList(X7) )
            | ~ ssItem(X6) )
        & neq(X1,nil) )
      | ~ sP6(X3,X2,X1,X0) ),
    inference(nnf_transformation,[],[f232]) ).

fof(f346,plain,
    ! [X0,X1,X2,X3] :
      ( ( ? [X4] :
            ( ? [X5] :
                ( app(X5,cons(X4,nil)) = X0
                & cons(X4,nil) = X1
                & ssList(X5) )
            & ssItem(X4) )
        & ! [X6] :
            ( ! [X7] :
                ( app(X7,cons(X6,nil)) != X2
                | cons(X6,nil) != X3
                | ~ ssList(X7) )
            | ~ ssItem(X6) )
        & neq(X2,nil) )
      | ~ sP6(X0,X1,X2,X3) ),
    inference(rectify,[],[f345]) ).

fof(f347,plain,
    ! [X0,X1] :
      ( ? [X4] :
          ( ? [X5] :
              ( app(X5,cons(X4,nil)) = X0
              & cons(X4,nil) = X1
              & ssList(X5) )
          & ssItem(X4) )
     => ( ? [X5] :
            ( app(X5,cons(sK54(X0,X1),nil)) = X0
            & cons(sK54(X0,X1),nil) = X1
            & ssList(X5) )
        & ssItem(sK54(X0,X1)) ) ),
    introduced(choice_axiom,[]) ).

fof(f348,plain,
    ! [X0,X1] :
      ( ? [X5] :
          ( app(X5,cons(sK54(X0,X1),nil)) = X0
          & cons(sK54(X0,X1),nil) = X1
          & ssList(X5) )
     => ( app(sK55(X0,X1),cons(sK54(X0,X1),nil)) = X0
        & cons(sK54(X0,X1),nil) = X1
        & ssList(sK55(X0,X1)) ) ),
    introduced(choice_axiom,[]) ).

fof(f349,plain,
    ! [X0,X1,X2,X3] :
      ( ( app(sK55(X0,X1),cons(sK54(X0,X1),nil)) = X0
        & cons(sK54(X0,X1),nil) = X1
        & ssList(sK55(X0,X1))
        & ssItem(sK54(X0,X1))
        & ! [X6] :
            ( ! [X7] :
                ( app(X7,cons(X6,nil)) != X2
                | cons(X6,nil) != X3
                | ~ ssList(X7) )
            | ~ ssItem(X6) )
        & neq(X2,nil) )
      | ~ sP6(X0,X1,X2,X3) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[sK54,sK55])],[f346,f348,f347]) ).

fof(f350,plain,
    ( ? [X0] :
        ( ? [X1] :
            ( ? [X2] :
                ( ? [X3] :
                    ( ( ( ~ neq(X3,nil)
                        & neq(X1,nil) )
                      | sP6(X3,X2,X1,X0) )
                    & X0 = X2
                    & X1 = X3
                    & ssList(X3) )
                & ssList(X2) )
            & ssList(X1) )
        & ssList(X0) )
   => ( ? [X1] :
          ( ? [X2] :
              ( ? [X3] :
                  ( ( ( ~ neq(X3,nil)
                      & neq(X1,nil) )
                    | sP6(X3,X2,X1,sK56) )
                  & sK56 = X2
                  & X1 = X3
                  & ssList(X3) )
              & ssList(X2) )
          & ssList(X1) )
      & ssList(sK56) ) ),
    introduced(choice_axiom,[]) ).

fof(f351,plain,
    ( ? [X1] :
        ( ? [X2] :
            ( ? [X3] :
                ( ( ( ~ neq(X3,nil)
                    & neq(X1,nil) )
                  | sP6(X3,X2,X1,sK56) )
                & sK56 = X2
                & X1 = X3
                & ssList(X3) )
            & ssList(X2) )
        & ssList(X1) )
   => ( ? [X2] :
          ( ? [X3] :
              ( ( ( ~ neq(X3,nil)
                  & neq(sK57,nil) )
                | sP6(X3,X2,sK57,sK56) )
              & sK56 = X2
              & sK57 = X3
              & ssList(X3) )
          & ssList(X2) )
      & ssList(sK57) ) ),
    introduced(choice_axiom,[]) ).

fof(f352,plain,
    ( ? [X2] :
        ( ? [X3] :
            ( ( ( ~ neq(X3,nil)
                & neq(sK57,nil) )
              | sP6(X3,X2,sK57,sK56) )
            & sK56 = X2
            & sK57 = X3
            & ssList(X3) )
        & ssList(X2) )
   => ( ? [X3] :
          ( ( ( ~ neq(X3,nil)
              & neq(sK57,nil) )
            | sP6(X3,sK58,sK57,sK56) )
          & sK56 = sK58
          & sK57 = X3
          & ssList(X3) )
      & ssList(sK58) ) ),
    introduced(choice_axiom,[]) ).

fof(f353,plain,
    ( ? [X3] :
        ( ( ( ~ neq(X3,nil)
            & neq(sK57,nil) )
          | sP6(X3,sK58,sK57,sK56) )
        & sK56 = sK58
        & sK57 = X3
        & ssList(X3) )
   => ( ( ( ~ neq(sK59,nil)
          & neq(sK57,nil) )
        | sP6(sK59,sK58,sK57,sK56) )
      & sK56 = sK58
      & sK57 = sK59
      & ssList(sK59) ) ),
    introduced(choice_axiom,[]) ).

fof(f354,plain,
    ( ( ( ~ neq(sK59,nil)
        & neq(sK57,nil) )
      | sP6(sK59,sK58,sK57,sK56) )
    & sK56 = sK58
    & sK57 = sK59
    & ssList(sK59)
    & ssList(sK58)
    & ssList(sK57)
    & ssList(sK56) ),
    inference(skolemisation,[status(esa),new_symbols(skolem,[sK56,sK57,sK58,sK59])],[f233,f353,f352,f351,f350]) ).

fof(f555,plain,
    ! [X2,X3,X0,X1,X6,X7] :
      ( app(X7,cons(X6,nil)) != X2
      | cons(X6,nil) != X3
      | ~ ssList(X7)
      | ~ ssItem(X6)
      | ~ sP6(X0,X1,X2,X3) ),
    inference(cnf_transformation,[],[f349]) ).

fof(f556,plain,
    ! [X2,X3,X0,X1] :
      ( ssItem(sK54(X0,X1))
      | ~ sP6(X0,X1,X2,X3) ),
    inference(cnf_transformation,[],[f349]) ).

fof(f557,plain,
    ! [X2,X3,X0,X1] :
      ( ssList(sK55(X0,X1))
      | ~ sP6(X0,X1,X2,X3) ),
    inference(cnf_transformation,[],[f349]) ).

fof(f558,plain,
    ! [X2,X3,X0,X1] :
      ( cons(sK54(X0,X1),nil) = X1
      | ~ sP6(X0,X1,X2,X3) ),
    inference(cnf_transformation,[],[f349]) ).

fof(f559,plain,
    ! [X2,X3,X0,X1] :
      ( app(sK55(X0,X1),cons(sK54(X0,X1),nil)) = X0
      | ~ sP6(X0,X1,X2,X3) ),
    inference(cnf_transformation,[],[f349]) ).

fof(f564,plain,
    sK57 = sK59,
    inference(cnf_transformation,[],[f354]) ).

fof(f565,plain,
    sK56 = sK58,
    inference(cnf_transformation,[],[f354]) ).

fof(f566,plain,
    ( neq(sK57,nil)
    | sP6(sK59,sK58,sK57,sK56) ),
    inference(cnf_transformation,[],[f354]) ).

fof(f567,plain,
    ( ~ neq(sK59,nil)
    | sP6(sK59,sK58,sK57,sK56) ),
    inference(cnf_transformation,[],[f354]) ).

fof(f568,plain,
    ( ~ neq(sK59,nil)
    | sP6(sK59,sK58,sK59,sK58) ),
    inference(definition_unfolding,[],[f567,f564,f565]) ).

fof(f569,plain,
    ( neq(sK59,nil)
    | sP6(sK59,sK58,sK59,sK58) ),
    inference(definition_unfolding,[],[f566,f564,f564,f565]) ).

fof(f599,plain,
    ! [X3,X0,X1,X6,X7] :
      ( cons(X6,nil) != X3
      | ~ ssList(X7)
      | ~ ssItem(X6)
      | ~ sP6(X0,X1,app(X7,cons(X6,nil)),X3) ),
    inference(equality_resolution,[],[f555]) ).

fof(f600,plain,
    ! [X0,X1,X6,X7] :
      ( ~ ssList(X7)
      | ~ ssItem(X6)
      | ~ sP6(X0,X1,app(X7,cons(X6,nil)),cons(X6,nil)) ),
    inference(equality_resolution,[],[f599]) ).

cnf(c_246,plain,
    ( ~ sP6(X0,X1,X2,X3)
    | app(sK55(X0,X1),cons(sK54(X0,X1),nil)) = X0 ),
    inference(cnf_transformation,[],[f559]) ).

cnf(c_247,plain,
    ( ~ sP6(X0,X1,X2,X3)
    | cons(sK54(X0,X1),nil) = X1 ),
    inference(cnf_transformation,[],[f558]) ).

cnf(c_248,plain,
    ( ~ sP6(X0,X1,X2,X3)
    | ssList(sK55(X0,X1)) ),
    inference(cnf_transformation,[],[f557]) ).

cnf(c_249,plain,
    ( ~ sP6(X0,X1,X2,X3)
    | ssItem(sK54(X0,X1)) ),
    inference(cnf_transformation,[],[f556]) ).

cnf(c_250,plain,
    ( ~ sP6(X0,X1,app(X2,cons(X3,nil)),cons(X3,nil))
    | ~ ssItem(X3)
    | ~ ssList(X2) ),
    inference(cnf_transformation,[],[f600]) ).

cnf(c_252,negated_conjecture,
    ( ~ neq(sK59,nil)
    | sP6(sK59,sK58,sK59,sK58) ),
    inference(cnf_transformation,[],[f568]) ).

cnf(c_253,negated_conjecture,
    ( sP6(sK59,sK58,sK59,sK58)
    | neq(sK59,nil) ),
    inference(cnf_transformation,[],[f569]) ).

cnf(c_376,negated_conjecture,
    sP6(sK59,sK58,sK59,sK58),
    inference(global_subsumption_just,[status(thm)],[c_253,c_253,c_252]) ).

cnf(c_378,negated_conjecture,
    sP6(sK59,sK58,sK59,sK58),
    inference(global_subsumption_just,[status(thm)],[c_252,c_376]) ).

cnf(c_3140,plain,
    ( X0 != sK59
    | X1 != sK58
    | X2 != sK59
    | X3 != sK58
    | ssItem(sK54(X0,X1)) ),
    inference(resolution_lifted,[status(thm)],[c_249,c_378]) ).

cnf(c_3141,plain,
    ssItem(sK54(sK59,sK58)),
    inference(unflattening,[status(thm)],[c_3140]) ).

cnf(c_3145,plain,
    ( X0 != sK59
    | X1 != sK58
    | X2 != sK59
    | X3 != sK58
    | ssList(sK55(X0,X1)) ),
    inference(resolution_lifted,[status(thm)],[c_248,c_378]) ).

cnf(c_3146,plain,
    ssList(sK55(sK59,sK58)),
    inference(unflattening,[status(thm)],[c_3145]) ).

cnf(c_3150,plain,
    ( X0 != sK59
    | X1 != sK58
    | X2 != sK59
    | X3 != sK58
    | cons(sK54(X0,X1),nil) = X1 ),
    inference(resolution_lifted,[status(thm)],[c_247,c_378]) ).

cnf(c_3151,plain,
    cons(sK54(sK59,sK58),nil) = sK58,
    inference(unflattening,[status(thm)],[c_3150]) ).

cnf(c_3155,plain,
    ( X0 != sK59
    | X1 != sK58
    | X2 != sK59
    | X3 != sK58
    | app(sK55(X0,X1),cons(sK54(X0,X1),nil)) = X0 ),
    inference(resolution_lifted,[status(thm)],[c_246,c_378]) ).

cnf(c_3156,plain,
    app(sK55(sK59,sK58),cons(sK54(sK59,sK58),nil)) = sK59,
    inference(unflattening,[status(thm)],[c_3155]) ).

cnf(c_3160,plain,
    ( app(X0,cons(X1,nil)) != sK59
    | cons(X1,nil) != sK58
    | X2 != sK59
    | X3 != sK58
    | ~ ssItem(X1)
    | ~ ssList(X0) ),
    inference(resolution_lifted,[status(thm)],[c_250,c_378]) ).

cnf(c_3161,plain,
    ( app(X0,cons(X1,nil)) != sK59
    | cons(X1,nil) != sK58
    | ~ ssItem(X1)
    | ~ ssList(X0) ),
    inference(unflattening,[status(thm)],[c_3160]) ).

cnf(c_6518,plain,
    app(sK55(sK59,sK58),sK58) = sK59,
    inference(light_normalisation,[status(thm)],[c_3156,c_3151]) ).

cnf(c_11774,plain,
    ( cons(sK54(sK59,sK58),nil) != sK58
    | app(X0,sK58) != sK59
    | ~ ssItem(sK54(sK59,sK58))
    | ~ ssList(X0) ),
    inference(superposition,[status(thm)],[c_3151,c_3161]) ).

cnf(c_11775,plain,
    ( app(X0,sK58) != sK59
    | ~ ssList(X0) ),
    inference(forward_subsumption_resolution,[status(thm)],[c_11774,c_3141,c_3151]) ).

cnf(c_11783,plain,
    ~ ssList(sK55(sK59,sK58)),
    inference(superposition,[status(thm)],[c_6518,c_11775]) ).

cnf(c_11784,plain,
    $false,
    inference(forward_subsumption_resolution,[status(thm)],[c_11783,c_3146]) ).


%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.11  % Problem  : SWC096+1 : TPTP v8.1.2. Released v2.4.0.
% 0.11/0.12  % Command  : run_iprover %s %d THM
% 0.12/0.32  % Computer : n004.cluster.edu
% 0.12/0.32  % Model    : x86_64 x86_64
% 0.12/0.32  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.32  % Memory   : 8042.1875MB
% 0.12/0.32  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.12/0.32  % CPULimit : 300
% 0.12/0.32  % WCLimit  : 300
% 0.12/0.32  % DateTime : Thu May  2 23:18:18 EDT 2024
% 0.12/0.32  % CPUTime  : 
% 0.18/0.44  Running first-order theorem proving
% 0.18/0.44  Running: /export/starexec/sandbox2/solver/bin/run_problem --schedule fof_schedule --heuristic_context casc_unsat --no_cores 8 /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% 0.45/1.14  % SZS status Started for theBenchmark.p
% 0.45/1.14  % SZS status Theorem for theBenchmark.p
% 0.45/1.14  
% 0.45/1.14  %---------------- iProver v3.9 (pre CASC 2024/SMT-COMP 2024) ----------------%
% 0.45/1.14  
% 0.45/1.14  ------  iProver source info
% 0.45/1.14  
% 0.45/1.14  git: date: 2024-05-02 19:28:25 +0000
% 0.45/1.14  git: sha1: a33b5eb135c74074ba803943bb12f2ebd971352f
% 0.45/1.14  git: non_committed_changes: false
% 0.45/1.14  
% 0.45/1.14  ------ Parsing...
% 0.45/1.14  ------ Clausification by vclausify_rel  & Parsing by iProver...
% 0.45/1.14  
% 0.45/1.14  ------ Preprocessing... sup_sim: 0  sf_s  rm: 1 0s  sf_e  pe_s  pe:1:0s pe:2:0s pe:4:0s pe:8:0s pe_e  sup_sim: 1  sf_s  rm: 6 0s  sf_e  pe_s  pe_e 
% 0.45/1.14  
% 0.45/1.14  ------ Preprocessing... gs_s  sp: 0 0s  gs_e  snvd_s sp: 0 0s snvd_e 
% 0.45/1.14  
% 0.45/1.14  ------ Preprocessing... sf_s  rm: 1 0s  sf_e  sf_s  rm: 0 0s  sf_e 
% 0.45/1.14  ------ Proving...
% 0.45/1.14  ------ Problem Properties 
% 0.45/1.14  
% 0.45/1.14  
% 0.45/1.14  clauses                                 188
% 0.45/1.14  conjectures                             2
% 0.45/1.14  EPR                                     52
% 0.45/1.14  Horn                                    120
% 0.45/1.14  unary                                   23
% 0.45/1.14  binary                                  40
% 0.45/1.14  lits                                    629
% 0.45/1.14  lits eq                                 83
% 0.45/1.14  fd_pure                                 0
% 0.45/1.14  fd_pseudo                               0
% 0.45/1.14  fd_cond                                 21
% 0.45/1.14  fd_pseudo_cond                          14
% 0.45/1.14  AC symbols                              0
% 0.45/1.14  
% 0.45/1.14  ------ Schedule dynamic 5 is on 
% 0.45/1.14  
% 0.45/1.14  ------ Input Options "--resolution_flag false --inst_lit_sel_side none" Time Limit: 10.
% 0.45/1.14  
% 0.45/1.14  
% 0.45/1.14  ------ 
% 0.45/1.14  Current options:
% 0.45/1.14  ------ 
% 0.45/1.14  
% 0.45/1.14  
% 0.45/1.14  
% 0.45/1.14  
% 0.45/1.14  ------ Proving...
% 0.45/1.14  
% 0.45/1.14  
% 0.45/1.14  % SZS status Theorem for theBenchmark.p
% 0.45/1.14  
% 0.45/1.14  % SZS output start CNFRefutation for theBenchmark.p
% See solution above
% 0.45/1.14  
% 0.45/1.14  
%------------------------------------------------------------------------------