If no variables is given a synthetic one is constructed instead.