reserve N for PT_net_Str, PTN for Petri_net, i for Nat;
reserve fs for FinSequence of places_and_trans_of PTN;
 reserve Dftn for With_directed_path Petri_net;
 reserve dct for directed_path_like FinSequence of places_and_trans_of Dftn;
reserve Dftn for With_directed_path Petri Petri_net,
  dct for directed_path_like FinSequence of places_and_trans_of Dftn;
reserve M0 for marking of PTN,
       t for transition of PTN,
       Q,Q1 for FinSequence of the carrier' of PTN;

theorem Th7:
  for Dftn being Decision_free_PT,
  dct being Circuit_of_places_and_trans of Dftn,
  M0 being marking of Dftn, t being transition of Dftn
  holds num_marks(places_of dct, M0) = num_marks(places_of dct, Firing(t, M0))
  proof
    let Dftn be With_directed_circuit Petri Decision_free_PT,
    dct be Circuit_of_places_and_trans of Dftn,
    M0 be marking of Dftn, t be transition of Dftn;
A65a: dct/^1 is one-to-one by JORDAN23:14;
    set P = places_of dct;
A21: len dct >= 3 by Def5;then
     1 <= len dct by XXREAL_0:2; then
X1:  1 in dom dct by FINSEQ_3:25;
L2:  [dct.(len dct - 1),dct.len dct] in the T-S_Arcs of Dftn by The;
L1:  [dct.1,dct.2] in the S-T_Arcs of Dftn by Thd;then
    reconsider dct1 = dct.1 as place of Dftn by ZFMISC_1:87;
    dct1 in rng dct by FUNCT_1:3,X1;then
K23: dct.1 in P;
    set pl = the Enumeration of P;
    set FM0 = Firing(t, M0),
    mM0 = the Enumeration of M0,P,
    mFM0 = the Enumeration of FM0,P;
    per cases;
    suppose
A10:  t is_firable_at M0;
      per cases;
      suppose
        t in transitions_of dct;then
        consider t1 be transition of Dftn such that
A46:    t1 = t & t1 in rng dct;
        consider n be object such that
A47:    n in dom dct & dct.n = t by FUNCT_1:def 3,A46;
G2:     dct.n in transitions_of dct by A46,A47;
        reconsider n as Element of NAT by A47;
K12:    1 <= n & n <= len dct by A47,FINSEQ_3:25;
K8:     t in {t} by TARSKI:def 1;
        per cases by A21,XXREAL_0:1;
        suppose
K10:      len dct = 3;
K13:      1 mod 2 = 1 by NAT_D:14;
          (2*1) mod 2 = 0 by NAT_D:13;then
K14:      (2+1) mod 2 = 1 by K13,NAT_D:17;
X4:       n mod 2 = 0 by Thcc,G2,A47;then
          n <> 1 & n <> 3 by NAT_D:14,K14;then
          1 < n & n < 3 by K12,K10,XXREAL_0:1;then
X5:       1+1 <= n by NAT_1:13;
          n < 2 + 1 by K12,K10,XXREAL_0:1,K14,X4;then
          n <= 2 by NAT_1:13;then
K7:       t = dct.2 by A47,XXREAL_0:1,X5;
K21:      rng pl = {dct.1}
          proof
            thus rng pl c= {dct.1}
            proof
              let x be object;
              assume x in rng pl;then
              x in P by RLAFFIN3:def 1;then
              consider p be place of Dftn such that
K24:          p = x & p in rng dct;
              consider y be object such that
K25:          y in dom dct & dct.y = p by FUNCT_1:def 3,K24;
              reconsider y as Element of NAT by K25;
K26:          1 <= y & y <= 3 by FINSEQ_3:25,K25,K10;then
              1 = y or 1 < y by XXREAL_0:1;then
X7:           1 = y or 1+1 <= y by NAT_1:13;
X6:           3 = y or y < 2+1 by K26,XXREAL_0:1;
K34:          y <> 2 by XBOOLE_0:3,NET_1:def 2,K25,K7;
              x = dct.1 by K24,K25,NAT_1:22,X6,X7,K34, Lm1,K10;
              hence x in {dct.1} by TARSKI:def 1;
            end;
            let x be object;
            assume x in {dct.1};then
            x = dct.1 by TARSKI:def 1;
            hence x in rng pl by RLAFFIN3:def 1,K23;
          end;
          pl <> {} by K21;then
