首页 > 最新文献

Effective Theories in Programming Practice最新文献

英文 中文
Graph Algorithms 图算法
Pub Date : 2018-09-06 DOI: 10.1007/978-0-387-09766-4_102
David A. Bader, Guojing Cong
{"title":"Graph Algorithms","authors":"David A. Bader, Guojing Cong","doi":"10.1007/978-0-387-09766-4_102","DOIUrl":"https://doi.org/10.1007/978-0-387-09766-4_102","url":null,"abstract":"","PeriodicalId":302246,"journal":{"name":"Effective Theories in Programming Practice","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-09-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116898400","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 800
Parallel Recursion 并行递归
Pub Date : 1900-01-01 DOI: 10.1145/3568325.3568334
Role of recursion and induction in parallel computations We in computer science are extremely fortunate that recursion is applicable for descriptions and induc­ tion for analysis of sequential programs. In fact, they are indispensable tools in programming. Sequentiality is inherent in mathematics. The Peano axioms define natural numbers in a sequential fashion, starting with 0 and defining each num­ ber as the successor of the previous one. One can see its counterpart in Haskell; the fundamental data structure, list, is either empty, corresponding to 0, or one formed by appending a single element to a smaller list. Naturally, induction is the major tool for analyzing programs on lists. There is no counterpart of parallelism in classical mathematics because tradi­ tional mathematics is not concerned about mechanisms of computations, sequen­ tial or parallel. Any possible parallel structure is sequentialized (or serialized) so that traditional mathematical tools, including induction, can be used for its analy­ sis. Therefore, most parallel recursive algorithms are typically described iteratively, one parallel step at a time. The mathematical properties of the algorithms are rarely evident from these descriptions. Parallel Recursion
递归和归纳法在并行计算中的作用我们计算机科学工作者非常幸运,递归适用于序列程序的描述和归纳法分析。事实上,它们是编程中不可或缺的工具。顺序性是数学中固有的。皮亚诺公理以顺序方式定义自然数,从0开始,并将每个数字定义为前一个数字的后继数。我们可以在Haskell中看到它的对应物;基本的数据结构list要么是空的,对应于0,要么是通过将单个元素附加到更小的列表而形成的。自然,归纳法是分析列表上的程序的主要工具。在经典数学中没有对应的并行,因为传统数学不关心计算机制,顺序或并行。任何可能的并行结构都被顺序化(或序列化),以便传统的数学工具,包括归纳法,可以用于其分析。因此,大多数并行递归算法通常是迭代地描述的,一次一个并行步骤。从这些描述中很少能看出算法的数学性质。并行递归
{"title":"Parallel Recursion","authors":"","doi":"10.1145/3568325.3568334","DOIUrl":"https://doi.org/10.1145/3568325.3568334","url":null,"abstract":"Role of recursion and induction in parallel computations We in computer science are extremely fortunate that recursion is applicable for descriptions and induc­ tion for analysis of sequential programs. In fact, they are indispensable tools in programming. Sequentiality is inherent in mathematics. The Peano axioms define natural numbers in a sequential fashion, starting with 0 and defining each num­ ber as the successor of the previous one. One can see its counterpart in Haskell; the fundamental data structure, list, is either empty, corresponding to 0, or one formed by appending a single element to a smaller list. Naturally, induction is the major tool for analyzing programs on lists. There is no counterpart of parallelism in classical mathematics because tradi­ tional mathematics is not concerned about mechanisms of computations, sequen­ tial or parallel. Any possible parallel structure is sequentialized (or serialized) so that traditional mathematical tools, including induction, can be used for its analy­ sis. Therefore, most parallel recursive algorithms are typically described iteratively, one parallel step at a time. The mathematical properties of the algorithms are rarely evident from these descriptions. Parallel Recursion","PeriodicalId":302246,"journal":{"name":"Effective Theories in Programming Practice","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121110961","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Set Theory, Logic and Proofs 集合论、逻辑和证明
Pub Date : 1900-01-01 DOI: 10.1145/3568325.3568328
This chapter covers set theory and logic at an elementary level as background material. I assume that the reader has already been exposed to these topics at some level. Therefore, the treatment of this material is terse. The readers familiar with these topics may look through this chapter for the notations used for logical expres­ sions and the style of rendering proofs, which I employ in the rest of the book; in
本章涵盖集合论和逻辑的基础知识。我假设读者已经在某种程度上接触过这些主题。因此,对这种材料的处理是简洁的。熟悉这些主题的读者可以通过本章查看用于逻辑表达式的符号和呈现证明的风格,我在本书的其余部分使用;在
{"title":"Set Theory, Logic and Proofs","authors":"","doi":"10.1145/3568325.3568328","DOIUrl":"https://doi.org/10.1145/3568325.3568328","url":null,"abstract":"This chapter covers set theory and logic at an elementary level as background material. I assume that the reader has already been exposed to these topics at some level. Therefore, the treatment of this material is terse. The readers familiar with these topics may look through this chapter for the notations used for logical expres­ sions and the style of rendering proofs, which I employ in the rest of the book; in","PeriodicalId":302246,"journal":{"name":"Effective Theories in Programming Practice","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122801981","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Author Biographies/Index 传记作者/索引
Pub Date : 1900-01-01 DOI: 10.1145/3568325.3568336
Jayadev Misra
algorithm for MST, 343–344 independence among safe edges, 341–343
MST算法,343-344安全边之间的独立性,341-343
{"title":"Author Biographies/Index","authors":"Jayadev Misra","doi":"10.1145/3568325.3568336","DOIUrl":"https://doi.org/10.1145/3568325.3568336","url":null,"abstract":"algorithm for MST, 343–344 independence among safe edges, 341–343","PeriodicalId":302246,"journal":{"name":"Effective Theories in Programming Practice","volume":"43 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123840129","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Reasoning About Programs 程序推理
Pub Date : 1900-01-01 DOI: 10.1145/3568325.3568330
G. Hutton
using words, pictures and mathematical formulae, and verification is often carried out empirically, perhaps on a model of the real product. The underly­ ing mathematical and physical theories from which the specification notation and design principles are derived (e.g., structural design principles for bridge design) constitute a major part of the study in the associated discipline. Verification and analysis are especially important for computer programs because they tend to be some of the most complex artifacts designed by humans. A car manufacturer demands assurance about the quality of the software control­ ling its cars and its real-time response. Authorities demand a much greater level of assurance for the software controlling a nuclear power plant and for commer­ cial aviation because the cost of error in logic or performance is astronomical. The software controlling the Mars rover Curiosity, for instance, must never fail1 because there are very few options for human controllers on earth to overcome a major soft­ ware problem. In fact, our society has come to rely on computer programs to such an extent that faulty software may be the most expensive aspect of any engineering design. Testing a design is a time-honored way of gaining confidence in the eventual product. Testing is used extensively in all engineering disciplines. Physical testing Reasoning About Programs
使用文字,图片和数学公式,验证通常是经验性的,也许是在真实产品的模型上进行的。规范符号和设计原则的基础数学和物理理论(例如,桥梁设计的结构设计原则)构成了相关学科研究的主要部分。验证和分析对于计算机程序尤其重要,因为它们往往是人类设计的一些最复杂的工件。汽车制造商要求控制其汽车的软件质量及其实时响应得到保证。当局对控制核电站和商用航空的软件要求更高水平的保证,因为逻辑或性能错误的代价是天文数字。例如,控制火星探测车“好奇号”的软件永远不能出故障,因为地球上的人类控制人员几乎没有办法克服重大的软件问题。事实上,我们的社会已经到了如此依赖计算机程序的程度,以至于有缺陷的软件可能是任何工程设计中最昂贵的方面。测试设计是一种久经考验的获得对最终产品信心的方法。测试广泛应用于所有工程学科。关于程序的物理测试推理
{"title":"Reasoning About Programs","authors":"G. Hutton","doi":"10.1145/3568325.3568330","DOIUrl":"https://doi.org/10.1145/3568325.3568330","url":null,"abstract":"using words, pictures and mathematical formulae, and verification is often carried out empirically, perhaps on a model of the real product. The underly­ ing mathematical and physical theories from which the specification notation and design principles are derived (e.g., structural design principles for bridge design) constitute a major part of the study in the associated discipline. Verification and analysis are especially important for computer programs because they tend to be some of the most complex artifacts designed by humans. A car manufacturer demands assurance about the quality of the software control­ ling its cars and its real-time response. Authorities demand a much greater level of assurance for the software controlling a nuclear power plant and for commer­ cial aviation because the cost of error in logic or performance is astronomical. The software controlling the Mars rover Curiosity, for instance, must never fail1 because there are very few options for human controllers on earth to overcome a major soft­ ware problem. In fact, our society has come to rely on computer programs to such an extent that faulty software may be the most expensive aspect of any engineering design. Testing a design is a time-honored way of gaining confidence in the eventual product. Testing is used extensively in all engineering disciplines. Physical testing Reasoning About Programs","PeriodicalId":302246,"journal":{"name":"Effective Theories in Programming Practice","volume":"49 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134056734","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Effective Theories in Programming Practice 编程实践中的有效理论
Pub Date : 1900-01-01 DOI: 10.1145/3568325
J. Misra
{"title":"Effective Theories in Programming Practice","authors":"J. Misra","doi":"10.1145/3568325","DOIUrl":"https://doi.org/10.1145/3568325","url":null,"abstract":"","PeriodicalId":302246,"journal":{"name":"Effective Theories in Programming Practice","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134323966","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Recursive and Dynamic Programming 递归与动态规划
Pub Date : 1900-01-01 DOI: 10.1145/3568325.3568333
is easier to solve if its solution is known or if it is an instance of the original problem but over a smaller data set. For example, if you have to sum eight numbers, you may divide the task into two subtasks of summing four numbers each, and then add the two results. Each subtask may be further divided into two subtasks of adding a pair of numbers. A problem is typically divided into subproblems of the same kind in recursive programming, and the same solution procedure is applied to each of the subprob­ lems, further subdividing them. A recursive program has to specify the method of problem decomposition and solution combination and also the solutions for the very smallest subproblems that cannot be decomposed any further. The theoretical justification of recursive programming is mathematical induc­ tion. In fact, recursion and induction are so closely linked that they are often mentioned in the same breath; we ought to have used the term “inductive pro­ gramming” for this style of programming.
如果它的解是已知的,或者如果它是原始问题的一个实例,但在一个较小的数据集上,则更容易解决。例如,如果要对8个数字求和,可以将任务分成两个子任务,每个子任务分别对4个数字求和,然后将两个结果相加。每个子任务可以进一步分为两个添加一对数字的子任务。在递归规划中,一个问题通常被划分为同类的子问题,并且对每个子问题应用相同的求解过程,进一步细分它们。递归程序必须指定问题分解和解组合的方法,以及不能再分解的最小子问题的解。递归规划的理论论证是数学归纳法。事实上,递归和归纳法是如此紧密地联系在一起,以至于它们经常被同时提到;对于这种编程风格,我们应该使用“归纳编程”这个术语。
{"title":"Recursive and Dynamic Programming","authors":"","doi":"10.1145/3568325.3568333","DOIUrl":"https://doi.org/10.1145/3568325.3568333","url":null,"abstract":"is easier to solve if its solution is known or if it is an instance of the original problem but over a smaller data set. For example, if you have to sum eight numbers, you may divide the task into two subtasks of summing four numbers each, and then add the two results. Each subtask may be further divided into two subtasks of adding a pair of numbers. A problem is typically divided into subproblems of the same kind in recursive programming, and the same solution procedure is applied to each of the subprob­ lems, further subdividing them. A recursive program has to specify the method of problem decomposition and solution combination and also the solutions for the very smallest subproblems that cannot be decomposed any further. The theoretical justification of recursive programming is mathematical induc­ tion. In fact, recursion and induction are so closely linked that they are often mentioned in the same breath; we ought to have used the term “inductive pro­ gramming” for this style of programming.","PeriodicalId":302246,"journal":{"name":"Effective Theories in Programming Practice","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125599442","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
期刊
Effective Theories in Programming Practice
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1