Techniques from linear algebra are used to study the synchronization problem in automata theory. Let A = (Q, X) be a finite automaton. Each word m in X* defines a map from Q to Q; the rank of m in A is the integer Card {qm | q in Q }. A word of rank 1 maps all states onto a unique state. Such a word is called a synchronizing word (if such a word exists the automaton itself is called a synchronizing automaton). Let A be a synchronizing automaton with n states. Our main result asserts that if there is a letter of rank ≤ 1 + log_2(n) in A, then there exists a synchronizing word of rank ≤ (n-1)^2.