X7:       len pl >= 0+1 by NAT_1:13;
A24:      len pl = 1
          proof
            assume len pl <> 1;then
            len pl > 1 by XXREAL_0:1,X7;then
            len pl >= 1+1 by NAT_1:13;then
K47:        2 in dom pl by FINSEQ_3:25;then
K45:        pl.2 in rng pl by FUNCT_1:def 3;
K46:        1 in dom pl by X7,FINSEQ_3:25;then
K49:        pl.1 in rng pl by FUNCT_1:def 3;
            pl.2 = dct.1 by TARSKI:def 1,K21,K45
            .= pl.1 by K21,K49,TARSKI:def 1;
            hence contradiction by FUNCT_1:def 4,K46,K47;
          end;then
A25:      len mFM0 = 1 by Def12,K23;
A26:      len mM0 = 1 by Def12,A24,K23;
          pl = <*dct.1*> by FINSEQ_1:39,A24,K21;then
K9:       pl.1 = dct.1;
          reconsider pl1 = pl.1 as place of Dftn by L1,ZFMISC_1:87,K9;
K11:      pl.1 = dct.3 by K10,K9,Lm1;
          consider f be S-T_arc of Dftn such that
K5:       f = [pl1,t] by K7,K9,L1;
K4:       pl1 in *'{t} by K5,K8;
          consider g be T-S_arc of Dftn such that
K5a:      g = [t,pl1] by K10,K7,K11,L2;
K4a:      pl1 in {t}*' by K8,K5a;
K2:       dom mM0 = dom mFM0 by FINSEQ_3:29,A25,A26;
          now
            let x be Element of NAT;
            assume
C13b:       x in dom mM0;then
            1 <= x & x <= len mM0 by FINSEQ_3:25;then
K3:         x = 1 by NAT_1:25,A26;
            hence mM0.x = M0.pl1 by Def12,C13b,K23
            .= FM0.pl1 by Def11,K4,A10,K4a
            .= mFM0.x by K2,C13b,Def12,K23,K3;
          end;
          hence num_marks(P, Firing(t, M0)) = num_marks(P, M0)
          by PARTFUN1:5,K2;
        end;
        suppose
A74:      len dct > 3;
A81:      1 < len dct by A74,XXREAL_0:2;
A53a:     1 <= n by FINSEQ_3:25,A47;
A53b:     2 < len dct by XXREAL_0:2,A74;
          now
            assume 1 = n;then
            dct.n in the carrier of Dftn by L1,ZFMISC_1:87;
            hence contradiction by XBOOLE_0:3,NET_1:def 2,A47;
          end;then
A62:      1 < n by A53a,XXREAL_0:1;then
A48:      1+1 <= n by NAT_1:13;
A80:      1 < n + 1 by A53a,NAT_1:16;
A53:      n <= len dct by A47,FINSEQ_3:25;
          now
            assume n = len dct;then
            dct.n in the carrier of Dftn by L2,ZFMISC_1:87;
            hence contradiction by XBOOLE_0:3,NET_1:def 2,A47;
          end;then
          n < len dct by A53,XXREAL_0:1;then
A82:      n+1 <= len dct by NAT_1:13;
          reconsider nm1 = n - 1 as Element of NAT by FINSEQ_3:26,A47;
A78:      2 + (-1) <= n + (-1) by A48,XREAL_1:6;
A87:      nm1 < len dct by XXREAL_0:2, A53,XREAL_1:146;then
G3:       nm1 in dom dct by FINSEQ_3:25,A78;
A56:      [dct.nm1,dct.n] in the S-T_Arcs of Dftn by Thf,G2,A47;
          [dct.n,dct.(n+1)] in the T-S_Arcs of Dftn by Thf,G2,A47;then
          reconsider q = dct.nm1, r = dct.(n+1)
          as place of Dftn by ZFMISC_1:87,A56;
          reconsider qt = [q,t] as S-T_arc of Dftn by Thf,G2,A47;
          reconsider tr = [t,r] as T-S_arc of Dftn by Thf,G2,A47;
A50:      q in rng dct by FUNCT_1:3,G3;
          n+1 in dom dct by FINSEQ_3:25,A80,A82;then
