# dualFaceLattice(ZZ,Polyhedron) -- computes the dual face lattice of a polyhedron

## Synopsis

• Function: dualFaceLattice
• Usage:
L = dualFaceLattice P
L = dualFaceLattice(k,P)
• Inputs:
• k, an integer, between 0 and the dimension of X
• Outputs:

## Description

The dual face lattice of a polyhedron P displays for eachk the faces of dimension k as a list of integers, indicating the halfspaceces of P that generate this face together with the hyperplanes. If no integer is given the function returns the faces of all dimensions in a list, starting with the polyhedron itself.

 i1 : P = convexHull(matrix{{1,1,-1,-1},{1,-1,1,-1},{1,1,1,1}},matrix {{0},{0},{-1}}) o1 = {ambient dimension => 3 } dimension of lineality space => 0 dimension of polyhedron => 3 number of facets => 5 number of rays => 1 number of vertices => 4 o1 : Polyhedron i2 : dualFaceLattice(2,P) o2 = {{0}, {1}, {2}, {3}, {4}} o2 : List

Returns the faces of dimension two where each list of integers gives the rows in the halfspaces matrix of the polyhedron:

 i3 : V = halfspaces P o3 = (| -1 0 0 |, | 1 |) | 1 0 0 | | 1 | | 0 -1 0 | | 1 | | 0 1 0 | | 1 | | 0 0 1 | | 1 | o3 : Sequence

The complete face lattice is returned if no integer is given:

 i4 : faceLattice P o4 = {{({0}, {}), ({1}, {}), ({2}, {}), ({3}, {})}, {({0}, {0}), ({2}, {0}), ------------------------------------------------------------------------ ({0, 2}, {}), ({1}, {0}), ({3}, {0}), ({1, 3}, {}), ({0, 1}, {}), ({2, ------------------------------------------------------------------------ 3}, {})}, {({0, 2}, {0}), ({1, 3}, {0}), ({0, 1}, {0}), ({2, 3}, {0}), ------------------------------------------------------------------------ ({0, 1, 2, 3}, {})}, {({0, 1, 2, 3}, {0})}} o4 : List