In this paper we describe a general technique for establishing NP-hardness of graph representations. This technique is a generalization of the tool called the logic engine. We show that it is possible to extend it to a wobbly logic engine, which provides a proof method of NP-hardness for a variety of graph representations for which the set of feasible representations does not have to be discrete. This includes representations by visibility and intersection. In particular, we give a rst proof that it is NP-hard to decide whether a graph has a nondegenerate z-axis parallel visibility representation (ZPR) by unit squares.