Q:

Is the Keras's default LSTM unrolled or stateful?

In the Keras documentation, both stateful and unroll are set to False. So how is the recurrent done in Keras if it's neither of these? 
Keras RNN documentaion
I have checked the source code for RNN in Keras, it seems that the default action is to initialize the LSTM at every time step. Am I worng? 
       if initial_state is not None:
            pass
       elif self.stateful:
            initial_state = self.states
       else:
            initial_state = self.get_initial_state(inputs)

If I was correct, does it mean that, for time series analysis, it would be better to set unroll=True ?

A:

Neither unrolled nor stateful.
Remember that "stateful" in Keras means only that "two consecutive batches will be interpreted as two parts of the same sequences". Nothing else. (Batch 2 is a sequel of batch 1)
All LSTM's, of course, have states (it's impossible not to).  
Be careful with the expression "initialize the LSTM". A stateful=False layer will "reset states" for every batch. The practical result is: "each batch is a group of individual sequences from start to end". (Batch 2 is not a sequel of batch 1)
"States" are information about the "history of a sequence up to the current step". They are completely different from "weights", which are what the layer actually learned from all sequences. 
"Unroll" is a way to transform the recurrent calculations into a single graph without recurrency. It's meant only for short sequences, it gets faster processing at the expense of using more memory.

