reserve N for PT_net_Str, PTN for Petri_net, i for Nat;

theorem Th13:
  for a,b be object st a <> b holds <*a,b,a*> is almost-one-to-one
  proof
    let a,b be object;
    assume
Z1: a <> b;
    set f = <*a,b,a*>;
    let i,j be Nat;
    assume
Z2: i in dom f & j in dom f & (i <> 1 or j <> len f) & (i <> len f or j <> 1)
    & f.i = f.j;
A8: len f = 3 by FINSEQ_1:45;then
A1: 1 <= i & i <= 3 by FINSEQ_3:25,Z2;
A1a: 1 <= j & j <= 3 by FINSEQ_3:25,Z2,A8;
    1 = i or 1 < i by A1,XXREAL_0:1;then
    1 = i or 1+1<=i by NAT_1:13;then
    1 = i or 2=i or 2 < i by XXREAL_0:1;then
A2: 1 = i or 2=i or 2+1 <= i by NAT_1:13;
    1 = j or 1 < j by A1a,XXREAL_0:1;then
    1 = j or 1+1<=j by NAT_1:13;then
    1 = j or 2=j or 2 < j by XXREAL_0:1;then
A3: 1 = j or 2=j or 2+1 <= j by NAT_1:13;then
    per cases by A1a,XXREAL_0:1,A1, A2;
    suppose (1 = i or 3 = i) & j <> 2;
      hence i = j by A8,Z2,A3,XXREAL_0:1,A1a;
    end;
    suppose (1 = j or 3 = j) & i <> 2;
      hence i = j by A8,Z2,XXREAL_0:1,A1, A2;
    end;
    suppose 1 = i & 2 = j or 2 = i & 1 = j or 2 = i & 2 = j or 2 = i & 3 = j
      or 3 = i & 2 = j;
      hence i = j by Z2,Z1;
    end;
  end;
