 reserve Omega for non empty set;
 reserve F for SigmaField of Omega;
 reserve phi for Real_Sequence;
 reserve jpi for pricefunction;

theorem
  for jpi being pricefunction
  for d,d2 being Nat st d>0 & d2=d-1 holds
  for Prob being Probability of F
  for r being Real st r>-1 holds
  for G being sequence of set_of_random_variables_on (F,Borel_Sets) st
   Element_Of(F,Borel_Sets,G,0) = Omega-->1+r holds
   (Arbitrage_Opportunity_exists_wrt Prob,G,jpi,d iff
   (ex myphi being Real_Sequence st
    (Prob.((RVPortfolioValueFut(myphi,F,G,d2)-
     (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))"[.0,+infty.[)=1) &
     Prob.((RVPortfolioValueFut(myphi,F,G,d2)-
     (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))"].0,+infty.[)>0))
proof
 let jpi be pricefunction;
 let d,d2 be Nat;
 assume A1: d>0 & d2=d-1;
 let Prob be Probability of F;
 let r be Real;
 assume A2: r>-1;
 let G be sequence of set_of_random_variables_on (F,Borel_Sets);
 assume A3: Element_Of(F,Borel_Sets,G,0) = Omega-->1+r;
 thus (Arbitrage_Opportunity_exists_wrt Prob,G,jpi,d) implies
  (ex myphi being Real_Sequence st
   ((Prob.((RVPortfolioValueFut(myphi,F,G,d2)-
   (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))"[.0,+infty.[)=1) &
   Prob.((RVPortfolioValueFut(myphi,F,G,d2)-
   (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))"].0,+infty.[)>0))
 proof
  assume Arbitrage_Opportunity_exists_wrt Prob,G,jpi,d;
  then consider phi being Real_Sequence such that
  C1:  BuyPortfolioExt(phi,jpi,d)<=0 &
       Prob.ArbitrageElSigma1(phi,Omega,F,G,d)=1 &
       Prob.ArbitrageElSigma2(phi,Omega,F,G,d)>0;
  ArbitrageElSigma1(phi,Omega,F,G,d) = {w where w is Element of Omega:
   PortfolioValueFutExt(d,phi,F,G,w) >= 0} by JB1;
  then ArbitrageElSigma1(phi,Omega,F,G,d) c=
   {w where w is Element of Omega: PortfolioValueFut(d,phi,F,G,w)
               >= (1+r)*BuyPortfolio(phi,jpi,d)} by C1,A1,A2,A3,FINANCE1:14;
  then C3: ArbitrageElSigma1(phi,Omega,F,G,d) c=
   (RVPortfolioValueFut(phi,F,G,d2)-
       (Omega-->(1+r)*BuyPortfolio(phi,jpi,d)))"[.0,+infty.[ by A1,JB2;
  set RVspec=(RVPortfolioValueFut(phi,F,G,d2)-
       (Omega-->(1+r)*BuyPortfolio(phi,jpi,d)))"[.0,+infty.[;
  reconsider RVspec as Event of F by JB3;
  1<=Prob.RVspec & Prob.RVspec<=1 by PROB_1:35,C1,C3,PROB_1:34;
  then Fin1: 1=Prob.RVspec by XXREAL_0:1;
  ArbitrageElSigma2(phi,Omega,F,G,d) = {w where w is Element of Omega:
   PortfolioValueFutExt(d,phi,F,G,w) > 0} by JC1;
  then ArbitrageElSigma2(phi,Omega,F,G,d) c=
   {w where w is Element of Omega: PortfolioValueFut(d,phi,F,G,w)
               > (1+r)*BuyPortfolio(phi,jpi,d)} by C1,A1,A2,A3,FINANCE1:14;
  then C3: ArbitrageElSigma2(phi,Omega,F,G,d) c=
   (RVPortfolioValueFut(phi,F,G,d2)-
       (Omega-->(1+r)*BuyPortfolio(phi,jpi,d)))"].0,+infty.[ by A1,JC2;
  set RVspec2=(RVPortfolioValueFut(phi,F,G,d2)-
       (Omega-->(1+r)*BuyPortfolio(phi,jpi,d)))"].0,+infty.[;
  reconsider RVspec2 as Event of F by JC3;
  Prob.ArbitrageElSigma2(phi,Omega,F,G,d) <= Prob.RVspec2 by C3,PROB_1:34;
hence thesis by Fin1,C1;
end;
 given myphi being Real_Sequence such that
 ASS0: (Prob.((RVPortfolioValueFut(myphi,F,G,d2)-
  (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))"[.0,+infty.[)=1) &
  Prob.((RVPortfolioValueFut(myphi,F,G,d2)-
  (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))"].0,+infty.[)>0;
   deffunc U(Nat)=In(IFEQ($1,0,-BuyPortfolio(myphi,jpi,d),myphi.$1),REAL);
   consider phi being Real_Sequence such that
    AA1: for n being Element of NAT holds phi.n=U(n) from FUNCT_2:sch 4;
   AA10: for n being Nat holds
         (n=0 implies phi.n=-BuyPortfolio(myphi,jpi,d)) &
         (n>0 implies phi.n=myphi.n)
   proof
    let n be Nat;
SS: n in NAT by ORDINAL1:def 12;
SU: myphi.n in REAL;
SW: IFEQ(n,0,-BuyPortfolio(myphi,jpi,d),myphi.n) in REAL
    proof
      per cases;
      suppose n = 0; then
        IFEQ(n,0,-BuyPortfolio(myphi,jpi,d),myphi.n) =
          -BuyPortfolio(myphi,jpi,d) by FUNCOP_1:def 8;
        hence thesis by XREAL_0:def 1;
      end;
      suppose n <> 0;
        hence thesis by FUNCOP_1:def 8,SU;
      end;
    end;
    hereby assume SQ: n = 0; then
      phi.n = U(n) by AA1 .= IFEQ(n,0,-BuyPortfolio(myphi,jpi,d),myphi.n)
        by SUBSET_1:def 8,SW;
      hence phi.n=-BuyPortfolio(myphi,jpi,d) by FUNCOP_1:def 8,SQ;
    end;
    assume SQ: n > 0;
    phi.n=In(IFEQ(n,0,-BuyPortfolio(myphi,jpi,d),myphi.n),REAL) by AA1,SS
      .= IFEQ(n,0,-BuyPortfolio(myphi,jpi,d),myphi.n) by SUBSET_1:def 8,SW;
    hence thesis by FUNCOP_1:def 8,SQ;
   end;
       set B0=-BuyPortfolio(myphi,jpi,d);
Z1:    BuyPortfolioExt(phi,jpi,d)=0
       proof
        BuyPortfolioExt(phi,jpi,d)=B0+BuyPortfolio(myphi,jpi,d)
        proof
zw:      BuyPortfolioExt(phi,jpi,d) = phi.0 + BuyPortfolio(phi,jpi,d)
          by A1,FINANCE1:11;
         -BuyPortfolio(phi,jpi,d)+BuyPortfolio(myphi,jpi,d)=0
         proof
          Partial_Sums(ElementsOfBuyPortfolio(phi,jpi)^\1).(d-1) =
           Partial_Sums(ElementsOfBuyPortfolio(myphi,jpi)^\1).(d-1)
          proof
           set P1=Partial_Sums(ElementsOfBuyPortfolio(phi,jpi)^\1);
           set P2=Partial_Sums(ElementsOfBuyPortfolio(myphi,jpi)^\1);
           defpred Pr[Nat] means P1.$1=P2.$1;
           J0: Pr[0]
           proof
            P1.0= (ElementsOfBuyPortfolio(phi,jpi)^\1).0 by SERIES_1:def 1;
            then P1.0=ElementsOfBuyPortfolio(phi,jpi).(0+1) by NAT_1:def 3;
            then Erg1: P1.0=phi.1*jpi.1 by VALUED_1:5;
            P2.0= (ElementsOfBuyPortfolio(myphi,jpi)^\1).0 by SERIES_1:def 1;
            then P2.0=ElementsOfBuyPortfolio(myphi,jpi).(0+1) by NAT_1:def 3;
            then P2.0=myphi.1*jpi.1 by VALUED_1:5;
           hence thesis by Erg1,AA10;
           end;
           J1: for n being Nat st Pr[n] holds Pr[n+1]
           proof
            let n be Nat;
            assume f1: Pr[n];
            P1.(n+1)=P1.n+(ElementsOfBuyPortfolio(phi,jpi)^\1).(n+1)
             by SERIES_1:def 1;
            then P1.(n+1)=P1.n+ElementsOfBuyPortfolio(phi,jpi).((n+1)+1)
             by NAT_1:def 3;
            then Erg1: P1.(n+1)=P1.n+phi.(n+2)*jpi.(n+2) by VALUED_1:5;
            set n2=n+2;
            P2.(n+1)=P2.n+(ElementsOfBuyPortfolio(myphi,jpi)^\1).(n+1)
             by SERIES_1:def 1;
            then P2.(n+1)=P2.n+ElementsOfBuyPortfolio(myphi,jpi).((n+1)+1)
             by NAT_1:def 3;
            then P2.(n+1)=P2.n+myphi.(n2)*jpi.(n2) by VALUED_1:5;
           hence thesis by Erg1,f1,AA10;
           end;
           for n being Nat holds Pr[n] from NAT_1:sch 2(J0,J1);
          hence thesis by A1;
          end;
         hence thesis;
         end;
        hence thesis by zw,AA10;
        end;
       hence thesis;
       end;
      Z2: Prob.ArbitrageElSigma1(phi,Omega,F,G,d)=1
      proof
       set Set1=RVPortfolioValueFutExt(phi,F,G,d);
       set Set2=(RVPortfolioValueFut(myphi,F,G,d2)-
                (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)));
       Set1"[.0,+infty.[ = Set2"[.0,+infty.[
       proof
        for x being object holds
         x in Set1"[.0,+infty.[ iff x in Set2"[.0,+infty.[
        proof
         let x be object;
         thus x in Set1"[.0,+infty.[ implies x in Set2"[.0,+infty.[
         proof
          assume sc: x in Set1"[.0,+infty.[;
          then reconsider x as Element of Omega;
           Set1.x in [.0,+infty.[ by sc,FUNCT_1:def 7;
           then PortfolioValueFutExt(d,phi,F,G,x) in [.0,+infty.[
            by FINANCE3:def 1;
           then e: (1+r) * phi.0 + PortfolioValueFut(d2+1,phi,F,G,x)
            in [.0,+infty.[ by A1,A3,FINANCE1:12;
          x in dom Set2 & Set2.x in [.0,+infty.[
          proof
            -(Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)).x =
             (1+r)*(-BuyPortfolio(myphi,jpi,d)); then
uuu0:      (1+r) * phi.0=-(Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)).x by AA10;
         RVPortfolioValueFut(myphi,F,G,d2).x=RVPortfolioValueFut(phi,F,G,d2).x
           proof
iii:        RVPortfolioValueFut(myphi,F,G,d2).x=
             PortfolioValueFut(d2+1,myphi,F,G,x) by FINANCE3:def 3;
         defpred J[Nat] means
          Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).$1 =
           Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).$1;
            K1: J[0]
            proof
             Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0 =
           (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0 by SERIES_1:def 1;
             then Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0
              = ElementsOfPortfolioValue_fut(myphi,F,x,G).(0+1) by NAT_1:def 3;
             then Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0
              = ElementsOfPortfolioValueProb_fut(F,G.1).x * myphi.1
               by FINANCE1:def 10;
             then Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0
              = ElementsOfPortfolioValueProb_fut(F,G.1).x * phi.1 by AA10;
             then Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0
              = ElementsOfPortfolioValue_fut(phi,F,x,G).(0+1)
              by FINANCE1:def 10;
             then Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0
              = (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0
               by NAT_1:def 3;
             hence thesis by SERIES_1:def 1;
            end;
            K2: for n being Nat st J[n] holds J[n+1]
            proof
             let n be Nat;
             assume AK2: J[n];
             set n1=n+1;
             set n2=n1+1;
             R:Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).n1=
               Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).n +
                (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).(n+1)
                  by AK2,SERIES_1:def 1;
               (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).(n+1) =
                ElementsOfPortfolioValue_fut(myphi,F,x,G).((n+1)+1)
                 by NAT_1:def 3; then
          R1: (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).(n+1) =
                ElementsOfPortfolioValueProb_fut(F,G.n2).x * myphi.n2
                 by FINANCE1:def 10;
              (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).(n+1) =
               (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).(n+1)
              proof
               (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).n1=
                 ElementsOfPortfolioValueProb_fut(F,G.n2).x * phi.n2
                  by R1,AA10;
               then (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).n1=
                ElementsOfPortfolioValue_fut(phi,F,x,G).(n1+1)
                 by FINANCE1:def 10;
              hence thesis by NAT_1:def 3;
              end;
             hence thesis by SERIES_1:def 1,R;
            end;
            for n being Nat holds J[n] from NAT_1:sch 2(K1,K2);
            then RVPortfolioValueFut(myphi,F,G,d2).x =
             PortfolioValueFut(d2+1,phi,F,G,x) by iii;
            hence thesis by FINANCE3:def 3;
           end;
           then UUU: RVPortfolioValueFut(myphi,F,G,d2).x -
            (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)).x in [.0,+infty.[
             by uuu0,e,FINANCE3:def 3;
            x in dom (RVPortfolioValueFut(myphi,F,G,d2) + -
                (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))
            proof
             dom (RVPortfolioValueFut(myphi,F,G,d2))=Omega &
              dom (- (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))= Omega
               by FUNCT_2:def 1;
             then dom (RVPortfolioValueFut(myphi,F,G,d2)) /\
              dom (- (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))= Omega;
             then dom (RVPortfolioValueFut(myphi,F,G,d2) + (-
                (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))) = Omega
                 by VALUED_1:def 1;
            hence thesis;
            end;
          hence thesis by UUU,VALUED_1:13;
          end;
         hence thesis by FUNCT_1:def 7;
         end;
          assume ab: x in Set2"[.0,+infty.[;
          then ABC1: x in dom Set2 & Set2.x in [.0,+infty.[ by FUNCT_1:def 7;
          reconsider x as Element of Omega by ab;
           ABC3: RVPortfolioValueFut(myphi,F,G,d2).x -
             (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)).x in [.0,+infty.[
              by ABC1,VALUED_1:13;
           -(Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)).x =(1+r)*phi.0
           proof
            -(Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)).x =
             (1+r)*(-BuyPortfolio(myphi,jpi,d));
            hence thesis by AA10;
           end;
           then ABC4: PortfolioValueFut(d2+1,myphi,F,G,x) + (1+r)*phi.0
            in [.0,+infty.[ by FINANCE3:def 3,ABC3;
          ABC2: Set1.x in [.0,+infty.[
          proof
           PortfolioValueFut(d2+1,phi,F,G,x)=
            PortfolioValueFut(d2+1,myphi,F,G,x)
           proof
            Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).d2=
             Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).d2
            proof
             defpred J[Nat] means
              Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).$1=
               Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).$1;
             K1: J[0]
             proof
              Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0=
               (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0
                by SERIES_1:def 1;
              then Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0=
               ElementsOfPortfolioValue_fut(phi,F,x,G).(0+1) by NAT_1:def 3;
             then R:Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0=
               ElementsOfPortfolioValueProb_fut(F,G.1).x * phi.1
                by FINANCE1:def 10;
              Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0=
               ElementsOfPortfolioValueProb_fut(F,G.1).x * myphi.1 by R,AA10;
              then Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0=
                ElementsOfPortfolioValue_fut(myphi,F,x,G).(0+1)
                by FINANCE1:def 10;
              then Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0=
              (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0 by NAT_1:def 3;
             hence thesis by SERIES_1:def 1;
             end;
             K2: for n being Nat st J[n] holds J[n+1]
             proof
              let n be Nat;
              set n1=n+1;
              set n2=n1+1;
              assume J[n];
            then R:Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).n1
               =Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).n +
                 (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).(n+1)
                   by SERIES_1:def 1;
               (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).n1=
                (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).n1
               proof
                (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).n1=
                 (ElementsOfPortfolioValue_fut(phi,F,x,G)).(n1+1)
                  by NAT_1:def 3;
                then QA: (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).n1=
                 ElementsOfPortfolioValueProb_fut(F,G.n2).x * phi.n2
                  by FINANCE1:def 10;
                phi.n2=myphi.n2 by AA10;
               then (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).n1=
                 (ElementsOfPortfolioValue_fut(myphi,F,x,G)).n2
                  by FINANCE1:def 10,QA;
               hence thesis by NAT_1:def 3;
               end;
              hence thesis by SERIES_1:def 1,R;
             end;
             for n being Nat holds J[n] from NAT_1:sch 2(K1,K2);
            hence thesis;
            end;
           hence thesis;
           end;
           then PortfolioValueFutExt(d2+1,phi,F,G,x) in [.0,+infty.[
            by A3,FINANCE1:12,ABC4;
          hence thesis by A1,FINANCE3:def 1;
          end;
          dom Set1=Omega by FUNCT_2:def 1;
         hence thesis by FUNCT_1:def 7,ABC2;
        end;
       hence thesis by TARSKI:2;
       end;
      hence thesis by ASS0;
      end;
      Prob.ArbitrageElSigma2(phi,Omega,F,G,d)>0
      proof
       RVPortfolioValueFutExt(phi,F,G,d)"].0,+infty.[ =
        (RVPortfolioValueFut(myphi,F,G,d2)-
         (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))"].0,+infty.[
       proof
       set Set1=RVPortfolioValueFutExt(phi,F,G,d);
       set Set2=(RVPortfolioValueFut(myphi,F,G,d2)-
                (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)));
        for x being object holds
         x in Set1"].0,+infty.[ iff x in Set2"].0,+infty.[
        proof
         let x be object;
         thus x in Set1"].0,+infty.[ implies x in Set2"].0,+infty.[
         proof
          assume ss: x in Set1"].0,+infty.[;
          then s: x in dom RVPortfolioValueFutExt(phi,F,G,d) &
               RVPortfolioValueFutExt(phi,F,G,d).x in ].0,+infty.[
                by FUNCT_1:def 7;
          reconsider x as Element of Omega by ss;
           PortfolioValueFutExt(d,phi,F,G,x) in ].0,+infty.[
            by FINANCE3:def 1,s;
           then e: (1+r) * phi.0 + PortfolioValueFut(d2+1,phi,F,G,x)
            in ].0,+infty.[ by A1,A3,FINANCE1:12;
            -(Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)).x =
             (1+r)*(-BuyPortfolio(myphi,jpi,d)); then
uuu0:      (1+r) * phi.0=-(Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)).x
             by AA10;
iii:        RVPortfolioValueFut(myphi,F,G,d2).x=
             PortfolioValueFut(d2+1,myphi,F,G,x) by FINANCE3:def 3;
          x in dom Set2 & Set2.x in ].0,+infty.[
          proof
         RVPortfolioValueFut(myphi,F,G,d2).x=RVPortfolioValueFut(phi,F,G,d2).x
           proof
         defpred J[Nat] means
          Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).$1 =
           Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).$1;
            K1: J[0]
            proof
             Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0 =
           (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0 by SERIES_1:def 1;
             then Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0
              = ElementsOfPortfolioValue_fut(myphi,F,x,G).(0+1) by NAT_1:def 3;
             then Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0
              = ElementsOfPortfolioValueProb_fut(F,G.1).x * myphi.1
               by FINANCE1:def 10;
             then Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0
              = ElementsOfPortfolioValueProb_fut(F,G.1).x * phi.1 by AA10;
             then Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0
              = ElementsOfPortfolioValue_fut(phi,F,x,G).(0+1)
              by FINANCE1:def 10;
             then Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0
              = (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0
               by NAT_1:def 3;
            hence thesis by SERIES_1:def 1;
            end;
            K2: for n being Nat st J[n] holds J[n+1]
            proof
             let n be Nat;
             assume AK2: J[n];
             set n1=n+1;
             set n2=n1+1;
             R:Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).n1=
               Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).n +
                (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).(n+1)
                  by AK2,SERIES_1:def 1;
              (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).(n+1) =
               (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).(n+1)
              proof
               (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).(n+1) =
                ElementsOfPortfolioValue_fut(myphi,F,x,G).((n+1)+1)
                 by NAT_1:def 3;
               then R1: (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).(n+1) =
                ElementsOfPortfolioValueProb_fut(F,G.n2).x * myphi.n2
                 by FINANCE1:def 10;
               (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).n1=
                 ElementsOfPortfolioValueProb_fut(F,G.n2).x * phi.n2
                  by R1,AA10;
               then (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).n1=
                ElementsOfPortfolioValue_fut(phi,F,x,G).(n1+1)
                 by FINANCE1:def 10;
              hence thesis by NAT_1:def 3;
              end;
            hence thesis by SERIES_1:def 1,R;
            end;
            for n being Nat holds J[n] from NAT_1:sch 2(K1,K2);
            then RVPortfolioValueFut(myphi,F,G,d2).x =
             PortfolioValueFut(d2+1,phi,F,G,x) by iii;
           hence thesis by FINANCE3:def 3;
           end;
           then UUU: RVPortfolioValueFut(myphi,F,G,d2).x -
            (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)).x in ].0,+infty.[
             by uuu0,e,FINANCE3:def 3;
            x in dom (RVPortfolioValueFut(myphi,F,G,d2) + -
                (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))
            proof
             dom (RVPortfolioValueFut(myphi,F,G,d2))=Omega &
              dom (- (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))= Omega
               by FUNCT_2:def 1;
             then dom (RVPortfolioValueFut(myphi,F,G,d2)) /\
              dom (- (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))= Omega;
             then dom (RVPortfolioValueFut(myphi,F,G,d2) + (-
                (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)))) = Omega
                 by VALUED_1:def 1;
             hence thesis;
            end;
          hence thesis by UUU,VALUED_1:13;
          end;
         hence thesis by FUNCT_1:def 7;
         end;
          assume ab: x in Set2"].0,+infty.[;
          then ABC1: x in dom Set2 & Set2.x in ].0,+infty.[ by FUNCT_1:def 7;
          reconsider x as Element of Omega by ab;
           ABC3: RVPortfolioValueFut(myphi,F,G,d2).x -
             (Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)).x in ].0,+infty.[
              by ABC1,VALUED_1:13;
            -(Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)).x =
             (1+r)*(-BuyPortfolio(myphi,jpi,d)); then
           -(Omega-->(1+r)*BuyPortfolio(myphi,jpi,d)).x =(1+r)*phi.0 by AA10;
           then ABC4: PortfolioValueFut(d2+1,myphi,F,G,x) + (1+r)*phi.0
            in ].0,+infty.[ by FINANCE3:def 3,ABC3;
          ABC2: Set1.x in ].0,+infty.[
          proof
           PortfolioValueFut(d2+1,phi,F,G,x)=
            PortfolioValueFut(d2+1,myphi,F,G,x)
           proof
            Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).d2=
             Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).d2
            proof
             defpred J[Nat] means
              Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).$1=
               Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).$1;
              Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0=
              (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0
                by SERIES_1:def 1;
              then Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0=
               ElementsOfPortfolioValue_fut(phi,F,x,G).(0+1) by NAT_1:def 3;
             then R:Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0=
               ElementsOfPortfolioValueProb_fut(F,G.1).x * phi.1
                by FINANCE1:def 10;
             K1: J[0]
             proof
              Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0=
               ElementsOfPortfolioValueProb_fut(F,G.1).x * myphi.1 by R,AA10;
              then Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0=
                ElementsOfPortfolioValue_fut(myphi,F,x,G).(0+1)
                by FINANCE1:def 10;
              then Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).0=
              (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).0 by NAT_1:def 3;
             hence thesis by SERIES_1:def 1;
             end;
             K2: for n being Nat st J[n] holds J[n+1]
             proof
              let n be Nat;
              set n1=n+1;
              set n2=n1+1;
              assume J[n]; then
              R:Partial_Sums(ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).n1
               =Partial_Sums(ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).n +
                 (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).(n+1)
                   by SERIES_1:def 1;
               (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).n1=
                (ElementsOfPortfolioValue_fut(myphi,F,x,G)^\1).n1
               proof
                (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).n1=
                 (ElementsOfPortfolioValue_fut(phi,F,x,G)).(n1+1)
                  by NAT_1:def 3;
                then QA: (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).n1=
                 ElementsOfPortfolioValueProb_fut(F,G.n2).x * phi.n2
                  by FINANCE1:def 10;
                phi.n2=myphi.n2 by AA10;
               then (ElementsOfPortfolioValue_fut(phi,F,x,G)^\1).n1=
                 (ElementsOfPortfolioValue_fut(myphi,F,x,G)).(n1+1)
                 by FINANCE1:def 10,QA;
               hence thesis by NAT_1:def 3;
               end;
              hence thesis by SERIES_1:def 1,R;
             end;
             for n being Nat holds J[n] from NAT_1:sch 2(K1,K2);
            hence thesis;
            end;
           hence thesis;
           end;
           then PortfolioValueFutExt(d2+1,phi,F,G,x) in ].0,+infty.[
            by A3,FINANCE1:12,ABC4;
          hence thesis by A1,FINANCE3:def 1;
          end;
          dom Set1=Omega by FUNCT_2:def 1;
         hence thesis by FUNCT_1:def 7,ABC2;
        end;
        hence thesis by TARSKI:2;
       end;
       hence thesis by ASS0;
      end;
  hence thesis by Z1,Z2;
end;
