reserve i,j,k,m,n for Nat,
  D for non empty set,
  p for Element of D,
  f for FinSequence of D;
reserve D for non empty set,
  p for Element of D,
  f for FinSequence of D;
reserve f for circular FinSequence of D;
reserve f,g for FinSequence of TOP-REAL 2;
reserve p for Point of TOP-REAL 2,
  f for FinSequence of TOP-REAL 2;
reserve f for circular FinSequence of TOP-REAL 2;

theorem
  for f being non constant standard special_circular_sequence holds f is
  clockwise_oriented or Rev f is clockwise_oriented
proof
  let f be non constant standard special_circular_sequence;
  per cases;
  suppose
    N-min L~f = f/.1;
    hence thesis by Lm1;
  end;
  suppose
A1: N-min L~f <> f/.1;
    thus thesis
    proof
      set g = Rotate(f,N-min L~f);
A2:   for i st 1 < i & i < len f holds f/.i <> f/.1 by GOBOARD7:36;
      N-min L~f in rng f & L~f = L~g by Th33,SPRECT_2:39;
      then
A3:   g/.1 = N-min L~g by FINSEQ_6:92;
      per cases by A3,Lm1;
      suppose
        g is clockwise_oriented;
        then reconsider g as clockwise_oriented non constant standard
        special_circular_sequence;
        f = Rotate(g,f/.1) by A2,Th16;
        hence thesis;
      end;
      suppose
        Rev g is clockwise_oriented;
        then reconsider h = Rev g as clockwise_oriented non constant standard
        special_circular_sequence;
A4:     g just_once_values f/.1
        proof
          take (f/.1)..g;
          N-min L~f in rng f by SPRECT_2:39;
          then
A5:       f/.1 <> g/.1 by A1,FINSEQ_6:92;
          f/.1 in rng f by FINSEQ_6:42;
          then
A6:       f/.1 in rng g by FINSEQ_6:90,SPRECT_2:39;
          hence
A7:       (f/.1)..g in dom g by FINSEQ_4:20;
          thus
A8:       f/.1 = g.((f/.1)..g) by A6,FINSEQ_4:19
            .= g/.((f/.1)..g) by A7,PARTFUN1:def 6;
          let z be set such that
A9:       z in dom g and
A10:      z <> (f/.1)..g;
          reconsider k = z as Element of NAT by A9;
          per cases by A10,XXREAL_0:1;
          suppose
A11:        k < (f/.1)..g;
            (f/.1)..g <= len g & (f/.1)..g <> len g by A6,A5,A8,FINSEQ_4:21
,FINSEQ_6:def 1;
            then
A12:        (f/.1)..g < len g by XXREAL_0:1;
            1 <= k by A9,FINSEQ_3:25;
            hence thesis by A8,A11,A12,GOBOARD7:36;
          end;
          suppose
A13:        k > (f/.1)..g;
            (f/.1)..g >= 1 by A6,FINSEQ_4:21;
            then
A14:        (f/.1)..g > 1 by A5,A8,XXREAL_0:1;
            k <= len g by A9,FINSEQ_3:25;
            hence thesis by A8,A13,A14,GOBOARD7:37;
          end;
        end;
        Rev f = Rev Rotate(g,f/.1) by A2,Th16
          .= Rotate(h,f/.1) by A4,FINSEQ_6:106;
        hence thesis;
      end;
    end;
  end;
end;
