论文标题
堆模:对矢量指标的敏感性
Bunched Fuzz: Sensitivity for Vector Metrics
论文作者
论文摘要
程序敏感性在两个相关输入上运行时,测量程序的输出之间的距离。这个概念在数据隐私和优化等领域起着关键作用,一直是近年来引入的几种程序分析技术的重点。在最成功的系统中,我们可以突出显示受线性逻辑启发的类型系统,就像里德(Reed)和皮尔斯(Pierce)在模糊编程语言中所启用一样。在模糊中,每种类型都配备了自己的距离,灵敏度分析归结为类型检查。尤其是,模糊具有两种产品类型,对应于两个不同的距离概念:张量产品通过添加它们来结合每个组件的距离,而使用产品则最大。 在这项工作中,我们表明这些产品可以推广到任意$ l^p $距离,这些距离通常用于隐私和优化。原始的Fuzz产品张量和与特殊情况相对应$ l^1 $和$ l^\ infty $。为了简化此类产品的处理,我们用束构成了模糊类型系统(如束构成的逻辑),在这种含义的逻辑中 - 可以使用不同的$ l^p $距离组合不同的变量组的距离。我们表明,我们的扩展可以用于推理概率程序的定量属性。
Program sensitivity measures the distance between the outputs of a program when run on two related inputs. This notion, which plays a key role in areas such as data privacy and optimization, has been the focus of several program analysis techniques introduced in recent years. Among the most successful ones, we can highlight type systems inspired by linear logic, as pioneered by Reed and Pierce in the Fuzz programming language. In Fuzz, each type is equipped with its own distance, and sensitivity analysis boils down to type checking. In particular, Fuzz features two product types, corresponding to two different notions of distance: the tensor product combines the distances of each component by adding them, while the with product takes their maximum. In this work, we show that these products can be generalized to arbitrary $L^p$ distances, metrics that are often used in privacy and optimization. The original Fuzz products, tensor and with, correspond to the special cases $L^1$ and $L^\infty$. To ease the handling of such products, we extend the Fuzz type system with bunches -- as in the logic of bunched implications -- where the distances of different groups of variables can be combined using different $L^p$ distances. We show that our extension can be used to reason about quantitative properties of probabilistic programs.