{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/quest-complete-the-holy-grail-of-gradual","title":"Quest Complete: the Holy Grail of Gradual Security","arxiv_id":"2312.02359","date":"2023-12-04","proceeding":null,"authors":["Tianyu Chen","Jeremy G. Siek"],"abstract":"Languages with gradual information-flow control combine static and dynamic techniques to prevent security leaks. Gradual languages should satisfy the gradual guarantee: programs that only differ in the precision of their type annotations should behave the same modulo cast errors. Unfortunately, Toro et al. [2018] identify a tension between the gradual guarantee and information security; they were unable to satisfy both properties in the language $\\mathrm{GSL}_\\mathsf{Ref}$ and had to settle for only satisfying information-flow security. Azevedo de Amorim et al. [2020] show that by sacrificing type-guided classification, one obtains a language that satisfies both noninterference and the gradual guarantee. Bichhawat et al. [2021] show that both properties can be satisfied by sacrificing the no-sensitive-upgrade mechanism, replacing it with a static analysis. In this paper we present a language design, $\\lambda_{\\mathtt{IFC}}^\\star$, that satisfies both noninterference and the gradual guarantee without making any sacrifices. We keep the type-guided classification of $\\mathrm{GSL}_\\mathsf{Ref}$ and use the standard no-sensitive-upgrade mechanism to prevent implicit flows through mutable references. The key to the design of $\\lambda_{\\mathtt{IFC}}^\\star$ is to walk back the decision in $\\mathrm{GSL}_\\mathsf{Ref}$ to include the unknown label $\\star$ among the runtime security labels. We give a formal definition of $\\lambda_{\\mathtt{IFC}}^\\star$, prove the gradual guarantee, and prove noninterference. Of technical note, the semantics of $\\lambda_{\\mathtt{IFC}}^\\star$ is the first gradual information-flow control language to be specified using coercion calculi (a la Henglein), thereby expanding the coercion-based theory of gradual typing.","url_abs":"https://arxiv.org/abs/2312.02359v3","url_pdf":"https://arxiv.org/pdf/2312.02359v3.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"links_only","authors_date_abstract":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license), from the Kaggle arXiv metadata snapshot of 2026-09-12"},"code_links":[{"paper_slug":"quest-complete-the-holy-grail-of-gradual","repo_url":"https://github.com/gradual-typing/lambdaifcstar","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"none","reach":null}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":null,"mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}