A POPL submission is really three documents: 25 pages of text (bibliography excluded) that must carry the whole argument, an appendix of full proofs and auxiliary definitions, and — usually — an anonymized proof development or prototype. Reviewers are typically expected to judge the paper from the body alone, so the split is an argumentation decision, not a storage decision. Format and anonymity rules per the POPL 2027 call, read 2026-07-08; confirm the current cycle's supplement wording before uploading.
| Content | Body (25 pp) | Appendix | Anonymous artifact |
|---|---|---|---|
| Main definitions, typing/semantics rules actually discussed | yes | mirrored in full | formalized |
| Main theorem statements + proof sketches | yes | full proofs | checked statements |
| Auxiliary lemmas, weakening/substitution boilerplate | no | yes | yes |
| Full figure of every judgment (all rules) | representative rules only | complete figure | source of truth |
| Extended examples, failed design alternatives | one motivating example | yes | test files |
| Proof scripts, build instructions | no | no | yes, with README |
Two disciplines make the split safe:
Full double-blind covers everything you upload. Proof repositories are leaky:
_CoqProject paths with usernames, lakefile package names matching a public
GitHub project, author headers auto-inserted by editors, and .git directories with
full commit history. Build the archive from an export, never from a working tree:
git archive --format=tar.gz -o /tmp/supp.tar.gz HEAD # no .git, no untracked junk
tar tzf /tmp/supp.tar.gz | grep -iE '\.git|/home/|users/|TODO|AUTHORS' && echo LEAK
grep -rInE '(Copyright|Author|@[a-z]+\.(edu|org|fr|de))' \
--include='*.v' --include='*.lean' --include='*.agda' extracted/ | head
Also rename the development if its public name is googleable to your group, and strip institutional CI configuration.
[Split audit] <claims whose evidence sits only outside the body>
[Sketch-proof consistency] <mismatches found>
[Anonymity scan] clean / leaks listed
[Version lock] <tag/commit for PDF + appendix + archive>
[Upload set] <files, sizes, formats for HotCRP>