
theorem ThSTC0S4:
  for x1,x2,x3,x4,x5,x6,x7 being non pair set holds
    InputVertices STC0Str(x1,x2,x3,x4,x5,x6,x7) = {x1,x2,x3,x4,x5,x6,x7}
  proof
    let x1,x2,x3,x4,x5,x6,x7 be non pair set;
    set S = STC0Str(x1,x2,x3,x4,x5,x6,x7);
    set S1 = STC0IStr(x1,x2,x3,x4,x5,x6,x7);
    set S11 = STC0IIStr(x1,x2,x3,x5,x6,x7);
    set x1x20 = [<*x1,x2*>, xor2];
    set x1x2 = [<*x1,x2*>, and2];
    set x2x3 = [<*x2,x3*>, and2];
    set x3x1 = [<*x3,x1*>, and2];
    set x5x60 = [<*x5,x6*>, xor2];
    set x5x6 = [<*x5,x6*>, and2];
    set x6x7 = [<*x6,x7*>, and2];
    set x7x5 = [<*x7,x5*>, and2];
    set A1 = GFA0AdderOutput(x1,x2,x3);
    set A2 = GFA0AdderOutput(x5,x6,x7);
    set A1A20 = [<*A1,A2*>,xor2];
    set A1A2 = [<*A1,A2*>,and2];
    set A2x4 = [<*A2,x4*>,and2];
    set x4A1 = [<*x4,A1*>,and2];
    set A3 = GFA0AdderOutput(A1,A2,x4);
    set C1 = GFA0CarryOutput(x1,x2,x3);
    set C2 = GFA0CarryOutput(x5,x6,x7);
    set C3 = GFA0CarryOutput(A1,A2,x4);
    set S2 = BitGFA0Str(C1,C2,C3);
    set C1C2x = [<*C1,C2*>, xor2];
    set C1C2a = [<*C1,C2*>, and2];
    set C2C3a = [<*C2,C3*>, and2];
    set C3C1a = [<*C3,C1*>, and2];
    set Aout = GFA0AdderOutput(C1,C2,C3);
    set Cout = GFA0CarryOutput(C1,C2,C3);

