module RGL::MutableGraph

def cycles_with_vertex_helper(vertex, start, visited)

def cycles_with_vertex_helper(vertex, start, visited)
  adjacent_vertices(start).reject { |x| visited.include?(x) }.inject([]) do |acc, adj|
    local_visited = Array.new(visited) << adj
    acc << local_visited if (adj==vertex)
    acc = acc + cycles_with_vertex_helper(vertex, adj, local_visited)
  end
end