A50a:     r in rng dct by FUNCT_1:3;
A57:      q <> r
          proof
            assume
A79:        q = r;
            per cases by XXREAL_0:1,A78;
            suppose
A85:          1 = nm1;then
              dct.len dct = r by Lm1,A79;
              hence contradiction by A65a,Th10,A81,A74, A85;
            end;
            suppose
A86:          1 < nm1;
              nm1 <> n+1;
              hence contradiction by A86,A87,A80,A82,A65a,Th10,A79;
            end;
          end;
E1:       now
            let s be place of Dftn;
            assume
D9:         s in rng dct;
            consider ns be object such that
D1:         ns in dom dct & dct.ns = s by FUNCT_1:def 3,D9;
G5:         dct.ns in places_of dct by D9,D1;
            reconsider ns as Element of NAT by D1;
D2:         1 <= ns & ns <= len dct by D1,FINSEQ_3:25;
            thus s <> r implies not s in {t}*'
            proof
              assume
D10:          s <> r & s in {t}*';then
              consider f being T-S_arc of Dftn, tt being transition of Dftn
              such that
A61:          tt in {t} & f = [tt,s] by PETRI:8;
              per cases by D2,XXREAL_0:1;
              suppose
A72:            1 = ns or ns = len dct;
                reconsider lm1 = len dct - 1 as Element of NAT
                by NAT_1:21,A21,XXREAL_0:2;
                3 + (-1) < len dct + (-1) by A74,XREAL_1:8;then
D11:            1 < lm1 & lm1 <= len dct by XREAL_1:146,XXREAL_0:2;
                [dct.lm1,dct.len dct] in the T-S_Arcs of Dftn by The; then
                consider g be Element of the T-S_Arcs of Dftn such that
A63a:           g = [dct.lm1,dct.len dct];
                reconsider t1 = dct.lm1 as transition of Dftn
                  by ZFMISC_1:87,A63a;
                g = [t1,s] by A63a,A72,Lm1,D1;then
                dct.lm1 = tt by A61,Def1
                       .= dct.n by A47,TARSKI:def 1,A61;then
                lm1 = n by A65a,Th10,D11,A62,A53;
                hence contradiction by D10,D1,A72,Lm1;
              end;
              suppose
D6:             1 < ns & ns < len dct;then
                1+1 <= ns by NAT_1:13;then
                reconsider nsm2 = ns - 2 as Element of NAT by NAT_1:21;
                reconsider nsm1 = ns - 1 as Element of NAT by NAT_1:21,D6;
A63:            [dct.(ns-1),dct.ns] in the T-S_Arcs of Dftn by Thg,D6,G5;
                reconsider g = [dct.(ns-1),dct.ns]
                  as Element of the T-S_Arcs of Dftn by Thg,D6,G5;
                reconsider t1 = dct.(ns-1) as transition of Dftn
                  by ZFMISC_1:87,A63;
                3 <= ns by Thg,D6,G5;then
                3+(-1) <= ns + (-1) by XREAL_1:6;then
D8:             1 < ns-1 & ns-1 <= len dct by D6,XXREAL_0:2,XREAL_1:146;
                g = [t1,s] by D1;then
                dct.nsm1 = tt by A61,Def1 .= dct.n
                  by A47,TARSKI:def 1,A61;then
                dct.(ns-1+1) = dct.(n+1) by A65a,Th10,D8,A62,A53;
                hence contradiction by D1,D10;
              end;
            end;
            thus s <> q implies not s in *'{t}
            proof
              assume
D10a:         s <> q & s in *'{t};then
              consider f being S-T_arc of Dftn, tt being transition of Dftn
              such that
A61b:         tt in {t} & f = [s,tt] by PETRI:6;
              per cases by D2,XXREAL_0:1;
              suppose
A72b:           1 = ns or ns = len dct;
                [dct.1,dct.2] in the S-T_Arcs of Dftn by Thd;then
                consider g be Element of the S-T_Arcs of Dftn such that
A63b:           g = [dct.1,dct.2];
                reconsider t1 = dct.2 as transition of Dftn
                by ZFMISC_1:87,A63b;
                g = [s,t1] by A63b,A72b,Lm1,D1;then
                dct.2 = tt by A61b,Def1
                      .= dct.n by A47,TARSKI:def 1,A61b;then
                2 = n by A65a,Th10,A62,A53,A53b;
                hence contradiction by D10a,A72b,Lm1,D1;
              end;
              suppose
