↑ Up

Drodi---4.1.1.UNS-CRf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : Drodi---4.1.1
% Problem  : GRP039-1 : TPTP v9.3.1. Released v1.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : drodi -timeout(300) /export/starexec/sandbox2/benchmark/theBenchmark.p

% Computer : n015.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8046.5625MB
% OS       : Linux 6.8.0-71-generic
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Thu Sep 24 12:32:21 PM UTC 2026

% Result   : Unsatisfiable 0.23s 5.65s
% Output   : CNFRefutation 0.23s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   14
%            Number of leaves      :   24
% Syntax   : Number of formulae    :  113 (  32 unt;   8 def)
%            Number of atoms       :  245 (  15 equ)
%            Maximal formula atoms :    4 (   2 avg)
%            Number of connectives :  241 ( 109   ~; 124   |;   0   &)
%                                         (   8 <=>;   0  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   11 (   4 avg)
%            Maximal term depth    :    3 (   1 avg)
%            Number of predicates  :   12 (  10 usr;   9 prp; 0-3 aty)
%            Number of functors    :    8 (   8 usr;   5 con; 0-2 aty)
%            Number of variables   :  139 ( 139   !;   0   ?)

% Comments : 
%------------------------------------------------------------------------------
fof(f1,axiom,
    ! [X] : product(identity,X,X),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f2,axiom,
    ! [X] : product(X,identity,X),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f3,axiom,
    ! [X] : product(inverse(X),X,identity),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f4,axiom,
    ! [X] : product(X,inverse(X),identity),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f5,axiom,
    ! [X,Y] : product(X,Y,multiply(X,Y)),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f6,axiom,
    ! [X,Y,Z,W] :
      ( Z = W
      | ~ product(X,Y,W)
      | ~ product(X,Y,Z) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f7,axiom,
    ! [X,Y,U,Z,V,W] :
      ( product(X,V,W)
      | ~ product(U,Z,W)
      | ~ product(Y,Z,V)
      | ~ product(X,Y,U) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f8,axiom,
    ! [X,Y,U,Z,V,W] :
      ( product(U,Z,W)
      | ~ product(X,V,W)
      | ~ product(Y,Z,V)
      | ~ product(X,Y,U) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f9,axiom,
    ! [X] :
      ( subgroup_member(inverse(X))
      | ~ subgroup_member(X) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f10,axiom,
    ! [A,B,C] :
      ( subgroup_member(C)
      | ~ product(A,B,C)
      | ~ subgroup_member(B)
      | ~ subgroup_member(A) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f11,axiom,
    ! [A,B] :
      ( subgroup_member(A)
      | subgroup_member(B)
      | subgroup_member(element_in_O2(A,B)) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f12,axiom,
    ! [A,B] :
      ( subgroup_member(A)
      | subgroup_member(B)
      | product(A,element_in_O2(A,B),B) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f13,negated_conjecture,
    subgroup_member(b),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f14,negated_conjecture,
    product(b,inverse(a),c),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f15,negated_conjecture,
    product(a,c,d),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f16,negated_conjecture,
    ~ subgroup_member(d),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).

fof(f17,plain,
    ! [X0] : product(identity,X0,X0),
    inference(cnf_transformation,[status(thm)],[f1]) ).

fof(f18,plain,
    ! [X0] : product(X0,identity,X0),
    inference(cnf_transformation,[status(thm)],[f2]) ).

fof(f19,plain,
    ! [X0] : product(inverse(X0),X0,identity),
    inference(cnf_transformation,[status(thm)],[f3]) ).

fof(f20,plain,
    ! [X0] : product(X0,inverse(X0),identity),
    inference(cnf_transformation,[status(thm)],[f4]) ).

fof(f21,plain,
    ! [X0,X1] : product(X0,X1,multiply(X0,X1)),
    inference(cnf_transformation,[status(thm)],[f5]) ).

fof(f22,plain,
    ! [Z,W] :
      ( Z = W
      | ! [X,Y] :
          ( ~ product(X,Y,W)
          | ~ product(X,Y,Z) ) ),
    inference(miniscoping,[status(thm)],[f6]) ).

fof(f23,plain,
    ! [X0,X1,X2,X3] :
      ( X2 = X3
      | ~ product(X0,X1,X3)
      | ~ product(X0,X1,X2) ),
    inference(cnf_transformation,[status(thm)],[f22]) ).

fof(f24,plain,
    ! [X,V,W] :
      ( product(X,V,W)
      | ! [U,Z] :
          ( ~ product(U,Z,W)
          | ! [Y] :
              ( ~ product(Y,Z,V)
              | ~ product(X,Y,U) ) ) ),
    inference(miniscoping,[status(thm)],[f7]) ).

fof(f25,plain,
    ! [X0,X1,X2,X3,X4,X5] :
      ( product(X0,X4,X5)
      | ~ product(X2,X3,X5)
      | ~ product(X1,X3,X4)
      | ~ product(X0,X1,X2) ),
    inference(cnf_transformation,[status(thm)],[f24]) ).

fof(f26,plain,
    ! [U,Z,W] :
      ( product(U,Z,W)
      | ! [X,V] :
          ( ~ product(X,V,W)
          | ! [Y] :
              ( ~ product(Y,Z,V)
              | ~ product(X,Y,U) ) ) ),
    inference(miniscoping,[status(thm)],[f8]) ).

fof(f27,plain,
    ! [X0,X1,X2,X3,X4,X5] :
      ( product(X2,X3,X5)
      | ~ product(X0,X4,X5)
      | ~ product(X1,X3,X4)
      | ~ product(X0,X1,X2) ),
    inference(cnf_transformation,[status(thm)],[f26]) ).

fof(f28,plain,
    ! [X0] :
      ( subgroup_member(inverse(X0))
      | ~ subgroup_member(X0) ),
    inference(cnf_transformation,[status(thm)],[f9]) ).

fof(f29,plain,
    ! [C] :
      ( subgroup_member(C)
      | ! [A,B] :
          ( ~ product(A,B,C)
          | ~ subgroup_member(B)
          | ~ subgroup_member(A) ) ),
    inference(miniscoping,[status(thm)],[f10]) ).

fof(f30,plain,
    ! [X0,X1,X2] :
      ( subgroup_member(X2)
      | ~ product(X0,X1,X2)
      | ~ subgroup_member(X1)
      | ~ subgroup_member(X0) ),
    inference(cnf_transformation,[status(thm)],[f29]) ).

fof(f31,plain,
    ! [A] :
      ( subgroup_member(A)
      | ! [B] :
          ( subgroup_member(B)
          | subgroup_member(element_in_O2(A,B)) ) ),
    inference(miniscoping,[status(thm)],[f11]) ).

fof(f32,plain,
    ! [X0,X1] :
      ( subgroup_member(X0)
      | subgroup_member(X1)
      | subgroup_member(element_in_O2(X0,X1)) ),
    inference(cnf_transformation,[status(thm)],[f31]) ).

fof(f33,plain,
    ! [A] :
      ( subgroup_member(A)
      | ! [B] :
          ( subgroup_member(B)
          | product(A,element_in_O2(A,B),B) ) ),
    inference(miniscoping,[status(thm)],[f12]) ).

fof(f34,plain,
    ! [X0,X1] :
      ( subgroup_member(X0)
      | subgroup_member(X1)
      | product(X0,element_in_O2(X0,X1),X1) ),
    inference(cnf_transformation,[status(thm)],[f33]) ).

fof(f35,plain,
    subgroup_member(b),
    inference(cnf_transformation,[status(thm)],[f13]) ).

fof(f36,plain,
    product(b,inverse(a),c),
    inference(cnf_transformation,[status(thm)],[f14]) ).

fof(f37,plain,
    product(a,c,d),
    inference(cnf_transformation,[status(thm)],[f15]) ).

fof(f38,plain,
    ~ subgroup_member(d),
    inference(cnf_transformation,[status(thm)],[f16]) ).

fof(f42,plain,
    ! [X0,X1] :
      ( X1 = identity
      | ~ product(X0,inverse(X0),X1) ),
    inference(resolution,[status(thm)],[f23,f20]) ).

fof(f47,plain,
    ! [X0,X1] :
      ( ~ product(X0,X1,d)
      | ~ subgroup_member(X1)
      | ~ subgroup_member(X0) ),
    inference(resolution,[status(thm)],[f30,f38]) ).

fof(f48,plain,
    ( ~ subgroup_member(c)
    | ~ subgroup_member(a) ),
    inference(resolution,[status(thm)],[f47,f37]) ).

fof(f49,definition,
    ( sQ0_spl
  <=> subgroup_member(a) ),
    introduced(definition,[new_symbols(definition,[sQ0_spl])],[split_symbol_definition]) ).

fof(f51,plain,
    ( sQ0_spl
    | ~ subgroup_member(a) ),
    inference(component_clause,[status(thm)],[f49]) ).

fof(f52,definition,
    ( sQ1_spl
  <=> subgroup_member(c) ),
    introduced(definition,[new_symbols(definition,[sQ1_spl])],[split_symbol_definition]) ).

fof(f53,plain,
    ( ~ sQ1_spl
    | subgroup_member(c) ),
    inference(component_clause,[status(thm)],[f52]) ).

fof(f54,plain,
    ( sQ1_spl
    | ~ subgroup_member(c) ),
    inference(component_clause,[status(thm)],[f52]) ).

fof(f55,plain,
    ( ~ sQ1_spl
    | ~ sQ0_spl ),
    inference(split_clause,[status(thm)],[f48,f49,f52]) ).

fof(f56,plain,
    ! [X0,X1] :
      ( sQ0_spl
      | ~ product(X0,X1,a)
      | ~ subgroup_member(X1)
      | ~ subgroup_member(X0) ),
    inference(resolution,[status(thm)],[f51,f30]) ).

fof(f58,plain,
    ! [X0,X1,X2,X3] :
      ( product(X0,identity,X3)
      | ~ product(X2,X1,X3)
      | ~ product(X0,inverse(X1),X2) ),
    inference(resolution,[status(thm)],[f25,f19]) ).

fof(f62,plain,
    ! [X0,X1,X2] :
      ( product(X0,d,X2)
      | ~ product(X1,c,X2)
      | ~ product(X0,a,X1) ),
    inference(resolution,[status(thm)],[f25,f37]) ).

fof(f70,plain,
    ! [X0,X1,X2,X3] :
      ( product(X2,X1,X3)
      | ~ product(X0,identity,X3)
      | ~ product(X0,inverse(X1),X2) ),
    inference(resolution,[status(thm)],[f27,f19]) ).

fof(f78,plain,
    inverse(identity) = identity,
    inference(resolution,[status(thm)],[f17,f42]) ).

fof(f80,plain,
    ( ~ subgroup_member(d)
    | ~ subgroup_member(identity) ),
    inference(resolution,[status(thm)],[f17,f47]) ).

fof(f86,plain,
    ! [X0,X1,X2,X3] :
      ( product(X0,X3,X2)
      | ~ product(X1,X2,X3)
      | ~ product(X0,X1,identity) ),
    inference(resolution,[status(thm)],[f17,f25]) ).

fof(f89,plain,
    ! [X0,X1] :
      ( X1 = X0
      | ~ product(identity,X0,X1) ),
    inference(resolution,[status(thm)],[f17,f23]) ).

fof(f90,definition,
    ( sQ2_spl
  <=> subgroup_member(identity) ),
    introduced(definition,[new_symbols(definition,[sQ2_spl])],[split_symbol_definition]) ).

fof(f92,plain,
    ( sQ2_spl
    | ~ subgroup_member(identity) ),
    inference(component_clause,[status(thm)],[f90]) ).

fof(f94,definition,
    ( sQ3_spl
  <=> subgroup_member(d) ),
    introduced(definition,[new_symbols(definition,[sQ3_spl])],[split_symbol_definition]) ).

fof(f97,plain,
    ( ~ sQ3_spl
    | ~ sQ2_spl ),
    inference(split_clause,[status(thm)],[f80,f90,f94]) ).

fof(f98,plain,
    ! [X0,X1] :
      ( sQ2_spl
      | ~ product(X0,X1,identity)
      | ~ subgroup_member(X1)
      | ~ subgroup_member(X0) ),
    inference(resolution,[status(thm)],[f92,f30]) ).

fof(f110,plain,
    ! [X0,X1] :
      ( X1 = X0
      | ~ product(X0,identity,X1) ),
    inference(resolution,[status(thm)],[f18,f23]) ).

fof(f129,plain,
    ! [X0,X1,X2] :
      ( X2 = multiply(X0,X1)
      | ~ product(X0,X1,X2) ),
    inference(resolution,[status(thm)],[f21,f23]) ).

fof(f133,plain,
    ! [X0] : multiply(identity,X0) = X0,
    inference(resolution,[status(thm)],[f89,f21]) ).

fof(f153,plain,
    ! [X0] :
      ( subgroup_member(X0)
      | product(X0,element_in_O2(X0,d),d) ),
    inference(resolution,[status(thm)],[f34,f38]) ).

fof(f159,plain,
    ! [X0] :
      ( sQ2_spl
      | ~ subgroup_member(X0)
      | ~ subgroup_member(inverse(X0)) ),
    inference(resolution,[status(thm)],[f98,f19]) ).

fof(f163,plain,
    ! [X0] :
      ( sQ2_spl
      | ~ subgroup_member(X0) ),
    inference(forward_subsumption_resolution,[status(thm)],[f159,f28]) ).

fof(f168,plain,
    ( sQ2_spl
    | $false ),
    inference(backward_subsumption_resolution,[status(thm)],[f35,f163]) ).

fof(f171,plain,
    sQ2_spl,
    inference(contradiction_clause,[status(thm)],[f168]) ).

fof(f201,plain,
    ! [X0] :
      ( product(b,identity,X0)
      | ~ product(c,a,X0) ),
    inference(resolution,[status(thm)],[f58,f36]) ).

fof(f247,plain,
    ( sQ0_spl
    | product(a,element_in_O2(a,d),d) ),
    inference(resolution,[status(thm)],[f153,f51]) ).

fof(f250,plain,
    ( sQ0_spl
    | d = multiply(a,element_in_O2(a,d)) ),
    inference(resolution,[status(thm)],[f247,f129]) ).

fof(f284,plain,
    product(b,identity,multiply(c,a)),
    inference(resolution,[status(thm)],[f201,f21]) ).

fof(f285,plain,
    multiply(c,a) = b,
    inference(resolution,[status(thm)],[f284,f110]) ).

fof(f296,plain,
    product(c,a,b),
    inference(paramodulation,[status(thm)],[f285,f21]) ).

fof(f306,plain,
    ! [X0] :
      ( product(X0,d,c)
      | ~ product(X0,a,identity) ),
    inference(resolution,[status(thm)],[f62,f17]) ).

fof(f338,plain,
    product(inverse(a),d,c),
    inference(resolution,[status(thm)],[f306,f19]) ).

fof(f339,plain,
    c = multiply(inverse(a),d),
    inference(resolution,[status(thm)],[f338,f129]) ).

fof(f432,definition,
    ( sQ8_spl
  <=> subgroup_member(inverse(a)) ),
    introduced(definition,[new_symbols(definition,[sQ8_spl])],[split_symbol_definition]) ).

fof(f434,plain,
    ( sQ8_spl
    | ~ subgroup_member(inverse(a)) ),
    inference(component_clause,[status(thm)],[f432]) ).

fof(f440,plain,
    ! [X0,X1] :
      ( sQ1_spl
      | ~ product(X0,X1,c)
      | ~ subgroup_member(X1)
      | ~ subgroup_member(X0) ),
    inference(resolution,[status(thm)],[f54,f30]) ).

fof(f441,plain,
    ( sQ8_spl
    | ~ subgroup_member(a) ),
    inference(resolution,[status(thm)],[f434,f28]) ).

fof(f453,plain,
    ! [X0,X1] :
      ( sQ8_spl
      | ~ product(X0,X1,a)
      | ~ subgroup_member(X1)
      | ~ subgroup_member(X0) ),
    inference(resolution,[status(thm)],[f441,f30]) ).

fof(f476,plain,
    ( sQ1_spl
    | ~ subgroup_member(inverse(a))
    | ~ subgroup_member(b) ),
    inference(resolution,[status(thm)],[f440,f36]) ).

fof(f480,definition,
    ( sQ10_spl
  <=> subgroup_member(b) ),
    introduced(definition,[new_symbols(definition,[sQ10_spl])],[split_symbol_definition]) ).

fof(f482,plain,
    ( sQ10_spl
    | ~ subgroup_member(b) ),
    inference(component_clause,[status(thm)],[f480]) ).

fof(f483,plain,
    ( sQ1_spl
    | ~ sQ8_spl
    | ~ sQ10_spl ),
    inference(split_clause,[status(thm)],[f476,f480,f432,f52]) ).

fof(f495,plain,
    ( sQ8_spl
    | ~ subgroup_member(a)
    | ~ subgroup_member(identity) ),
    inference(resolution,[status(thm)],[f453,f17]) ).

fof(f497,plain,
    ( sQ8_spl
    | ~ sQ0_spl
    | ~ sQ2_spl ),
    inference(split_clause,[status(thm)],[f495,f90,f49,f432]) ).

fof(f499,plain,
    ( sQ10_spl
    | $false ),
    inference(forward_subsumption_resolution,[status(thm)],[f482,f35]) ).

fof(f500,plain,
    sQ10_spl,
    inference(contradiction_clause,[status(thm)],[f499]) ).

fof(f509,plain,
    ! [X0,X1,X2] :
      ( product(X2,X1,X0)
      | ~ product(X0,inverse(X1),X2) ),
    inference(resolution,[status(thm)],[f70,f18]) ).

fof(f584,plain,
    ! [X0,X1] : product(multiply(X0,inverse(X1)),X1,X0),
    inference(resolution,[status(thm)],[f509,f21]) ).

fof(f611,plain,
    ! [X0] :
      ( ~ subgroup_member(X0)
      | ~ subgroup_member(multiply(d,inverse(X0))) ),
    inference(resolution,[status(thm)],[f584,f47]) ).

fof(f754,definition,
    ( sQ11_spl
  <=> subgroup_member(inverse(c)) ),
    introduced(definition,[new_symbols(definition,[sQ11_spl])],[split_symbol_definition]) ).

fof(f756,plain,
    ( sQ11_spl
    | ~ subgroup_member(inverse(c)) ),
    inference(component_clause,[status(thm)],[f754]) ).

fof(f835,plain,
    ( ~ subgroup_member(identity)
    | ~ subgroup_member(multiply(d,identity)) ),
    inference(paramodulation,[status(thm)],[f78,f611]) ).

fof(f838,definition,
    ( sQ13_spl
  <=> subgroup_member(multiply(d,identity)) ),
    introduced(definition,[new_symbols(definition,[sQ13_spl])],[split_symbol_definition]) ).

fof(f841,plain,
    ( ~ sQ2_spl
    | ~ sQ13_spl ),
    inference(split_clause,[status(thm)],[f835,f838,f90]) ).

fof(f901,plain,
    ! [X0,X1,X2] :
      ( product(multiply(identity,inverse(X0)),X2,X1)
      | ~ product(X0,X1,X2) ),
    inference(resolution,[status(thm)],[f86,f584]) ).

fof(f907,plain,
    ! [X0,X1,X2] :
      ( product(inverse(X0),X2,X1)
      | ~ product(X0,X1,X2) ),
    inference(forward_demodulation,[status(thm)],[f133,f901]) ).

fof(f1058,plain,
    product(inverse(c),b,a),
    inference(resolution,[status(thm)],[f907,f296]) ).

fof(f1069,plain,
    ! [X0,X1] : product(inverse(X0),multiply(X0,X1),X1),
    inference(resolution,[status(thm)],[f907,f21]) ).

fof(f1076,plain,
    ( sQ0_spl
    | ~ subgroup_member(b)
    | ~ subgroup_member(inverse(c)) ),
    inference(resolution,[status(thm)],[f1058,f56]) ).

fof(f1087,plain,
    ( sQ0_spl
    | ~ sQ10_spl
    | ~ sQ11_spl ),
    inference(split_clause,[status(thm)],[f1076,f754,f480,f49]) ).

fof(f1089,plain,
    ( sQ11_spl
    | ~ subgroup_member(c) ),
    inference(resolution,[status(thm)],[f756,f28]) ).

fof(f1114,plain,
    ! [X0,X1] : X0 = multiply(inverse(X1),multiply(X1,X0)),
    inference(resolution,[status(thm)],[f1069,f129]) ).

fof(f1166,plain,
    ( sQ0_spl
    | element_in_O2(a,d) = multiply(inverse(a),d) ),
    inference(paramodulation,[status(thm)],[f250,f1114]) ).

fof(f1180,plain,
    ( sQ0_spl
    | element_in_O2(a,d) = c ),
    inference(forward_demodulation,[status(thm)],[f339,f1166]) ).

fof(f1185,plain,
    ( sQ0_spl
    | subgroup_member(a)
    | subgroup_member(d)
    | subgroup_member(c) ),
    inference(paramodulation,[status(thm)],[f1180,f32]) ).

fof(f1186,plain,
    ( sQ0_spl
    | sQ3_spl
    | sQ1_spl ),
    inference(split_clause,[status(thm)],[f1185,f52,f94,f49]) ).

fof(f1187,plain,
    ( ~ sQ1_spl
    | sQ11_spl
    | $false ),
    inference(forward_subsumption_resolution,[status(thm)],[f53,f1089]) ).

fof(f1188,plain,
    ( ~ sQ1_spl
    | sQ11_spl ),
    inference(contradiction_clause,[status(thm)],[f1187]) ).

fof(f1189,plain,
    $false,
    inference(sat_refutation,[status(thm)],[f55,f97,f171,f483,f497,f500,f841,f1087,f1186,f1188]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.05  % Problem  : GRP039-1 : TPTP v9.3.1. Released v1.0.0.
% 0.00/0.07  % Command  : drodi -timeout(300) /export/starexec/sandbox2/benchmark/theBenchmark.p
% 0.18/5.46  % Computer : n015.cluster.edu
% 0.18/5.46  % Model    : x86_64 x86_64
% 0.18/5.46  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.18/5.46  % Memory   : 8046.5625MB
% 0.18/5.46  % OS       : Linux 6.8.0-71-generic
% 0.18/5.46  % CPULimit : 300
% 0.18/5.46  % WCLimit  : 300
% 0.18/5.46  % DateTime : Sun Sep 20 19:58:26 UTC 2026
% 0.18/5.47  % CPUTime  : 
% 0.18/5.48  % Drodi V4.1.1
% 0.23/5.65  % Refutation found
% 0.23/5.65  % SZS status Unsatisfiable for theBenchmark: Theory is unsatisfiable
% 0.23/5.65  % SZS output start CNFRefutation for theBenchmark
% See solution above
% 0.23/5.69  % Elapsed time: 0.203274 seconds
% 0.23/5.69  % CPU time: 1.143476 seconds
% 0.23/5.69  % Total memory used: 89.713 MB
% 0.23/5.69  % Net memory used: 87.666 MB
%------------------------------------------------------------------------------