Algebras for weighted search
Algebras for weighted search
复制标题
加权搜索的代数
DOI:
10.1145/3473577
复制
发表时间:
2021
影响因子:
--
通讯作者:
Kidney D
中科院分区:
文献类型:
--
作者:
Kidney D
Weighted search is an essential component of many fundamental and useful algorithms. Despite this, it is relatively under explored as a computational effect, receiving not nearly as much attention as either depth- or breadth-first search. This paper explores the algebraic underpinning of weighted search, and demonstrates how to implement it as a monad transformer.The development first explores breadth-first search, which can be expressed as a polynomial over semirings. These polynomials are generalised to the free semimodule monad to capture a wide range of applications, including probability monads, polynomial monads, and monads for weighted search. Finally, a monad transformer based on the free semimodule monad is introduced. Applying optimisations to this type yields an implementation of pairing heaps, which is then used to implement Dijkstra's algorithm and efficient probabilistic sampling. The construction is formalised in Cubical Agda and implemented in Haskell.
登录
查看更多内容
影响因子:
1.8
作者:
Vezzosi, Andrea;Mortberg, Anders;Abel, Andreas
通讯作者:
Abel, Andreas
DOI:
10.1007/978-1-349-91518-7_9
发表时间:
2003
期刊:
Sci. Comput. Program.
影响因子:
--
作者:
Michael Z. Spivey;Silvija Seres
通讯作者:
Silvija Seres
影响因子:
1.1
作者:
Michael Spivey
通讯作者:
Michael Spivey
DOI:
10.1007/3-540-15975-4_33
发表时间:
1985
期刊:
J. Funct. Program.
影响因子:
--
作者:
Philip Wadler
通讯作者:
Philip Wadler
影响因子:
0.8
作者:
F. Wehrung
通讯作者:
F. Wehrung