def is_default_defined(index, argspec):
    """Returns `True` if the argument at `ìndex` of `argspec` has a default value. Otherwise returns `False`."""

    arglen = len(argspec.args) if argspec.args else 0
    defaultslen = len(argspec.defaults) if argspec.defaults else 0

    defaults_defined = defaultslen > 0
    all_args_have_defaults = arglen == defaultslen
    index_is_in_defaults_range = index >= arglen - defaultslen

    return defaults_defined and (all_args_have_defaults or index_is_in_defaults_range)