# polarFace -- computes the dual face of the polar polyhedron

## Synopsis

• Usage:
fv = polarFace f
• Inputs:
• Outputs:
• fv,

## Description

When computing a face f of a polyhedron P with the function faces, it is stored in the cache that f is a face of P. Then the function polarFace computes the polar P' of P and the corresponding face of P' on which all points of f attain their minimum. Note that this function only works correctly for polyhedra with the origin in its relative interior.

 i1 : P = hypercube 3 o1 = {ambient dimension => 3 } dimension of lineality space => 0 dimension of polyhedron => 3 number of facets => 6 number of rays => 0 number of vertices => 8 o1 : Polyhedron i2 : f = first faces(1,P) o2 = {ambient dimension => 3 } dimension of lineality space => 0 dimension of polyhedron => 2 number of facets => 4 number of rays => 0 number of vertices => 4 o2 : Polyhedron i3 : fv = polarFace f o3 = {ambient dimension => 3 } dimension of lineality space => 0 dimension of polyhedron => -1 number of facets => 0 number of rays => 0 number of vertices => 0 o3 : Polyhedron i4 : vertices fv o4 = 0 3 o4 : Matrix QQ <--- 0

If f is not a face of another polytope, then it considers f as a face of itself. Thus, it computes the polar of f, and returns the empty polyhedron as a face of the polar of f.

 i5 : P = hypercube 3 o5 = {ambient dimension => 3 } dimension of lineality space => 0 dimension of polyhedron => 3 number of facets => 6 number of rays => 0 number of vertices => 8 o5 : Polyhedron i6 : polarFace P o6 = {ambient dimension => 3 } dimension of lineality space => 0 dimension of polyhedron => -1 number of facets => 0 number of rays => 0 number of vertices => 0 o6 : Polyhedron

## Ways to use polarFace :

• "polarFace(Polyhedron)"

## For the programmer

The object polarFace is .