====== BigObject SimplicialComplex ====== //from application [[..:topaz|topaz]]//\\ \\ An abstract simplicial complex represented by its facets. ? Permutations: : ? FacetPerm: :: permuting the ''[[..:topaz:SimplicialComplex#FACETS |FACETS]]'' ? VertexPerm: :: permuting the vertices ===== Properties ===== ==== Input property ==== These properties are for input only. They allow redundant information. ---- {{anchor:input_faces:}} ? **''INPUT_FACES''** :: Any description of the faces of a simplicial complex with vertices v_0 < v_1 < v_2 < ... arbitrary. Redundant faces allowed. ? Type: :''[[..:common#Array |Array]]<[[..:common#Set |Set]]<[[..:common#Int |Int]]%%>>%%'' ---- ==== Combinatorics ==== These properties capture combinatorial information of the object. Combinatorial properties only depend on combinatorial data of the object like, e.g., the face lattice. ---- {{anchor:boundary:}} ? **''BOUNDARY''** :: ? Type: :''[[..:topaz:SimplicialComplex |SimplicialComplex]]'' ? Properties of BOUNDARY: : ? **''VERTEX_MAP''** :: Maps vertices of the boundary complex to the corresponding ones in the supercomplex ? Type: :''[[..:common#Array |Array]]<[[..:common#Int |Int]]>'' ---- {{anchor:coloring:}} ? **''COLORING''** :: A coloring of the vertices. ? Type: :''[[..:common#Array |Array]]<[[..:common#Int |Int]]>'' ---- {{anchor:dim:}} ? **''DIM''** :: Maximal dimension of the ''[[..:topaz:SimplicialComplex#FACETS |FACETS]]'', where the dimension of a facet is defined as the number of its vertices minus one. ? Type: :''[[..:common#Int |Int]]'' ---- {{anchor:dual_graph:}} ? **''DUAL_GRAPH''** :: ? Type: :''[[..:graph:Graph |Graph]]<[[..:common#Undirected |Undirected]]>'' ? Properties of DUAL_GRAPH: : ? **''COLORING''** ::UNDOCUMENTED ? Type: :''[[..:common#NodeMap |NodeMap]]<[[..:common#Undirected |Undirected]],[[..:common#Int |Int]]>'' ---- {{anchor:f2_vector:}} ? **''F2_VECTOR''** :: fik is the number of incident pairs of i-faces and k-faces; the main diagonal contains the ''[[..:topaz:SimplicialComplex#F_VECTOR |F_VECTOR]]''. ? Type: :''[[..:common#Matrix |Matrix]]<[[..:common#Int |Int]],[[..:common#NonSymmetric |NonSymmetric]]>'' ---- {{anchor:facets:}} ? **''FACETS''** :: Faces which are maximal with respect to inclusion, encoded as their ordered set of vertices. The vertices must be numbered 0, ..., n-1. ? Type: :''[[..:common#Array |Array]]<[[..:common#Set |Set]]<[[..:common#Int |Int]]%%>>%%'' ---- {{anchor:foldable:}} ? **''FOLDABLE''** :: True if ''[[..:topaz:SimplicialComplex#GRAPH |GRAPH]]'' is (''[[..:topaz:SimplicialComplex#DIM |DIM]]'' + 1)-colorable. ? Type: :''[[..:common#Bool |Bool]]'' ---- {{anchor:f_vector:}} ? **''F_VECTOR''** :: fk is the number of k-faces, for k = 0,... , d, where d is the dimension. ? Type: :''[[..:common#Array |Array]]<[[..:common#Int |Int]]>'' ---- {{anchor:graph:}} ? **''GRAPH''** :: The subcomplex consisting of all 1-faces. ? Type: :''[[..:graph:Graph |Graph]]<[[..:common#Undirected |Undirected]]>'' ---- {{anchor:hasse_diagram:}} ? **''HASSE_DIAGRAM''** :: ? Type: :''[[..:graph:Lattice |Lattice]]<[[..:graph#BasicDecoration |BasicDecoration]],[[..:graph#Nonsequential |Nonsequential]]>'' ? Methods of HASSE_DIAGRAM: : ? **''dim''** ::UNDOCUMENTED ? **''nodes_of_dim''** ::UNDOCUMENTED ? **''nodes_of_dim_range''** ::UNDOCUMENTED ---- {{anchor:h_vector:}} ? **''H_VECTOR''** :: The h-vector of the simplicial complex. ? Type: :''[[..:common#Array |Array]]<[[..:common#Int |Int]]>'' ---- {{anchor:minimal_non_faces:}} ? **''MINIMAL_NON_FACES''** :: Inclusion minimal non-faces (vertex subsets which are not faces of the simplicial complex). ? Type: :''[[..:common#IncidenceMatrix |IncidenceMatrix]]<[[..:common#NonSymmetric |NonSymmetric]]>'' ---- {{anchor:n_facets:}} ? **''N_FACETS''** :: Number of ''[[..:topaz:SimplicialComplex#FACETS |FACETS]]''. ? Type: :''[[..:common#Int |Int]]'' ---- {{anchor:n_minimal_non_faces:}} ? **''N_MINIMAL_NON_FACES''** :: Number of ''[[..:topaz:SimplicialComplex#MINIMAL_NON_FACES |MINIMAL_NON_FACES]]''. ? Type: :''[[..:common#Int |Int]]'' ---- {{anchor:n_vertices:}} ? **''N_VERTICES''** :: Number of vertices. ? Type: :''[[..:common#Int |Int]]'' ---- {{anchor:odd_subcomplex:}} ? **''ODD_SUBCOMPLEX''** :: Subcomplex generated by faces of codimension 2 that are contained in an odd number of faces of codimension 1. ? Type: :''[[..:topaz:SimplicialComplex |SimplicialComplex]]'' ---- {{anchor:proj_dictionary:}} ? **''PROJ_DICTIONARY''** :: For each vertex the corresponding vertex of facet 0 with respect to the action of the group of projectivities. ? Type: :''[[..:common#Array |Array]]<[[..:common#Int |Int]]>'' ---- {{anchor:proj_orbits:}} ? **''PROJ_ORBITS''** :: Orbit decomposition of the group of projectivities acting on the set of vertices of facet 0. ? Type: :''[[..:common#Set |Set]]<[[..:common#Set |Set]]<[[..:common#Int |Int]]%%>>%%'' ---- {{anchor:pure:}} ? **''PURE''** :: A simplicial complex is __pure__ if all its facets have the same dimension. ? Type: :''[[..:common#Bool |Bool]]'' ---- {{anchor:shellable:}} ? **''SHELLABLE''** :: True if this is shellable. ? Type: :''[[..:common#Bool |Bool]]'' ---- {{anchor:shelling:}} ? **''SHELLING''** :: An ordered list of facets constituting a shelling. ? Type: :''[[..:common#Array |Array]]<[[..:common#Set |Set]]<[[..:common#Int |Int]]%%>>%%'' ---- {{anchor:vertex_indices:}} ? **''VERTEX_INDICES''** :: Indices of the vertices from ''[[..:topaz:SimplicialComplex#INPUT_FACES |INPUT_FACES]]''. That is, the map i \mapsto v_i. Used for embeddings of subcomplexes. ? Type: :''[[..:common#Array |Array]]<[[..:common#Int |Int]]>'' ---- ==== Geometry ==== These properties capture geometric information of the object. Geometric properties depend on geometric information of the object, like, e.g., vertices or facets. ---- {{anchor:grass_plucker_certificate:}} ? **''GRASS_PLUCKER_CERTIFICATE''** :: A Grassmann-Plücker certificate for non-realizability, as described in J. Pfeifle, Positive Plücker tree certificates for non-realizability, Experimental Math. 2022 https://doi.org/10.1080/10586458.2021.1994487 and J. Pfeifle, A polymake implementation of Positive Plücker tree certificates for non-realizability, MEGA 2022 ? Type: :''[[..:topaz:GrassPluckerCertificate |GrassPluckerCertificate]]'' ? Example: :: > $s = new SimplicialComplex(FACETS=>[[0,1,2,3],[0,1,2,4],[0,1,3,5],[0,1,4,6],[0,1,5,7],[0,1,6,7],[0,2,3,4],[0,3,4,5],[0,4,5,6],[0,5,6,7],[1,2,3,7],[1,2,4,6],[1,2,6,7],[1,3,5,7],[2,3,4,7],[2,4,5,6],[2,4,5,7],[2,5,6,7],[3,4,5,7]]); > print $s->NON_REALIZABLE; true :: > $s->GRASS_PLUCKER_CERTIFICATE->properties(); ---- {{anchor:non_realizable:}} ? **''NON_REALIZABLE''** :: True if a certificate for convex non-realizability has been found False means that no such certificate has been found ? Type: :''[[..:common#Bool |Bool]]'' ? Example: :: For some simplicial complexes, polymake can certify that they are not realizable in a convex way. Currently, the only available proofs of non-realizability are Grassmann-Plücker certificates. :: > $s = new SimplicialComplex(FACETS=>[[0,1,2,3],[0,1,2,4],[0,1,3,5],[0,1,4,6],[0,1,5,7],[0,1,6,7],[0,2,3,4],[0,3,4,5],[0,4,5,6],[0,5,6,7],[1,2,3,7],[1,2,4,6],[1,2,6,7],[1,3,5,7],[2,3,4,7],[2,4,5,6],[2,4,5,7],[2,5,6,7],[3,4,5,7]]); > print $s->NON_REALIZABLE; true ? Example: :: > print jockusch_3_sphere(4)->NON_REALIZABLE false ? Example: :: > print jockusch_3_sphere(5)->NON_REALIZABLE true ---- ==== Symmetry ==== These properties capture information of the object that is concerned with the action of permutation groups. ---- {{anchor:group:}} ? **''GROUP''** :: ? Type: :''[[..:group:Group |Group]]'' ---- ==== Topology ==== The following properties are topological invariants. ---- {{anchor:ball:}} ? **''BALL''** :: Determines if this is homeomorphic to a ball. In general, this is undecidable; therefore, the implementation depends on heuristics. May be true or false or undef (if heuristic does not succeed). ? Type: :''[[..:common#Bool |Bool]]'' ? Example: :: Simplicial Complex is a ball. :: > $b= new SimplicialComplex(INPUT_FACES=>[[0,1,2,3],[1,2,3,4]]); > print $b->BALL; true ---- {{anchor:closed_pseudo_manifold:}} ? **''CLOSED_PSEUDO_MANIFOLD''** :: True if this is a ''[[..:topaz:SimplicialComplex#PURE |PURE]]'' simplicial complex with the property that each ridge is contained in exactly two facets. ? Type: :''[[..:common#Bool |Bool]]'' ---- {{anchor:cocycles:}} ? **''COCYCLES''** :: Representatives of cocycle groups, listed in increasing codimension order. See ''[[..:topaz#CycleGroup |CycleGroup]]'' for explanation of encoding of each group. ? Type: :''[[..:common#Array |Array]]<[[..:topaz#CycleGroup |CycleGroup]]<[[..:common#Integer |Integer]]%%>>%%'' ---- {{anchor:cohomology:}} ? **''COHOMOLOGY''** :: Reduced cohomology groups, listed in increasing codimension order. See ''[[..:topaz#HomologyGroup |HomologyGroup]]'' for explanation of encoding of each group. ? Type: :''[[..:common#Array |Array]]<[[..:topaz#HomologyGroup |HomologyGroup]]<[[..:common#Integer |Integer]]%%>>%%'' ---- {{anchor:cycles:}} ? **''CYCLES''** :: Representatives of cycle groups, listed in increasing dimension order. See ''[[..:topaz#CycleGroup |CycleGroup]]'' for explanation of encoding of each group. ? Type: :''[[..:common#Array |Array]]<[[..:topaz#CycleGroup |CycleGroup]]<[[..:common#Integer |Integer]]%%>>%%'' ---- {{anchor:euler_characteristic:}} ? **''EULER_CHARACTERISTIC''** :: Reduced Euler characteristic. Alternating sum of the ''[[..:topaz:SimplicialComplex#F_VECTOR |F_VECTOR]]'' minus 1. ? Type: :''[[..:common#Int |Int]]'' ---- {{anchor:fundamental_group:}} ? **''FUNDAMENTAL_GROUP''** :: A finite representation of the fundamental group. The fundamental group is represented as a pair of an integer, the number of generators, and a list of relations. The generators are numbered consecutively starting with zero. A relation is encoded as a list of pairs, each pair consisting of a generator and its exponent. You may use the ''[[..:topaz:SimplicialComplex#fundamental2gap |fundamental2gap]]'' method to produce a ''GAP'' file. ? Type: :''[[..:common#Pair |Pair]]<[[..:common#Int |Int]],[[..:common#List |List]]<[[..:common#List |List]]<[[..:common#Pair |Pair]]<[[..:common#Int |Int]],[[..:common#Int |Int]]%%>>%%%%>>%%'' ---- {{anchor:fundamental_group_gen_labels:}} ? **''FUNDAMENTAL_GROUP_GEN_LABELS''** :: Labels of the generators of the ''[[..:topaz:SimplicialComplex#FUNDAMENTAL_GROUP |FUNDAMENTAL_GROUP]]''. The labels can be chosen freely. If the ''[[..:topaz:SimplicialComplex#FUNDAMENTAL_GROUP |FUNDAMENTAL_GROUP]]'' is computed by polymake, the generators correspond to the edges of the complex. Hence they are labeled ''g'' followed by the vertices of the edge, e.g. ''g3_6'' corresponds to the edge {3 6}. ? Type: :''[[..:common#Array |Array]]<[[..:common#String |String]]>'' ---- {{anchor:genus:}} ? **''GENUS''** :: The __genus__ of a surface. ? Type: :''[[..:common#Int |Int]]'' ---- {{anchor:homology:}} ? **''HOMOLOGY''** :: Reduced simplicial homology groups H0, ..., Hd (integer coefficients), listed in increasing dimension order. See ''[[..:topaz#HomologyGroup |HomologyGroup]]'' for explanation of encoding of each group. ? Type: :''[[..:common#Array |Array]]<[[..:topaz#HomologyGroup |HomologyGroup]]<[[..:common#Integer |Integer]]%%>>%%'' ---- {{anchor:intersection_form:}} ? **''INTERSECTION_FORM''** :: The integral quadratic form obtained from restricting the multiplication of the cohomology of a closed 4k-manifold to H^{2k} x H^{2k} -> H^{4k} = Z. As a quadratic form over the reals it is characterized by its dimension and its index of inertia (or, equivalenty, by the number of positive and negative ones in its canonical form). An integral quadratic form is even if it takes values in 2Z. ? Type: :''[[..:topaz#IntersectionForm |IntersectionForm]]'' ---- {{anchor:knot:}} ? **''KNOT''** :: One-dimensional subcomplex which forms a knot or link, i.e., a collection of pairwise disjoint cycles. Usually that complex is a 3-sphere or a 3-ball. ? Type: :''[[..:topaz:SimplicialComplex |SimplicialComplex]]'' ---- {{anchor:labeled_facets:}} ? **''LABELED_FACETS''** :: A representation of the facets that prints them using the VERTEX_LABELS ? Type: :''[[..:common#Array |Array]]<[[..:common#String |String]]>'' ---- {{anchor:labeled_orientation:}} ? **''LABELED_ORIENTATION''** :: A representation of the orientation that prints each facet using the VERTEX_LABELS, followed by its sign ? Type: :''[[..:common#Array |Array]]<[[..:common#String |String]]>'' ---- {{anchor:locally_strongly_connected:}} ? **''LOCALLY_STRONGLY_CONNECTED''** :: True if the vertex star of each vertex is ''[[..:topaz:SimplicialComplex#DUAL_CONNECTED |DUAL_CONNECTED]]''. ? Type: :''[[..:common#Bool |Bool]]'' ---- {{anchor:manifold:}} ? **''MANIFOLD''** :: Determines if this is a compact simplicial manifold with boundary. Depends on heuristic ''[[..:topaz:SimplicialComplex#SPHERE |SPHERE]]'' recognition. May be true or false or undef (if heuristic does not succeed). ? Type: :''[[..:common#Bool |Bool]]'' ---- {{anchor:morse_matching:}} ? **''MORSE_MATCHING''** :: ? Type: :''[[..:topaz:MorseMatching |MorseMatching]]'' ? Properties of MORSE_MATCHING: : ? **''MATCHING''** :: The matching in the HasseDiagram of the SimplicialComplex ? Type: :''[[..:common#EdgeMap |EdgeMap]]<[[..:common#Directed |Directed]],[[..:common#Int |Int]]>'' ---- {{anchor:orientation:}} ? **''ORIENTATION''** :: An orientation of the facets of an ''[[..:topaz:SimplicialComplex#ORIENTED_PSEUDO_MANIFOLD |ORIENTED_PSEUDO_MANIFOLD]]'', such that the induced orientations of a common ridge of two neighboring facets cancel each other out. Each facet is marked with //1// if the orientation agrees with the (chosen) orientation of the first facet, and is marked with //-1// otherwise. ? Type: :''[[..:common#Array |Array]]<[[..:common#Int |Int]]>'' ---- {{anchor:oriented_pseudo_manifold:}} ? **''ORIENTED_PSEUDO_MANIFOLD''** :: True if this is a ''[[..:topaz:SimplicialComplex#PSEUDO_MANIFOLD |PSEUDO_MANIFOLD]]'' with top level homology isomorphic to Z. ? Type: :''[[..:common#Bool |Bool]]'' ---- {{anchor:pseudo_manifold:}} ? **''PSEUDO_MANIFOLD''** :: True if this is a ''[[..:topaz:SimplicialComplex#PURE |PURE]]'' simplicial complex with the property that each ridge is contained in either one or two facets. ? Type: :''[[..:common#Bool |Bool]]'' ---- {{anchor:sphere:}} ? **''SPHERE''** :: Determines if this is homeomorphic to a sphere. In general, this is undecidable; therefore, the implementation depends on heuristics. May be true or false or undef (if heuristic does not succeed). ? Type: :''[[..:common#Bool |Bool]]'' ---- {{anchor:stiefel_whitney:}} ? **''STIEFEL_WHITNEY''** :: Mod 2 Stiefel-Whitney homology classes per dimension. Each cycle is represented as a set of simplices. ? Type: :''[[..:common#Array |Array]]<[[..:common#Set |Set]]<[[..:common#Set |Set]]<[[..:common#Int |Int]]%%>>%%>'' ---- {{anchor:surface:}} ? **''SURFACE''** :: True if this is a ''[[..:topaz:SimplicialComplex#CONNECTED |CONNECTED]]'' ''[[..:topaz:SimplicialComplex#MANIFOLD |MANIFOLD]]'' of dimension 2. ? Type: :''[[..:common#Bool |Bool]]'' ---- ==== Visualization ==== These properties are for visualization. ---- {{anchor:mixed_graph:}} ? **''MIXED_GRAPH''** :: ? Type: :''[[..:graph:Graph |Graph]]<[[..:common#Undirected |Undirected]]>'' ? Properties of MIXED_GRAPH: : ? **''EDGE_WEIGHTS''** :: Associated edge weights. ? Type: :''[[..:common#EdgeMap |EdgeMap]]<[[..:common#Undirected |Undirected]],[[..:common#Float |Float]]>'' ---- {{anchor:vertex_labels:}} ? **''VERTEX_LABELS''** :: Labels of the vertices. ? Type: :''[[..:common#Array |Array]]<[[..:common#String |String]]>'' ---- ===== Methods ===== ==== Combinatorics ==== These methods capture combinatorial information of the object. Combinatorial properties only depend on combinatorial data of the object like, e.g., the face lattice. ---- {{anchor:bipartite:}} ? **''BIPARTITE()''** :: True if ''[[..:topaz:SimplicialComplex#GRAPH |GRAPH]]'' is a __bipartite__. ? Returns: :''[[..:common#Bool |Bool]]'' ---- {{anchor:connected_components:}} ? **''CONNECTED_COMPONENTS()''** :: The connected components of the ''[[..:topaz:SimplicialComplex#GRAPH |GRAPH]]'', encoded as node sets. ? Returns: :''[[..:common#Set |Set]]<[[..:common#Set |Set]]<[[..:common#Int |Int]]%%>>%%'' ---- {{anchor:connectivity:}} ? **''CONNECTIVITY()''** :: Node connectivity of the ''[[..:topaz:SimplicialComplex#GRAPH |GRAPH]]'', that is, the minimal number of nodes to be removed from the graph such that the result is disconnected. ? Returns: :''[[..:common#Int |Int]]'' ---- {{anchor:dual_bipartite:}} ? **''DUAL_BIPARTITE()''** :: True if ''[[..:topaz:SimplicialComplex#DUAL_GRAPH |DUAL_GRAPH]]'' is a __bipartite__. ? Returns: :''[[..:common#Bool |Bool]]'' ---- {{anchor:dual_connected_components:}} ? **''DUAL_CONNECTED_COMPONENTS()''** :: The connected components of the ''[[..:topaz:SimplicialComplex#DUAL_GRAPH |DUAL_GRAPH]]'', encoded as node sets. ? Returns: :''[[..:common#Set |Set]]<[[..:common#Set |Set]]<[[..:common#Int |Int]]%%>>%%'' ---- {{anchor:dual_connectivity:}} ? **''DUAL_CONNECTIVITY()''** :: Node connectivity of the ''[[..:topaz:SimplicialComplex#DUAL_GRAPH |DUAL_GRAPH]]''. Dual to ''[[..:topaz:SimplicialComplex#CONNECTIVITY |CONNECTIVITY]]''. ? Returns: :''[[..:common#Set |Set]]<[[..:common#Set |Set]]<[[..:common#Int |Int]]%%>>%%'' ---- {{anchor:dual_graph_signature:}} ? **''DUAL_GRAPH_SIGNATURE()''** :: Difference of the black and white nodes if the ''[[..:topaz:SimplicialComplex#DUAL_GRAPH |DUAL_GRAPH]]'' is ''[[..:topaz:SimplicialComplex#BIPARTITE |BIPARTITE]]''. Otherwise -1. ? Returns: :''[[..:common#Int |Int]]'' ---- {{anchor:dual_max_cliques:}} ? **''DUAL_MAX_CLIQUES()''** :: The maximal cliques of the ''[[..:topaz:SimplicialComplex#DUAL_GRAPH |DUAL_GRAPH]]'', encoded as node sets. ? Returns: :''[[..:common#Set |Set]]<[[..:common#Set |Set]]<[[..:common#Int |Int]]%%>>%%'' ---- {{anchor:graph_signature:}} ? **''GRAPH_SIGNATURE()''** :: Difference of the black and white nodes if the ''[[..:topaz:SimplicialComplex#GRAPH |GRAPH]]'' is ''[[..:topaz:SimplicialComplex#BIPARTITE |BIPARTITE]]''. Otherwise -1. ? Returns: :''[[..:common#Int |Int]]'' ---- {{anchor:max_cliques:}} ? **''MAX_CLIQUES()''** :: The maximal cliques of the ''[[..:topaz:SimplicialComplex#GRAPH |GRAPH]]'', encoded as node sets. ? Returns: :''[[..:common#Set |Set]]<[[..:common#Set |Set]]<[[..:common#Int |Int]]%%>>%%'' ---- {{anchor:vertex_degrees:}} ? **''VERTEX_DEGREES()''** :: Degrees of the vertices in the ''[[..:topaz:SimplicialComplex#GRAPH |GRAPH]]''. ? Returns: :''[[..:common#Array |Array]]<[[..:common#Int |Int]]>'' ---- {{anchor:boundary_matrix:}} ? **''boundary_matrix([[..:common#Int |Int]] d)''** :: Output the boundary matrix of dimension __d__. Indexing is according to the face indices in the HASSE_DIAGRAM of the complex. The matrix is a map via multiplying it to a vector from the __left__. Beware, this computes the whole face lattice of your complex, which is expensive. ? Parameters: :: ''[[..:common#Int |Int]]'' ''d'': Dimension of the boundary matrix. ? Returns: :''[[..:common#SparseMatrix |SparseMatrix]]<[[..:common#Integer |Integer]]>'' ? Example: :: This prints the boundary matrix of the 3-simplex: :: > print simplex(3)->boundary_matrix(1); -1 1 0 0 -1 0 1 0 0 -1 1 0 -1 0 0 1 0 -1 0 1 0 0 -1 1 :: The output can be interpreted like this: the zeroth column of the matrix corresponds to the facet with index 0, which contains the edges with indices 0,1 and 3. ---- {{anchor:labeled_vertices:}} ? **''labeled_vertices([[..:common#String |String]] label ...)''** :: Find the vertices by given labels. ? Parameters: :: ''[[..:common#String |String]]'' ''label ...'': vertex labels ? Returns: :''[[..:common#Set |Set]]<[[..:common#Int |Int]]>'' ---- ==== Topology ==== The following methods compute topological invariants. ---- {{anchor:connected:}} ? **''CONNECTED()''** :: True if the ''[[..:topaz:SimplicialComplex#GRAPH |GRAPH]]'' is a connected graph. ? Returns: :''[[..:common#Bool |Bool]]'' ---- {{anchor:dual_connected:}} ? **''DUAL_CONNECTED()''** :: True if the ''[[..:topaz:SimplicialComplex#DUAL_GRAPH |DUAL_GRAPH]]'' is a connected graph. ? Returns: :''[[..:common#Bool |Bool]]'' ---- {{anchor:n_connected_components:}} ? **''N_CONNECTED_COMPONENTS()''** :: Number of connected components of the ''[[..:topaz:SimplicialComplex#GRAPH |GRAPH]]''. ? Returns: :''[[..:common#Int |Int]]'' ---- {{anchor:fundamental2gap:}} ? **''fundamental2gap([[..:common#String |String]] filename)''** :: Writes the ''[[..:topaz:SimplicialComplex#FUNDAMENTAL_GROUP |FUNDAMENTAL_GROUP]]'' using ''[[..:topaz:SimplicialComplex#FUNDAMENTAL_GROUP_GEN_LABELS |FUNDAMENTAL_GROUP_GEN_LABELS]]'' to the given file in [[:external_software#GAP|GAP]] input format. ? Parameters: :: ''[[..:common#String |String]]'' ''filename'' ? Returns: :''[[..:common#String |String]]'' ---- ==== Visualization ==== These methods are for visualization. ---- {{anchor:visual:}} ? **''VISUAL()''** :: Visualizes the complex. If ''[[..:topaz:GeometricSimplicialComplex#G_DIM |G_DIM]]'' < 4, the ''[[..:topaz:SimplicialComplex#GRAPH |GRAPH]]'' and the facets are visualized using the ''[[..:topaz:GeometricSimplicialComplex#COORDINATES |COORDINATES]]''. Otherwise, the spring embedder and the ''[[..:topaz:SimplicialComplex#GRAPH |GRAPH]]'' are used to produce coordinates for the visualization. If [[:external_software#javaview|JavaView]] is used to visualize the complex, all faces of one facet build a geometry in the jvx-file, so you may use __Method -> Effect -> Explode Group of Geometries__ in the JavaView menu. ? Options: : :: ''[[..:common#Bool |Bool]]'' ''mixed_graph'': use the ''[[..:topaz:SimplicialComplex#MIXED_GRAPH |MIXED_GRAPH]]'' for the spring embedder :: ''[[..:common#Int |Int]]'' ''seed'': random seed value for the string embedder : option list ''[[..:common#Visual_Polygon_decorations |Visual::Polygon::decorations]]'' : option list ''[[..:graph#Visual_Graph_decorations |Visual::Graph::decorations]]'' ? Returns: :''[[..:topaz:Visual_SimplicialComplex |Visual::SimplicialComplex]]'' ---- {{anchor:visual_dual_graph:}} ? **''VISUAL_DUAL_GRAPH()''** :: Uses the spring embedder to visualize the ''[[..:topaz:SimplicialComplex#DUAL_GRAPH |DUAL_GRAPH]]''. ? Options: : :: ''[[..:common#Int |Int]]'' ''seed'': random seed value for the string embedder : option list ''[[..:graph#Visual_Graph_decorations |Visual::Graph::decorations]]'' ? Returns: :''[[..:topaz:Visual_SimplicialComplex |Visual::SimplicialComplex]]'' ---- {{anchor:visual_face_lattice:}} ? **''VISUAL_FACE_LATTICE()''** :: Visualize the ''[[..:topaz:SimplicialComplex#HASSE_DIAGRAM |HASSE_DIAGRAM]]'' of a simplicial complex as a multi-layer graph. ? Options: : :: ''[[..:common#Int |Int]]'' ''seed'': random seed value for the node placement : option list ''[[..:graph#Visual_Lattice_decorations |Visual::Lattice::decorations]]'' ? Returns: :''[[..:topaz:Visual_SimplicialComplexLattice |Visual::SimplicialComplexLattice]]'' ---- {{anchor:visual_graph:}} ? **''VISUAL_GRAPH()''** :: Uses the spring embedder to visualize the ''[[..:topaz:SimplicialComplex#GRAPH |GRAPH]]''. ? Options: : :: ''[[..:common#Int |Int]]'' ''seed'': random seed value for the string embedder : option list ''[[..:graph#Visual_Graph_decorations |Visual::Graph::decorations]]'' ? Returns: :''[[..:topaz:Visual_SimplicialComplex |Visual::SimplicialComplex]]'' ---- {{anchor:visual_mixed_graph:}} ? **''VISUAL_MIXED_GRAPH()''** :: Uses the spring embedder to visualize the ''[[..:topaz:SimplicialComplex#MIXED_GRAPH |MIXED_GRAPH]]''. ? Options: : :: ''[[..:common#Int |Int]]'' ''seed'': random seed value for the string embedder : option list ''[[..:graph#Visual_Graph_decorations |Visual::Graph::decorations]]'' ? Returns: :''[[..:common:Visual_Container |Visual::Container]]'' ----