## Framework properties

FRAMEWORK : graph
A graph with a given embedding as node attribute.
GRAPH : graph
The graph of a framework
EMBEDDING : matrix
The embedding of the nodes of the framework (not in homogeneous coordinates).
N_NODES : cardinal
The number of nodes of the framework
N_EDGES : cardinal
The number of edges of the framework
DIM : cardinal
The dimension of the embedding of the framework
NODE_LABELS : list
labels of the nodes of the framework

## Rigidity properties

N_DEGREES_OF_FREEDOM : cardinal
The number of degrees of freedom for the infinitesimal motions of a framework
RIGIDITY_MATRIX : sparse_matrix
The rigidity matrix of the framework
INFINITESIMALLY_RIGID : boolean
This property is true if the framework does not allow any infinitesimal motion
INFINITESIMAL_MOTIONS : matrix
The rows of this matrix correspond to inifinitesimal motions of the framework. The motion of the ith node is in columns [i*DIM, (i+1)*DIM - 1].
INFINITESIMAL_PATTERNS : matrix
Each row of the matrix corresponds to a row of INFINITESIMAL_MOTIONS and contains its expansive pattern, i.e. each entry describes the behaviour of an edge of the complete graph under the corresponding motion:
If the entry is positive the edge expands, if it is negative it shrinks, if it is zero the length stays fixed.
The order of the entries in each row correspond to the lexicographic order of the edges of the complete graph on N_NODES nodes, i.e. (0 1), (0 2), ... , (0 N_NODES-1), (1 2),...,(1 N_NODES-1), (N_NODES-2 N_NODES-1).
INFINITESIMAL_MOTION_COORDINATES : matrix
Each row of the matrix corresponds to a row of INFINITESIMAL_MOTIONS are the sum of the coordinates of the EMBEDDING and the INFINITESIMAL_MOTIONS.
INFINITESIMAL_RIGID_COMPONENTS : array< powerset<int> >
The rigid components of the INFINITESIMAL_MOTIONS.
EXPANSIVE_MOTIONS : matrix
The rows of this matrix correspond to expansive motions of the framework. The motion of the ith node is in columns [i*DIM, (i+1)*DIM - 1].
EXPANSIVE_PATTERNS : matrix
The patterns of the EXPANSIVE_MOTIONS. The notation is similar to INFINITESIMAL_PATTERNS.
EXPANSIVE_MOTION_COORDINATES : matrix
Each row of the matrix corresponds to a row of EXPANSIVE_MOTIONS are the sum of the coordinates of the EMBEDDING and the EXPANSIVE_MOTIONS.
EXPANSIVE_MOTION_CONE : matrix
An inequality description of the cone of EXPANSIVE_MOTIONS.
EXPANSIVE_RIGID_COMPONENTS : array< powerset<int> >
The rigid components of the EXPANSIVE_MOTIONS.