Algebraic functions over finite fields