According to wikipedia: functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions and avoids state an
The Wikipedia definition is correct. It may seem puzzling at first, but if you start working with say Haskell, you'll note that you don't have any variables laying around containing values.
State can still be sort of represented using state monads.