Example: Polyhedral complex

Profiles: OSCAR v1.2, OSCAR v1.3, OSCAR v1.4, OSCAR v1.5, OSCAR v1.6, OSCAR v1.7, OSCAR v1.8

Construct a polyhedral complex from an incidence matrix and rational vertices.

Systems

Oscar.jl

Generate code (generate.jl) [ edit ]

using Oscar

IM = incidence_matrix([[1,2,3],[1,3,4]])
vr = [0 0; 1 0; 1 1; 0 1]
obj = polyhedral_complex(IM, vr)

save("data.mrdi", obj)

Data outputs

Profiles: OSCAR v1.0

Not available for OSCAR v1.0.

In OSCAR v1.0-1.1 the generator does not run successfully; the exact failure mode varies across versions.

Profiles: OSCAR v1.1

Not available for OSCAR v1.1.

In OSCAR v1.0-1.1 the generator does not run successfully; the exact failure mode varies across versions.

Profiles: OSCAR v1.2, OSCAR v1.3, OSCAR v1.4, OSCAR v1.5, OSCAR v1.6, OSCAR v1.7

Data file: data.mrdi

{
  "_ns": {"Oscar": ["https://github.com/oscar-system/Oscar.jl", "1.7.0"]},
  "_type": {"name": "PolyhedralComplex", "params": {"_type": "QQField"}},
  "data": {
    "_type": "fan::PolyhedralComplex<Rational>",
    "POINTS": [["1", "0", "0"], ["1", "1", "0"], ["1", "1", "1"], ["1", "0", "1"]],
    "INPUT_POLYTOPES": [[0, 1, 2], [0, 2, 3], {"cols": 4}],
    "_ns": {"polymake": ["https://polymake.org", "4.15"]},
    "INPUT_LINEALITY": [{"cols": 3}]
  }
}

This serialized output is equivalent for these profiles up to UUID renaming and recorded namespace version strings.