I suppose you have to describe back-references with an id to a node, or something like that. Anyway, you can describe all graphs in an object with two arrays.
Sure, but this violates the purpose of UOR, which is ostensibly to expose structure in a systematic way to make them understandable to automated systems. Encoding a cyclic graph makes the cycles opaque without adding this semantic information somehow. That's why I said maybe the embedded code that UOR permits might be the way to do it.