venn.tex · 62 lines
\documentclass[tikz,border=12pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}[
font=\sffamily,
drink/.style={
align=center,
font=\sffamily\footnotesize,
inner sep=1.5pt,
fill=white,
fill opacity=0.92,
text opacity=1,
rounded corners=1.2pt
},
setlabel/.style={
align=center,
font=\sffamily\bfseries,
inner sep=1pt
}
]
% Equal circles whose centres form an equilateral triangle.
\coordinate (E) at (210:1.7); % Has espresso
\coordinate (M) at (330:1.7); % Has milk
\coordinate (C) at (90:1.7); % Served cold
\def\R{3.7}
\fill[brown!62, opacity=0.42] (E) circle (\R);
\fill[orange!55, opacity=0.40] (M) circle (\R);
\fill[cyan!65, opacity=0.40] (C) circle (\R);
\draw[brown!70!black, line width=1.05pt] (E) circle (\R);
\draw[orange!75!black, line width=1.05pt] (M) circle (\R);
\draw[cyan!55!black, line width=1.05pt] (C) circle (\R);
% Set names, just outside each circle.
\node[setlabel, text=brown!65!black, anchor=east] at (210:5.65) {Has\\espresso};
\node[setlabel, text=orange!70!black, anchor=west] at (330:5.65) {Has\\milk};
\node[setlabel, text=cyan!45!black, anchor=south] at (90:5.55) {Served cold};
% Exclusive crescents.
\node[drink] at ($(E)+(210:2.55)$) {short black};
\node[drink] at ($(M)+(330:2.55)$) {babyccino};
\node[drink] at ($(C)+(90:2.55)$) {cold brew};
% Pairwise lenses. Labels are small and sit on each lens midline,
% outside the third circle.
\node[drink] at ($(E)!0.5!(C)+(150:1.78)$) {iced\\long black};
\node[drink] at ($(M)!0.5!(C)+(30:1.78)+(0.16,0)$) {milk\\shake};
\node[drink] at ($(E)!0.5!(M)+(270:1.55)$) {flat white};
% All three sets.
\node[drink] at (0,0.28) {iced latte};
% None of the three.
\node[drink, draw=black!40] at (0,-5.75) {pour-over};
\end{tikzpicture}
\end{document}round 1 of 8

Eight rounds, with milkshake broken over two lines as "milk shake" and iced long black on a line.
modelx-ai/grok-4.7tasktikz-coffee-venn@v1date2026-09-25rounds8 of 8 allowedcost$0.4980thinkingmediumtokens786,569 in, 28,175 out, of which 14,945 reasoningtime7 min 6 sfailurelabelling
Compilesdecided by a number, from the filepass
Seven regions, three namesdecided by a number, from the filepass
Every drink in its regiondecided by a number, from the filefail
No label on an edgedecided by a number, from the filefail
Using LaTeX and TikZ, draw a Venn diagram of three overlapping circles labelled "Has espresso", "Has milk" and "Served cold". Write each of these drinks in the region where it belongs: short black, flat white, iced latte, iced long black, cold brew, babyccino, milkshake, pour-over.Frozen at v1. This model got this and nothing else.
Short black is espresso only, flat white espresso and milk, iced long black espresso and cold, iced latte all three, babyccino milk only, milkshake milk and cold, cold brew cold only, and pour-over outside every circle. The circles and words are read back out of the compiled PDF, each word has to be centred in its own region, and no letter may touch a circle's outline, with the line's width counted. How it is scored, and this run's files on GitHub.

