def get_bound_cond(ti_mps):
    """
    Gets the boundary condition defining our TI-MPS

    Args:
        ti_mps:     TI-MPS language model

    Returns:
        bound_cond: A string from one of the following options:
                    'positive'    -> Trainable positive mats at edges
                    'open'        -> Trainable rank-1 mats at edges
                    'white_noise' -> Identity matrices at edges
                    'infinite'    -> Transfer op fixed-points at edges
    """
    shape_len = len(ti_mps.bound_obj.shape)
    if shape_len == 3:
        return 'positive'
    elif shape_len == 2:
        return 'open'
    elif shape_len == 1:
        return 'infinite'
    elif shape_len == 0:
        return 'white_noise'