Linear difference equations