D6:             1 < ns & ns < len dct;then
A63bb:          [dct.ns,dct.(ns+1)] in the S-T_Arcs of Dftn by Thg,G5;
                reconsider g = [s,dct.(ns+1)]
                as Element of the S-T_Arcs of Dftn by Thg,G5, D1,D6;
                reconsider t1 = dct.(ns+1) as transition of Dftn
                  by ZFMISC_1:87,A63bb;
D8:             1 < ns+1 & ns+1 <= len dct by D6,NAT_1:13;
                g = [s,t1];then
                dct.(ns+1) = tt by A61b,Def1
                 .= dct.n by A47,TARSKI:def 1,A61b;then
                ns+1 - 1 = n - 1 by A65a,Th10,D8,A62,A53;
                hence contradiction by D1,D10a;
              end;
            end;
          end;
E1con:    for s being place of Dftn st s in rng dct
          & s <> q & s <> r holds not s in *'{t} & not s in {t}*' by E1;
E1cona:   for s being place of Dftn st s in rng dct &
          s <> r & s <> q holds not s in *'{t} & not s in {t}*' by E1;
A59:      qt = [q,t];
A58:      t in {t} by TARSKI:def 1;then
A30a:     q in *'{t} & not q in {t}*' by A59,A50,A57,E1;
A59a:     tr = [t,r];
A30b:     r in {t}*' & not r in *'{t} by A59a,A50a,A57,E1,A58;
          set nq = q .. pl,nr = r .. pl,
          nqm1 = nq -' 1, nrm1 = nr -' 1;
A44:      len mM0 = len the Enumeration of P by Def12,K23
          .= len mFM0 by Def12,K23;
          q in P by A50;then
A32a:     q in rng pl by RLAFFIN3:def 1;
          r in P by A50a;then
A32:      r in rng pl by RLAFFIN3:def 1;
gen:      now
            let n1,n2 be Element of NAT,
            p1,p2 be place of Dftn;
            assume
L3:         n2 = p2 .. pl & n1 = p1 .. pl;
            set n2m1 = n2 -' 1, n1m1 = n1 -' 1;
            assume that
S1:         n2 > n1 and
A32a:       p1 in rng pl and
A32:        p2 in rng pl and
L4:         for s be place of Dftn st
              s in rng dct & s <> p2 & s <> p1 holds
            (not s in *'{t} & not s in {t}*') and
L5:         p2 in *'{t} & not p2 in {t}*' & p1 in {t}*' & not p1 in *'{t}
            or p1 in *'{t} & not p1 in {t}*' & p2 in {t}*' & not p2 in *'{t};
A39a:       n2 in dom pl by FINSEQ_4:20,A32,L3;then
A40:        1 <= n2 & n2 <= len pl by FINSEQ_3:25; then
A36:        n2 <= len mM0 by Def12,K23;then
A41:        n2 in dom mM0 by FINSEQ_3:25,A40;
A43:        n2m1 < n2 by XREAL_1:237,FINSEQ_3:25,A39a;
C18a:       p2 = pl.n2 by FINSEQ_4:19,A32,L3;
C18:        p1 = pl.n1 by FINSEQ_4:19,A32a,L3;
A39:        n1 in dom pl by FINSEQ_4:20,A32a,L3;then
A37:        1 <= n1 by FINSEQ_3:25;
C19:        n1 <= len pl by A39,FINSEQ_3:25;
C11:        n1m1 < n1 by XREAL_1:237,FINSEQ_3:25,A39;
X12:        n2m1+1>n1 by XREAL_1:235,FINSEQ_3:25,A39a,S1;then
A35:        n2m1 >= n1 by NAT_1:13;then
C4:         n1m1 < n2m1 by XXREAL_0:2,C11;
            set mM0b2 = mM0 | n2m1,mFM0b2 = mFM0 | n2m1;
A27:        mM0 = mM0b2 ^ <*mM0.n2*> ^ (mM0/^n2) by FINSEQ_5:84,A36,A40
            .= mM0b2 ^ <*mM0/.n2*> ^ (mM0/^n2) by PARTFUN1:def 6,A41;
