import numpy as np F = np.array([[1, 1], [1, 0]]) F0 = np.array([1, 0]) def fib(n): if n == 0: return 0 power_F = np.linalg.matrix_power(F,n-1) result = np.dot(power_F, F0) return result[0]