1 つの方法は、groupBy 操作を使用することです (groupCount を使用するようにコメントで @abhi によって同様の推奨が行われました)。
gremlin> g = new TinkerGraph()
==>tinkergraph[vertices:0 edges:0]
gremlin> a = g.addVertex("A")
==>v[A]
gremlin> b = g.addVertex("B")
==>v[B]
gremlin> c = g.addVertex("C")
==>v[C]
gremlin> d = g.addVertex("D")
==>v[D]
gremlin> g.addEdge(a, b, 'give', [amt:100])
==>e[0][A-give->B]
gremlin> g.addEdge(a, c, 'give', [amt:200])
==>e[1][A-give->C]
gremlin> g.addEdge(a, d, 'give', [amt:100])
==>e[2][A-give->D]
gremlin> g.V.outE('give').groupBy{it.amt}{[it.outV.next(), it.inV.next()]}.cap.next()
==>100=[[v[A], v[D]], [v[A], v[B]]]
==>200=[[v[A], v[C]]]
結果を複数の一致があるものだけに制限するには、groovy (この場合は findAll) を使用してマップを後処理するだけです。
gremlin> m=[:];g.V.outE('give').groupBy(m){it.amt}{[it.outV.next(), it.inV.next()]}
==>e[2][A-give->D]
==>e[1][A-give->C]
==>e[0][A-give->B]
gremlin> m
==>100=[[v[A], v[D]], [v[A], v[B]]]
==>200=[[v[A], v[C]]]
gremlin> m.findAll{it.value.size()>1}
==>100=[[v[A], v[D]], [v[A], v[B]]]