A36a:       n2 <= len mFM0 by Def12,K23,A40;then
A41a:       n2 in dom mFM0 by FINSEQ_3:25,A40;
A27a:       mFM0 = mFM0b2 ^ <*mFM0.n2*> ^ (mFM0/^n2) by FINSEQ_5:84,A36a,A40
            .= mFM0b2 ^ <*mFM0/.n2*> ^ (mFM0/^n2) by PARTFUN1:def 6,A41a;
F1:         n2m1 <= len mM0 by A36,A43,XXREAL_0:2;
A42:        len mM0b2 = n2m1 by FINSEQ_1:59,A36,A43,XXREAL_0:2;
A42a:       len mFM0b2 = n2m1 by FINSEQ_1:59,A36a,A43,XXREAL_0:2;
A33a:       n1 <= len mM0b2 by A35,FINSEQ_1:59,A36,A43,XXREAL_0:2;
A33:        n1 <= len mFM0b2 by NAT_1:13,X12, A42a;then
A34:        n1 in dom mFM0b2 by FINSEQ_3:25,A37;
A34a:       n1 in dom mM0b2 by FINSEQ_3:25,A33a,A37;
            n1 <= len mFM0 by S1,A36a,XXREAL_0:2;then
A31:        n1 in dom mFM0 by FINSEQ_3:25,A37;
C12:        n1 < len mM0 by XXREAL_0:2,A36,S1; then
A31b:       n1 in dom mM0 by FINSEQ_3:25,A37;
G1:         mM0b2 = (mM0b2 | n1m1) ^ <*mM0b2.n1*> ^ (mM0b2/^n1)
              by FINSEQ_5:84,A33a,A37
            .= (mM0b2 | n1m1) ^ <*mM0b2/.n1*> ^ (mM0b2/^n1)
              by PARTFUN1:def 6,A34a;
G2:         mFM0b2 = (mFM0b2 | n1m1)^<*mFM0b2.n1*>^(mFM0b2/^n1)
              by FINSEQ_5:84,A33,A37
            .= (mFM0b2 | n1m1) ^ <*mFM0b2/.n1*> ^ (mFM0b2/^n1)
             by PARTFUN1:def 6,A34;
A29f:       mM0b2/.n1 + 1+ mM0/.n2 -1 = mFM0b2/.n1 + mFM0/.n2
            proof
A29g:         mM0b2/.n1 = (mM0 | n2m1).n1 by PARTFUN1:def 6,A34a
              .= mM0.n1 by FINSEQ_3:112,A35
              .= M0.(pl.n1) by K23,Def12,A31b
              .= M0.p1 by FINSEQ_4:19,A32a,L3;
A29h:         FM0.p1 = FM0.(pl.n1) by FINSEQ_4:19,A32a,L3
              .= mFM0.n1 by K23,Def12,A31
              .= mFM0b2.n1 by FINSEQ_3:112,A35
              .= mFM0b2/.n1 by PARTFUN1:def 6,A34;
A29i:         mM0/.n2 = mM0.n2 by PARTFUN1:def 6,A41
              .= M0.(pl.n2) by K23,Def12,A41
              .= M0.p2 by FINSEQ_4:19,A32,L3;
A29j:         FM0.p2 = FM0.(pl.n2) by FINSEQ_4:19,A32,L3
              .= mFM0.n2 by K23,Def12,A41a
              .= mFM0/.n2 by PARTFUN1:def 6,A41a;
              per cases by L5;
              suppose
A29k:           p2 in *'{t} & not p2 in {t}*' & p1 in {t}*' & not p1 in *'{t};
A29m:           mM0b2/.n1 + 1 = mFM0b2/.n1 by A29h,Def11,A29k,A10, A29g;
                mM0/.n2 - 1 = mFM0/.n2 by A29j,A29i,Def11,A29k,A10;
                hence thesis by A29m;
              end;
              suppose
A29l:           p1 in *'{t} & not p1 in {t}*' & p2 in {t}*' & not p2 in *'{t};
A29n:           mM0b2/.n1 - 1 = mFM0b2/.n1 by A29h,Def11,A29l,A10,A29g;
                mM0/.n2 + 1 = mFM0/.n2 by A29j,Def11,A29l,A10,A29i;
                hence thesis by A29n;
              end;
            end;
