= Solution
Put $a_0=2-\sqrt3$ and define six closed <half-spaces> $H_i=\{(x,y):f_i(x,y)\le0\}$. Their <implicit equations> and outward <normal vectors> are:
|| Boundary
|| Defining function $f_i$
|| Outward normal $\nabla f_i$
| $AB$
| $f_1=x-\sqrt3y-a_0$
| $(1,-\sqrt3)$
| $BC$
| $f_2=y-1$
| $(0,1)$
| $CD$
| $f_3=x-1$
| $(1,0)$
| $DE$
| $f_4=y-2$
| $(0,1)$
| $EO$
| $f_5=-x$
| $(-1,0)$
| $OA$
| $f_6=-y$
| $(0,-1)$
The six <vertices of a polygon> traverse the boundary counterclockwise. Each displayed <normal vector> therefore points to the right of the corresponding directed boundary <line segment>; it need not be a <unit vector>. The zero <level sets> are full <straight lines>, while the actual boundary retains only the appropriate <line segments>.
The inward corner at $C$ prevents using the <set intersection> of all six <half-spaces>: that would incorrectly discard the upper-left part of the seat. Instead take
$$
\boxed{P=H_5\cap H_6\cap H_4\cap H_1\cap(H_2\cup H_3).}
$$
The last factor permits either $y\le1$ or $x\le1$, removing only the upper-right region. Another way to understand the same <constructive solid geometry> model is as the <set union> of two <convex polygons>, obtained by distributing the last <set intersection> over this <set union>. Its <constructive solid geometry tree> has an intersection at the root and a union child for $H_2,H_3$.
\Image[/past-exam-of-the-computer-science-course-of-the-university-of-oxford/2015/geometric-modelling-2015-seat.png]
{title=Seat profile, six supporting lines with outward normals, and the right child of the initial bounding box}
Back to article page