reserve S for non empty non void ManySortedSign;
reserve X for non-empty ManySortedSet of S;
reserve x,y,z for set, i,j for Nat;
reserve
  A0 for (X,S)-terms non-empty MSAlgebra over S,
  A1 for all_vars_including (X,S)-terms MSAlgebra over S,
  A2 for all_vars_including inheriting_operations (X,S)-terms MSAlgebra over S,
  A for all_vars_including inheriting_operations free_in_itself
  (X,S)-terms MSAlgebra over S;
reserve X0 for non-empty countable ManySortedSet of S;
reserve A0 for all_vars_including inheriting_operations free_in_itself
  (X0,S)-terms MSAlgebra over S;

theorem Th67:
  for o being OperSymbol of S
  for x being Element of Args(o,A) holds
  Den(o,A).x =
  (canonical_homomorphism A).(the_result_sort_of o).(Den(o,Free(S,X)).x)
  proof ::set A = A0;
    let o be OperSymbol of S;
    let x be Element of Args(o,A);
    set k = canonical_homomorphism A;
    set s = the_result_sort_of o;
    x in Args(o,A) & Args(o,A) c= Args(o, Free(S,X)) by Th41; then
    reconsider x0 = x as Element of Args(o,Free(S,X));
    k#x0 = x by Th66;
    hence Den(o,A).x
    = k.(the_result_sort_of o).(Den(o,Free(S,X)).x) by Def10,MSUALG_3:def 7;
  end;