A29:        mM0b2 | n1m1 = mFM0b2 | n1m1
            proof
              n1m1 <= len mM0b2 by FINSEQ_1:59,A36,A43,XXREAL_0:2,C4; then
C6:           len (mM0b2 | n1m1) = n1m1 by FINSEQ_1:59;
              len (mFM0b2 | n1m1)= n1m1
                by FINSEQ_1:59,A42a,C11,XXREAL_0:2,A35;then
C1:           dom (mM0b2 | n1m1) = dom (mFM0b2 | n1m1) by FINSEQ_3:29,C6;
              now
                let x be Element of NAT;
                assume
C13:            x in dom (mM0b2 | n1m1);then
C5:             x <= n1m1 by C6,FINSEQ_3:25; then
C17:            x < n1 by XXREAL_0:2,C11;then
C20:            1 <= x & x <= len mM0 by C12,XXREAL_0:2,C13,FINSEQ_3:25;then
C10:            x in dom mM0 by FINSEQ_3:25;
C10a:           x in dom mFM0 by A44,FINSEQ_3:25,C20;
                x <= len pl by C17,C19,XXREAL_0:2;then
C21:            x in dom pl by FINSEQ_3:25,C20;then
                pl.x in rng pl by FUNCT_1:3;then
                pl.x in P by RLAFFIN3:def 1;then
                consider plx be place of Dftn such that
C15:            plx = pl.x & plx in rng dct;
C16:            plx <> p1 by FUNCT_1:def 4,C5,C11,A39,C18,C21,C15;
                plx <> p2 by FUNCT_1:def 4,A39a,C18a,C21,C15,C17,S1;then
C14:            not plx in *'{t} & not plx in {t}*' by L4,C15,C16;
                thus (mM0b2 | n1m1).x = mM0b2.x by FINSEQ_3:112,C5
                .= mM0.x by FINSEQ_3:112,XXREAL_0:2,C4,C5
                .= M0.plx by K23,Def12,C15,C10
                .= FM0.plx by Def11,C14,A10
                .= mFM0.x by K23,Def12,C10a,C15
                .= mFM0b2.x by FINSEQ_3:112,XXREAL_0:2,C4,C5
                .= (mFM0b2 | n1m1).x by FINSEQ_3:112,C5;
              end;
              hence thesis by PARTFUN1:5,C1;
            end;
A29b:       mM0b2/^n1 = mFM0b2/^n1
            proof
C6b:          len (mM0b2/^n1) = n2m1 -n1 by RFINSEQ:def 1,A42, A35;
              len (mFM0b2/^n1) = n2m1 -n1 by RFINSEQ:def 1,A35,A42a;then
C1b:          dom (mM0b2/^n1) = dom (mFM0b2/^n1) by FINSEQ_3:29,C6b;
              now
                let x be Element of NAT;
                assume
C13b:           x in dom (mM0b2/^n1);then
C18b:           1 <= x & x <= len (mM0b2/^n1) by FINSEQ_3:25;then
C17b:           1+0 <= x+n1 by XREAL_1:7;
X13:            x+n1 <= len (mM0b2/^n1) + n1 by XREAL_1:6,C18b;then
X14:            x+n1 <= len mM0 by F1,XXREAL_0:2, C6b;then
C10b:           x+n1 in dom mM0 by FINSEQ_3:25,C17b;
C10bb:          x+n1 in dom mFM0 by A44,FINSEQ_3:25,C17b,X14;
                x+n1 < n2 by XXREAL_0:2,A43,C6b,X13;then
                x+n1 <= len pl by A40,XXREAL_0:2;then
C21b:           x+n1 in dom pl by FINSEQ_3:25,C17b;then
                pl.(x+n1) in rng pl by FUNCT_1:3;then
                pl.(x+n1) in P by RLAFFIN3:def 1;then
                consider plxpn1 be place of Dftn such that
C15b:           plxpn1 = pl.(x+n1) & plxpn1 in rng dct;
C16b:           plxpn1 <> p2 by FUNCT_1:def 4,A39a,C18a,C21b,C15b,A43,C6b,X13;
                n1 + 0 < n1 + x by XREAL_1:29,C18b;then
                plxpn1 <> p1 by FUNCT_1:def 4,A39,C18,C21b,C15b;then
