<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def check_regs(region_df, chr_name=None, start_name=None, stop_name=None, strand_name=None, sample_name=None):
 """ Modifies a region dataframe to be coherent with the GMQL data model :param region_df: a pandas Dataframe of regions that is coherent with the GMQL data model :param chr_name: (optional) which column of :attr:`~.region_df` is the chromosome :param start_name: (optional) which column of :attr:`~.region_df` is the start :param stop_name: (optional) which column of :attr:`~.region_df` is the stop :param strand_name: (optional) which column of :attr:`~.region_df` is the strand :return: a modified pandas Dataframe """


    if sample_name is None:
        region_df.index = np.repeat(default_id_sample, len(region_df))
    else:
        region_df = search_column(region_df, id_sample_aliases,
                                  id_sample_types, 'id_sample', sample_name)
        region_df = region_df.set_index("id_sample", drop=True)
        region_df = region_df.sort_index()

    region_df = search_column(region_df,  chr_aliases, chr_types, 'chr', chr_name)
    region_df = search_column(region_df, start_aliases, start_types, 'start', start_name)
    region_df = search_column(region_df, stop_aliases, stop_types, 'stop', stop_name)
    region_df = search_column(region_df, strand_aliases, strand_types, 'strand', strand_name)
    return region_df