from typing import List
from typing import Optional


def brute_force(arr: List[int], value: int) -> Optional[int]:
    """
    A brute force method that runs in O(n) and thus does not satisfy the question's requirements.
    We use it for comparison.
    :param arr: the rotated array
    :param value: the value to find in the array
    :return: the index of value, or None if it does not exist

    >>> brute_force([2, 3, 0, 1], 2)
    0
    >>> brute_force([-1, 0], 0)
    1
    >>> brute_force([0, 1, 2], 1)
    1
    >>> brute_force([13, 18, 25, 2, 8, 10], 8)
    4
    >>> brute_force([13, 18, 25, 2, 8, 10], 3) is None
    True
    """
    if arr is None or not arr or value is None:
        return None
    try:
        return arr.index(value)
    except ValueError:
        return None