Contents

# Operators and functions for type CFACE

&<
&<(f1::CFACE, f2::CFACE)::boolean
&>(f2::CFACE, f1::CFACE)::boolean
f1 &< f2
f2 &> f1

Test whether f1 is a proper face of f2. Both faces must have identical domains.

&<<
&<<(f1::CFACE, f2::CFACE)::boolean
&>>(f2::CFACE, f1::CFACE)::boolean
f1 &<< f2
f2 &>> f1

Test whether f1 is a facet of f2. Both faces must have identical domains.

&<=
&<=(f1::CFACE, f2::CFACE)::boolean
&>=(f2::CFACE, f1::CFACE)::boolean
f1 &<= f2
f2 &>= f1

Test whether f1 is a face of f2. Both faces must have identical domains.

&<>
&<>(f1::CFACE, f2::CFACE)::boolean
f1 &<> f2

Test whether f1 and f2 represent different faces. This is true if their domains are not identical.

&=
&=(f1::CFACE, f2::CFACE)::boolean
f1 &= f2

Test whether f1 and f2 represent the same face. This is false if their domains are not identical.

&x
&x(f1::CFACE, f2::CFACE, ...)::CFACE
f1 &x f2

The Cartesian product of the given faces, considered as a face of the Cartesian product of their domains. See CONE[&x].

ambientdim
ambientdim(f::CFACE)::nonnegint

The dimension of the ambient space of f.

codim
codim(f::CFACE)::nonnegint

The codimension of f in its ambient space. See also CONE[codim], dim and corank.

convert/CONE
convert(f::CFACE, CONE)::CONE

This functions converts f to the CONE representing the same point set.

convert/PFACE
convert(f::CFACE, PFACE)::PFACE

The domain of f is converted to a POLYHEDRON, using CONE[convert/POLYHEDRON], and the face of the resulting polyhedron P which is determined by f is returned. Note that this map from the faces of domain(f) to the faces of P may not be injective.

convert/affine
convert(f::CFACE, affine)::PFACE
convert(f::CFACE, affine, v::vec)::PFACE

The PFACE representing the same point set, but now as a face of the converted domain convert(domain(f), affine) or convert(domain(f), affine, v). See CONE[convert/affine].

Examples

 > C := posorthant(3); f := support(C, [0, 2, 1/3]); rays(f);
C := CONE(3,3,0,3,3)
f := CFACE(2,1)
[[0, 1, 0], [0, 0, 1]]
 > f2 := convert(f, affine, [1, 2, 3]); vertices(f2), rays(f2);
f2 := PFACE(3,1)
[[1, 2, 3]], [[0, 1, 0], [0, 0, 1]]
 > domain(f2) &= convert(C, affine, [1, 2, 3]);
true
corank
corank(f::CFACE)::nonnegint

The corank of f in the face lattice of its domain. This is the distance between f and the maximal element of the face lattice. See also rank.

dim
dim(f::CFACE)::nonnegint

The dimension of f.

domain
domain(f::CFACE)::CONE

The domain of a CFACE. This is the cone of which it is a face. See also CONE[isface].

dual
dual(f::CFACE)::CFACE

The face dual to f, which is a face of the dual of the domain of f. Note that this is not the same as the cone dual to f, considered as a cone.

hspacenos
hspacenos(f::CFACE)::set(posint)

The set of indices of the facets incident to f. The ordering is that of hspaces(domain(f)), see CONE[hspaces]. This is a low-level routine.

hspaces
hspaces(f::CFACE)::list(vec)

A list of the normal vectors of the halfspaces of domain(f) containing f. See CONE[hspaces]. Do not make any assumption about the order.

ispointed
ispointed(f::CFACE)::boolean

Test whether f is pointed. See CONE[ispointed].

isregular
isregular(f::CFACE)::boolean
isregular(f::CFACE, B::name)::boolean

Test whether f is regular. See CONE[isregular].

maximum
maximum(f1::CFACE, f2::CFACE, ...)::CFACE

The maximum of f1, f2 ... in the face lattice. All faces must have the same domain, which will also be the domain of the result. At least one face must be given.

minimum
minimum(f1::CFACE, f2::CFACE, ...)::CFACE

The minimum of f1, f2 ... in the face lattice. All faces must have the same domain, which will also be the domain of the result. At least one face must be given.

pred
pred(f::CFACE)::list(CFACE)

A list containing the predecessors of f in the face lattice of domain(f). These are the faces whose rank is one smaller than that of f, or, in other words, the facets of f. See also succ.

preimage
preimage(f::CFACE, A::{mat, rational, real_infinity})::CFACE

The preimage of f, considered as a face of the preimage of the domain of f. See CONE[preimage].

rank
rank(f::CFACE)::nonnegint

The rank of f in the face lattice of its domain. This is the distance between f and the minimal element of the lattice (which corresponds to the lineality space of the domain.)

raynos
raynos(f::CFACE)::set(posint)

The set of indices of the rays incident to f. The ordering is that of rays(domain(f)), see CONE[rays]. This is a low-level routine.

rays
rays(f::CFACE)::list(vec)

A list of the rays of f. See CONE[rays]. Do not make any assumption about the order.

relint
relint(f::)::vec

A point in the relative interior of f.

succ
succ(f::CFACE)::list(CFACE)

A list containing the successors of f in the face lattice of domain(f). These are the faces whose rank is one bigger than that of f, or, in other words, the faces of which f is a facet. See also pred.