New results for random determination of equivalence of expressions

G. Gonnet
{"title":"New results for random determination of equivalence of expressions","authors":"G. Gonnet","doi":"10.1145/32439.32465","DOIUrl":null,"url":null,"abstract":"We devise several procedures based on signatures (or hashing functions) to determine equivalence of expressions in Random Polynomial Time (also called Probabilistic Polynomial Time) (RPT). We extend the previous results known to include various new functions that can be tested. These procedures return as result: <italic>“equivalent”</italic> or <italic>“not-equivalent”</italic>. The result “not-equivalent” is always correct, while the result “equivalent” is correct with probability at least 1 — ε. This probability depends on a random number generator and is <italic>independent</italic> of the problem being solved. In all our procedures, the value ε can be made arbitrarily small. This method works for determining equivalence over an important class of functions as well as answering other questions like linearity, polynomial dependence, squareness, independence, etc.\nThe general scheme for all these algorithms is to use a basic heuristic <italic>“test”</italic> several times. I.e. solve( problem, epsilon ) repeat select suitable characteristic p randomly; assign random values to all variables; t := test( problem, p ); if t = “not-equivalent” then return( t ) until Prob of cumulative failures >= epsilon; return( “equivalent” );\nIt is assumed that <italic>“test”</italic> gives a wrong answer with probability δ, where δ remains bounded below 1. For all our <italic>“test”</italic> procedures, δ ≤ 1/2.\nIn what follows we will describe the <italic>“test”</italic> part of the different procedures, it is always assumed that these are used in the above context.\nWithout loss of generality we will assume that equivalence of expressions (<italic>A ≡ B</italic>) can be transformed into testing for 0 (<italic>A — B ≡ 0</italic>).\nThis test can be performed “quickly” in the sense that it can run in polynomial time on the size of the <italic>dag</italic> (directed acyclic graph) representation of the expression, also known as “linear program representation” of an expression.","PeriodicalId":314618,"journal":{"name":"Symposium on Symbolic and Algebraic Manipulation","volume":"110 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1986-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"18","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Symposium on Symbolic and Algebraic Manipulation","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/32439.32465","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 18

Abstract

We devise several procedures based on signatures (or hashing functions) to determine equivalence of expressions in Random Polynomial Time (also called Probabilistic Polynomial Time) (RPT). We extend the previous results known to include various new functions that can be tested. These procedures return as result: “equivalent” or “not-equivalent”. The result “not-equivalent” is always correct, while the result “equivalent” is correct with probability at least 1 — ε. This probability depends on a random number generator and is independent of the problem being solved. In all our procedures, the value ε can be made arbitrarily small. This method works for determining equivalence over an important class of functions as well as answering other questions like linearity, polynomial dependence, squareness, independence, etc. The general scheme for all these algorithms is to use a basic heuristic “test” several times. I.e. solve( problem, epsilon ) repeat select suitable characteristic p randomly; assign random values to all variables; t := test( problem, p ); if t = “not-equivalent” then return( t ) until Prob of cumulative failures >= epsilon; return( “equivalent” ); It is assumed that “test” gives a wrong answer with probability δ, where δ remains bounded below 1. For all our “test” procedures, δ ≤ 1/2. In what follows we will describe the “test” part of the different procedures, it is always assumed that these are used in the above context. Without loss of generality we will assume that equivalence of expressions (A ≡ B) can be transformed into testing for 0 (A — B ≡ 0). This test can be performed “quickly” in the sense that it can run in polynomial time on the size of the dag (directed acyclic graph) representation of the expression, also known as “linear program representation” of an expression.
表达式等价性随机确定的新结果
我们设计了几个基于签名(或哈希函数)的过程来确定随机多项式时间(也称为概率多项式时间)(RPT)中表达式的等价性。我们扩展了之前已知的结果,以包含可以测试的各种新函数。这些过程返回结果:“等价”或“不等价”。结果“不等效”总是正确的,而结果“等效”至少以1 - ε的概率是正确的。这个概率依赖于随机数生成器,与要解决的问题无关。在我们所有的程序中,ε值可以任意小。这种方法不仅适用于确定一类重要函数的等价性,也适用于回答其他问题,如线性、多项式相关性、平方性、独立性等。所有这些算法的一般方案是多次使用基本的启发式“测试”。即solve(problem, epsilon)重复随机选择合适的特征p;给所有变量赋随机值;T:= test(problem, p);如果t =“不相等”,则返回(t),直到累积失败概率>= epsilon;假设“test”给出的错误答案的概率为δ,其中δ保持在1以下。对于我们所有的“测试”程序,δ≤1/2。在接下来的内容中,我们将描述不同过程的“测试”部分,通常假设这些是在上述上下文中使用的。在不损失一般性的前提下,我们假设表达式(A≡B)的等价性可以转化为对0 (A - B≡0)的测试。这个测试可以“快速”地执行,因为它可以在表达式的dag(有向无环图)表示的大小上以多项式时间运行,也称为表达式的“线性程序表示”。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信