C14b:           not plxpn1 in *'{t} & not plxpn1 in {t}*' by L4,C16b,C15b;
                thus (mM0b2/^n1).x = mM0b2.(x+n1) by RFINSEQ:def 1,C13b,A33a
                .= mM0.(x+n1) by FINSEQ_3:112,C6b,X13
                .= M0.plxpn1 by K23,Def12,C15b,C10b
                .= FM0.plxpn1 by Def11,C14b,A10
                .= mFM0.(x+n1) by K23,Def12,C10bb,C15b
                .= mFM0b2.(x+n1) by FINSEQ_3:112,C6b,X13
                .= (mFM0b2/^n1).x by RFINSEQ:def 1,C13b,C1b,A33;
              end;
              hence thesis by PARTFUN1:5,C1b;
            end;
A29c:       mM0/^n2 = mFM0/^n2
            proof
C6c:          len (mM0/^n2) = (len mM0) - n2 by RFINSEQ:def 1,A36;
              len (mFM0/^n2)= (len mFM0) - n2 by RFINSEQ:def 1,A36a;then
C1c:          dom (mM0/^n2) = dom (mFM0/^n2) by FINSEQ_3:29,A44,C6c;
              now
                let x be Element of NAT;
                assume
C13c:           x in dom (mM0/^n2);then
C18c:           1 <= x & x <= len (mM0/^n2) by FINSEQ_3:25;then
C17c:           1 + 0 <= x+n2 by XREAL_1:7;
X15:            x+n2 <= len (mM0/^n2) + n2 by XREAL_1:6,C18c;then
C10cc:          x+n2 in dom mFM0 by A44,FINSEQ_3:25,C17c,C6c;
C10c:           x+n2 in dom mM0 by FINSEQ_3:25,C17c,C6c,X15;
C22:            x+n2 > n2 by XREAL_1:29,C18c;
                x+n2 <= len pl by Def12,K23,C6c,X15;then
C21c:           x+n2 in dom pl by FINSEQ_3:25,C17c;then
                pl.(x+n2) in rng pl by FUNCT_1:3;then
                pl.(x+n2) in P by RLAFFIN3:def 1;then
                consider plxpn2 be place of Dftn such that
C15c:           plxpn2 = pl.(x+n2) & plxpn2 in rng dct;
C16c:           plxpn2 <> p2 by FUNCT_1:def 4,A39a,C18a,C21c,C15c,C22;
                n1 + 0 < n2 + x by XREAL_1:8,S1;then
                plxpn2 <> p1 by FUNCT_1:def 4,A39,C18,C21c,C15c;then
