Example: Subgroup of finitely presented group

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

A subgroup generated by the first generator of a finitely presented group.

Systems

Oscar.jl

Generate code (generate.jl) [ edit ]

using Oscar

F = free_group(2)
x1 = gen(F, 1)
x2 = gen(F, 2)
G = quo(F, [x1^2, x2^2, comm(x1, x2)])[1]
obj = sub(G, [gen(G, 1)])[1]

save("data.mrdi", obj)

Data outputs

Profiles: OSCAR v1.0

Data file: data.mrdi

{
  "_ns": {"Oscar": ["https://github.com/oscar-system/Oscar.jl", "1.0.5"]},
  "_type": "FPGroup",
  "data": {
    "X": {
      "GapType": "IsSubgroupFpGroup",
      "wholeGroup": "ec9a3fa9-d204-45c1-aef5-83e38c9592fd",
      "gens": [["1", "1"]]
    }
  },
  "id": "d9f76135-7d0c-47d0-8c39-92e2acaa8a65",
  "_refs": {
    "ec9a3fa9-d204-45c1-aef5-83e38c9592fd": {
      "_type": "GAP.GapObj",
      "data": {
        "GapType": "IsSubgroupFpGroup",
        "freeGroup": "a13dca38-a9fa-44bc-8108-cf0615493b00",
        "relators": [["1", "2"], ["2", "2"], ["1", "-1", "2", "-1", "1", "1", "2", "1"]]
      }
    },
    "a13dca38-a9fa-44bc-8108-cf0615493b00": {
      "_type": "GAP.GapObj",
      "data": {"GapType": "IsFreeGroup", "wfilt": "IsLetterWordsFamily", "names": ["f1", "f2"]}
    }
  }
}

Profiles: 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": "SubFPGroup",
  "data": {"X": "f69216cd-8a91-44d6-a8e3-41821a504cb2"},
  "id": "45ad0ebf-2b69-4f74-a2fb-387b28d1c6c5",
  "_refs": {
    "f69216cd-8a91-44d6-a8e3-41821a504cb2": {
      "_type": "GapObj",
      "data": {
        "GapType": "IsSubgroupFpGroup",
        "wholeGroup": "7da0a279-5d21-48e3-ab2c-2040bfec474a",
        "gens": [["1", "1"]]
      }
    },
    "7da0a279-5d21-48e3-ab2c-2040bfec474a": {
      "_type": "GapObj",
      "data": {
        "GapType": "IsSubgroupFpGroup",
        "freeGroup": "ff56b2da-4706-44e5-833e-fb0f577a37f8",
        "relators": [["1", "2"], ["2", "2"], ["1", "-1", "2", "-1", "1", "1", "2", "1"]]
      }
    },
    "ff56b2da-4706-44e5-833e-fb0f577a37f8": {
      "_type": "GapObj",
      "data": {"GapType": "IsFreeGroup", "wfilt": "IsLetterWordsFamily", "names": ["f1", "f2"]}
    }
  }
}

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": "SubFPGroup", "params": "780bfc41-6ee1-4245-ad8c-31c1e9845519"},
  "data": [],
  "id": "43d2f413-38da-4d7f-ba33-7d4f41a82fd2",
  "_refs": {
    "780bfc41-6ee1-4245-ad8c-31c1e9845519": {
      "_type": {"name": "GapObj", "params": "24ee376e-2eec-4857-b7c8-cd959d563ace"},
      "data": {"GapType": "IsSubgroupFpGroup", "gens": [["1", "1"]]}
    },
    "24ee376e-2eec-4857-b7c8-cd959d563ace": {
      "_type": {"name": "GapObj", "params": "8135b959-ad6a-402f-b3a4-2552ccfc5b78"},
      "data": {
        "GapType": "IsSubgroupFpGroup",
        "relators": [["1", "2"], ["2", "2"], ["1", "-1", "2", "-1", "1", "1", "2", "1"]]
      }
    },
    "8135b959-ad6a-402f-b3a4-2552ccfc5b78": {
      "_type": "GapObj",
      "data": {"GapType": "IsFreeGroup", "wfilt": "IsLetterWordsFamily", "names": ["f1", "f2"]}
    }
  }
}

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