Thinking in Algebra