reserve i,j for Nat;
reserve x,y for set;
reserve A for non empty set;
reserve c for Element of StandardStackSystem A;
reserve m for stack of StandardStackSystem A;
reserve X for non empty non void StackSystem;
reserve s,s1,s2 for stack of X;
reserve e,e1,e2 for Element of X;
reserve X for StackAlgebra;
reserve s,s1,s2,s3 for stack of X;
reserve e,e1,e2,e3 for Element of X;

theorem Th25:
  coset s = {s1: ConstructionRed X reduces s,s1}
  proof set R = ConstructionRed X;
A1: {s1: R reduces s,s1} c= the carrier' of X
    proof let x be object;
      assume x in {s1: R reduces s,s1}; then
      ex s1 st x = s1 & R reduces s,s1;
      hence thesis;
    end;
    R reduces s,s by REWRITE1:12; then
A2: s in {s1: R reduces s,s1};
    now let e,s2; assume
      s2 in {s1: R reduces s,s1}; then
A3:   ex s1 st s2 = s1 & R reduces s,s1;
      [s2, push(e,s2)] in R by Def18; then
      R reduces s2, push(e,s2) by REWRITE1:15; then
      R reduces s, push(e,s2) by A3,REWRITE1:16;
      hence push(e,s2) in {s1: R reduces s,s1};
      assume not emp s2; then
      [s2, pop s2] in R by Def18; then
      R reduces s2, pop s2 by REWRITE1:15; then
      R reduces s, pop s2 by A3,REWRITE1:16;
      hence pop s2 in {s1: R reduces s,s1};
    end;
    hence coset s c= {s1: R reduces s,s1} by A1,A2,Def17;
    let x be object; assume x in {s1: R reduces s,s1}; then
    consider s1 such that
A4: x = s1 & R reduces s,s1;
    consider t being RedSequence of R such that
A5: s = t.1 & s1 = t.len t by A4;
    len t in dom t by FINSEQ_5:6; then
    x in rng t & rng t c= coset s by A4,A5,Th24,FUNCT_1:def 3;
    hence thesis;
  end;