C14c:           not plxpn2 in *'{t} & not plxpn2 in {t}*' by L4,C16c,C15c;
                thus (mM0/^n2).x = mM0.(x+n2) by RFINSEQ:def 1,A36,C13c
                .= M0.plxpn2 by K23,Def12,C15c, C10c
                .= FM0.plxpn2 by Def11,C14c,A10
                .= mFM0.(x+n2) by K23,Def12,C10cc,C15c
                .= (mFM0/^n2).x by RFINSEQ:def 1,C13c,C1c,A36a;
              end;
              hence thesis by PARTFUN1:5,C1c;
            end;
            thus num_marks(P, M0)
            = Sum ((mM0b2 | n1m1) ^ <*mM0b2/.n1*> ^ (mM0b2/^n1)
            ^ <*mM0/.n2*>) + Sum (mM0/^n2) by RVSUM_1:75,G1,A27
            .= Sum ((mM0b2 | n1m1) ^ <*mM0b2/.n1*> ^ (mM0b2/^n1))
            + Sum <*mM0/.n2*> + Sum (mM0/^n2) by RVSUM_1:75
            .= Sum ((mM0b2 | n1m1) ^ <*mM0b2/.n1*>) + Sum (mM0b2/^n1)
            + Sum <*mM0/.n2*> + Sum (mM0/^n2) by RVSUM_1:75
            .= Sum (mM0b2 | n1m1) + Sum <*mM0b2/.n1*> + Sum (mM0b2/^n1)
            + Sum <*mM0/.n2*> + Sum (mM0/^n2) by RVSUM_1:75
            .= Sum (mM0b2 | n1m1) + Sum <*mM0b2/.n1*> + Sum (mM0b2/^n1)
            + mM0/.n2 + Sum (mM0/^n2) by RVSUM_1:73
            .= Sum (mM0b2 | n1m1) + mM0b2/.n1 + Sum (mM0b2/^n1)
            + mM0/.n2 + Sum (mM0/^n2) by RVSUM_1:73
            .= Sum (mFM0b2 | n1m1) + mFM0b2/.n1 + Sum (mFM0b2/^n1)
            + mFM0/.n2 + Sum (mFM0/^n2) by A29,A29b,A29c,A29f
            .= Sum (mFM0b2 | n1m1) + Sum <*mFM0b2/.n1*> + Sum (mFM0b2/^n1)
            + mFM0/.n2 + Sum (mFM0/^n2) by RVSUM_1:73
            .= Sum (mFM0b2 | n1m1) + Sum <*mFM0b2/.n1*> + Sum (mFM0b2/^n1)
            + Sum <*mFM0/.n2*> + Sum (mFM0/^n2) by RVSUM_1:73
            .= Sum ((mFM0b2 | n1m1) ^ <*mFM0b2/.n1*>) + Sum (mFM0b2/^n1)
            + Sum <*mFM0/.n2*> + Sum (mFM0/^n2) by RVSUM_1:75
            .= Sum ((mFM0b2 | n1m1) ^ <*mFM0b2/.n1*> ^ (mFM0b2/^n1))
            + Sum <*mFM0/.n2*> + Sum (mFM0/^n2) by RVSUM_1:75
            .= Sum ((mFM0b2 | n1m1) ^ <*mFM0b2/.n1*> ^ (mFM0b2/^n1)
            ^ <*mFM0/.n2*>) + Sum (mFM0/^n2) by RVSUM_1:75
            .= num_marks(P, Firing(t, M0)) by RVSUM_1:75, A27a,G2;
          end;
          nq <> nr
          proof
            assume
A59:        nq = nr;
            q = pl.nr by A59,FINSEQ_4:19,A32a
            .= r by FINSEQ_4:19,A32;
            hence contradiction by A57;
          end;then
          per cases by XXREAL_0:1;
          suppose
            nq > nr;
            hence num_marks(P, M0) = num_marks(P, Firing(t, M0))
            by gen,A32,A32a,E1con,A30a,A30b;
          end;
          suppose
            nr > nq;
            hence num_marks(P, M0) = num_marks(P, Firing(t, M0))
            by gen,A32,A32a,E1cona,A30a,A30b;
          end;
        end;
      end;
      suppose
A9:     not t in transitions_of dct;
        set EF = the Enumeration of Firing(t, M0),P,
        E = the Enumeration of M0, P;
A15:    len EF = len the Enumeration of P by Def12,K23;
        len the Enumeration of P = len E by Def12,K23;then
A4:     dom EF = dom E by FINSEQ_3:29,A15;
        now
          let x be Element of NAT;
          assume
A6:       x in dom EF; then
          x in dom the Enumeration of P by FINSEQ_3:29,A15;then
A18:      (the Enumeration of P).x in rng the Enumeration of P
            by FUNCT_1:3;then
          reconsider s = (the Enumeration of P).x as place of Dftn;
A14:      s in P by RLAFFIN3:def 1,A18;
A7:       now
            assume s in *'{t} & not s in {t}*';then
            consider f being S-T_arc of Dftn,t1 being transition of Dftn
            such that
A13:        t1 in {t} & f = [s,t1] by PETRI:6;
            t1 = t by TARSKI:def 1,A13;
            hence contradiction by A9,Thb,A14, A13;
          end;
P1:       now
            assume s in {t}*' & not s in *'{t};then
            consider f being T-S_arc of Dftn,t1 being transition of Dftn
            such that
A13a:       t1 in {t} & f = [t1,s] by PETRI:8;
            t1 = t by TARSKI:def 1,A13a;
            hence contradiction by A9,Thb,A14,A13a;
          end;
          thus EF.x = (Firing(t,M0)).s by Def12,K23,A6
          .= M0.((the Enumeration of P).x) by A10,Def11,A7,P1
          .= E.x by Def12,K23,A6,A4;
        end;
        hence num_marks(P, Firing(t, M0)) = num_marks(P, M0) by PARTFUN1:5,A4;
      end;
    end;
    suppose not t is_firable_at M0;
      hence thesis by Def11;
    end;
  end;
