canvas { width = 500 height = 500 } forall Set x { shape x.icon = Circle {} shape x.text = Equation { string : x.label fontSize : "32px" } ensure contains(x.icon, x.text) encourage norm(x.text.center - x.icon.center) == 0 layer x.text above x.icon } forall Set x; Set y where SubSet(x, y) { ensure disjoint(y.text, x.icon, 10.0) ensure contains(y.icon, x.icon, 5.0) layer x.icon above y.icon } forall Set x; Set y where Disjoint(x, y) { ensure disjoint(x.icon, y.icon) }