Example: Multivariate polynomial

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

The polynomial $$ 3x^2y - 5y^5z $$ in the multivariate polynomial ring $\mathbb{Q}[x,y,z]$.

Systems

Oscar.jl

Generate code (generate.jl) [ edit ]

using Oscar

R, (x, y, z) = QQ[:x, :y, :z]
save("data.mrdi", 3*x^2*y - 5*y^5*z)

Data outputs

Profiles: OSCAR v1.0, OSCAR v1.1, OSCAR v1.2, OSCAR v1.3

Data file: data.mrdi

{
  "_ns": {"Oscar": ["https://github.com/oscar-system/Oscar.jl", "1.3.1"]},
  "_type": {"name": "MPolyRingElem", "params": "b9626822-b62b-42ef-a515-a34610f66bba"},
  "data": [[["2", "1", "0"], "3"], [["0", "5", "1"], "-5"]],
  "_refs": {
    "b9626822-b62b-42ef-a515-a34610f66bba": {"_type": "MPolyRing", "data": {"base_ring": {"_type": "QQField"}, "symbols": ["x", "y", "z"]}}
  }
}

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

Profiles: 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": "MPolyRingElem", "params": "3f63beec-6153-4ee4-b4e8-1b924abc7412"},
  "data": [[["2", "1", "0"], "3"], [["0", "5", "1"], "-5"]],
  "_refs": {
    "3f63beec-6153-4ee4-b4e8-1b924abc7412": {
      "_type": {"name": "MPolyRing", "params": {"_type": "QQField"}},
      "data": {"symbols": ["x", "y", "z"]}
    }
  }
}

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