reserve
  a for natural Number,
  k,l,m,n,k1,b,c,i for Nat,
  x,y,z,y1,y2 for object,
  X,Y for set,
  f,g for Function;
reserve p,q,r,s,t for FinSequence;
reserve D for set;
reserve a, b, c, d, e, f for object;
reserve x1,x2,y1,y2 for object;

theorem
  {[x1,y1], [x2,y2]} is FinSequence implies x1 = 1 & x2 = 1 & y1 = y2 or
  x1 = 1 & x2 = 2 or x1 = 2 & x2 = 1
proof
  assume {[x1,y1], [x2,y2]} is FinSequence;
  then reconsider p = {[x1,y1], [x2,y2]} as FinSequence;
A1: dom p = {x1,x2} by RELAT_1:10;
  then
A2: x1 in dom p by TARSKI:def 2;
A3: x2 in dom p by A1,TARSKI:def 2;
A4: [x1,y1] in p by TARSKI:def 2;
A5: [x2,y2] in p by TARSKI:def 2;
A6: p.x1 = y1 by A4,FUNCT_1:1;
A7: p.x2 = y2 by A5,FUNCT_1:1;
A8: dom p = Seg len p by Def3;
A9: len p <= 1+1 by CARD_2:50;
A10: len p >= 0 qua Nat+1 by NAT_1:13;
A11: now
    assume len p = 1;
    hence x1 = 1 & x2 = 1 by A2,A3,A8,Th2,TARSKI:def 1;
    hence y1 = y2 by A5,A6,FUNCT_1:1;
  end;
  now
    assume
A12: len p = 2;
A13: x1 = x2 implies p = {[x1,y1]} by A6,A7,ENUMSET1:29;
    x1 = 1 & x2 = 2 or x1 = 2 & x2 = 1 or x1 = 1 & x2 = 1 or x1 = 2 & x2 = 2
    by A2,A3,A8,A12,Th2,TARSKI:def 2;
    hence x1 = 1 & x2 = 2 or x1 = 2 & x2 = 1 by A12,A13,CARD_1:30;
  end;
  hence thesis by A9,A10,A11,NAT_1:9;
end;
