def srcChildExplainsTarget(i, j, src, alignments, recursive=False):
    """
    Return True if any child of source node i explains target j
    """
    for i_ch in src.children(i):
        if alignments[i_ch,j]:
            return True
        if recursive:
            recursive_result = srcChildExplainsTarget(i_ch, j, src, alignments, recursive=recursive)
            if recursive_result: 
                return True
    return False