diff --git a/bench.py b/bench.py index 26b9f09..2cb21f7 100644 --- a/bench.py +++ b/bench.py @@ -242,9 +242,11 @@ def __post_init__(self) -> None: tool2color: dict[ToolName, str] = { "bitwuzla": "#FFAB40", "fplean": "#2E7D32", "fplean-nokernel": "#1565C0", "fplean-nancanon": "#C62828", "exhaustive-enumeration": "#8E24AA"} +# Display labels for the plots. Our solver is presented anonymously as "ours" +# (never by its internal name) so no tool identity leaks into paper figures. tool2label: dict[ToolName, str] = { - "bitwuzla": "Bitwuzla", "fplean": "FP-Lean", "fplean-nokernel": "FP-Lean (no kernel)", - "fplean-nancanon": "FP-Lean + NaN-canon", "exhaustive-enumeration": "Exhaustive enum"} + "bitwuzla": "Bitwuzla", "fplean": "ours", "fplean-nokernel": "ours (nokernel)", + "fplean-nancanon": "ours (NaN-canon)", "exhaustive-enumeration": "Exhaustive enum"} class Problem(TypedDict): diff --git a/leanwuzla b/leanwuzla index 2c7cf25..784c984 160000 --- a/leanwuzla +++ b/leanwuzla @@ -1 +1 @@ -Subproject commit 2c7cf25081a512eaec82bdf2e5ae214ad65101e6 +Subproject commit 784c98459f80ddae02fd4d866f02401a91ac694b diff --git a/plot.py b/plot.py index 939c2d7..569f51a 100755 --- a/plot.py +++ b/plot.py @@ -28,9 +28,18 @@ # plotted are still reported in the summary and the LaTeX macros. +# Our solver is anonymized as "Ours" in LaTeX macro names too, so no tool +# identity leaks into the paper's \input'd macros. +_TEXNAME_OVERRIDE = { + "fplean": "Ours", "fplean-nokernel": "OursNokernel", + "fplean-nancanon": "OursNancanon"} + + def _texname(tool: str) -> str: """Letters-only, capitalized form of a tool name for use in LaTeX \\newcommand names (which may not contain hyphens or digits).""" + if tool in _TEXNAME_OVERRIDE: + return _TEXNAME_OVERRIDE[tool] return re.sub(r"[^A-Za-z]", "", tool).capitalize() @@ -295,7 +304,7 @@ def plot_cactus(indir: pathlib.Path, outdir: pathlib.Path, opts: argparse.Namesp f"{pfx}GeomeanMs{cap}": f"{s['geomean_ms']:.1f}", } lines.append("") - lines.append(f"%% {tool}") + lines.append(f"%% {bench.tool2label[tool]}") lines.extend(bench.format_newcommand(k, v) for k, v in per_tool.items()) speedups = {