Esempio n. 1
0
def main_old():
    pyramids = get_pyramids()

    p = np.array(pyramids[0])

    lattice = Lattice()

    a = lattice.add_node(binaryze_as_tuple(p, 0))
    b = lattice.add_node(binaryze_as_tuple(p, 1))
    c = lattice.add_node(binaryze_as_tuple(p, 2))
    d = lattice.add_node(binaryze_as_tuple(p, 3))
    e = lattice.add_node(binaryze_as_tuple(p, 4))
    f = lattice.add_node(binaryze_as_tuple(p, 5))
    g = lattice.add_node(binaryze_as_tuple(p, 6))

    lattice.add_edge(a, b)
    lattice.add_edge(a, c)
    lattice.add_edge(a, d)

    lattice.add_edge(b, e)
    lattice.add_edge(b, f)

    lattice.add_edge(c, e)
    lattice.add_edge(c, f)

    lattice.add_edge(d, e)
    lattice.add_edge(d, f)

    lattice.add_edge(e, g)
    lattice.add_edge(f, g)

    lattice.supremum = a

    export_latex_grid(lattice, width_coef=2.5, height_coef=2.5)
Esempio n. 2
0
def main2(output_file_name):
    lattice = Lattice()

    a = lattice.add_node('a')
    b = lattice.add_node('b')
    c = lattice.add_node('c')
    d = lattice.add_node('d')
    e = lattice.add_node('e')
    f = lattice.add_node('f')
    g = lattice.add_node('g')

    lattice.add_edge(a, b)
    lattice.add_edge(a, c)
    lattice.add_edge(a, d)

    lattice.add_edge(b, e)
    lattice.add_edge(b, f)

    lattice.add_edge(c, e)
    lattice.add_edge(c, f)

    lattice.add_edge(d, e)
    lattice.add_edge(d, f)

    lattice.add_edge(e, g)
    lattice.add_edge(f, g)

    lattice.supremum = a

    export_latex(lattice, output_file_name)
Esempio n. 3
0
def main3(output_file_name):
    lattice = Lattice()

    root = lattice.add_node('(1, 1)')
    left = lattice.add_node('(1, 0)')
    right = lattice.add_node('(0, 1)')
    right2 = lattice.add_node('(0, 2)')
    bottom = lattice.add_node(('(0, 0)'))

    lattice.add_edge(root, left)
    lattice.add_edge(root, right)
    lattice.add_edge(left, bottom)
    # lattice.add_edge(right, bottom)

    lattice.add_edge(right, right2)
    lattice.add_edge(right2, bottom)

    lattice.supremum = root

    export_latex(lattice, output_file_name)
Esempio n. 4
0
def main():
    pyramids = get_pyramids()
    # pyramids = [pyramids[1]]
    lattice = Lattice()
    data = dict()

    key = binaryze_as_tuple(pyramids[0], 0)
    supremum = lattice.add_node(key)

    data[key] = supremum

    all_chains = []

    for pyramid in pyramids:
        chain = [supremum]
        all_chains.append(chain)
        for i in np.unique(pyramid)[:-1]:
            pyramid_level = binaryze_as_tuple(pyramid, i)
            if pyramid_level not in data:
                data[pyramid_level] = lattice.add_node(pyramid_level)
            chain.append(data[pyramid_level])

    for chain in all_chains:
        for parent, child in zip(chain[0:-1], chain[1:]):
            lattice.add_edge(parent, child)

    # for key1, node1 in data.items():
    #     for key2, node2 in data.items():
    #         sum1 = np.sum(np.array(key1)).sum()
    #         sum2 = np.sum(np.array(key2)).sum()
    #         if key1 == key2:
    #             continue
    #         # if sum1 > sum2 and sum1 - sum2 == 1:
    #         if contains(key1, key2):
    #             lattice.add_edge(node1, node2)

    lattice.supremum = supremum

    export_latex_grid(lattice, width_coef=2.5, height_coef=2.5)
Esempio n. 5
0
def main(output_file_name):
    lattice = Lattice()

    nodes = dict()
    for x in [0, 1]:
        for y in [0, 1]:
            key = (x, y)
            nodes[key] = lattice.add_node(str(key))

    for key1, node1 in nodes.items():
        for key2, node2 in nodes.items():
            if key1 == key2:
                continue

            sum1 = sum(key1)
            sum2 = sum(key2)
            if sum1 > sum2 and sum1 - sum2 == 1:
                if contains(key1, key2):
                    lattice.add_edge(node1, node2)

    lattice.supremum = nodes[(1, 1)]

    export_latex(lattice, output_file_name, height_coef=1.5, width_coef=2)