theorem
  for t being Element of T, the_array_sort_of S holds
  length(t,I) value_at(C,u) = length(t value_at(C,u), I)
  proof
    let t be Element of T, the_array_sort_of S;
    set o = In((the connectives of S).13, the carrier' of S);
    consider f being ManySortedFunction of T,C such that
A1: f is_homomorphism T,C & u = f||FreeGen T by MSAFREE4:46;
A2: length(t,I) value_at(C,u) = f.I.(length(t,I)) by A1,Th28;
A3: the_arity_of o = <*the_array_sort_of S*> &
    the_result_sort_of o = I by Th77;
    then Args(o,T) = product <*(the Sorts of T).the_array_sort_of S*> by Th22;
    then reconsider p = <*t*> as Element of Args(o,T) by FINSEQ_3:123;
    thus (length(t,I)) value_at(C,u) = Den(o,C).(f#p)
    by A1,A2,A3
    .= Den(o,C).<*f.(the_array_sort_of S).t*> by A3,Th25
    .= length(t value_at(C,u),I) by A1,Th28;
  end;
