# findFlag -- computes a list of facet labels that make up a flag in a polytope

## Synopsis

• Usage:
F = findFlag P
F = findFlag M
F = findFlag S
F = findFlag V
• Inputs:
• P, , a polytope
• M, , a matroid
• S, , (symbolic) slack matrix
• V, a list, a list of vertex coordinates, matroid vectors, facet labels, or cone generators
• Optional inputs:
• FlagElement => ..., -- a facet label that will be contained in a flag of facets of given polytope or matroid
• Object => ..., -- specify combinatorial object
• Outputs:
• F, a list, a list of facet labels or hyperplanes or column labels or labels that make up a flag in the given polytope or matroid or matrix or object given by V

## Description

Given a polytope, a matroid, a cone, it finds a flag of facets or hyperplanes or cone generators that can be given as input to obtain a reduced slack matrix.

 `i1 : V = {{0, 0, 0}, {0, 0, 1}, {1, 0, 0}, {1, 0, 1}, {0, 1, 0}, {0, 1, 1}};` ```i2 : findFlag V Order of vertices is {{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}} Order of facets is {{0, 2, 3, 5}, {0, 1, 3, 4}, {1, 2, 4, 5}, {0, 1, 2}, {3, 4, 5}} o2 = {0, 1, 2, 4} o2 : List``` ```i3 : findFlag(V, Object => "matroid") Order of hyperplanes is {{2, 3, 4, 5}, {0, 1, 4, 5}, {1, 3, 5}, {0, 3, 5}, {1, 2, 5}, {0, 2, 5}, {1, 3, 4}, {0, 3, 4}, {1, 2, 4}, {0, 2, 4}, {0, 1, 2, 3}} o3 = {0, 1, 5, 7} o3 : List``` ```i4 : findFlag({{0, 2, 3, 5}, {0, 1, 3, 4}, {1, 2, 4, 5}, {0, 1, 2}, {3, 4, 5}}, Object => "abstractPolytope") Order of facets is {{0, 2, 3, 5}, {0, 1, 3, 4}, {1, 2, 4, 5}, {0, 1, 2}, {3, 4, 5}} o4 = {0, 1, 2, 4} o4 : List```