V = vector([cos(x*y), sin(y), 0])
V.curl([x, y, z])
G1 = plot_vector_field((V[0], V[1]), (x, -pi, pi), (y, -pi, pi))
G2 = implicit_plot(V.curl([x, y, z])[2] == 0, (x, -pi, pi), (y, -pi, pi))
G3 = contour_plot(V.curl([x, y, z])[2], (x, -pi, pi), (y, -pi, pi), contours = [-5, 0, 5], cmap=([1,0,0],[0,1,0]))
show(G3 + G1, figsize = 10)