A2: InnerVertices S1
    = {x1x20,A1} \/ {x1x2,x2x3,x3x1,C1} \/
      {x5x60,A2} \/ {x5x6,x6x7,x7x5,C2} \/
      {A1A20,A3} \/ {A1A2,A2x4,x4A1,C3} by ThSTC0IS1
   .= {x1x20,A1} \/ ({x1x2,x2x3,x3x1} \/ {C1}) \/
      {x5x60,A2} \/ {x5x6,x6x7,x7x5,C2} \/
      {A1A20,A3} \/ {A1A2,A2x4,x4A1,C3} by ENUMSET1:6
   .= ({x1x20,A1} \/ {x1x2,x2x3,x3x1}) \/ {C1} \/
      {x5x60,A2} \/ {x5x6,x6x7,x7x5,C2} \/
      {A1A20,A3} \/ {A1A2,A2x4,x4A1,C3} by XBOOLE_1:4
   .= {C1} \/ ({x1x20,A1} \/ {x1x2,x2x3,x3x1}) \/
      {x5x60,A2} \/ ({x5x6,x6x7,x7x5} \/ {C2}) \/
      {A1A20,A3} \/ {A1A2,A2x4,x4A1,C3} by ENUMSET1:6
   .= {C1} \/ {x1x20,A1,x1x2,x2x3,x3x1} \/
      {x5x60,A2} \/ ({x5x6,x6x7,x7x5} \/ {C2}) \/
      {A1A20,A3} \/ {A1A2,A2x4,x4A1,C3} by ENUMSET1:8
   .= ({C1} \/ {x1x20,A1,x1x2,x2x3,x3x1} \/
      {x5x60,A2} \/ {x5x6,x6x7,x7x5}) \/ {C2} \/
      {A1A20,A3} \/ {A1A2,A2x4,x4A1,C3} by XBOOLE_1:4
   .= {C2} \/ ({C1} \/ {x1x20,A1,x1x2,x2x3,x3x1} \/
      {x5x60,A2} \/ {x5x6,x6x7,x7x5}) \/
      {A1A20,A3} \/ ({A1A2,A2x4,x4A1} \/ {C3}) by ENUMSET1:6
   .= {C2} \/ ({C1} \/ {x1x20,A1,x1x2,x2x3,x3x1} \/
      ({x5x60,A2} \/ {x5x6,x6x7,x7x5})) \/
      {A1A20,A3} \/ ({A1A2,A2x4,x4A1} \/ {C3}) by XBOOLE_1:4
   .= {C2} \/ ({C1} \/ {x1x20,A1,x1x2,x2x3,x3x1} \/
      {x5x60,A2,x5x6,x6x7,x7x5}) \/
      {A1A20,A3} \/ ({A1A2,A2x4,x4A1} \/ {C3}) by ENUMSET1:8
   .= ({C2} \/ ({C1} \/ {x1x20,A1,x1x2,x2x3,x3x1} \/
      {x5x60,A2,x5x6,x6x7,x7x5}) \/
      {A1A20,A3} \/ {A1A2,A2x4,x4A1}) \/ {C3} by XBOOLE_1:4
   .= {C3} \/ ({C2} \/ ({C1} \/ {x1x20,A1,x1x2,x2x3,x3x1} \/
      {x5x60,A2,x5x6,x6x7,x7x5}) \/ ({A1A20,A3} \/ {A1A2,A2x4,x4A1}))
      by XBOOLE_1:4
   .= {C3} \/ ({C2} \/ ({C1} \/ {x1x20,A1,x1x2,x2x3,x3x1} \/
      {x5x60,A2,x5x6,x6x7,x7x5}) \/ {A1A20,A3,A1A2,A2x4,x4A1})
      by ENUMSET1:8
   .= {C3} \/ ({C2} \/ ({C1} \/ {x1x20,A1,x1x2,x2x3,x3x1} \/
      {x5x60,A2,x5x6,x6x7,x7x5} \/ {A1A20,A3,A1A2,A2x4,x4A1}))
      by XBOOLE_1:4
   .= ({C3} \/ {C2}) \/ ({C1} \/ {x1x20,A1,x1x2,x2x3,x3x1} \/
      {x5x60,A2,x5x6,x6x7,x7x5} \/ {A1A20,A3,A1A2,A2x4,x4A1})
      by XBOOLE_1:4
   .= {C3,C2} \/ ({C1} \/ {x1x20,A1,x1x2,x2x3,x3x1} \/
      {x5x60,A2,x5x6,x6x7,x7x5} \/ {A1A20,A3,A1A2,A2x4,x4A1})
      by ENUMSET1:1
   .= {C3,C2} \/ ({C1} \/ ({x1x20,A1,x1x2,x2x3,x3x1} \/
      {x5x60,A2,x5x6,x6x7,x7x5}) \/ {A1A20,A3,A1A2,A2x4,x4A1})
      by XBOOLE_1:4
   .= {C3,C2} \/ ({C1} \/ (({x1x20,A1,x1x2,x2x3,x3x1} \/
      {x5x60,A2,x5x6,x6x7,x7x5}) \/ {A1A20,A3,A1A2,A2x4,x4A1}))
      by XBOOLE_1:4
   .= ({C3,C2} \/ {C1}) \/ (({x1x20,A1,x1x2,x2x3,x3x1} \/
      {x5x60,A2,x5x6,x6x7,x7x5}) \/ {A1A20,A3,A1A2,A2x4,x4A1})
      by XBOOLE_1:4
   .= {C1,C2,C3} \/ ({x1x20,A1,x1x2,x2x3,x3x1} \/
      {x5x60,A2,x5x6,x6x7,x7x5} \/ {A1A20,A3,A1A2,A2x4,x4A1})
      by ENUMSET1:2;

A3: C3 <> C1C2x & C1 <> C2C3a & C2 <> C3C1a & C3 <> C1C2a by LmSTC0S1;

    InnerVertices S2 is Relation & InputVertices S1 is without_pairs
    by ThSTC0IS5;
    then
A5: InnerVertices S2 misses InputVertices S1;

    S1 tolerates S2 by CIRCCOMB:47;
    hence
    InputVertices (S)
     = (InputVertices S1) \/ (InputVertices S2 \ InnerVertices S1)
       by A5,FACIRC_1:4
    .= {x1,x2,x3,x4,x5,x6,x7} \/ (InputVertices S2 \ InnerVertices S1)
       by ThSTC0IS4
    .= {x1,x2,x3,x4,x5,x6,x7} \/ ({C1,C2,C3} \ InnerVertices S1)
       by A3,GFACIRC1:33
    .= {x1,x2,x3,x4,x5,x6,x7} \/ {} by A2,XBOOLE_1:46
    .= {x1,x2,x3,x4,x5,x6,x7};
  end;
