%------------------------------------------------------------------------------
% File : iProver---3.9.4
% Problem : NUM539+1 : TPTP v9.3.1. Released v4.0.0.
% Transfm : none
% Format : tptp:raw
% Command : run_iprover 300 /export/starexec/sandbox/benchmark/theBenchmark.p THM
% Computer : n016.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 : Fri Sep 25 02:25:55 PM UTC 2026
% Result : Theorem 4.39s 6.31s
% Output : CNFRefutation 4.39s
% Verified :
% SZS Type : Refutation
% Derivation depth : 14
% Number of leaves : 9
% Syntax : Number of formulae : 69 ( 29 unt; 2 def)
% Number of atoms : 262 ( 50 equ)
% Maximal formula atoms : 10 ( 3 avg)
% Number of connectives : 274 ( 111 ~; 115 |; 37 &)
% ( 5 <=>; 6 =>; 0 <=; 0 <~>)
% Maximal formula depth : 10 ( 4 avg)
% Maximal term depth : 2 ( 1 avg)
% Number of types : 1 ( 0 usr)
% Number of type conns : 0 ( 0 >; 0 *; 0 +; 0 <<)
% Number of predicates : 9 ( 7 usr; 3 prp; 0-2 aty)
% Number of functors : 7 ( 7 usr; 4 con; 0-2 aty)
% Number of variables : 78 ( 0 sgn 72 !; 6 ?; 14 :)
% Comments :
%------------------------------------------------------------------------------
fof(f10,axiom,
! [X0] :
( aSet0(X0)
=> ! [X1] :
( aSubsetOf0(X1,X0)
<=> ( ! [X2] :
( aElementOf0(X2,X1)
=> aElementOf0(X2,X0) )
& aSet0(X1) ) ) ),
file('/export/starexec/sandbox/benchmark/theBenchmark.p',mDefSub) ).
fof(f23,axiom,
( isCountable0(szNzAzT0)
& aSet0(szNzAzT0) ),
file('/export/starexec/sandbox/benchmark/theBenchmark.p',mNATSet) ).
fof(f35,axiom,
! [X0,X1] :
( ( aElementOf0(X1,szNzAzT0)
& aElementOf0(X0,szNzAzT0) )
=> ( ( sdtlseqdt0(X1,X0)
& sdtlseqdt0(X0,X1) )
=> X0 = X1 ) ),
file('/export/starexec/sandbox/benchmark/theBenchmark.p',mLessASymm) ).
fof(f47,axiom,
! [X0] :
( ( X0 != slcrc0
& aSubsetOf0(X0,szNzAzT0) )
=> ! [X1] :
( X1 = szmzizndt0(X0)
<=> ( ! [X2] :
( aElementOf0(X2,X0)
=> sdtlseqdt0(X1,X2) )
& aElementOf0(X1,X0) ) ) ),
file('/export/starexec/sandbox/benchmark/theBenchmark.p',mDefMin) ).
fof(f49,axiom,
( xT != slcrc0
& xS != slcrc0
& aSubsetOf0(xT,szNzAzT0)
& aSubsetOf0(xS,szNzAzT0) ),
file('/export/starexec/sandbox/benchmark/theBenchmark.p',m__1779) ).
fof(f50,axiom,
( aElementOf0(szmzizndt0(xT),xS)
& aElementOf0(szmzizndt0(xS),xT) ),
file('/export/starexec/sandbox/benchmark/theBenchmark.p',m__1802) ).
fof(f51,conjecture,
szmzizndt0(xS) = szmzizndt0(xT),
file('/export/starexec/sandbox/benchmark/theBenchmark.p',m__) ).
fof(f52,negated_conjecture,
szmzizndt0(xS) != szmzizndt0(xT),
inference(negated_conjecture,[status(cth)],[f51]) ).
fof(f59,plain,
szmzizndt0(xS) != szmzizndt0(xT),
inference(flattening,[],[f52]) ).
fof(f67,plain,
! [X0] :
( ~ aSet0(X0)
| ! [X1] :
( aSubsetOf0(X1,X0)
<=> ( ! [X2] :
( ~ aElementOf0(X2,X1)
| aElementOf0(X2,X0) )
& aSet0(X1) ) ) ),
inference(ennf_transformation,[],[f10]) ).
fof(f102,plain,
! [X0,X1] :
( ~ aElementOf0(X1,szNzAzT0)
| ~ aElementOf0(X0,szNzAzT0)
| ~ sdtlseqdt0(X1,X0)
| ~ sdtlseqdt0(X0,X1)
| X0 = X1 ),
inference(ennf_transformation,[],[f35]) ).
fof(f103,plain,
! [X0,X1] :
( ~ aElementOf0(X1,szNzAzT0)
| ~ aElementOf0(X0,szNzAzT0)
| ~ sdtlseqdt0(X1,X0)
| ~ sdtlseqdt0(X0,X1)
| X0 = X1 ),
inference(flattening,[],[f102]) ).
fof(f119,plain,
! [X0] :
( slcrc0 = X0
| ~ aSubsetOf0(X0,szNzAzT0)
| ! [X1] :
( X1 = szmzizndt0(X0)
<=> ( ! [X2] :
( ~ aElementOf0(X2,X0)
| sdtlseqdt0(X1,X2) )
& aElementOf0(X1,X0) ) ) ),
inference(ennf_transformation,[],[f47]) ).
fof(f120,plain,
! [X0] :
( slcrc0 = X0
| ~ aSubsetOf0(X0,szNzAzT0)
| ! [X1] :
( X1 = szmzizndt0(X0)
<=> ( ! [X2] :
( ~ aElementOf0(X2,X0)
| sdtlseqdt0(X1,X2) )
& aElementOf0(X1,X0) ) ) ),
inference(flattening,[],[f119]) ).
fof(f133,plain,
! [X0] :
( ~ aSet0(X0)
| ! [X1] :
( ( ~ aSubsetOf0(X1,X0)
| ( ! [X2] :
( ~ aElementOf0(X2,X1)
| aElementOf0(X2,X0) )
& aSet0(X1) ) )
& ( ? [X2] :
( aElementOf0(X2,X1)
& ~ aElementOf0(X2,X0) )
| ~ aSet0(X1)
| aSubsetOf0(X1,X0) ) ) ),
inference(nnf_transformation,[],[f67]) ).
fof(f134,plain,
! [X0] :
( ~ aSet0(X0)
| ! [X1] :
( ( ~ aSubsetOf0(X1,X0)
| ( ! [X2] :
( ~ aElementOf0(X2,X1)
| aElementOf0(X2,X0) )
& aSet0(X1) ) )
& ( ? [X2] :
( aElementOf0(X2,X1)
& ~ aElementOf0(X2,X0) )
| ~ aSet0(X1)
| aSubsetOf0(X1,X0) ) ) ),
inference(flattening,[],[f133]) ).
fof(f135,plain,
! [X0] :
( ~ aSet0(X0)
| ! [X1] :
( ( ~ aSubsetOf0(X1,X0)
| ( ! [X3] :
( ~ aElementOf0(X3,X1)
| aElementOf0(X3,X0) )
& aSet0(X1) ) )
& ( ? [X2] :
( aElementOf0(X2,X1)
& ~ aElementOf0(X2,X0) )
| ~ aSet0(X1)
| aSubsetOf0(X1,X0) ) ) ),
inference(rectify,[],[f134]) ).
fof(f136,plain,
! [X0] :
( ~ aSet0(X0)
| ! [X1] :
( ( ~ aSubsetOf0(X1,X0)
| ( ! [X3] :
( ~ aElementOf0(X3,X1)
| aElementOf0(X3,X0) )
& aSet0(X1) ) )
& ( ( aElementOf0(sK5(X0,X1),X1)
& ~ aElementOf0(sK5(X0,X1),X0) )
| ~ aSet0(X1)
| aSubsetOf0(X1,X0) ) ) ),
inference(skolemize,[status(esa),new_symbols(skolem,[sK5]),skolemize(X2,sK5(X0,X1))],[f135]) ).
fof(f154,plain,
! [X0] :
( slcrc0 = X0
| ~ aSubsetOf0(X0,szNzAzT0)
| ! [X1] :
( ( szmzizndt0(X0) != X1
| ( ! [X2] :
( ~ aElementOf0(X2,X0)
| sdtlseqdt0(X1,X2) )
& aElementOf0(X1,X0) ) )
& ( ? [X2] :
( aElementOf0(X2,X0)
& ~ sdtlseqdt0(X1,X2) )
| ~ aElementOf0(X1,X0)
| X1 = szmzizndt0(X0) ) ) ),
inference(nnf_transformation,[],[f120]) ).
fof(f155,plain,
! [X0] :
( slcrc0 = X0
| ~ aSubsetOf0(X0,szNzAzT0)
| ! [X1] :
( ( szmzizndt0(X0) != X1
| ( ! [X2] :
( ~ aElementOf0(X2,X0)
| sdtlseqdt0(X1,X2) )
& aElementOf0(X1,X0) ) )
& ( ? [X2] :
( aElementOf0(X2,X0)
& ~ sdtlseqdt0(X1,X2) )
| ~ aElementOf0(X1,X0)
| X1 = szmzizndt0(X0) ) ) ),
inference(flattening,[],[f154]) ).
fof(f156,plain,
! [X0] :
( slcrc0 = X0
| ~ aSubsetOf0(X0,szNzAzT0)
| ! [X1] :
( ( szmzizndt0(X0) != X1
| ( ! [X3] :
( ~ aElementOf0(X3,X0)
| sdtlseqdt0(X1,X3) )
& aElementOf0(X1,X0) ) )
& ( ? [X2] :
( aElementOf0(X2,X0)
& ~ sdtlseqdt0(X1,X2) )
| ~ aElementOf0(X1,X0)
| X1 = szmzizndt0(X0) ) ) ),
inference(rectify,[],[f155]) ).
fof(f157,plain,
! [X0] :
( slcrc0 = X0
| ~ aSubsetOf0(X0,szNzAzT0)
| ! [X1] :
( ( szmzizndt0(X0) != X1
| ( ! [X3] :
( ~ aElementOf0(X3,X0)
| sdtlseqdt0(X1,X3) )
& aElementOf0(X1,X0) ) )
& ( ( aElementOf0(sK10(X0,X1),X0)
& ~ sdtlseqdt0(X1,sK10(X0,X1)) )
| ~ aElementOf0(X1,X0)
| X1 = szmzizndt0(X0) ) ) ),
inference(skolemize,[status(esa),new_symbols(skolem,[sK10]),skolemize(X2,sK10(X0,X1))],[f156]) ).
fof(f169,plain,
! [X3,X0,X1] :
( ~ aSet0(X0)
| ~ aSubsetOf0(X1,X0)
| ~ aElementOf0(X3,X1)
| aElementOf0(X3,X0) ),
inference(cnf_transformation,[],[f136]) ).
fof(f208,plain,
aSet0(szNzAzT0),
inference(cnf_transformation,[],[f23]) ).
fof(f222,plain,
! [X0,X1] :
( ~ aElementOf0(X1,szNzAzT0)
| ~ aElementOf0(X0,szNzAzT0)
| ~ sdtlseqdt0(X1,X0)
| ~ sdtlseqdt0(X0,X1)
| X0 = X1 ),
inference(cnf_transformation,[],[f103]) ).
fof(f235,plain,
! [X3,X0,X1] :
( slcrc0 = X0
| ~ aSubsetOf0(X0,szNzAzT0)
| szmzizndt0(X0) != X1
| ~ aElementOf0(X3,X0)
| sdtlseqdt0(X1,X3) ),
inference(cnf_transformation,[],[f157]) ).
fof(f236,plain,
! [X0,X1] :
( slcrc0 = X0
| ~ aSubsetOf0(X0,szNzAzT0)
| szmzizndt0(X0) != X1
| aElementOf0(X1,X0) ),
inference(cnf_transformation,[],[f157]) ).
fof(f243,plain,
slcrc0 != xT,
inference(cnf_transformation,[],[f49]) ).
fof(f244,plain,
slcrc0 != xS,
inference(cnf_transformation,[],[f49]) ).
fof(f245,plain,
aSubsetOf0(xT,szNzAzT0),
inference(cnf_transformation,[],[f49]) ).
fof(f246,plain,
aSubsetOf0(xS,szNzAzT0),
inference(cnf_transformation,[],[f49]) ).
fof(f247,plain,
aElementOf0(szmzizndt0(xT),xS),
inference(cnf_transformation,[],[f50]) ).
fof(f248,plain,
aElementOf0(szmzizndt0(xS),xT),
inference(cnf_transformation,[],[f50]) ).
fof(f249,plain,
szmzizndt0(xS) != szmzizndt0(xT),
inference(cnf_transformation,[],[f59]) ).
fof(f258,plain,
! [X0] :
( slcrc0 = X0
| ~ aSubsetOf0(X0,szNzAzT0)
| aElementOf0(szmzizndt0(X0),X0) ),
inference(equality_resolution,[],[f236]) ).
fof(f259,plain,
! [X3,X0] :
( slcrc0 = X0
| ~ aSubsetOf0(X0,szNzAzT0)
| ~ aElementOf0(X3,X0)
| sdtlseqdt0(szmzizndt0(X0),X3) ),
inference(equality_resolution,[],[f235]) ).
tcf(c_59,plain,
! [X0: $i,X1: $i,X2: $i] :
( aElementOf0(X0,X2)
| ~ aSet0(X2)
| ~ aSubsetOf0(X1,X2)
| ~ aElementOf0(X0,X1) ),
inference(cnf_transformation,[],[f169]) ).
tcf(c_94,plain,
aSet0(szNzAzT0),
inference(cnf_transformation,[],[f208]) ).
tcf(c_109,plain,
! [X0: $i,X1: $i] :
( ( X0 = X1 )
| ~ aElementOf0(X1,szNzAzT0)
| ~ aElementOf0(X0,szNzAzT0)
| ~ sdtlseqdt0(X1,X0)
| ~ sdtlseqdt0(X0,X1) ),
inference(cnf_transformation,[],[f222]) ).
tcf(c_124,plain,
! [X0: $i] :
( aElementOf0(szmzizndt0(X0),X0)
| ( X0 = slcrc0 )
| ~ aSubsetOf0(X0,szNzAzT0) ),
inference(cnf_transformation,[],[f258]) ).
tcf(c_125,plain,
! [X0: $i,X1: $i] :
( sdtlseqdt0(szmzizndt0(X1),X0)
| ( X1 = slcrc0 )
| ~ aSubsetOf0(X1,szNzAzT0)
| ~ aElementOf0(X0,X1) ),
inference(cnf_transformation,[],[f259]) ).
tcf(c_130,plain,
aSubsetOf0(xS,szNzAzT0),
inference(cnf_transformation,[],[f246]) ).
tcf(c_131,plain,
aSubsetOf0(xT,szNzAzT0),
inference(cnf_transformation,[],[f245]) ).
tcf(c_132,plain,
slcrc0 != xS,
inference(cnf_transformation,[],[f244]) ).
tcf(c_133,plain,
slcrc0 != xT,
inference(cnf_transformation,[],[f243]) ).
tcf(c_134,plain,
aElementOf0(szmzizndt0(xS),xT),
inference(cnf_transformation,[],[f248]) ).
tcf(c_135,plain,
aElementOf0(szmzizndt0(xT),xS),
inference(cnf_transformation,[],[f247]) ).
tcf(c_136,negated_conjecture,
szmzizndt0(xS) != szmzizndt0(xT),
inference(cnf_transformation,[],[f249]) ).
tcf(c_7796,definition,
iPr_def_10 = szmzizndt0(xS),
introduced(definition,[new_symbols(definition,[iPr_def_10])],[]) ).
tcf(c_7797,definition,
iPr_def_11 = szmzizndt0(xT),
introduced(definition,[new_symbols(definition,[iPr_def_11])],[]) ).
tcf(c_7798,negated_conjecture,
iPr_def_10 != iPr_def_11,
inference(demodulation,[status(thm)],[c_136,c_7797,c_7796]) ).
tcf(c_9101,plain,
aElementOf0(iPr_def_10,xT),
inference(light_normalisation,[status(thm)],[c_134,c_7796]) ).
tcf(c_9102,plain,
aElementOf0(iPr_def_11,xS),
inference(light_normalisation,[status(thm)],[c_135,c_7797]) ).
tcf(c_9384,plain,
( aElementOf0(iPr_def_10,xS)
| ( slcrc0 = xS )
| ~ aSubsetOf0(xS,szNzAzT0) ),
inference(superposition,[status(thm)],[c_7796,c_124]) ).
tcf(c_9385,plain,
( aElementOf0(iPr_def_11,xT)
| ( slcrc0 = xT )
| ~ aSubsetOf0(xT,szNzAzT0) ),
inference(superposition,[status(thm)],[c_7797,c_124]) ).
tcf(c_9391,plain,
aElementOf0(iPr_def_11,xT),
inference(forward_subsumption_resolution,[status(thm)],[c_9385,c_133,c_131]) ).
tcf(c_9392,plain,
aElementOf0(iPr_def_10,xS),
inference(forward_subsumption_resolution,[status(thm)],[c_9384,c_132,c_130]) ).
tcf(c_9753,plain,
! [X0: $i] :
( sdtlseqdt0(iPr_def_10,X0)
| ( slcrc0 = xS )
| ~ aSubsetOf0(xS,szNzAzT0)
| ~ aElementOf0(X0,xS) ),
inference(superposition,[status(thm)],[c_7796,c_125]) ).
tcf(c_9754,plain,
! [X0: $i] :
( sdtlseqdt0(iPr_def_11,X0)
| ( slcrc0 = xT )
| ~ aSubsetOf0(xT,szNzAzT0)
| ~ aElementOf0(X0,xT) ),
inference(superposition,[status(thm)],[c_7797,c_125]) ).
tcf(c_9756,plain,
! [X0: $i] :
( sdtlseqdt0(iPr_def_11,X0)
| ~ aElementOf0(X0,xT) ),
inference(forward_subsumption_resolution,[status(thm)],[c_9754,c_133,c_131]) ).
tcf(c_9759,plain,
! [X0: $i] :
( sdtlseqdt0(iPr_def_10,X0)
| ~ aElementOf0(X0,xS) ),
inference(forward_subsumption_resolution,[status(thm)],[c_9753,c_132,c_130]) ).
tcf(c_9791,plain,
! [X0: $i] :
( aElementOf0(iPr_def_10,X0)
| ~ aSet0(X0)
| ~ aSubsetOf0(xS,X0) ),
inference(superposition,[status(thm)],[c_9392,c_59]) ).
tcf(c_9792,plain,
! [X0: $i] :
( aElementOf0(iPr_def_11,X0)
| ~ aSet0(X0)
| ~ aSubsetOf0(xT,X0) ),
inference(superposition,[status(thm)],[c_9391,c_59]) ).
tcf(c_9850,plain,
( aElementOf0(iPr_def_11,szNzAzT0)
| ~ aSet0(szNzAzT0)
| ~ aSubsetOf0(xT,szNzAzT0) ),
inference(instantiation,[status(thm)],[c_9792]) ).
tcf(c_9851,plain,
( aElementOf0(iPr_def_10,szNzAzT0)
| ~ aSet0(szNzAzT0)
| ~ aSubsetOf0(xS,szNzAzT0) ),
inference(instantiation,[status(thm)],[c_9791]) ).
tcf(c_9940,plain,
sdtlseqdt0(iPr_def_11,iPr_def_10),
inference(superposition,[status(thm)],[c_9101,c_9756]) ).
tcf(c_9963,plain,
sdtlseqdt0(iPr_def_10,iPr_def_11),
inference(superposition,[status(thm)],[c_9102,c_9759]) ).
tcf(c_10127,plain,
( ( iPr_def_10 = iPr_def_11 )
| ~ sdtlseqdt0(iPr_def_11,iPr_def_10)
| ~ sdtlseqdt0(iPr_def_10,iPr_def_11)
| ~ aElementOf0(iPr_def_11,szNzAzT0)
| ~ aElementOf0(iPr_def_10,szNzAzT0) ),
inference(instantiation,[status(thm)],[c_109]) ).
tcf(c_10128,plain,
$false,
inference(prop_impl_just,[status(thm)],[c_10127,c_9963,c_9940,c_9851,c_9850,c_7798,c_130,c_131,c_94]) ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.03 % Problem : NUM539+1 : TPTP v9.3.1. Released v4.0.0.
% 0.00/0.04 % Command : run_iprover 300 /export/starexec/sandbox/benchmark/theBenchmark.p THM
% 0.10/5.39 % Computer : n016.cluster.edu
% 0.10/5.39 % Model : x86_64 x86_64
% 0.10/5.39 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.10/5.39 % Memory : 8046.5625MB
% 0.10/5.39 % OS : Linux 6.8.0-71-generic
% 0.10/5.39 % CPULimit : 300
% 0.10/5.39 % WCLimit : 300
% 0.10/5.39 % DateTime : Thu Sep 24 04:35:49 UTC 2026
% 0.10/5.39 % CPUTime :
% 0.10/5.39 Running run_iprover 300 /export/starexec/sandbox/benchmark/theBenchmark.p THM
% 0.16/5.43 Running first-order theorem proving
% 0.16/5.43 Running: /export/starexec/sandbox/solver/bin/iproveropt-multi-core.sh -d -n -l tptp -s fof_schedule -t 300 /export/starexec/sandbox/benchmark/theBenchmark.p
% 0.16/5.44
% 0.16/5.44 % ======== iProver multi-core TPTP/SMT =========
% 0.16/5.44
% 0.16/5.44 % Detected problem language: tptp
% 0.16/5.45 % Proving...
% 4.39/6.31 % SZS status Started for theBenchmark.p
% 4.39/6.31 % SZS status Theorem for theBenchmark.p
% 4.39/6.31
% 4.39/6.31 %---------------- iProver v3.9.4 (pre CASC 2026/SMT-COMP 2026) ----------------%
% 4.39/6.31
% 4.39/6.31 % ------ iProver source info
% 4.39/6.31
% 4.39/6.31 % git: date: 2026-07-19 20:42:38 +0200
% 4.39/6.31 % git: sha1: 804e7d636a263075307957e923b7a22a4035de61
% 4.39/6.31 % git: non_committed_changes: false
% 4.39/6.31
% 4.39/6.31 % ------ Parsing...
% 4.39/6.31 % ------ Clausification by vclausify_rel & Parsing by iProver...%
% 4.39/6.31
% 4.39/6.31 % ------ Preprocessing... sup_sim: 0 sf_s rm: 1 0s sf_e pe_s pe:1:0s pe:2:0s pe_e sup_sim: 0 sf_s rm: 1 0s sf_e pe_s pe_e %
% 4.39/6.31
% 4.39/6.31 % ------ Preprocessing... gs_s sp: 0 0s gs_e snvd_s sp: 0 0s snvd_e %
% 4.39/6.31
% 4.39/6.31 % ------ Preprocessing... sf_s rm: 1 0s sf_e sf_s rm: 0 0s sf_e
% 4.39/6.31 % ------ Proving...
% 4.39/6.31 % ------ Problem Properties
% 4.39/6.31
% 4.39/6.31 %
% 4.39/6.31 % clauses 88
% 4.39/6.31 % conjectures 1
% 4.39/6.31 % EPR 34
% 4.39/6.31 % Horn 65
% 4.39/6.31 % unary 17
% 4.39/6.31 % binary 12
% 4.39/6.31 % lits 275
% 4.39/6.31 % lits eq 43
% 4.39/6.31 % fd_pure 0
% 4.39/6.31 % fd_pseudo 0
% 4.39/6.31 % fd_cond 7
% 4.39/6.31 % fd_pseudo_cond 11
% 4.39/6.31 % AC symbols 0
% 4.39/6.31
% 4.39/6.31 % ------ Schedule dynamic 5 is on
% 4.39/6.31
% 4.39/6.31 % ------ Input Options "--resolution_flag false --inst_lit_sel_side none" Time Limit: 10.
% 4.39/6.31
% 4.39/6.31
% 4.39/6.31 % ------
% 4.39/6.31 % Current options:
% 4.39/6.31 % ------
% 4.39/6.31
% 4.39/6.31
% 4.39/6.31 %
% 4.39/6.31
% 4.39/6.31 % ------ Proving...
% 4.39/6.31 %
% 4.39/6.31
% 4.39/6.31 % SZS status Theorem for theBenchmark.p
% 4.39/6.31
% 4.39/6.31 % SZS output start CNFRefutation for theBenchmark.p
% See solution above
% 4.39/6.31
% 4.39/6.31
%------------------------------------------------------------------------------